Elixir 是 Erlang 的派生语言,亦是一种函数式动态语言,用于构建可伸缩、易维护的应用程序。具有改进的语法,以及与 Erlang 相同的、惊人的并发性支持。作为一种纯函数式语言,它很有可能将这一范式提升为主流。
主要优点:它使函数式编程变得异常简单。它非常适合并发性。
主要缺点:需要了解潜在的一次性可编程基础知识,这可能是一项艰巨的任务。
Elixir 是基于 Erlang VM 的,其广为人知的特点是运行低延时、分布式、可容错的系统,并成功用于 Web 开发与嵌入式软件领域。
1
dimlau 2020-01-16 12:40:04 +08:00
只知道基于此的项目:Pleroma
|
2
sunmonster 2020-01-16 13:01:39 +08:00
Python 主要的优势是机器学习,javascript 主要是浏览器,elixir 运行在 erlang vm 上,何来替代一说,还不如问 reasonml 是否有可能替代 javascript 呢,但是貌似也不能,门栏太高。
|
3
tt67wq 2020-01-16 13:12:22 +08:00
beam 做数值计算垃圾,elixir 适合 web、网络中间件这种场合,跟 py、js 的竞争不大,倒是和 golang 在一些场合能掰头一下。
|
4
Vegetable 2020-01-16 13:14:21 +08:00
不了解,但是不会...
|
5
nianyu 2020-01-16 13:18:33 +08:00
动点脑子 在提问好不好啊
|
6
wellsc 2020-01-16 13:21:58 +08:00 1
函数式劝退大部分 CRUD 场景。
|
7
Kilerd 2020-01-16 14:14:11 +08:00
带 VM 的东西您跟我说适合嵌入式软件领域?????
|
8
robojel 2020-01-16 15:54:52 +08:00 via Android
首先回答问题,Elixir 不会代替 Py 和 JS,看特性就明白了。再说下 Elixir 会不会将函数式提升为主流的看法,Erlang 在 10 年前国内就有一帮大佬在用了,现在几乎都在玩 Golang 了,毕竟大家都是学习 C 语言入门的编程,类 C 语言上手更快;Elixir 虽然类 Ruby 但学习起了更难,所以 Erlang &Elixir 的函数式不会成为主流。看大家的回答就能看出来对 Elixir 的态度。Elixir 底层 BEAM 是 C 写的,可以用 NIF 进行扩展以解决部分数值运算的痛点,但整体还是和 C++ Golang 这种能够对直接数据指针各种操作的速度不是一个层次,Actor 模型的特性就是如此为了更高的稳定损失部分性能。
|
9
Wincer 2020-01-16 16:01:09 +08:00 via Android
最近刚好在学 Elixir,pipeline operator 用起来简直不要太舒服。
以及,Elixir 的函数并不是完全没有副作用的,所以它不能叫做纯函数式语言。 |
10
gamesover 2020-01-16 16:02:30 +08:00
函数式编程只能在一些 fan 中小众流行
没法成为通用工具,因为函数式编程反人类 :) |
11
dodo2012 2020-01-16 16:03:59 +08:00
都好几年了,一直小众,带了一部分 ruby 的人,但很多人又跑回 ruby 或者 golang 了,
|
12
sagaxu 2020-01-16 16:08:46 +08:00 via Android
OTP 分布式强大,但 beam 性能弱鸡,生态约等于没有
|