Z语言是一门个人向的专注于学习和探索的编程语言。
我的设计目标是:做世界上最强的玩具语言!
Z语言的重心放在编程语言知识的学习和分享上。 更注重内容的广度而不是深度。麻雀虽小,五脏俱全。 别人有的我都有,但是并不多。 深度上则是由浅及深,换句话说就是我学了多深,就写多深。
Z语言最大的特色就是“面向场景编程”,且什么场景都有可能支持。
现阶段,Z支持的场景有:
z run
z build
可以生成Linux和Windows两个版本的可执行文件z c
可以将Z语言转译成C语言,嵌入到任意C生态。z py
可以将Z语言转译成Python,嵌入到任意Python生态。z js
可以将Z语言转译成JavaScript,嵌入到任意JS生态。Z语言的实现放在https://gitee.com/z-lang/zc工程里。
《Z语言炼成记》这本书是Z语言实现的配套书籍, 我会把设计和开发过程中的点点滴滴都记录下来。 用这种方式来记录,希望能够提供更真切的“临场感”。
虽然本书分了章节,但每一节基本可以算做是一篇日志。 我每做出一点新功能,就就更新一节,并打上一个tag。
每个tag都尽量保测试通过,可以运行;如果后来发现问题,会打相应的补丁tag。
关于Z语言本身的介绍,可以参看引言中的“Z语言是什么”一节。
目标: - [x] 第五章:自定义函数、模块 - [x] 添加基本数据类型:浮点数 - [ ] 第六章:自定义类型、数组、集合、字典、JSON - [ ] 基本的JS导出支持:可以跑动一个简单的Canvas程序。
生病住院,本月进度很少。
结果:由于《AI图形引擎一书》焦点转移,本月Z语言目标未达成。
结果:
Z语言v0.1版包括如下内容:
SOP
C生态:
Python生态:
JS生态:
如果能做到这个地步,Z语言应当已经比较成熟,且打通了C/Python/JS的生态,拥有了完整的应用库了。
这时候就可以开始实现我最初的梦想了:用Z语言开发自己的应用。
我大致有如下几个方向的设想:
Zaige引擎是我的最终目标,也是我学习并开发Z语言的初衷。 这个引擎需要同时打通C/Python/JS的生态,所以我才会选择它们作为Z语言的目标语言。 这个引擎已经开始了最初的开发工作,并且会伴随着Z语言一起发展。
Zaige引擎作为Z语言的驱动工程,与Z语言的关系类似于Unix与C,或者Firefox与Rust。
Zaige工程地址参见:https://gitee.com/z-lang/zaige。
它也有一本开源书:https://gitee.com/z-lang/zaige_book。
其他的几个项目,随着Z语言的发展,我会在合适的时机开启。也欢迎大家一起来开发!
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。