博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
将语法从词法解析器中分离出来
阅读量:6270 次
发布时间:2019-06-22

本文共 393 字,大约阅读时间需要 1 分钟。

hot3.png

通常词法解析器就是完成某种语法的解析,所要处理的语法解析规则是和解析器代码糅合在一起的。这样写通常很快。而生成的数据类型通常是词法单元的字符串数组。

而将语法从词法解析器中分离出来,可以简化解析器的模型,让解析计算机语言代码成为语法树,成为一种通用的算法,二不同的,只是分离出来的语法数据。

这种通用算法让语言解释器变得简单。而语法文件同样可以作为编译器的后端,将一种代码转换成另外一种代码。

这种技术可以用于语言的转换,不同的语言模型之间,没有对应的语法模型,只能进行算法的变化,才需要使用模板技术。

可以将一种用某种语言编写的应用,移植到另外一的平台上,转换的效率要比人工转换要高很多。

因为要转换的代码所需要的语言解析器模型大大简化,只需要完成对语言的语法描述,就能完成语言的转换。

转载于:https://my.oschina.net/u/563463/blog/1031563

你可能感兴趣的文章
南京大学周志华教授当选欧洲科学院外籍院士
查看>>
计算机网络与Internet应用
查看>>
Django 文件下载功能
查看>>
走红日本 阿里云如何能够赢得海外荣耀
查看>>
磁盘空间满引起的mysql启动失败:ERROR! MySQL server PID file could not be found!
查看>>
点播转码相关常见问题及排查方式
查看>>
[arm驱动]linux设备地址映射到用户空间
查看>>
弗洛伊德算法
查看>>
【算法之美】求解两个有序数组的中位数 — leetcode 4. Median of Two Sorted Arrays
查看>>
精度 Precision
查看>>
Android——4.2 - 3G移植之路之 APN (五)
查看>>
Linux_DHCP服务搭建
查看>>
[SilverLight]DataGrid实现批量输入(like Excel)(补充)
查看>>
秋式广告杀手:广告拦截原理与杀手组织
查看>>
翻译 | 摆脱浏览器限制的JavaScript
查看>>
闲扯下午引爆乌云社区“盗窃”乌云币事件
查看>>
02@在类的头文件中尽量少引入其他头文件
查看>>
JAVA IO BIO NIO AIO
查看>>
input checkbox 复选框大小修改
查看>>
网吧维护工具
查看>>