2016-04-27 18:18 GMT-05:00 Yichun Zhang (agentzh) <age...@gmail.com>:
> 2016-04-27 15:12 GMT-07:00 Zoom.Quiet:
>> RML~ 嗯哼, 俺说错了,
>> 应该是 UML, IBM 收购的统一模型描述语言,
>> 现在没有人直接用了,只是用其发明的一系列图元...
>>
>
> UML 感觉适合给人看,适合作为机器的输出,而不是作为机器的输入。比如我大学时曾经给 perl 写过一个
> UML::Class::Simple 的模块,从 perl 面向对象库生成 UML 类图,确实也用到了 Graphviz:
>
> https://metacpan.org/pod/UML::Class::Simple
>
> 其实我们这里关心的是既适合给人看又适合给机器看的表示方法。所以过于依赖人类直观的方式并不适用,因为机器的“直观”跟人类很不一样,嘿嘿。
>
>> SQL 的确是有数字自洽气质的 DSL,
>> 问题在, 基本上所有产品经理即使有数学素养,也没有那个时间来进行逻辑严密的描述...
>> 所以,以文字为基础的 DSL 如果不能强制用图形的方式来表述,
>> 总是引发各种结构性内部崩溃...
>
> 其实,我多年前在雅虎中国时用第一代的 OpenResty 建立的搜索平台,就是允许产品经理直接在 web UI 上面写类似 SQL 的
> DSL 来自己 DIY 新的搜索小产品的。嘿嘿。效果好极了,工程师至多 review 一下就直接推送上线了 :)
>
Yahoo! 工程师太幸福...
> 当然了,SQL 只是一个例子,而且我觉得是一个成功的例子。我想说的是,其实自然语言不一定是最合适的业务语言。虽然可能大多数人第一反映是使用自然语言。某些场景下,严格定义的自然语言的某个子集可能是非常合适的。其实语言是和抽象方式密切相关的,语言从某种意义上其实决定了思维的方式和边界。从好的抽象方式倒推语言,在实践中可能反而更加容易。
>
是也乎,( ̄▽ ̄)
无法同意更多,其实,自然语言中 80% 都是传输验证用的加盐...
类似任何一种编程语言的关键词,
其实就是自然语言中抽取的一个子集,
只允许使用极少数词汇, 配合数据结构,来严密描述一切,
类似 脑残语言 那种,只有 ._ 以及空格 三种符号的语言也是可以编程运行的,
电报码也是一种自然语言极度抽象后的结果.
所以,其实,现在很多 DSL 都直接使用 Python 的形式的,
这也说明, 各种自然语言的抽象方案中, Python 可能已经是最好的平衡点了...
>> 哈, 所以, 解析 Graphivz 的图形脚本来完成应用生成,
>> 可能是更加自然的...
>> 因为 PM 同时有了可以向上汇报的系统框架图
>>
>
> 感觉不太靠谱,因为 Graphviz 的脚本是面向点线图的,而不是直接面向高层逻辑,中间隔了一层抽象,有效性会大打折扣。个人看法哈。
>
> Regards,
> -agentzh
>
> --
> --
Life's Pathetic, Let's Pythonic! 人生苦短, Python是岸!
俺: http://zoomquiet.io
授: http://creativecommons.org/licenses/by-sa/2.5/cn/
怒: 冗余不做,日子甭过!备份不做,十恶不赦!
KM keep growing environment culture which promoting organization be learnning!