今年推出了 Nx,类似 numpy,看来是打算进军 AI 了。另外,还推出了 livebook,类似 python 的 notebook。
Erlang Beam 上的静态语言的发展,Glean 和 Alpaca,可以看看。
Erlang 的优点是并发容错,Elixir 改进了语法和工具,类型系统是未来的方向。
补充一个,很不错:School 中文版
Elixir 中文网, 这个是中文的方便大家学习。
《Elixir in Action》是一本很好的学习书籍,目前没有翻译。对比了一下,确实是目前最好的,豆瓣评分 9,还是比较可信的。 可以先看看作者 Saša 的访谈,不知道这个是什么语言字母,是法国人么?《Elixir in Action》书评及作者问答录。
grox.io是一个 Elixir 教学网,由《七语言》作者 Tate 创办,有课程,也出了一些英文书。 国内还有较大的差距,缺少专属论坛。
tubi 招聘 Elixir 开价 60 万,希望这个能够增加一些大家学习的兴趣。
书中全程用一个 todo 例子讲解,这个例子很好,不依赖 github,足够有趣不复杂,很适合作为语言学习的例子。也可以用作为 go、rust 的学习项目。
如图所示:项目结构,每一个方框代表一个 process,一个轻量级进程。这种多进程结构可以有效地隔离错误。进程的数量单机可以达到百万。
作者有一个演讲“The soul of Erlang and Elixir”,演示了这个多进程结构。不过他的英语语速非常快,听不大懂。
我 5 年前曾经预言 Elixir 会流行,看来是错了,不过还是很有趣和值得学习的,相信流行度会逐年提高。
告别对象,解脱了,是时候了。
我还在学习这本书,希望出版社能引进这本书,下次再与大家分享。
:(
_STORAGE_WRITE_ERROR_:./Application/Runtime/Cache/Home/2a94b8bda04ff446dcedd42276fc99ee.php
错误位置
FILE: /home/wwwroot/elixir/ThinkPHP/Library/Think/Storage/Driver/File.class.php LINE: 48
TRACE
#0 /home/wwwroot/elixir/ThinkPHP/Library/Think/Storage/Driver/File.class.php(48): E('_STORAGE_WRITE_...')
#1 [internal function]: Think\Storage\Driver\File->put('./Application/R...', ' #2 /home/wwwroot/elixir/ThinkPHP/Library/Think/Storage.class.php(37): call_user_func_array(Array, Array)
#3 /home/wwwroot/elixir/ThinkPHP/Library/Think/Template.class.php(114): Think\Storage::__callstatic('put', Array)
#4 /home/wwwroot/elixir/ThinkPHP/Library/Think/Template.class.php(76): Think\Template->loadTemplate('./Application/H...', '')
#5 /home/wwwroot/elixir/ThinkPHP/Library/Behavior/ParseTemplateBehavior.class.php(32): Think\Template->fetch('./Application/H...', Array, '')
#6 /home/wwwroot/elixir/ThinkPHP/Library/Think/Hook.class.php(119): Behavior\ParseTemplateBehavior->run(Array)
#7 /home/wwwroot/elixir/ThinkPHP/Library/Think/Hook.class.php(89): Think\Hook::exec('Behavior\\ParseT...', 'run', Array)
#8 /home/wwwroot/elixir/ThinkPHP/Library/Think/View.class.php(126): Think\Hook::listen('view_parse', Array)
#9 /home/wwwroot/elixir/ThinkPHP/Library/Think/View.class.php(72): Think\View->fetch('./Application/H...', '', '')
#10 /home/wwwroot/elixir/ThinkPHP/Library/Think/Controller.class.php(56): Think\View->display('', '', '', '', '')
#11 /home/wwwroot/elixir/Application/Home/Controller/IndexController.class.php(7): Think\Controller->display()
#12 [internal function]: Home\Controller\IndexController->index()
#13 /home/wwwroot/elixir/ThinkPHP/Library/Think/App.class.php(173): ReflectionMethod->invoke(Object(Home\Controller\IndexController))
#14 /home/wwwroot/elixir/ThinkPHP/Library/Think/App.class.php(110): Think\App::invokeAction(Object(Home\Controller\IndexController), 'index')
#15 /home/wwwroot/elixir/ThinkPHP/Library/Think/App.class.php(204): Think\App::exec()
#16 /home/wwwroot/elixir/ThinkPHP/Library/Think/Think.class.php(120): Think\App::run()
#17 /home/wwwroot/elixir/ThinkPHP/ThinkPHP.php(97): Think\Think::start()
#18 /home/wwwroot/elixir/index.php(23): require('/home/wwwroot/e...')
#19 {main}
ThinkPHP3.2.3 { Fast & Simple OOP PHP Framework } -- [ WE CAN DO IT JUST THINK ]
可以用这个 School,中文的,https://elixirschool.com/zh-hans/
另外,groxio 是 由《七语言》书的作者 Tate 创办的教学网站,可见老外多么喜欢 Elixir。