Atitit.编程语言and 自然语言的比较and 编程语言未来的发展

1. 单词的间隔靠空格,编程的单词的间隔靠分界符..1

2. 语句分界符:自然语言使用逗号,编程语言使用分号1

3. 换行1

4. 段落and  fun method2

5. 上下文相关2

6. 操作泛型化2

7. 动词和名词之间的互换性2

8. 词类的判断3

8.1.1. 词类划分的形式标志3

8.1.2. 自然语言中的指代词(你、我、他、它等等)好比编程语言中的“指针(point)”。4

8.2. 这类疑问句似乎在编程语言 是包括函数在内的“表达式”。4

8.3. 语句分析的“终极”在哪里?4

9. 词法检查4

10. 句法检查5

11. 一个类型系统。  自然语言中常用’token',编程语言常用‘instance’。5

12. ref6

1. 单词的间隔靠空格,编程的单词的间隔靠分界符..

括号 逗号  stop 句号

2. 语句分界符:自然语言使用逗号,编程语言使用分号

3. 换行

自然语言很少的中间做..编程语言很多中个..

作者:: 绰号:老哇的爪子 ( 全名::Attilax Akbar Al Rapanui 阿提拉克斯 阿克巴 阿尔 拉帕努伊 ) 汉字名:艾龙,  EMAIL:1466519819@qq.com

转载请注明来源: http://blog.csdn.net/attilax

4. 段落and  fun method

编程靠fun method来定义段落..

5. 上下文相关

编程语言跟个自然语言都是上下文相关的..业务角度...

技术上的ast绝大部分还是上下文无相关的.

6. 操作泛型化

自然语言中存在一些“ 泛义动词 ” ,例如汉语中的“打” , “搞” , “干”„„, 英语中的“ get ” , “ take ”等。它们的进一步的具体含义要由这些动词所涉及 的对象来确定。例如: “打毛衣”中的“打”应理解为“编织” ,   “打篮球” 中的“打”应理解为“玩” ,   “打开水”中的“打”应理解为“取得” ,等 等。

l

在面向对

在面向对象的编程语言中,也有类似的“动态绑定(Dynamic Binding)”机 制:一个函数名或者子程序名字的具体含义要在“运行时”依据所涉及对象在当时的指的类型来决定

数据:常数、变量名。它们对应于自然语言中的名词。

l 其他:起连接作用、用来表述token 之间的关系的符号,例如if, then等等。 它们对应于自然语言中的连接词、感叹词等等

7. 动词和名词之间的互换性

在自然语言中,有一个引人瞩目的现象,那就是“名词和动词之间的呼唤性”。这是因为,“词”或者token是用来表达“概念”的,而一个概念往往有多种侧面。所以自然语言中常常出现用同一个“符号”来表达不同的侧面的现象。举例来说:  “钉”本来是名词,但是可以转化,作为动词来使用:我把画钉在墙上

函数十编程走十中个.不个fun trans as data..

8. 词类的判断

从语法分析的角度看,对词或 token 进行分类的依据是它的语法功能。从语言使用者的角度看,则是他们的使用方式。因此如何对词或 token所属类别进行判断乃是一件至关重要的事情。

不管在自然语言中,还是在编程语言中,判断一个词或者 token 的类别的办法基本上是两种:词典 和 词本身所携带的形态标志。

词典中提供的信息

在编程语言中,为判断一个 token 的类别而提供的“词典”有两种:

1. 一种是语言中“先验地”规定好了的外部词典。例如关键字和一些保留字。

2. 另外一种是编程人员(用户)临时定义的内部词典,这就是程序中的 declaration.

8.1.1. 词类划分的形式标志

如果能够从词或 token的外形(形式上的)特征就能判断出他是属于哪一类,那么无论从“书写者撰写”的角度,还是从“阅读者理解”的角度,都能够大大减少出错的机会。

在某些编程语言(例如Visual Basic)中,如果一个变量没有在任何地方加以声明,也可以从变量名字的外形上看出它的类型。例如:名字以%结尾的变量是?整数?, 名字以&结尾的变量是?字符串?,名字以&结尾的变量是?浮点数?等等。

英语中,在某种程度上也有类似的机制,例如:以tion, ing 结尾的基本上是名词。以-lize 结尾的基本上是名词。以-ful 结尾的基本上是形容词。以-ly 结尾的大概是副词。

