Logo (程序语言)

✍ dations ◷ 2025-07-01 15:18:40 #程序设计语言

Logo是一种计算机程序设计语言,在1966年由西摩尔·派普特和Wally Feurzeig设计,设计Logo的初衷是为了向儿童教授计算机编程技能。Logo一词源自希腊语逻各斯(logos)。

Logo的原型来自另一个计算机语言LISP,派普特修改了LISP的语法使其更易于阅读。Logo常被称作没有括号的Lisp。

Logo是一种解释型语言,和其他语言不同的是,它内置一套海龟绘图(Turtle Graphics)系统,通过向海龟发送命令,用户可以直观地学习程序的运行过程,因此很适于儿童学习。它亦适合用作数学教学。

Logo继承了Lisp的“表”的概念,所以在函数处理等方面拥有强大的能力,因此Logo不仅是初学者学习程序设计的良药,更是有特殊需求的计算机科学家的好帮手。

海龟绘图使得Logo用户可以通过简单的编程创作出丰富多彩的视觉效果或图案。假想一只带着画笔的海龟可以接受简单的命令,例如向前走100步,或者左转30度。通过对这只海龟发送命令,可以让它绘制出较为复杂的图形,例如正方形,三角形,圆等。

海龟的移动相对于它本身所在的位置。例如,命令"左90"意味着让海龟左转90度,学生可以站在海龟的角度来思考它将如何执行命令,这使得程序设计更加形象化,也更易于理解。

初学者可以不需要任何程序设计的知识而直接向海龟发送命令。学习海龟作图将会让用户懂得一些关于几何学方面的知识。而一旦掌握了海龟作图的基础之后,引入程序设计的概念也变得更加容易。下面看一些例子:FD是前进LT是左转画一个正方形

FD 100LT 90FD 100LT 90FD 100LT 90FD 100LT 90

由于输入的语句都是重复的,可以用重复语句简化为:

REPEAT 4 

上面两段程序得到的结果相同,由于第一个程序几乎都是重复代码,因此我们用‘REPEAT’让Logo重复同样的命令4次,同时还使用了命令的缩写。为了重复使用上述代码,我们可以用‘TO...END’定义过程:

TO CHAIR REPEAT 4  FD 200 END

一旦定义了‘CHAIR’过程,就可以直接使用调用它得到结果,为了使得这个过程更加通用化,我们传递一个边长参数:

TO CHAIR :long   REPEAT 4    FD :long*2ENDCHAIR 100

从简单地发送绘图命令,到定义一个通用的绘制多边形的过程,用户不但掌握了程序设计上的一些基本思想(传递参数、重复等),而且对几何学上正多边形的理解也加深了。

Logo的方言NetLogo、StarLogo进一步深化了Logo的海龟绘图概念,可以产生出成百上千个独立的海龟(被称为代理)来模拟诸如物理、生物或社会等复杂系统。建模者可以对众多海龟并行发送指令,来观察微观个体行为与个体之间相互影响产生的宏观样式之间的联系。

相关

  • 帕金森帕金森综合征(Parkinsonism)是和运动机能相关的临床综合征,其特征是颤抖、运动功能减退、僵硬(英语:Rigidity (neurology))及平衡障碍(英语:balance disorder)。在帕金森病(PD)患者身上
  • Be2s22, 2蒸气压第一:899.5 kJ·mol−1 第二:1757.1 kJ·mol−1 第三:14,848.7 kJ·mol−1 (主条目:铍的同位素铍(Beryllium,旧译作鋍、鑉、鋊)是一种化学元素,符号为Be,原子序为4,属
  • 格林尼亚弗朗索瓦·奥古斯特·维克多·格林尼亚(法语:François Auguste Victor Grignard,1871年5月6日-1935年12月13日),法国化学家,诺贝尔化学奖得主。他于1871年5月6日出生于法国瑟堡,193
  • 攀枝花市攀枝花市,旧称渡口市,是中华人民共和国四川省下辖的地级市,位于四川省西南部边缘。市境东面与北面同凉山彝族自治州接壤,西面与云南省丽江市相连,南面与云南省楚雄彝族自治州为邻
  • 玛丽·萨普玛丽·萨普(英语:Marie Tharp,1920年7月30日-2006年8月23日),美国女性地质学家、海洋学家。她与布鲁斯·希森(英语:Bruce C. Heezen)合作绘制了世界上第一幅科学性的全球海底地形图。
  • 黄耀祥黄耀祥(1916年8月17日-2004年2月22日),广东开平人,中国水稻遗传育种及其应用基础理论研究专家。曾任广东省农业科学院副院长、研究员。广东省人大常委、第五届全国人大代表。1995
  • 新巴比伦王国新巴比伦王国(前626年-前539年),由迦勒底人所建,大约处于古代美索不达米亚南部。公元前626年建立,在尼布甲尼撒二世统治时国势达到鼎峰,最后在公元前539年被波斯人消灭。幼发拉底河
  • 美国农业农业是美国的主要工业,同时美国也是一个粮食净出口国。根据2007年农业普查,美国有220万个农场,占地面积373万平方公里(9亿2200万英亩),平均每个农场占地169公顷(418英亩)。虽然每个
  • 波斯尼亚-波德里涅州波斯尼亚-波德里涅州位于波斯尼亚赫塞哥维纳东南,与萨拉热窝州、索科拉茨区、福察区相邻,首府戈拉日代。
  • 波格拉尼奇内波格拉尼奇内(俄语:Пограничный)为俄罗斯远东联邦管区滨海边疆区波格拉尼奇内区境内的一座市级镇,也是波格拉尼奇内区的行政中心。位在中俄边界东方15公里、海参崴西