sam*_*lis 12 haskell ghcjs haste
如果是这样,那么我可以通过更改其(Haskell)配置让人们玩我的项目:在浏览器中重新编译它,然后在浏览器中重新运行它.我不关心速度.我只是想在浏览器中演示一个难以设置的基础桌面项目.因此,可能的新用户可以在几秒钟内看到他们是否喜欢它,而无需设置.
这将是多么酷!
从我读过的内容来看,GHCJS将STG编译成JavaScript.它说它使用GHC API,所以我们应该能够将它编译成JavaScript,就像任何其他Haskell库一样.(对吗?)虽然GHC运行时有很多C,但编译器本身是纯Haskell吗?
所以:
scl*_*clv 11
据我所知,GHCJS和Haste都直接利用GHC.虽然GHC主要是haskell,但它在运行时及其运行方式上与相当数量的cbits相关联.我相当肯定,目前也不能编译为以"自托管"方式直接在浏览器中运行.
然而,Fay,这是JS的"Haskell-like-dialect",可以通过GHCJS编译,虽然很漂亮(https://github.com/ghcjs/ghcjs-examples/tree/master/fay-hello)也许不是你想要的.
如果您的系统足够简单,另一种选择是使用emscripten将拥抱置于浏览器中,并让您的用户使用它.
正如你猜测的那样,各种"在浏览器中试用"网站实际上都使用与机器的连接,通常运行类似于mueval
实际执行给定代码的东西.