是否有可能从D 2.0编译为Javascript?

前端之家收集整理的这篇文章主要介绍了是否有可能从D 2.0编译为Javascript?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
长期的C程序员(就是我)正在探索其他语言并且想知道是否值得学习 D 2.0.(这是D的重新编写.)到目前为止,我喜欢我看到的 – 许多务实,明智选择.现在,我想了解更多,并想知道是否有可能做到以下几点:

>在D 2.0中编写一些代码. (也许它是D 2.0明确定义的子集.)
>编译1中的代码.
>从编译器接收Javascript源代码.

总之,我想有一个D 2.0编译器,后端能够生成Javascript.

所以我的问题有两个部分:

>这样的编译器是否已存在?
>如果这样的编译器不存在,并且如果我选择实现一个,哪里是最好的起点?

对于上下文,我想要上述的原因是我可以在D 2.0中实现一堆业务逻辑,然后在纯Javascript(即没有Flash / Silverlight / Java)Web应用程序中使用该业务逻辑.

更新

我有三个答案,其中两个是主题,一个不是,因此被忽略.

@FeepingCreature认为它永远不会发生,因为“它与D的目标环境太不协调”.我很想知道这意味着什么,并且已经问过了.

相比之下,@ Nekuromento指出理论上已经可以使用LDC,其次是LLVM Javascript后端.我检查了两个链接. LDC对D 2.0的支持看起来像是正在进行的工作.但我猜它会在某个时刻到达那里. LLVM Javascript也没有经过优化或缩小,但它从演示中看起来是有效的.所以我认为这至少足够有用.

更新2

好的 – 这似乎是迄今为止最好的解决方案.

>调用LDC. (@Nekuromento)LDC将Digital Mars前端与LLVM后端相结合.
>通过LLVM Javscript后端管理输出1. (@Nekuromento)
>管道输出从2.虽然Closure(@BCS)

我会尽快选择最好的答案,但我真的想要一些更明智的意见.

更新3

有关我为什么要这样做的更多信息.

以下是我希望实施的一个项目的具体示例.它将是一个几何建模库,可能只由我编写,花了几年时间编写,最终达到大约100,000行代码.我希望它包含尽可能接近零的错误,因此,我不希望在Javascript中实现它.我希望它能够在服务器,桌面和浏览器上运行. (在“浏览器中”我的意思是没有任何插件,如Flash,Silverlight或Java的帮助.)事实是,在Javascript上运行的浏览器中的代码将保留一段时间.项目将越来越需要一个战略来处理这个问题.

更新4

我希望得到更多的答案,但没有得到它们.好吧,没关系.感谢所有的反馈,包括@dsimicha的刺激性评论. (我希望有时可以在技术上不同意,同时保持民事.)我接受了@Nekuromento的回答.

更新5 2018-07-18

七年过去了,LDC v1.11支持编译和链接到WebAssembly.3

解决方法

这样的编译器目前不存在,但是在 javascript LLVM-backend上有一些工作.

由于有LDC.它使用DMD前端和LLVM,因此理论上可以添加javascript输出.

原文链接:https://www.f2er.com/js/156887.html

猜你在找的JavaScript相关文章