HASKELL的全栈探讨
2016-06-17 本文已影响220人
ArimaKisho
ANGULAR是声明式编程,HTTP是无状态的,DOM资源类似于闭包,这不得不让我考虑用haskell做前端的可行性。
但是考虑到前端基本是Javascript的天下,浏览器也只针对Js设计接口,所以替代JS短期内是不可能的,但是可以作为和服务器端Haskell通信的中间层。
考虑到FAY和GHCJS的尝试,值得借鉴,毕竟造轮子这种事情不容易。就像唐凤的PUGS一样,有的时候当你不理解PERL6应该怎么实现时,你应该用haskell梳理一下底层的原理,就像haskell的FFI很方便一样,函数式静态语言好像很适合做这种基石性的推导逻辑工作。
如果说PERL是胶水语言,瑞士军刀,那么在我看来,haskell是乐高积木,是静态语言里的lisp,由于基础架构是纯粹的函数式,所以我们可以定制自己的,有状态变化的范式。
当然,snoyman在博客里也提到了他haskell自己的全栈思路,但是我感觉他作为15年的WEB开发老司机,有些观念可能有点旧了,我觉得YESOD的底部还是有点臃肿,未来当我很了解HASKELL和WEB整体架构时,不排除自己造一点轮子。