Erlang/Elixir Erlang 服务端渲染引擎 aihtml 发布 v0.3.2

davidgao · 2019年12月31日 · 最后由 davidgao 回复于 2020年04月12日 · 5291 次阅读

使用 Erlang 开发 Web 是一个非常有意思的事情,但是很多时候需要自己创造一些小轮子。Erlang 虽然有很多 Web 开发方案,但是对模版渲染这部分相对较弱。

aihtml是个人在使用 Erlang 开发企业 Web 应用时,开发的一款 mustache 模版渲染引擎。全面支持 mustache 的标准语法,同时增加自己的 lambda 语法,解决 layout 式的渲染。

当然如果您的 Web 项目需要非常复杂的服务端渲染,除了erlydtl外,zontonic 也发布了重写的版本 template_compiler,该版本 Bug 更少,速度更快。相对于 erlydtl 和 zontonic,aihtml 更加简单,属于无逻辑模版范畴,适用与轻量快捷开发的项目。

希望更多的 Erlang 的 Web 开发者能适用和提交 issues 来优化 aihtml 这个简单的模版引擎。

davidgao 关闭了讨论。 12月31日 15:26
davidgao 重新开启了讨论。 12月31日 15:26

芝加哥老板!

对 zzz6519003 回复

chicagoboss 是我们很早之前就使用的框架,非常不错,是 Erlang Web 开发中比较著名的 web 框架,不过当出现问题时去解决问题就很麻烦,因为要深入到内部。另外一个比较著名框架是 nitrogen,但是更新比较缓慢,但是可以把 Erlang 当 PHP 的无脑去写。

对 lidashuang 回复

Phoenix 是一整套的 Web 框架,参考的是 Ruby on Rails。使用 Elixir 开发,虽然都是运行在 ERTS 上,但是语法和 Erlang 的语法差异很大。 如果比较喜欢 Elixir 的语法,可以直接上 Phoenix,毕竟很完善也比较稳定了。

对 davidgao 回复

Erlang 真是百变啊。。。

对 zzz6519003 回复

因为 Erlang 缺少一统天下的框架。

对 davidgao 回复

难道不是 dsl 能力太强了么

他的宏如何?

对 zzz6519003 回复

Erlang 的宏,能力很弱。Elixir 的宏,部分思想源自于 Lisp 的宏的思想,如果想用 Erlang 实现一些特殊效果,就需要使用 parse_transform。Erlang 的 DSL 和 Ruby 相比并不强大。

对 davidgao 回复

感觉语法很百变

对 davidgao 回复

Elixir 的宏是很强大,但是过度使用这种宏来扩展 DSL 未必是好事。

对 Arsene 回复

这东西得分开看,用好了神,用不好就是渣渣了,Elixir 的宏是参考了 CL 的宏设计。使用了很久的 CL,这种东西会让高手把一个语言变成另一种语言。

需要 登录 后方可回复, 如果你还没有账号请 注册新账号