Logo (程序语言)

✍ dations ◷ 2024-09-20 09:01:47 #程序设计语言

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的海龟绘图概念,可以产生出成百上千个独立的海龟(被称为代理)来模拟诸如物理、生物或社会等复杂系统。建模者可以对众多海龟并行发送指令,来观察微观个体行为与个体之间相互影响产生的宏观样式之间的联系。

相关

  • 咯血咳血又称为咯血,是一种症状,指肺或气管中的出血,经由咳嗽而吐出。多半是因为所吐出的痰中带有血丝而被发现。最常见的原因就是支气管炎、肺炎、肺肿瘤、肺结核等疾病。或是使用
  • 约阿希姆·弗兰克约阿希姆·弗兰克(德语:Joachim Frank,1940年9月12日-),德美双籍生物学家。现于哥伦比亚大学任教。他被公认为“低温电子显微镜之父”。2017年与雅克·杜布歇、理查德·亨德森获得
  • 纽形动物门无刺纲 Anopla 有刺纲 Enopla纽形动物门(学名:Nemertina)是无脊椎动物的一个门。 是一类具吻的长带形动物,绝大多数为海洋底栖生活,体长大多不超过二十厘米。 大约有900多种。
  • 小分子小分子(英语:small molecule)是一个有机化学概念。一般将分子量小于900道尔顿的有机化合物分子称为小分子。小分子的直径以纳米计。目前大部分药物都是小分子类药物,蛋白质、核
  • 辐射病急性辐射综合症,也被称为辐射中毒或辐射病(英文缩写ARS),是一种患者在24小时内暴露于大剂量的游离辐射下导致的症候群,症状可持续多达数个月。 本术语意指急性医疗问题,而不是产生
  • 五代五代音系,是指唐末以来、直至五代这数百年间中原汉语的音韵体系,是中古汉语的演进时程之一。这一时期华夏不定、战争频纷,所以五代音系较隋唐音系有非常显著的变化。南唐徐锴所
  • 超面在几何学中,维面(Facet)又称为超面(hyperface)是指几何形状的组成元素中,比该几何形状所在维度少一个维度的元素。也是任何多胞形的边界。而若在维面前加一个整数则代表几何形状的
  • 帕尔加勒·易卜拉欣帕夏帕尔加勒·易卜拉欣帕夏(土耳其语:Pargalı İbrahim Paşa;1495年-1536年3月15日),帕尔加勒之名意为“来自帕尔加的”,他也被称为弗伦克·易卜拉欣帕夏(Frenk Ibrahim Pasha;“西方
  • 斯特拉·麦卡特尼斯特拉·莉娜·麦卡特尼(英语:Stella Nina McCartney, OBE,1971年9月13日-),英国时装设计师,也是世界顶级时装设计师中极度罕见的终生环保主义者,前甲壳虫乐队成员保罗·麦卡特尼之
  • 大城王国阿瑜陀耶(1351年-1463年) 彭世洛 (1463年-1488年) 阿瑜陀耶 (1463年-1666年) 华富里 (1666年-1688年) 阿瑜陀耶 (1688-1767)大部分信仰上座部佛教 少部分信仰泰国中部:泰国北部:泰国南