Elixir与OTP入门指南
一、Elixir简介
在开始深入了解Elixir之前,有必要先提及Erlang及其传奇的虚拟机(VM),因为Elixir是构建在它之上的。Erlang是一种在构建软实时、分布式和并发系统方面表现卓越的编程语言,其最初的用例是为爱立信的电话交换机编程。这些交换机需要具备并发、可靠和可扩展的特性,能够同时处理多个呼叫,并且极其可靠,一个呼叫的中断(由于软件或硬件故障)不应影响交换机上的其他呼叫。此外,交换机还需要具有大规模可扩展性,并能与分布式网络中的其他交换机协同工作。这些生产需求塑造了如今的Erlang,而这些需求正是我们在多核和Web规模编程中所面临的。
Elixir将自己描述为一种构建在Erlang虚拟机之上的功能性、元编程感知语言。下面我们来详细剖析这个定义:
- 功能性编程语言 :Elixir具有所有常见的功能特性,如不可变状态、高阶函数、惰性求值和模式匹配等。
- 元可编程语言 :元编程涉及代码生成代码。这是因为代码可以表示为数据,数据也可以表示为代码。这些特性使程序员能够为语言添加新的构造,而这在其他语言中可能很难甚至不可能实现。
另外,OTP是一个用于构建容错、可扩展、分布式应用程序的框架。由于OTP是Erlang发行版的一部分,Elixir基本上可以免费获得OTP。与大多数框架不同,OTP包含了许多实用的工具,如三种类型的数据库、一组调试工具、性能分析器、测试框架等等。
二、Elixir与Erlang的区别
Elixir和Erlang在多个方面存在差异:
1. Tool
超级会员免费看
订阅专栏 解锁全文
76

被折叠的 条评论
为什么被折叠?



