免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 31538 | 回复: 89
打印 上一主题 下一主题

CU貌似没人研究语言编译器/解释器,我来带个头 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-09-01 13:22 |只看该作者 |倒序浏览
本人在CU首个主题贴,支持下谢谢

感到非常奇怪,大牛应该不少啊,这里,难道大家只安于会使用已有的工具么?仅当有特别需求时才会去创建一种语言么?
我只学过C语言,数据结构,编译原理可能一年后的大四课程才能学到,也没看过相关的书,没接触多种多样的语言,perl, python, ruby, lua, 甚至shell都不熟....但我明白创建一个脚本解释器是不难的。
虽然我不懂用yacc, lex,但仍然可以靠自己的感觉弄出类似的,虽然可能不是怎么地全面。

于是我在众人之前做了这么一种尝试,靠自己空想的方法制作了简单的解释器,与前面所说的,我体验到的语言太少,以至于无法“广泛吸取”多种语言的优点。代码是出来了,是一个又丑又慢又让人受不了的东西,解一个相同的问题用的时间至少是python的4倍,即使如此,我也知足了,因为我知道我的能力无法真正做一个实用的解释语言,这需要再长时间地接触unix及之下的花花绿绿的语言,还需要条理的编译原理基础,还需要广泛的知识面。

在这里我给大家提个醒,为何大家也不去做一做呢?虽然做出的东西不一定能够流行,因为一种语言的流行关键在于是否够实用,够有创意。

创意,通常在实践中产生。

我的第一个语言解释器非常差劲,但我可以在某个点子来了之后创建另外一个,再吸取py, pl, ruby, lua等前辈的优点,针对某个领域,这样或许就能成为一种语言的鼻祖了,唯然有点天方夜谈。

我是这里的新手,也是linux的新手,CU里可能还没人认识我,但我希望能与大家成为好友。
明天大三第一天。
MSN: wenxichang at hotmail dot com
mail: wenxichang at 163 dot com
================================================================
准备策划重新写过(也许是需要很久),少点水,开始收集创意,以及想要的特性,谢谢

[ 本帖最后由 nully 于 2006-9-2 10:12 编辑 ]

Screenshot-prime.i - Kate.png (7.2 KB, 下载次数: 164)

代码示意

代码示意

iinc-std.tar.gz

41.91 KB, 下载次数: 695

源代码

论坛徽章:
0
2 [报告]
发表于 2006-09-01 13:33 |只看该作者
非常不错,相当支持.........
我也在打算写点这样的玩意,你低我两届,就做了这样完整的工作,真是佩服.

论坛徽章:
0
3 [报告]
发表于 2006-09-01 13:36 |只看该作者
这里的大牛们恐怕不是不会做,只是没时间做,或者不想做。他们还要吃饭滴,可能忙于日常的应用开发方面。
不象你是兴趣所致。

支持一下~~ 我也有兴趣,早就想自己写个简单的C编译器。没精力没心思。
有机会和你交流交流!

论坛徽章:
0
4 [报告]
发表于 2006-09-01 13:38 |只看该作者
创建一门语言...

这个 任重而道远呀..


有个问题, 不用yacc, lex
你怎么做语法分析呀?

论坛徽章:
0
5 [报告]
发表于 2006-09-01 13:41 |只看该作者
支持一下楼主,确实以前想过搞搞这个,但能力和时间都有限,并且现在务实了很多,只能去学些网络编程等更实际的东西了.
楼主看过lcc的源码吗?还有本书讲解它,看过一点,就没再看了.

论坛徽章:
0
6 [报告]
发表于 2006-09-01 13:41 |只看该作者
简单的语言 就不用工具 作语法分析了呗......

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
7 [报告]
发表于 2006-09-01 13:44 |只看该作者
太牛逼了!
自叹弗如!
楼主不用 lex/yacc 都能编出这么牛逼的程序,的确是太厉害了。

[ 本帖最后由 flw 于 2006-9-1 13:46 编辑 ]

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
8 [报告]
发表于 2006-09-01 13:48 |只看该作者
有想法是好的,不过太不切合实际了, 起码要学学编译原理.

论坛徽章:
0
9 [报告]
发表于 2006-09-01 13:49 |只看该作者
没办法,老实说,自己接触这方面的东西确实比较少

yacc, lex这些工具是我写得差不多的时候才知道有的...汗,那时想暂停一下看看yacc, 但又怕半生不熟到时什么都做不好。。。

我想平常做开发,应该也可以挤点东西做自己喜欢的东西吧。。。呵呵,应该不占多少时间滴。

以前想看过CM32的代码,全部代码只有100多K,不过后来看不下去了。。。没有什么理论基础。
lcc开源的?
找到一个tiny c compiler, 粉快滴说。

不过还是找早期的python/lua之类的代码来看比较好。。。呵呵

论坛徽章:
0
10 [报告]
发表于 2006-09-01 13:51 |只看该作者
真是英雄出少年啊!



[ 本帖最后由 苏蓉蓉 于 2006-9-1 13:54 编辑 ]
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP