美文网首页码农
Icon编程语言手册 简略翻译版 第一章

Icon编程语言手册 简略翻译版 第一章

作者: FSS_Sosei | 来源:发表于2024-11-05 06:44 被阅读0次

    第一章 关于Icon

    语言内置类型:

    integer and real  ——  整数和实数

    null  ——  空,未被初始化的变量都是这个值

    string  ——  字符串,任意长度

    cset (character set)  ——  字符集,字符串搜索函数使用字符集查找或者跳过的字符

    procedure  ——  过程,更像函数,是带返回值的

    list  ——  列表,列表可以像数组一样被索引。它们也可以用作堆栈和队列。所有列表都是动态分配的,并且可以增长到计算机内存所能容纳的任何长度

    record  ——  记录,每个记录类型都有固定数量的命名字段。它们在其他语言中像记录(或结构体)一样使用。所有记录都是动态分配的。

    table  ——  散列表,散列表将值与键关联起来。任何类型的值都可以用作键。任何类型的值都可以用作值。

    set  ——  集合,是任何类型的值的集合。不表示重复的值,因此无论将一个值插入到集合中多少次,它都只出现一次

    co-expression  ——  共同表达式,是程序中半独立于其他部分运行的部分。它可以用作生成器,在需要时从序列中每次生成一个值,也可以用作协例程,作为并发进程运行

    file  ——  文件

    window  ——  窗口,屏幕上用于交互图形的窗口

    数据值具有数据类型。变量则不然。任何类型的值都可以赋给任何变量。当将不同类型的值放入相同的列表、表和集合中时,您会发现这是非常有用的。但是,您还会发现,您经常会犯为操作使用错误数据类型的错误。与许多其他语言不同,Icon编译器无法告诉您您犯了一个错误。相反,当您运行程序时,您将得到一个错误而终止。

    Icon是一种表达式语言:几乎所有的可执行结构都是表达式,并且可以返回值。表达式级构造和语句级构造之间没有区别。可以在表达式中嵌套控制结构,这在大多数其他语言中是行不通的。你会发现这有时很方便。但是你应该小心;写高度复杂的表达式比读它们容易。

    对于熟悉其他语言的程序员来说,Icon最困难的方面是它的目标导向计算,也就是说,它的回溯控制。大多数语言使用布尔数据类型来控制执行流。在大多数语言中,关系运算符产生布尔值,这些值由if和while来测试。Icon则完全不同,关系运算符不产生布尔值,而是产生成功或失败(也就是说,x := (3<2),想像其他程序语言一样获取布尔结果存变量里是行不通的,变量x还是null)。我们将在第三章花很多时间解释Icon是如何工作的。简单地说,在Icon表达式中,求值可以成功也可以失败。如果表达式成功,则生成一个值。如果失败,则控制返回到先前计算的表达式,以查看是否会生成另一个值。如果该表达式确实给出了另一个值,则控制再次启动,以查看后面的表达式现在是否可以成功。

    相关文章

      网友评论

        本文标题:Icon编程语言手册 简略翻译版 第一章

        本文链接:https://www.haomeiwen.com/subject/jbpadjtx.html