动态语言和虚拟机实现, 暨介绍一下我设计的一个新型的动态语言(3)
2008-01-09 21:07
363 查看
接下来的任务, 就是逐步考虑语法的细节问题. 前台后台需要同时对照, 权衡利弊, 得到一个比较好的方案.
语言名称:snail (蜗牛, 取意缓慢, 我想我的进度会比较慢, 权当snail为一个核试验场吧, 慢工出细活, 有所创新, 有所发现, 以及一个好用的动态语言引擎, 是本次项目的宗旨)
host: 暂时放在我的一个开源项目中, dedict. 因为还没有里程碑式的成果, 所以作为一个组件存在. 等到0.1版本出来, 和一些朋友交流一下看看. 差不多在考虑是否有必要单独作为一个项目.
语言目标: 通用脚本语言, 不考虑专用平台, 或者专用领域.
开发环境:vc2005, g++, 使用stl和crt, 时刻保证可移植性, 毕竟linux下面的爱好者的力量不可小看了.
基本设计思想:
结合scheme和python. 以一个类python, java的前台, 后台runtime引擎为lisp. 说得理论一点, 就是用S-EXP作为指令集. dict based 语言 区别于c,c++, c#等 stack based的语法.
s-exp的内核会有一个最大的好处, 就是为内核, 微得令人振奋. 连+-*/都不在内核里面支持, 真是令人不幸呢. 这里s-exp就变成了s-code.没有结合律, 没有优先级, 没有表达式, 天哪, 这事多么爽的一件事情啊.
微内核使得高扩展性成了可能, 也是必须的. 可以提供相当丰富的内建扩展. 很多东西都隔离开了, 所以, 某些性能优化狂人, 也可以做一些天书版的性能优化, 作为一个扩展存在.
snail的两大利器, dict, 递归, 还有可以list(语言上可以没有, 不过性能上考虑, 可以保留).
好了, 基本这样就可以了, snail将用慢悠悠的步子, 为大家讲述一个编译的故事, 讲述一个世界的故事..
语言名称:snail (蜗牛, 取意缓慢, 我想我的进度会比较慢, 权当snail为一个核试验场吧, 慢工出细活, 有所创新, 有所发现, 以及一个好用的动态语言引擎, 是本次项目的宗旨)
host: 暂时放在我的一个开源项目中, dedict. 因为还没有里程碑式的成果, 所以作为一个组件存在. 等到0.1版本出来, 和一些朋友交流一下看看. 差不多在考虑是否有必要单独作为一个项目.
语言目标: 通用脚本语言, 不考虑专用平台, 或者专用领域.
开发环境:vc2005, g++, 使用stl和crt, 时刻保证可移植性, 毕竟linux下面的爱好者的力量不可小看了.
基本设计思想:
结合scheme和python. 以一个类python, java的前台, 后台runtime引擎为lisp. 说得理论一点, 就是用S-EXP作为指令集. dict based 语言 区别于c,c++, c#等 stack based的语法.
s-exp的内核会有一个最大的好处, 就是为内核, 微得令人振奋. 连+-*/都不在内核里面支持, 真是令人不幸呢. 这里s-exp就变成了s-code.没有结合律, 没有优先级, 没有表达式, 天哪, 这事多么爽的一件事情啊.
微内核使得高扩展性成了可能, 也是必须的. 可以提供相当丰富的内建扩展. 很多东西都隔离开了, 所以, 某些性能优化狂人, 也可以做一些天书版的性能优化, 作为一个扩展存在.
snail的两大利器, dict, 递归, 还有可以list(语言上可以没有, 不过性能上考虑, 可以保留).
好了, 基本这样就可以了, snail将用慢悠悠的步子, 为大家讲述一个编译的故事, 讲述一个世界的故事..
相关文章推荐
- 动态语言和虚拟机实现, 暨介绍一下我设计的一个新型的动态语言(2)
- 动态语言和虚拟机实现, 暨介绍一下我设计的一个新型的动态语言(1)
- 关注各种高级语言虚拟机(high-level language virtual machine,HLL VM)的设计与实现,泛化至各种高级语言的运行时的设计与实现,也会涉及动态编译、GC、动态语言的编
- 设计一个学生成绩管理系统,实现对学生成绩的动态管理,实现对学生成绩的输入,显示,删除,查找,插入,最佳,保存,计算,排序等主要功能
- 用JavaScript脚本语言设计并实现一个函数,将三位数重新排列输出最大值
- Java语言 设计一个动物声音“模拟器”(用接口实现)
- 【脚本语言】一个简易的语言的设计与实现
- 一个基于约束传播的,玩具级微型计算语言的设计和简单实现
- 由动态类型语言想到IDE应该考虑实现的一个功能
- 大一 PROJECT REPORT#1 设计一个基于C的简单语言,并为其写编译器,汇编器,虚拟机
- oc是一个全动态语言,oc的一切都是基于runtime实现的!
- 一个脚本设计语言的设计与实现
- 实现一个SLR(1)的动态语言解释器
- 群上出的一个算法题,上我的解,大家可以用自己会的语言实现一下哦,我用的php
- 用 Lua 实现一个微型虚拟机-基本篇
- Xilinx ISE14.1用Verilog语言实现一个半加器并测试
- 设计并实现一个LRU Cache
- C#第1次试验(4)设计一个程序,输入10个数存入数组中,然后实现冒泡排序
- DAO设计模式---实现一个简单的注册(中)
- CGLib动态代理原理及实现的一个小例子