Nim教程【三】
这是国内第一个关于Nim的系列教程
(至少我百度和必应是没有找到类似的教程)
先说废话
言归正传,依然还是介绍Nim的文字打头
Nim的表现力
Nim的编译器、标准库都是用Nim语言实现的
(golang目前应该不是这样,但他们貌似要计划这样做)
内置高级数据类型:strings、sets、sequences等等
拥有本地类型接口的现代类型系统:tuples、variants、generics等等
可自定义的操作符:用户自定义的操作符往往比语言内置的操作符更具有可读性,比如"$="
可以用宏的方式在编译期更改抽象语法树
|
好,继续说语法
关键字block和作用域
不管我们用for还是用while,都会导致开辟一个新的作用域
|
关键字break
break可以迫使程序执行跳出当前作用域
像while、for和block关键字声明的作用域,它都能跳出
|
关键字continue
continue关键字迫使程序马上执行下一次循环
|
关键字when
关键词when起的作用和if...elif....else很相似
当你编写系统级代码的时候可以用when关键字来代替C语言中的#ifdef
因为上面讲到的第三条特性,所以经常会写when false这样的代码,以避免编译器在编译期分析的效果(主要是因为很多东西只有在运行期才能确定)
|
缩进
单条指令,类似这样的代码不需要缩进:
(注意,一定要在操作符、括号开始、逗号结束之后再换行缩进)
你可以用括号和分号来解决问题,比如下面的代码
|
今天就写到这里,喜欢的朋友请帮我点一下推荐
你们的推荐是我写下去的最大动力
下一篇就写到Nim的方法了
推荐一首歌给大家《
三十岁的女人》
超爱民谣,甚至花钱买了把吉他....
另外,强烈建议博客园开发一个客户端版的编辑器
在线写博客实在是太累了
LiveWriter非常不好用
如果博客园没有人力做这个事情,我可以来做啊,