欢迎大家赞助一杯啤酒🍺 我们准备了下酒菜:Formal mathematics/Isabelle/ML, Formal verification/Coq/Agda, C++/Erlang/Lisp
Erlang
来自开放百科 - 灰狐
(版本间的差异)
(→相关链接) |
|||
第1行: | 第1行: | ||
{{top news}} | {{top news}} | ||
{{SeeWikipedia|Erlang (programming language)}} | {{SeeWikipedia|Erlang (programming language)}} | ||
− | |||
[[Image:Erlang-90x90.gif|right]] | [[Image:Erlang-90x90.gif|right]] | ||
==什么是Erlang== | ==什么是Erlang== | ||
− | |||
Erlang是一个结构化,动态类型编程语言,内建并行计算支持。最初是由爱立信专门为通信应用设计的,比如控制交换机或者变换协议等,因此非常适合于构建分布式,实时软并行计算系统。 | Erlang是一个结构化,动态类型编程语言,内建并行计算支持。最初是由爱立信专门为通信应用设计的,比如控制交换机或者变换协议等,因此非常适合于构建分布式,实时软并行计算系统。 | ||
第19行: | 第17行: | ||
[[Open Telecom Platform]] (OTP) is written in Erlang. | [[Open Telecom Platform]] (OTP) is written in Erlang. | ||
− | == | + | |
+ | ==新闻== | ||
+ | <rss>http://www.erlang.org/rss.xml|short|date|max=10</rss> | ||
+ | |||
+ | ==安装== | ||
Linux/UNIX | Linux/UNIX | ||
mkdir /usr/local/erlang | mkdir /usr/local/erlang | ||
第38行: | 第40行: | ||
Windows | Windows | ||
先安装.exe文件, 再将 D:\Program Files\erlang-5.6\bin 加入 path 环境变量 | 先安装.exe文件, 再将 D:\Program Files\erlang-5.6\bin 加入 path 环境变量 | ||
− | == | + | |
+ | ==使用== | ||
1> toolbar:start(). | 1> toolbar:start(). | ||
2> halt(). // 退出 | 2> halt(). // 退出 | ||
第47行: | 第50行: | ||
7> TheRest. | 7> TheRest. | ||
8> io:format("hello world~n", []). | 8> io:format("hello world~n", []). | ||
− | == | + | |
+ | ==工具== | ||
* [[ErlyBird]] for NetBeans | * [[ErlyBird]] for NetBeans | ||
* [[ErlIDE]] for Eclipse | * [[ErlIDE]] for Eclipse | ||
− | == | + | |
+ | ==项目== | ||
*[[Apache CouchDB]] | *[[Apache CouchDB]] | ||
*[[Megaco]] | *[[Megaco]] | ||
第63行: | 第68行: | ||
*[[ejabberd]] | *[[ejabberd]] | ||
*[[RabbitMQ]] | *[[RabbitMQ]] | ||
− | == | + | |
+ | ==案例== | ||
*[[Amazon SimpleDB]] | *[[Amazon SimpleDB]] | ||
*Facebook用它实现了聊天系统 | *Facebook用它实现了聊天系统 | ||
*Yahoo用Erlang重写了[http://delicious.com/ Delicious] [http://docs.huihoo.com/erlang/developing-erlang-at-yahoo.pdf Developing Erlang at Yahoo] | *Yahoo用Erlang重写了[http://delicious.com/ Delicious] [http://docs.huihoo.com/erlang/developing-erlang-at-yahoo.pdf Developing Erlang at Yahoo] | ||
− | == | + | |
+ | ==链接== | ||
*[http://v.ku6.com/special/show_3859073/D00rqtnRwKzJdIsB.html 章亦春:nginx的http服务器&套Web应用开发框架] (注: 章亦春, 国内最活跃的Nginx模块开发者) | *[http://v.ku6.com/special/show_3859073/D00rqtnRwKzJdIsB.html 章亦春:nginx的http服务器&套Web应用开发框架] (注: 章亦春, 国内最活跃的Nginx模块开发者) | ||
− | * | + | *[http://blog.mylkcn.net/senzung.php 轻松实现可伸缩性,容错性,和负载平衡的大规模多人在线系统] |
*http://forum.javaeye.com/viewtopic.php?t=22318 | *http://forum.javaeye.com/viewtopic.php?t=22318 | ||
− | * | + | *[http://computebank.spaces.live.com/blog/cns!955689A6CF175077!326.entry 分布式、并行计算语言Erlang 学习笔记(第一部分)] |
− | * | + | *[http://computebank.spaces.live.com/blog/cns!955689A6CF175077!356.entry 分布式、并行计算语言Erlang 学习笔记(第二部分)] |
− | * | + | *[http://computebank.spaces.live.com/blog/cns!955689A6CF175077!439.entry 分布式、并行计算语言Erlang 学习笔记(第三部分)] |
− | + | *[http://yarivsblog.com/ Yariv's Blog]: Adventures in Open Source Erlang | |
− | + | ||
− | *Yariv's Blog: Adventures in Open Source Erlang | + | |
*http://www.erlang.org/ | *http://www.erlang.org/ | ||
− | * | + | *[http://cean.process-one.net/ Comprehensive Erlang Archive Network] |
*http://wagerlabs.com/ | *http://wagerlabs.com/ | ||
*http://erlang-china.org/ | *http://erlang-china.org/ |
2010年10月31日 (日) 03:11的版本
您可以在Wikipedia上了解到此条目的英文信息 Erlang Thanks, Wikipedia. |
目录 |
什么是Erlang
Erlang是一个结构化,动态类型编程语言,内建并行计算支持。最初是由爱立信专门为通信应用设计的,比如控制交换机或者变换协议等,因此非常适合于构建分布式,实时软并行计算系统。
使用Erlang编写出的应用运行时通常由成千上万个轻量级进程组成,并通过消息传递相互通讯。进程间上下文切换对于Erlang来说仅仅只是一两个环节,比起C程序的线程切换要高效得多得多了。
使用Erlang来编写分布式应用要简单的多,因为它的分布式机制是透明的:对于程序来说并不知道自己是在分布式运行。
Erlang运行时环境是一个虚拟机,有点像Java虚拟机,这样代码一经编译,同样可以随处运行。它的运行时系统甚至允许代码在不被中断的情况下更新。另外如果你需要更高效的话,字节代码也可以编译成本地代码运行。
Yaws: 一个Erlang写的服务器,据说并发能是apache的15倍
Erlang + Yaws vs. Ruby on Rails
Open Telecom Platform (OTP) is written in Erlang.
新闻
自http://www.erlang.org/rss.xml加载RSS失败或RSS源被墙
安装
Linux/UNIX
mkdir /usr/local/erlang cd /usr/local/erlang mkdir otp_r7b cd otp_r7b gunzip -c <SOME-DIR>/<PREFIX>.tar.gz | tar xfp - ./Install /usr/local/erlang/otp_r7b ln -s /usr/local/erlang/otp_r7b/bin/erl /usr/local/bin/erl
or Unpack, configure, make, and install as follows:
$ tar -xzf otp_src_R11B-4.tar.gz $ cd otp_src_R11B-4 $ ./configure $ make $ sudo make install
or debian
apt-get install erlang
Windows
先安装.exe文件, 再将 D:\Program Files\erlang-5.6\bin 加入 path 环境变量
使用
1> toolbar:start(). 2> halt(). // 退出 3> 2 + 5. 4>(42 + 77) * 66 / 3. 5> [First |TheRest] = [1,2,3,4,5]. 6> First. 7> TheRest. 8> io:format("hello world~n", []).
工具
项目
- Apache CouchDB
- Megaco
- Eddie
- Wings 3D
- Jungerl
- ErlyWeb
- MochiWeb
- Yaws - http://yaws.hyber.org/
- Scalaris
- Disco MapReduce框架,Erlang + Python
- ejabberd
- RabbitMQ
案例
- Amazon SimpleDB
- Facebook用它实现了聊天系统
- Yahoo用Erlang重写了Delicious Developing Erlang at Yahoo
链接
- 章亦春:nginx的http服务器&套Web应用开发框架 (注: 章亦春, 国内最活跃的Nginx模块开发者)
- 轻松实现可伸缩性,容错性,和负载平衡的大规模多人在线系统
- http://forum.javaeye.com/viewtopic.php?t=22318
- 分布式、并行计算语言Erlang 学习笔记(第一部分)
- 分布式、并行计算语言Erlang 学习笔记(第二部分)
- 分布式、并行计算语言Erlang 学习笔记(第三部分)
- Yariv's Blog: Adventures in Open Source Erlang
- http://www.erlang.org/
- Comprehensive Erlang Archive Network
- http://wagerlabs.com/
- http://erlang-china.org/
- http://download.huihoo.com/erlang/
- http://docs.huihoo.com/erlang/
<discussion>characters_max=300</discussion>
分享您的观点