Erlang是一门函数式编程语言。Erlang是瑞典电话公司爱立信于1987年左右开发的一种功能语言。Erlang以来自丹麦的数学家,统计学家和工程师Agner Krarup Erlang命名。Erlang也是一个国际单位(缩写为Erl),表示通信中的数据流量(流量)。
Erlang的功能如下:
Erlang变量只能分配一次。尝试多次分配给同一个变量将导致错误。这意味着无法编写常规循环等。事实上,在Erlang中,已使用递归或更高阶函数实现了一种循环。
Erlang变量应该以所有大写字母或下划线(_)开头。
Erlang没有静态类型。
Erlang是一种功能语言。
该过程与OS管理的过程不同。在其他语言中,它是在单个OS级别进程中执行的多个执行的流程,例如“线程”。但是,由于Erlang中既没有全局变量也没有可重写对象,因此这些控制流之间没有共享状态。这种共享状态是分离线程和进程的一个重要因素,并且声称Erlang是一个“进程”,只是它没有共享状态。
在进程之间没有共享状态也意味着进程不必局限于单个OS进程。Erlang进程可以存在于多个OS进程中,并支持分布式处理。
Erlang中的进程间通信由“消息”完成。可以使用任何Erlang值作为消息。消息由“!”运算符发送,并使用receive语句接收消息。
消息发送示例:
1 | -module(pingpong). |
由于Erlang是一种最初设计用于需要可靠性的电话交换机等环境的编程语言,因此它的设计使错误不会停止整个程序的运行。进程中发生的异常仅停止该进程并启动调试器。然后,可以在继续之前修改程序并重新加载模块。