词法分析和语法分析并发的想法

发布于 2022-09-18 23:15:29 字数 696 浏览 11 评论 0

现在看了几个简单的Compiler的源码,发现语法分析的Function都是调用词法分析的过程,一个一个的获得Token,然后构建语法树。

今天早上起来上WC,突然脑子里面冒出来一个想法:这不是个典型的生产者-消费者问题么?若是在多线程环境下,起两个线程分别跑词法分析和语法分析的Function,再建个缓冲的Buffer,这样前端分析的效率会不会有所提升呢?

欢迎各位拍砖

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(9

蝶舞 2022-09-25 23:15:29

不懂前端的飘过,不拍你
你做什么我都支持你 跟你学习前端技术

[ 本帖最后由 prolj 于 2008-5-17 12:29 编辑 ]

ペ泪落弦音 2022-09-25 23:15:29

没人理我?是不是我的想法太幼稚了

放手` 2022-09-25 23:15:29

原帖由 run_xiao2000 于 2008-5-17 12:17 发表
没人理我?是不是我的想法太幼稚了

一点也不幼稚,有一定道理. 当然实际情况会负杂一些!

囍孤女 2022-09-25 23:15:29

不错的想法

策马西风 2022-09-25 23:15:29

实现起来的应该不会很复杂,尤其要是用Java实现就更Easy了,用C处理互斥和同步没做过。现在工作太忙了,等闲下来准备写个Java的。

刚才又突然想到,再把Buffer中存的Token分组,比如两个Token一组,这样语法分析一次消耗两个Token,是不是可以支持LL(2)或者LR(2),甚至LL(X)和LR(X)算法?呵呵

枫以 2022-09-25 23:15:29

原帖由 cjaizss 于 2008-5-17 12:25 发表
不错的想法

nod,实际上一些基于网格的编译器已经是这么做了,当然还在实验室里.
如果LZ可以再深入一下,继续坚持,这样思想火花就更有价值了.
顶一下

耶耶耶 2022-09-25 23:15:29

原帖由 run_xiao2000 于 2008-5-17 12:31 发表
实现起来的应该不会很复杂,尤其要是用Java实现就更Easy了,用C处理互斥和同步没做过。现在工作太忙了,等闲下来准备写个Java的。

刚才又突然想到,再把Buffer中存的Token分组,比如两个Token一组,这样语法 ...

OK! continue

人间不值得 2022-09-25 23:15:29

原帖由 system888net 于 2008-5-17 12:33 发表

nod,实际上一些基于网格的编译器已经是这么做了,当然还在实验室里.
如果LZ可以再深入一下,继续坚持,这样思想火花就更有价值了.
顶一下

基于网格的编译器???

这位兄弟能否介绍一下这方面的资料?

Thx!

岁月蹉跎了容颜 2022-09-25 23:15:29

原帖由 run_xiao2000 于 2008-5-17 12:38 发表

基于网格的编译器???

这位兄弟能否介绍一下这方面的资料?

Thx!

基于网格的编译器,就是指多CPU或多机环境下,利用多节点(CPU或HOST)并行的处理能力(网格化)来使大型编译能力显著提升.
跟你的思想火花的目的是相似的.

可参考一下grid编程资料和grid 算法的相关资料.
参考归参考,要保持你的思路,否则迷失了自己的思路就得不偿失了

把火花继续下去...

[ 本帖最后由 system888net 于 2008-5-17 12:53 编辑 ]

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文