目前我已经初步定下了我的编程语言的一些设定
基于VM和JIT技术
1, 源代码将被编译成单元. 可以打包成一个独立的文件, 类似JAR, 现在假设叫AR吧
2, 用户可以安装执行环境, 安装之后可以执行AR, AR之间的依赖关系由运行时处理. 也就是可以在用户确认的情况下从网上获取依赖的AR包安装到系统.(一个平台)
3, AR可以编译成独立的可执行文件, 其实相当于自解压. 内嵌一个迷你的VM而已. 依赖的单元会压入进可执行文件.(解决发布问题)
4, VM和编译器开源, 可以由开源开发者发展各个平台的VM, 或者可以用于脚本
也就是说该语言的性能应该是托管后的native级别的.
语法
1, 函数式, 函数式会成为主流的
2, OOP, OOP便于构建复杂的软件
3, 内置元编程
编译器可以根据源代码和配置文件生成符合自己习惯的阅读版本代码(或者是图?)
一直在找函数式与数据结构之间的平衡点, 我认为函数式提倡只读的数据结构是出于好意的, 但是我认为编程语言需要支持算法, 也就必须支持非只读的数据结构, 这样可能会破坏函数式的纯粹性 所以很纠结.