0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

期待有一款好用的转换工具拯救程序员

电子工程师 来源:lq 2019-02-11 10:59 次阅读

近日,Reddit 上有网友放出了一张疑似 Google 翻译添加了能让编程语言间互相转换的图片,立即引发数千名程序员网友的跟帖热议。图片显示,Google 翻译中添加了编程语言进行“互译”,输入Python 语言【print("Hello")】就可翻译成 Java 语言【 System.out.println("Hello");】。

“Java 语言对于大型编程项目来说实在是复杂且冗长了,天哪,急需这样一款工具。”消息一出,网友们兴奋极了。

程序员们群情激昂的造假图

这当然是假的。不过图片实在太真实了,乍一看,难分真假,很多人都被骗了,在评论里嗷嗷尖叫,以为 Google 终于又来拯救他们了,很多人都可能兴冲冲跑到 Google 翻译去试了一遍。如果你在 Google 翻译里输入了 Python 语句,你得到的还是那个相同的输出语句。

能骗过很多程序员,说明“造假者”的造假功力不浅。很多人问,为什么不用截图骗人,而是放一张看上去像是用相机拍的照片,这不多此一举吗?

你知道,如果用的是截图,一般了解套路的程序员很快就能发现图片是假的,因为很容易怀疑这张图是通过开发工具编辑 HTML 而成。但这位“造假者”显然没有这么做,实际上,“像素级”的模糊照片增加了真实性,而这恰恰是他的高明之处。

网友@schludy评论说,“真正的神级程序员都太聪明以至于都不会使用截图......”,当然,也不会麻烦到使用 P 图软件。

这幅图正是编辑 HTML 后的截图

不过,程序员的狂热期待,也说明一款优秀的编程语言转译工具(transpiler,是以某种编程语言的程序源代码作为输入,生成以另一种编程语言构成的等效源代码的转译器。)对他们来说确实是迫切需求。

那到底有没有实用的转译工具?