汉语使用方块字,没有办法添加尾缀,所以没有这样的形态标志。因此大家认为,这一现象给汉语的计算机处理增加了困难。不过话不能说得太绝对。在某些情况下,汉语还是有“形态标志”的。例如,在名词的前面加“很”“还”之类一般用来修饰形容词的副词,就是在“形态”上指出:后面的这个名词已经转化为“形容词”了。例子如:“同学们说我穿这条裙子很青春。”,“我们排演的这套节目还是很生活的。”,

8.1.2. 自然语言中的指代词(你、我、他、它等等)好比编程语言中的“指针(point)”。

但是自然语言中从不明显地交待:从现在起,“他”表示“张三”,直到遇见新的声明为止。每一个具体的代词指向何方要根据句子域句子之间的前后语义来联系来判断

8.1. 这类疑问句似乎在编程语言 是包括函数在内的“表达式”。

8.2. 语句分析的“终极”在哪里?

计算机语言的编译器在分析计算机程序中的语句时,最终总是要分析到语法规则中所规定的“终极符(terminator)”为止。

9. 词法检查

从词法的角度,语素和语素合成单词是有一定规则的。例如中文的‘碧’字,作为一个语素,和其它语素结合成单词时有一个限制条件,必须是单音语素。如:碧空,碧蓝,碧绿;但是,碧天空,碧宝蓝等就不合法了。程序设计语言的单词(称作identifier,标识词)也有着类似的严格规定。例如,任何identifier必须以字母或下划线开头,像 bilan、 _blian等就是合法的identifier,而23bilan、@bilan就属于非法的。任何一个identifier中间不能有空格,否则非法

10. 句法检查

从句法的角度,有类似自然语言的条从句:if x < y then print x +y;
意思是,如果两个identifier所代表的数不相等且x小于y,那么,将x所代表的数和y所代表的数相加,然后将结果打印出来。

从语义的角度,任何一个identifier都可以定义为不同的类型。例如 name可以代表‘张三’,age可以代表25
String name = ‘张三’;

程序设计语言中关于语法和语义的定义是非常严格、明确的,不能模棱两可。例如,单复数的定义,
在汉语中,根本就是残缺的,只有在指人类实体是可以‘可选地’用‘们’,而且用法非常复杂。英语简单一些,用加s的方式表达。但有些单词单复数一样,如equipment,有些单词只有复数没有单数,如alms。无法只从形态上判断是单复数。
而程序设计语言就没有这样的问题:
任何定义了品词的identifier都是单数名词。而复数名词则需要一个特定的词类,通常叫做数组,或者叫做’表‘。例如

11. 一个类型系统。  自然语言中常用’token',编程语言常用‘instance’。

这些只是编程语言和自然语言的表面的异同。更本质的共通点,我觉得是二者之间都有一个类型系统。
谈到类型,就要引入另一个术语,自然语言中常用’token',编程语言常用‘instance’。我们经常重复已经说过的话

当然,我们有时需要区分类型和实例。自然语言的办法是加限定词。你的朋友刚想拿一块糖,你说,不是叫你吃这块糖,而是那块(当然在这种情景下必须有身体语言辅助:你得指着某一特定的糖块)。‘这’和‘那’还是很模糊,一定要明确,恐怕就要加更多的限定、形容

12. ref

自然语言与机器语言的比较 南京廖华.htm

自然语言和程序设计语言的某些共通点.htm

