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.
==Install
+
 
 +
==新闻==
 +
<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 环境变量
==Start==
+
 
 +
==使用==
 
  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", []).
==Tools==
+
 
 +
==工具==
 
* [[ErlyBird]] for NetBeans
 
* [[ErlyBird]] for NetBeans
 
* [[ErlIDE]] for Eclipse
 
* [[ErlIDE]] for Eclipse
==Erlang projects==
+
 
 +
==项目==
 
*[[Apache CouchDB]]
 
*[[Apache CouchDB]]
 
*[[Megaco]]
 
*[[Megaco]]
第63行: 第68行:
 
*[[ejabberd]]
 
*[[ejabberd]]
 
*[[RabbitMQ]]
 
*[[RabbitMQ]]
==Case==
+
 
 +
==案例==
 
*[[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://blog.mylkcn.net/senzung.php 轻松实现可伸缩性,容错性,和负载平衡的大规模多人在线系统]
 
*http://forum.javaeye.com/viewtopic.php?t=22318
 
*http://forum.javaeye.com/viewtopic.php?t=22318
*分布式、并行计算语言Erlang 学习笔记(第一部分) http://computebank.spaces.live.com/blog/cns!955689A6CF175077!326.entry
+
*[http://computebank.spaces.live.com/blog/cns!955689A6CF175077!326.entry 分布式、并行计算语言Erlang 学习笔记(第一部分)]
*分布式、并行计算语言Erlang 学习笔记(第二部分) http://computebank.spaces.live.com/blog/cns!955689A6CF175077!356.entry
+
*[http://computebank.spaces.live.com/blog/cns!955689A6CF175077!356.entry 分布式、并行计算语言Erlang 学习笔记(第二部分)]
*分布式、并行计算语言Erlang 学习笔记(第三部分) http://computebank.spaces.live.com/blog/cns!955689A6CF175077!439.entry
+
*[http://computebank.spaces.live.com/blog/cns!955689A6CF175077!439.entry 分布式、并行计算语言Erlang 学习笔记(第三部分)]
 
+
*[http://yarivsblog.com/ Yariv's Blog]: Adventures in Open Source Erlang
==Links==
+
*Yariv's Blog: Adventures in Open Source Erlang - http://yarivsblog.com/
+
 
*http://www.erlang.org/
 
*http://www.erlang.org/
*Comprehensive Erlang Archive Network - http://cean.process-one.net/
+
*[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-35x35.png 您可以在Wikipedia上了解到此条目的英文信息 Erlang Thanks, Wikipedia.
Erlang-90x90.gif

目录

什么是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", []).

工具

项目

案例

链接

Comment-32x32.png

<discussion>characters_max=300</discussion>

分享您的观点
个人工具
名字空间

变换
操作
导航
工具箱