社区
Java SE
帖子详情
JBuilder的词法分析器与语法分析器都是用JAVA写的吗?有没有这类的开源项目,我可能需要做一个类似的东西?UP有分!
leeseon
2003-04-11 09:18:01
我想应该是用纯JAVA吧,不过也有可能是链接的C/C++写的函数,我总是怀疑其中的效率,而且有lex与yacc有没有必要非要用JAVA来写,但是用了C之后,会不会影响兼容性呢?请指点!
...全文
165
19
打赏
收藏
JBuilder的词法分析器与语法分析器都是用JAVA写的吗?有没有这类的开源项目,我可能需要做一个类似的东西?UP有分!
我想应该是用纯JAVA吧,不过也有可能是链接的C/C++写的函数,我总是怀疑其中的效率,而且有lex与yacc有没有必要非要用JAVA来写,但是用了C之后,会不会影响兼容性呢?请指点!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
19 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
leeseon
2003-04-25
打赏
举报
回复
今天,下了JLex与CUP,不错,可能是因为是用java来写的原因我觉得比C语言版本好读一点,谢谢各位热心的回答,结帐了。
leeseon
2003-04-16
打赏
举报
回复
最近在忙别的事,没有时间来找这些工具试试,等好试过之后再给大家结帐!
不要太急哟,呵呵
还有什么好的建议?只管UP也行!
flyycyu
2003-04-16
打赏
举报
回复
eclipse
DavidBone
2003-04-16
打赏
举报
回复
up
fatboyslim
2003-04-13
打赏
举报
回复
up
这学期有编译原理,正要做词法分析器,学习!!!
leonzhao
2003-04-13
打赏
举报
回复
看看eclipse的JDT部分源代码吧。
BTW:
eclipse比JB的编辑器强多了。
dunai2003
2003-04-13
打赏
举报
回复
This is where you can download JFlex
http://www.jflex.de/download.html
digifish
2003-04-12
打赏
举报
回复
有两个纯Java的冬冬,和lex/yacc的功能是一样的,叫做JFlex和CUP。我上学期用它们做了一个C compiler.
xiazhihan
2003-04-12
打赏
举报
回复
呵呵,现在有一个开放源代码的IDE,叫什么我忘了,你可以看看啊
superLee
2003-04-12
打赏
举报
回复
两种具有代表性的编译工具:JFlex和CUP。
JFlex和CUP是可以用来实现基于JAVA语言的编译器
词法分析器就类似一个源代码的拼写检查器,一个象JFlex这样的词法工具,从一个指定的文件中读入词法规则,然后生成相应的词法分析器。我们不妨假设某个程序员需要定义一个名为pronto的语言,于是他将语言pronto的有效词法规则写在一个叫'pronto.flex'的文件中。然后再以命令行方式执行操作:'JFlex pronto.flex'。这样他就可以得到一个叫'Lexer.java'的JAVA程序,这个程序就是一个JAVA版本的pronto的词法分析器。
当然,这样一个单独的词法分析器仅有简单的功能,它除了可以告诉你程序是不是完全由合法的单词组成之外不能完成任何其他事情。
象CUP这样的工具,是通过从指定的文件中读入相应语言的语法规则的定义来生成对应的句法程序。我们继续使用虚构的新语言pronto,程序员需要将语法规则写入指定的文件‘pronto.cup’内,然后在命令行下执行‘java java_cup.Main < pronto.cup’,它会生成多个文件。其中有一个文件就是语言pronto的JAVA版的句法分析器,‘parser.java’。
当然,这样一个简单的句法分析器除了能告诉你程序是不是符合语言的语法之外,什么也做不了。我们所要讨论的句法程序将要完成更多的任务。在判断程序正确与否的同时,程序还要调用相应的代码来进行一些编码(例如,读到变量定义的地方时,需要对定义的变量进行记录? )。
wizardfan
2003-04-11
打赏
举报
回复
focusing
findawork
2003-04-11
打赏
举报
回复
谢谢!接分
好好学习!
天天向上!
up
codd
2003-04-11
打赏
举报
回复
up
mercury1231
2003-04-11
打赏
举报
回复
up
leeseon
2003-04-11
打赏
举报
回复
有纯java的Yacc?呵呵,那就好了,是什么,具体的说一下吧!
JOT,我也不明白,不好意思,JAVA我还是初学,请具体的谈谈吧!
leonchew
2003-04-11
打赏
举报
回复
up
saftyfirst
2003-04-11
打赏
举报
回复
up
wangwenyou
2003-04-11
打赏
举报
回复
是纯Java写的,如果你做过关于代码方面的Add-in,就会用到它的JOT。
echou
2003-04-11
打赏
举报
回复
有纯java的yacc工具嘛
pascal
java
编译器_(基于
Java
)编
写
编译器和解释器-第1章:介绍(连载)
本章描述了本书的目标和用到的方法并鸟瞰编译器和解释器的全貌。目标和方法本书讲授编译器和解释器的基本
写
法...用
Java
写
的解释器且包含
一个
交互式的符号调试器(符号调试器即基于符号表,而不是基于机器的指令集、硬...
Java
静态检测工具的简单介绍 - Sonar、Findbugs
静态检查:静态测试包括代码检查、静态结构分析、代码质量度量等。它可以由人工进行,充分发挥人的逻辑思维优势,也可以借助软件工具自动进行。代码检查代码检查包括代码走查、桌面检查、代码审查等,主要检查代码和...
开源大全
Spring Framework 【
Java
开源 J2EE框架】 Spring 是
一个
解决了许多在J2EE开发中常见的问题的强大框架。 Spring提供了管理业务对象的一致方法并且鼓励了注入对接口编程而不是对类编程的良好习惯。Spring的架构...
(基于
Java
)编
写
编译器和解释器-第1章:介绍(连载)
本章描述了本书的目标和用到的方法并鸟瞰编译器和解释器的全貌。 目标和方法 本书讲授编译器和解释器的基本
写
法,目标是呈现给你...用
Java
写
的解释器且包含
一个
交互式的符号调试器(符号调试器即基于符号表,而不
Java
静态检测工具/
Java
代码规范和质量检查简单介绍(转)
静态测试包括代码检查、静态结构分析、代码质量度量等。它可以由人工进行,充分发挥人的逻辑思维优势,也可以借助软件工具自动进行。代码检查代码检查包括代码走查、桌面检查、代码审查等,主要检查代码和设计的一致...
Java SE
62,614
社区成员
307,326
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章