目前还没有成熟的转译器供程序员们使用,很多都还在初级开发阶段,比如这款叫 voc 的转译工具(https://github.com/pybee/voc),能将 Python 字节码(bytecode)转换为 Java 字节码,然后在 Java 虚拟机上运行。(链接:https://pybee.org/project/projects/bridges/voc/)

voc 工具提供两个重要功能:

将 Python 3.4+ 源文件编译为 Java 类文件,使你能够在 JVM(包括 Android 的VM)上运行 Python 代码。

提供一个 API 让你以编程方式创建 Java 类文件。

不过官网指出,voc 工具还不能完全兼容 Python 3.4,并且只有一个简单的标准库实现,目前仍然需要实现一些语言特性(比如非本地函数和一些内置函数)。但是,voc 工具可以转换简单的 Python 程序,甚至可以编写简单的 Android 应用。

根据程序员的使用体验来看,“时好时坏”,这个转译工具目前的状况有点像 Google 翻译。

编程语言转换器可行吗?

在程序员群体中,一款好的编程语言转译器意味着有更好的生产工具,但像这样有着强需求的工具为什么到现在都没出现?

显然,编程语言转译器不是那么好做,可能需要花费大量的时间和精力,要不然像 Google 这样的企业可能早做出来了。

Reddit 上的程序员网友也对编程语言转译工具建言献策:

网友@merc08 指出应该根据 Google 翻译常规语言的做法来做:可以用语言来做转译,而每个单词有多种不同的含义。编程语言对每个命令都有固定的含义,所以它可能会是一个非常简单的查找表,只要它仅限于一种命令,做起来就不会那么难。

这位网友的想法简单来说就是,人们会接受 Google 翻译在常规语言翻译中出现的一些错误,这可能并不妨碍沟通,而在编程语言转译工具中,也会让你通过适当关键字来进行匹配搜索正确的转译格式。

有人反驳,编程语法不仅仅由查找表中的关键字组成,可能要比这复杂得多。比如面临如何设计简单的算法来进行转译、内存管理这些问题。

还有人提到,理论上讲,任何两种图灵完备语言都是可行的,只需将一种语言程序通过图灵机(Turing Machine)就可以翻译成另一种语言程序,当然还需要考虑更难的跨范式(cross-paradigm)翻译,如 prologinto转译成 basic 或 javascriptinto 转译成 Haskell。

但考虑到 Google 翻译目前对常规语言的翻译都不是那么准确,而对准确性要求更高的编程语言来说,现在编程语言转译工具的实用性可能更鸡肋,很多网友表达了悲观态度。

总的来说,这幅“造假”图片能引起程序员群情亢奋,说明了对这一工具需求的迫切性——当然,排除那些对各种编程语言非常熟练的“大神级”程序员,他们可能对转译工具不屑一顾。科技改变生活,为了更快的改变大众生活,就应该先提升程序员们手中的生产工具。

期待有一款好用的转译工具来拯救程序员。大声告诉这个世界,你需要它!

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Google
    +关注

    关注

    5

    文章

    1713

    浏览量

    56789
  • 编程语言
    +关注

    关注

    9

    文章

    1878

    浏览量

    33062
  • 程序员
    +关注

    关注

    4

    文章

    931

    浏览量

    29570

原文标题:Python一键转Java?“Google翻译”你别闹

文章出处:【微信号:rgznai100,微信公众号:rgznai100】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    一款适合嵌入式工程师使用的在线工具

    一款适合嵌入式工程师使用的在线工具工具有如下功能,如下图所示: 1. 报文校验功能,如下图所示 2. UDP服务端测试工具:该UDP服务端
    发表于 04-09 22:20

    薪资高、青春饭,是不是程序员=青楼?

    花期太短。技术迭代快,年龄大容易失业。 就这几年的互联网环境而言,不管是前端、Java、Android开发等等行业。已经感受到程序员不是太卷就是工作难找,薪资过低。以前高工现在拿着中低程序员薪资
    发表于 03-06 21:32

    感觉我国的程序员前景片灰暗,是这样吗?

    程序员也分为好几等,在现在看来大部分的Android、Java、前端等等开发。已经看不到希望了,很多人都在边缘挣扎;刚看到位Android开发者,过完年回公司就通知被裁;可见每年都会有很多互联网
    发表于 02-20 20:52

    1月18号“纯鸿蒙”千帆启航,程序员预备!

    Android”、与互联网大厂合作已达400+家、原生开发薪资岗位来看。鸿蒙对程序员来说无疑是条非常好的道路。 鸿蒙对程序员的影响 鸿蒙的出现,首先直接影响的是程序员。鸿蒙直接切割
    发表于 01-16 22:13

    【飞腾派4G版免费试用】Ubuntu系统上运行的一款好用的截图工具:Flameshot

    0. 起因 最近使用了Ubuntu 桌面系统,发现对截图工具支持的不是很好,自带的截图工具因为文件缺失报错不能使用。 于是简单搜索了下,发现了一款
    发表于 12-22 10:03

    Python汉字拼音转换工具

    将汉字转为拼音,可以用于批量汉字注音、文字排序、拼音检索文字等常见场景。 现在互联网上有许多拼音转换工具,基于Python的开源模块也不少,今天给大家介绍一个功能特性最多的模块
    的头像 发表于 10-17 17:18 288次阅读

    对象转换工具:MapStruct 库

    。 今天给大家介绍一个对象转换工具MapStruct,代码简洁安全、性能高,强烈推荐。 MapStruct简介 MapStruct是一个代码生成器,它基于约定优于配置,极大地简化了Java Bean类型之间映射的实现。特点如下: 基于注解 在编译期自动生成映射转换代码 类
    的头像 发表于 10-08 14:39 658次阅读

    移植ARM DHCP服务器版本1程序员指南

    这本书由ARM DHCP服务器服务器软件提供, 假定ARM DHCP服务器移植源可以作为参考, 也假设您可以访问程序员的 C 和 ARM 组装语言指南。 本程序员指南是为经验的内嵌系统程序员
    发表于 08-18 06:46

    霓虹灯程序员指南

    如果您对ARM技术完全陌生,请阅读Cortex-A系列程序员指南,了解有关ARM架构配置文件和般编程指南的信息。 ·霓虹灯技术是ARM高级单指令多数据(SIMD)扩展的实现。 ·霓虹灯单元是执行
    发表于 08-17 06:32

    ARMv8-A霓虹灯程序员指南

    更有经验的程序员提供的提示和技巧。具体而言,本指南涉及以下主题领域: •内存操作,以及如何使用灵活的加载和存储指令。 •使用排列指令处理装载和存储剩余物。 •使用霓虹灯执行示例数据处理任务,矩阵乘法。 •转换操作,以转换图像数据
    发表于 08-08 07:25

    ARM系统跟踪Macrocell程序员模型架构规范1.1版

    ARM 系统跟踪大型电池程序员示范建筑规格V1.1 建筑规格
    发表于 08-02 10:11

    61.[程序员小飞]如何在3分钟内安装好数据库MySql和Navicat,简单又易懂

    程序员
    充八万
    发布于 :2023年07月20日 09:16:19

    C浮点数与字符转换工具

    C浮点数与字符转换工具免费下载。
    发表于 06-19 18:17 0次下载

    5款程序员最佳的代码比较工具

    程序员都有自己私藏的编程必备工具,接下来小编就给大家推荐5款程序员最佳的代码比较工具。 一:Beyond Compare 推荐:★★★★★ Beyond Compare可以很方便地对比
    的头像 发表于 05-23 10:35 4641次阅读
    5款<b class='flag-5'>程序员</b>最佳的代码比较<b class='flag-5'>工具</b>