社区精选终于实现了一门属于自己的编程语言

前言

都说程序员的三大浪漫是:操作系统、编译原理、图形学;最后的图形学确实是特定的专业领域,我们几乎接触不到,所以对我来说换成网络更合适一些,最后再加上一个数据库。

这四项技术如果都能掌握的话那岂不是在IT行业横着走了,加上这几年互联网行业越来越不景气,越底层的技术就越不可能被替代;所以为了给自己的30+危机留点出路,从今年上半年开始我就逐渐开始从头学习编译原理。

功夫不负有心人,经过近一个月的挑灯夜战,每晚都在老婆的催促下才休息,克服了中途好几次想放弃的冲动,终于现在完成了GScript一个预览版。

预览版的意思是语法结构与整体设计基本完成,后续更新也不太会改动这部分内容、但还缺少一些易用功能。

特性

首先来看看保留环节,GScript是如何编写helloworld的。

hello_world.gs:

println(helloworld);gscripthello_world.gshelloworld废话说完了接下来重点聊聊GScript所支持的特性了。

后文会重点说明每一个特性。

例子

除了刚才提到的helloworld,再来看一个也是示例代码经常演示的打印斐波那契数列。

voidfib(){inta=0;intb=1;intfibonacci(){intc=a;a=b;b=a+c;returnc;}returnfibonacci;}funcint()f=fib();for(inti=0;i5;i++){println(f());}输出结果如下:

整体写法与Go官方推荐的类似:


转载请注明:http://www.92nongye.com/txjg/txjg/204627116.html