-
01-介绍
阅读本系列文章时建议先学习C语言基础或从网上查阅相关资料 Alum语言是一门静态类型,语法接近C与Rust,运行在x86_64 Linux平台的语言,对C语言有良好的兼容性,性能接近C(Benchmark: fib(30)), 由笔者使用Rust独立开发。 Hello world这是每个语言经典的第一个程序,对于Alum, 最简单的Hello world如下 123456$import ... -
02-环境搭建
Alum目前不具备跨平台性,仅支持x86_64 Linux平台 安装RustAlum不提供预编译的二进制文件,仅支持从源码编译安装,但Alum语言并不复杂,所以这不会花费很长时间。为了安装Alum,需要先安装Rust,首先,执行以下命令安装rustup程序: 1$ curl --proto '=https' --tlsv1.2 -sSf https://sh.rust... -
03-数据类型
Alum是一门简单的语言,主要用于学习,它包含以下基本类型: int float bool string void T[]同时包括以上的指针类型,即*T, 以及gen类型,其主要用作简单的泛型,另外,Alum还支持T0(Tn, ...)的函数指针类型。 int int相当于C语言中的long long,或Rust中的i64,在内存中占8个字节,其取值范围在-9,223,372,036... -
04-变量
变量是一个语言中重要的部分,大多数Toy Language都会选择在实现四则计算后,实现变量的存储,Alum也不例外,在Alum中,变量的声明与初始化方式如下: 1let var: T = value 例如,声明一个变量i,其类型为int,值为1,代码如下: 1let i: int = 1 需要注意的是,Alum的变量必须在声明的同时初始化,这意味着,即使暂时没有用到它,你也要给他一个值,哪... -
05-代码块
在Alum中,{ }的作用不再局限于创建作用域或用于包裹函数体,他可以看作一个有多个表达式组成的复合表达式,这与Rust比较类似,同时它与普通的表达式别无二致,并且可以产生值。例如: 12345let result: int = { let n: int = 1 let m: int = 2 n + m} 这时,result的值就是n + m,由于独立的...