免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: yybmsrs
打印 上一主题 下一主题

这篇LarryWall的采访谁能翻译一下呢? [复制链接]

论坛徽章:
95
程序设计版块每日发帖之星
日期:2015-09-05 06:20:00程序设计版块每日发帖之星
日期:2015-09-17 06:20:00程序设计版块每日发帖之星
日期:2015-09-18 06:20:002015亚冠之阿尔艾因
日期:2015-09-18 10:35:08月度论坛发贴之星
日期:2015-09-30 22:25:002015亚冠之阿尔沙巴布
日期:2015-10-03 08:57:39程序设计版块每日发帖之星
日期:2015-10-05 06:20:00每日论坛发贴之星
日期:2015-10-05 06:20:002015年亚冠纪念徽章
日期:2015-10-06 10:06:482015亚冠之塔什干棉农
日期:2015-10-19 19:43:35程序设计版块每日发帖之星
日期:2015-10-21 06:20:00每日论坛发贴之星
日期:2015-09-14 06:20:00
11 [报告]
发表于 2015-07-20 09:19 |只看该作者
104359176 发表于 2015-07-20 00:57
Perl6 语言说实话充满了冗余的设计,


冗余本就是有意为之。

求职 : 软件工程师
论坛徽章:
3
程序设计版块每日发帖之星
日期:2015-10-07 06:20:00程序设计版块每日发帖之星
日期:2015-12-13 06:20:00程序设计版块每日发帖之星
日期:2016-05-05 06:20:00
12 [报告]
发表于 2015-07-20 10:40 |只看该作者
实在不明白为什么要设计这么多的冗余,用这么多的形式去表示唯一的东西。难道是为了彰显 Perl6 灵活的语法,还是 Perl 语言文化中的条条大路通罗马的文化,要求必须要建造多条道路。在我看来,就是孔乙己卖弄学问,空洞而无聊。

论坛徽章:
46
15-16赛季CBA联赛之四川
日期:2018-03-27 11:59:132015年亚洲杯之沙特阿拉伯
日期:2015-04-11 17:31:45天蝎座
日期:2015-03-25 16:56:49双鱼座
日期:2015-03-25 16:56:30摩羯座
日期:2015-03-25 16:56:09巳蛇
日期:2015-03-25 16:55:30卯兔
日期:2015-03-25 16:54:29子鼠
日期:2015-03-25 16:53:59申猴
日期:2015-03-25 16:53:29寅虎
日期:2015-03-25 16:52:29羊年新春福章
日期:2015-03-25 16:51:212015亚冠之布里斯班狮吼
日期:2015-07-13 10:44:56
13 [报告]
发表于 2015-07-20 10:59 |只看该作者
我也不喜欢啊,所以就不学了,你这不是求虐待吗 想用 grammar 不是还有 Regexp::Grammars

论坛徽章:
95
程序设计版块每日发帖之星
日期:2015-09-05 06:20:00程序设计版块每日发帖之星
日期:2015-09-17 06:20:00程序设计版块每日发帖之星
日期:2015-09-18 06:20:002015亚冠之阿尔艾因
日期:2015-09-18 10:35:08月度论坛发贴之星
日期:2015-09-30 22:25:002015亚冠之阿尔沙巴布
日期:2015-10-03 08:57:39程序设计版块每日发帖之星
日期:2015-10-05 06:20:00每日论坛发贴之星
日期:2015-10-05 06:20:002015年亚冠纪念徽章
日期:2015-10-06 10:06:482015亚冠之塔什干棉农
日期:2015-10-19 19:43:35程序设计版块每日发帖之星
日期:2015-10-21 06:20:00每日论坛发贴之星
日期:2015-09-14 06:20:00
14 [报告]
发表于 2015-07-20 11:18 |只看该作者
回复 12# 104359176


    你既然不认同这种语言设计选择,还学它干吗?为了参考?吐槽?还是真的没有更好的选择了?这世界上那么多的编程语言呢,都不满意你还可以自己搞一门,也算不上多难的事情。

论坛徽章:
145
技术图书徽章
日期:2013-10-01 15:32:13戌狗
日期:2013-10-25 13:31:35金牛座
日期:2013-11-04 16:22:07子鼠
日期:2013-11-18 18:48:57白羊座
日期:2013-11-29 10:09:11狮子座
日期:2013-12-12 09:57:42白羊座
日期:2013-12-24 16:24:46辰龙
日期:2014-01-08 15:26:12技术图书徽章
日期:2014-01-17 13:24:40巳蛇
日期:2014-02-18 14:32:59未羊
日期:2014-02-20 14:12:13白羊座
日期:2014-02-26 12:06:59
15 [报告]
发表于 2015-07-20 12:05 |只看该作者
回复 12# 104359176

冗余是人性的特色之一(超过千种编程语言就是人性的冗余)
而Perl的特色是面向人性的编程语言
注:面向人性只是特色,不一定都是好...
   
为什么现在会有这么多种编程语言?
http://www.zhihu.com/question/20104312