Atitit.编程语言and 自然语言的比较and 编程语言未来的发展相关推荐

  1. 新预训练模型CodeBERT出世,编程语言和自然语言都不在话下

    2020-02-25 10:56:25 选自arXiv 作者:Zhangyin Feng等 机器之心编译 参与:魔王.蛋酱 对于自然语言处理从业者来说,BERT 这个概念一定不陌生,自从诞生以来,它在 ...

  2. 语言身高预测实验注意事项_?新预训练模型CodeBERT出世,编程语言和自然语言都不在话下...

    选自arXiv 作者:Zhangyin Feng等 机器之心编译 参与:魔王.蛋酱 对于自然语言处理从业者来说,BERT 这个概念一定不陌生,自从诞生以来,它在诸多任务检测中都有着非常优秀的表现.近日 ...

  3. python编程语言的缺点-常见的AI编程语言优缺点比较,程序员千万不要入错行!...

    原标题:常见的AI编程语言优缺点比较,程序员千万不要入错行! 人工智能编程是一种技术的提升,为不同公司的运营和人们的生活带来了极高的效率和最佳效益. 人工智能为不同的行业带来了另一种智能技术,其潜力的 ...

  4. python 编程语言排行榜_2019年6月编程语言排行榜:Python 排名飙升,三年内有望超越Java...

    TIOBE 6 月编程语言排行榜 更新已发布,排名前三的依然是:Java, C, Python. 本月Python的TIOBE指数再次创下8.5%的历史新高.如果Python能够保持这样的速度,那它完 ...

  5. 哪种编程语言好找工作_哪种编程语言可以工作? 为了周末?

    哪种编程语言好找工作 随着新的,有趣的人们为我们写作,并分享他们在开源技术方面的专业知识和经验的乐趣,我们的作家社区每个月都在增长. 因此,它们充满了令人着迷的信息也就不足为奇了. 只是在问发布它的正 ...

  6. 编程语言理解3-目前主流的编程语言有哪些,分别的应用场景是什么

    编程语言 编程语言排名:https://www.tiobe.com/tiobe-index/ 参考:https://zhuanlan.zhihu.com/p/68510169 C:嵌入式.操作系统用的 ...

  7. 2020年编程语言趋势解读:编程世界之未来握于谁手?

    来源 | PolkaBase 作者 / ShawnRingLin 责编 | Carol 出品 | 区块链大本营(blockchain_camp) 2019年关将至,也意味着2010年代即将过去,迎来2 ...

  8. 容联云AI商业大会:在商业场景下,自然语言处理如何联动决策智能共同发展?

    在刘杰看来,如何将企业价值拆解为人的价值,再抽象为"沟通"技术,分为四步:理解.共情.表达.策略.落地到具体的产品中,即四种技能:更理解人.懂得共情.更人性化的表达.懂得说话策略. ...

  9. python语言是一种高级通用编程语言-2019年十大顶级编程语言:会这些的程序员薪资有多高?...

    如今,各类软硬件产品不断被开发出新的功能,其相应的程序代码也成为人们所熟知的众多现代与新兴技术的核心组成部分. 目前世界上能够查询到的编程语言有近600多种,包括通用的开发语言 C. C++.JAVA ...

  10. 编程语言大比拼:我眼中最佳编程语言

    目录 一.Python优势的评估标准 (一)易用性. (二)执行效率. (三)语言功能特性. (四)工具生态环境. (五)开发者社区. 二.Python的优点 (一)易用性 (二)高效的开发工具和丰富 ...

最新文章

  1. nginx:模块讲解
  2. 忘记mysql数据库密码时进行修改方法
  3. UVA - 10480 Sabotage(最小割-最大流+输出割边)
  4. 浅析Entity Framework Core中的并发处理
  5. Asp.net+Jquery实现用户信息异步验证
  6. python中reload作用_import reload __import__在python中的区别
  7. Uvalive 3713 - Astronauts(2-SAT)
  8. 拓端tecdat|python对NOAA天气数据格式转换
  9. es 安装拼音分词器 以及使用
  10. 计算机科学与技术的职业资格,软件水平考试是专业技术资格还是职业资格
  11. mt6592android7,实用八核处理器 MTK MT6592M完全解析
  12. 树莓派开机自启动opencv程序脚本及报错分析及拓展
  13. ceph monitor paxos算法
  14. 等保(公安部82号令)
  15. idea智能提示设置和修改提示快捷键
  16. ListView缓存机制小结
  17. 2012中国移动信息化高峰论坛大会资料免费下载
  18. BIOS、UEFI、Boot Loader都是些什么
  19. 如何通过一张图片找到你的位置?
  20. 子串查找(Hash)

热门文章

  1. McBSP初始化以及和EDMA的结合使用(C64X DSP)
  2. [python]上传文件验证
  3. OpenGL快速入门
  4. hive字段名、注释中文显示问号
  5. 在线数据链路跟踪的平台化发展及思考
  6. Hexo next博客添加折叠块功能添加折叠代码块
  7. 域名被封(微信)后的思索
  8. 2016.7.27 VS搜索正则表达式,在UltraEdit中可选用Perl正则引擎,按C#语法搜索
  9. MySQL-快速入门(17)MySQL Proxy,读写分离,负载均衡
  10. [Linux]在本地修改Kali Linux系统的root密码