未来是否有可能出现一种编程语言的翻译神器

2022-06-09 11:10:27 +08:00
 pheyer

我最早见识到提供编程语言翻译功能的工具是 JSPatch ,这是一个若干年前可以给线上 iOS app 修复 bug 的神器,因为补丁代码是 js 语言的,需要把 OC 代码翻译成 JS 成代码,故作者也提供了一个 JSPatch Convertor ,把这个翻译过程做到了自动化。

最近再次见识到类似的翻译工具是 Swiftify ,它的功能是把 OC 代码翻译成 Swift 代码,对于有 OC 基础的 Swift 初学者来说这个工具可太实用了,把之前写的 OC 代码用这个工具翻译一遍,然后对照阅读学习,就大概知道基本的 Swift 代码该怎么写的,不用看 Swift 入门文档感觉可以迅速上手的样子。当然两种语言的编程思维还是有略微不同的,高级玩法靠翻译是做不到的,还是需要看文档进行进阶学习。不过,这个工具可不是免费的,还挺贵,它的设计用途我想其实并不是像上面所说的方便有 OC 基础的开发者快速入门 Swift ,而是方便企业的开发人员快速把现在的 OC 项目快速批量转换为 Swift 项目,这应该才是它的商业用途所在。只是完美转换肯定是不存在的,小修小改应该还是有的,这点修改的时间相比自动化翻译大幅提高的效率微不足道了。

以上两个例子都是针对特定编程语言的,我想翻译其它编程语言应该也是有需求的,特别是对新语言入门初学者来说,比如把 java 代码翻译翻译为 swift 代码,java 代码翻译为 python 代码

现如今自然语言的翻译神器有很多了,编程语言的规则比自然语言的规则更明确更规范,感觉上好像翻译编程语言更简单一些?是否有可能让 AI 学习翻译编程语言?未来是否有可能出现一种编程语言的通用翻译神器呢

3125 次点击
所在节点    奇思妙想
24 条回复
qrobot
2022-06-17 16:29:30 +08:00
啊, 翻译这种工作不是一直在做吗? 这个叫做编译语言

例如 C 语言会最后会编译连接转换成字节吗 0101


例如 Java 的 GWT(Google Web Toolkit) 将 Java 代码转换成 js 代码。

还有 React Vue Angular typescript 最后把这种特殊的语法转成 JS HTML CSS

这种工具一直都有。 也一直能做,但是没有必要。 就比如 Kotlin 转 Java 为什么不直接转成 Class ?
qrobot
2022-06-17 16:31:38 +08:00
@pheyer 甚至还有 WineQH 这种神奇的存在
cszchen
2022-06-24 17:32:32 +08:00
已经有小范围的实现了,你 gayhub 搜一下 ccxt
pheyer
2022-06-25 19:49:40 +08:00
@cszchen 搜了一下,好像完全不符合帖子里的描述

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/858362

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX