智语言语法说明

智语言

智语言是一款完全中文的解释编程语言,运行时被翻译成Javascript。 所有Javascript 的语法与组件可以直接使用。智语言精心设计了中文语法部分。 在讲智语言的语法之前我先介绍一下智语言的设计理念。
智语言的设计理念,智语言可以表达任何需要电脑(机器人)完成的逻辑。 智语言是一种解释语言可以支持任何的高级语法,让使用者更加舒服, 让使用者感觉像在使用自然语言。 因为解释语言拥有高级特征,所以性能会比其他编译语言性能更低。 庆幸的是现在电脑的计算速度飞快, 解释语言有很大的使用空间。 目前智语言还处在婴儿期(0.8版本),但是因为使用Javascript的技术, 各种功能都非常稳定,各种特性还在增加中。对于高性能的使用场景, 未来的智语言版本会提供语言翻译功能, 将智语言的执行逻辑完整的转化为其他编译语言。 智语言的设计目标是,成为人类连接计算机的最高级语言。

语法说明

变量

数字型:

定义 年龄 = 12;
定义 长度 = 5.5;

字符串型:

定义 姓名 = "张三";
定义 文章标题 =‘标题‘;
定义 文章内容 =` ${文章标题}
中文编程改变世界
`;

单引号,双引号都是表示字符串。 最强大的是反引号,在它里面可以嵌入变量,当模版使用

布尔型:

定义 是否完成 = 否;
定义 是否星期天 = 是;

简单类型只有3种。复杂类型包括 数组、对象、函数等,将在后续介绍。

基本的代码结构

代码语句结束时,使用换行直接代表语句结束。
使用 ; 分隔代码可以在一行中放入多条语句。
{} 表示代码块。其中可以放多行语句。

变量为空的表示:

定义 选中的汽车 = 空;
运算

赋值运行:

定义 a = 10;定义 b = 12;

加、减、乘、除运行:

c=a+b;c=a-b;c=a*b;c=a/b;

自(加、减、乘、除)运算:

a+=1;//a变量自加1。相当于 a=a+1;
a-=2;a*=3;a/=2;

字符串运算:

定义 a="中国"; 定义 b="人";
a = a + b;
a += "龙"; //自加运算。

比较(布尔)运算:

定义 a=5; 定义 b=10;
定义 c= a==b; //判断 a与b是否相等 ,c的值为 否
定义 c= a<b; 小于="" ,c的值为="" 是="" 定义="" c="a<=b;" 小于等于="">b; //大于 ,c的值为 否
定义 c= a>=b; //大于等于 ,c的值为 否
流程控制

如果:

定义 a = 10;定义 b = 12;
如果(a>b){
    思成.打印("a>b");
}

如果,否则:

定义 a = 10;定义 b = 12;
如果(a>b){
    思成.打印("a>b");
}否则{
    思成.打印("a<=b");
}
数组

建立数组:

定义 商品数组 = [];//空数组
定义 书本数组 = ["aa","bb"];
定义 书本1 = 书本数组[0];//访问数组的元素,下标从 0 开始
商品数组.添加(123);//向数组中添加元素
函数

定义函数:

函数 计算(数1,数2,数3){
    返回 数1 + 数2 + 数3;
}
定义 计算2 = 函数(数1,数2,数3){  //将函数赋值给变量也经常使用。
    返回 数1 + 数2 + 数3;
}
定义 结果;
结果 = 计算(12,33,44);  //调用函数
结果 = 计算2(12,33,44); // 计算2 是一个函数类型的变量,使用起来一模一样。 
对象

定义对象:

定义 学生={姓名:"张三",年龄:13};
思成.打印(学生.姓名);
思成.打印(学生["姓名"]);//使用变量也行
定义 坐标={};  //空对象
坐标.x = 12;坐标.y = 100;   //创建对象属性 并且赋值。

对象的函数:

定义 汽车={品牌:"法拉利"};
汽车.行驶 = 函数(){
    思成.打印("行驶 .... " + 我.品牌);  // 使用“我”关键字,应用对象本身
}
汽车.行驶();    //调用对象的函数
时间: 2024-10-20 18:36:10

智语言语法说明的相关文章

UltraEdit 增加语言语法着色

UltraEdit是一个超级好用的文本编辑工具,可以自行添加不同的语言着色配置,实现按语法着色显示.例如Java,JavaScript中的关键字,字符串等显示为不同颜色. 在以往较低的版本中,添加一门语言着色配置需要在wordfile中添加,不但比较繁琐,而且容易出错.在高版本中(比如V18及以上版本),可以讲语言语法着色文件直接拷贝入相应的目录即可. 这里以Fortran语言语法着色配置文件为例,叙述配置步骤: 1.从UltraEdit网站上下载着色配置文件 http://www.ultrae

VEX IR语言语法

/*---------------------------------------------------------------*//*--- High-level IR description ---*//*---------------------------------------------------------------*/ /* Vex IR is an architecture-neutral intermediate representation. Unlike some

C语言语法笔记 – 高级用法 指针数组 指针的指针 二维数组指针 结构体指针 链表 | IT宅.com

原文:C语言语法笔记 – 高级用法 指针数组 指针的指针 二维数组指针 结构体指针 链表 | IT宅.com C语言语法笔记 – 高级用法 指针数组 指针的指针 二维数组指针 结构体指针 链表 | IT宅.com C语言语法笔记 – 高级用法 指针数组 指针的指针 二维数组指针 结构体指针 链表 本文由 arthinking 发表于315 天前 ⁄ itzhai.com原创文章 ⁄ C语言 ⁄ 评论数 3 ⁄ 被围观 1,775 views+ 指针数组: 在一个数组中,如果它的元素全部都是指针类

Go语言语法汇总(转)

Go语言语法汇总 分类: 技术2013-09-16 14:21 3007人阅读 评论(0) 收藏 举报 go语言golang并发语法 目录(?)[+] 最近看了看GoLang,把Go语言的语法总结了一下,做个快速参考 数据类型 var varName type,var var1,var2… type,var varName type = Value,var varName1,varName2 type = Value1,Value2,var varName1,varName2=Value1,Va

带你一起学习C语言语法

<带你学C带你飞>第一季讲解内容:C语言语法,我们会讲变量.数组.函数.指针.结构.标准库这样一些纯粹的C语言知识. 基本上你大学第一学期学的就是咱第一季的内容,我知道很多朋友学完C语言一时感觉没什么用?然后大一学完大二就还给体育老师了--咳咳,毕竟现在是一个连程序都要刷颜值的年代--使用C语言,确实不容易写出外观炫酷的程序,但你要知道,往往一个只是好看的程序,其实更需要的是一个优秀的美工. 课程目标 C语言项目开发 适合人群 零基础 课时列表 课时1:第一个程序 课时2:打印 课时3:变量

L脚本语言语法手册 0.10版

L脚本语言语法手册 0.10版 赵亮       简  介 L脚本语言是一个轻量级的,旨在接近自然语言的编程语言,目前支持在中文.英文基础上的编程.并可扩展为任意语种.L脚本语言的语法结构简单,程序结构相对松散,易学易用. 目前L脚本语言仍处于开发初期,功能尚不完善.目前提供了一个简单的源码编辑器,建议使用notepad++或者ultraedit进行源码编辑. 目录 一.        介绍.. 2 二.        注释.. 3 三.        对象定义和引用.. 3 四.       

第01节:Linux 内核中的 C 语言语法扩展

1.1 Linux 内核驱动中的奇怪语法 大家在看一些 GNU 开源软件,或者阅读 Linux 内核.驱动源码时会发现,在 Linux 内核源码中,有大量的 C 程序看起来"怪怪的".说它是C语言吧,貌似又跟教材中的写法不太一样:说它不是 C 语言呢,但是这些程序确确实实是在一个 C 文件中.此时,你肯定怀疑你看到的是一个"假的 C 语言"! 比如,下面的宏定义: #define mult_frac(x, numer, denom)( { typeof(x) quo

每天一点Go语言——Go语言语法基础及基本数据类型

每天一点Go语言--Go语言语法基础及基本数据类型 一.Go语言基础语法 ? 上篇Go语言讲解中谈到了有关Go语言的基本组成结构,该小节就来讲述有关go语言的基础语法.Go语言程序由多个标记组成,如:关键字.标识符.常量.符号.字符串. ? 行分割符--一行表示一个语句结束,无需写":".当然,你可以将多条语句写在一行,并且使用":"号区分,但是不推荐这样写开发代码. ? 注释在本文就不多说了. 标识符 ? 如果说变量是shell入门的第一道关卡,那么可以说,标识符

C语言语法知识归纳

一.C语言可以在不同的源文件中定义相同名字的全局变量吗? 不使用static的时候,两个不同的源文件都可以正常编译,但会出现链接错误,原因是有两个地方存在相同的变量,导致编译器无法识别应该使用哪一个. 使用static的时候,你所定义的static变量如果是局部的话,编译的时候编译器会将其重新命名,其他文件就不会使用到这个文件的static变量了,这样就使得只在本文件内有效:如果是全局的话,就全局可见,共享同一块内存空间,即两个文件中全局变量的物理地址相同. 二.C语言中 void *指针与空指