当前位置:  开发笔记 > 编程语言 > 正文

为了学习目的,在Erlang中要解决哪些有趣的项目?

如何解决《为了学习目的,在Erlang中要解决哪些有趣的项目?》经验,为你挑选了5个好方法。

我最近发现了Erlang,现在我正在通过几个教程.到现在为止,我很期待将某些东西作为一个爱好项目来实现.我对另一个聊天服务器并不感兴趣.我想编写更有趣的东西(是的,我知道这是一个相当模糊的术语),这也是可以管理的,所以我可以在业余时间完成它.

有什么建议?

编辑:项目应该优先突出Erlang的优势(并发,分布式).



1> 小智..:

    构建一个分布式系统,实时搜索Twitter提要,并允许任何人从Web前端执行搜索.

    构建分布式文件系统.实现分布式B*树或B +树作为此文件系统的基础.在erlang中做.

    在步骤2中构建的分布式文件系统之上构建分布式键值存储.

    在密钥值存储之上构建分布式Web索引(由分布式Web搜索引擎使用).

    构建分布式链接器.高级构建自动化为分布式构建和/或分布式处理提供远程代理处理.

    构建一个MMORPG后端,依赖于游戏/玩家状态的分布式存储和用户请求的分布式处理.



2> Charlie Mart..:

对于自己的东西,考虑编写一个简单的服务器; 例如,服务日期/时间请求或者 - 有点发烧友 - 一种仅为静态内容提供服务的HTTP守护进程.

Erlang最好的部分是它处理并发的方式; 锻炼那个.


那是我正在寻找的那种项目.突出Erlang强度(并发,分布式)的东西.
Joe Armstrong的"编程Erlang"包括如何编程这些服务器的示例.强烈推荐.http://pragprog.com/book/jaerlang/programming-erlang

3> David Grant..:

项目欧拉,当然.


当然,它们是很好的问题,但你可以用任何语言解决它们,而且大多数都比Erlang更适合.对于Erlang,你想要的是需要/利用分布式解决方案的问题,因为这是Erlang的优势所在.AFAIK,Euler项目并非[必然].

4> archaelus..:

我丰富的待办事项列表中的一些内容既是良好的学习练习,也有助于整个erlang社区:

描述所有可用的Key/Value商店:

编写一个库,用于测试各种K/V存储的插入,查找,删除,搜索时间

创建人们可以运行的基准测试套件

使它与ets,dets,proplists,gb_trees,dict,orddict,redblack trees,bdb,tokyocabinet,...

制作漂亮的图表

让您可以轻松更新,贡献并运行任何人的计算机

编写一个使用命名参数的新io_lib:format例程:

io_lib:nformat("你好〜{name} s~n.",[{name,"Bob"}]).

如果格式字符串的语言发生变化时参数的位置发生变化,这对国际化非常有用.

扩展erl -make(make.erl)

允许添加代码路径(这样您就不需要执行erl -pa LibraryPath -make)

在实现这些行为的模块之前编译/加载行为模块

正确处理分层模块(特别是输出路径)



5> William Bren..:

这并不完全回答你的问题,但是如果你正在寻找一个用Erlang编写的有趣的免费开源项目,你一定要查看CouchDB.来自网站:

Apache CouchDB是一个分布式,容错且无架构的面向文档的数据库,可通过RESTful HTTP/JSON API访问.除了其他功能之外,它还提供了具有双向冲突检测和解析功能的强大的增量复制,并且可以使用面向表的视图引擎进行查询和索引,其中JavaScript充当默认视图定义语言.

CouchDB是用Erlang编写的,但可以从提供HTTP请求的任何环境轻松访问.有许多第三方客户端库可以使各种编程语言和环境更加容易.

该CouchDB的网站有更多的细节.快乐的编码!

推荐阅读
Chloemw
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有