求职 : 软件工程师
论坛徽章:
3
程序设计版块每日发帖之星
日期:2015-10-07 06:20:00程序设计版块每日发帖之星
日期:2015-12-13 06:20:00程序设计版块每日发帖之星
日期:2016-05-05 06:20:00
16 [报告]
发表于 2015-07-20 16:31 |只看该作者
说实话,真的没有一门让我满意的语言,这种想法让我始终有自己设计一门语言的愿望,但我知道,心目中的这门语言只是让我满意而已。相比其他语言,Perl6 有许多优点,debug 信息详尽准确,而且人性化,支持各种编程范式,社区友善,乐于分享。但是,越了解一门语言,就会越了解她的问题。但 Perl6 有着别的语言难以比拟的优点,她将语言的语法独立出来,成为可以动态修改的数据结构,这种抽象将是编程语言发展史上的一次革命,这种技术可以让许多形式不同,但语言功能相近的语言可以混合编程。让人有能力看到编程语言更深的实质。

论坛徽章:
95
程序设计版块每日发帖之星
日期:2015-09-05 06:20:00程序设计版块每日发帖之星
日期:2015-09-17 06:20:00程序设计版块每日发帖之星
日期:2015-09-18 06:20:002015亚冠之阿尔艾因
日期:2015-09-18 10:35:08月度论坛发贴之星
日期:2015-09-30 22:25:002015亚冠之阿尔沙巴布
日期:2015-10-03 08:57:39程序设计版块每日发帖之星
日期:2015-10-05 06:20:00每日论坛发贴之星
日期:2015-10-05 06:20:002015年亚冠纪念徽章
日期:2015-10-06 10:06:482015亚冠之塔什干棉农
日期:2015-10-19 19:43:35程序设计版块每日发帖之星
日期:2015-10-21 06:20:00每日论坛发贴之星
日期:2015-09-14 06:20:00
17 [报告]
发表于 2015-07-21 10:37 |只看该作者
104359176 发表于 2015-07-20 16:31
她将语言的语法独立出来,成为可以动态修改的数据结构,这种抽象将是编程语言发展史上的一次革命,这种技术可以让许多形式不同,但语言功能相近的语言可以混合编程。

你说的“混合编程”指的啥?在一种语言的源码中直接嵌入另外一种语言的代码?或是直接加载另外一种语言写的库,例如在Perl中直接加载写的Python的库?这种通常叫做互操作,要实现这种互操作,能认出语法只是第一步,接下来还要实现兼容的数据模型(object 系统之类的)和各自的 runtime system,说白了就是在同一个公共平台上实现需要互操作的不同语言的编译器/解释器。微软的 Common Language Runtime (CLR)及其上实现的一些语言就是这么一个东西。

求职 : 软件工程师
论坛徽章:
3
程序设计版块每日发帖之星
日期:2015-10-07 06:20:00程序设计版块每日发帖之星
日期:2015-12-13 06:20:00程序设计版块每日发帖之星
日期:2016-05-05 06:20:00
18 [报告]
发表于 2015-07-21 17:16 |只看该作者
本帖最后由 104359176 于 2015-07-21 17:17 编辑

Perl6 本身异常冗余的语法就是一个证明,同样的算法,可以有多种语法形式,而这些语法形式在内部都转换成相同的语法树。

混合编程中,变量可以互操作,函数可以互调用,模块可以互引用,就好象一种存在两套定义冗余的语言一样。除非有互相矛盾或不同的语义,甚至不需要显式的语言切换。

论坛徽章:
95
程序设计版块每日发帖之星
日期:2015-09-05 06:20:00程序设计版块每日发帖之星
日期:2015-09-17 06:20:00程序设计版块每日发帖之星
日期:2015-09-18 06:20:002015亚冠之阿尔艾因
日期:2015-09-18 10:35:08月度论坛发贴之星
日期:2015-09-30 22:25:002015亚冠之阿尔沙巴布
日期:2015-10-03 08:57:39程序设计版块每日发帖之星
日期:2015-10-05 06:20:00每日论坛发贴之星
日期:2015-10-05 06:20:002015年亚冠纪念徽章
日期:2015-10-06 10:06:482015亚冠之塔什干棉农
日期:2015-10-19 19:43:35程序设计版块每日发帖之星
日期:2015-10-21 06:20:00每日论坛发贴之星
日期:2015-09-14 06:20:00
19 [报告]
发表于 2015-07-21 17:56 |只看该作者
回复 18# 104359176


    你说的这叫互操作(interoperation, 或者 language interoperability); 而通常说的混合编程, 则是通过某种界面(例如 Perl XS, Java JNI)在一种语言中调用另外一种语言实现的二进制模块. 这两种东西是有本质差别的.

求职 : 软件工程师
论坛徽章:
3
程序设计版块每日发帖之星
日期:2015-10-07 06:20:00程序设计版块每日发帖之星
日期:2015-12-13 06:20:00程序设计版块每日发帖之星
日期:2016-05-05 06:20:00
20 [报告]
发表于 2015-07-25 12:39 |只看该作者
Perl6 的设计就是为了解析语言,所以要设计尽可能多的冗余,直到矛盾的边界,来测试 Perl 6 引擎的解析能力。Perl 6 未来的规范可能会大幅度的优化,在有尽可能多的语言构建在 Perl 6 之上后。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP