Erlang初学:Erlang的一些特点和个人理解总结
我对Erlang编程理念的理解:以分布式架构师的角度写代码。
函数式编程
Erlang里面的函数是数学里面的函数:必须有返回值。只要是函数必然有返回值,函数是一个过程,以英文的句号为函数结束符。函数结束之前的表达式就是该函数的返回值。所以这也是在Erlang里面的函数不会看到任何return语句的原因。C++等其他语言的函数和函数之前可以通过共享变量来实现消息传递。Erlang里面的函数不可以,消息的传递通过函数的传入和传出。也只是为什么Erlang号称天生之处并行处理的原因,因为他们不共享变量,也就不需要加锁。
很多人听到函数式编程都会觉得高大上或者晦涩难懂。因为函数是编程没有for循环语句,但是在我看来,关键在于会使用【列表推倒】和【尾递归】来进行循环遍历。说到函数式编程就会拿快速排序说事,下面这个示例是Erlang版本的快速排序:
-module(sort).
-export([qsort/1]).
qsort([])->[]; qsort([Pivot|T])-> qsort([X||X<-T,X<Pivot] ++[Pivot]++ qsort([X||X<-T,X>=Pivot]).
热门推荐
10 小红书平安祝福语简短
11 生日祝福语大全女孩简短
12 收生日红包祝福语 简短
13 领证幽默祝福语简短
14 法考面试祝福语简短
15 老哥出门祝福语简短语
16 送灯祝福语简短独特
17 幼儿狗年祝福语大全简短
18 好听的元旦简短祝福语