로고(프로그래밍 언어)
Logo (programming language)![]() L-system(코치 곡선) 거북이 그래픽 | |
패러다임 | 멀티패러다임: 기능적, 교육적, 절차적, 반영적 |
---|---|
가족 | 리스프 |
설계자 | Wally Feurzeig, Seymour Papert, 신시아 솔로몬 |
개발자 | 볼트, 베라넥, 뉴먼 |
처음 등장한 | 전 ( |
타이핑 분야 | 역학 |
주요 구현 | |
UCBLogo, 기타 다수 | |
사투리 | |
StarLogo, NetLogo 및 AppleLogo | |
영향을 받다 | |
리스프 | |
영향받은 | |
AgentSheets, NetLogo, Smalltalk, Etoys, Scratch, Microsoft Small Basic, KTurtle, REBOL, Boxer |

로고는 1967년 Wally Feurzeig, Seymour Papert 및 Cynthia [1]Solomon에 의해 설계된 교육용 프로그래밍 언어입니다.로고는 약자가 아니다: 이 이름은 푸르자이그가 볼트, 베라넥,[2] 뉴먼에 있을 때 만들어졌으며 단어 또는 사상을 의미하는 그리스 로고에서 유래했다.
범용 언어인 로고는 거북이 그래픽을 사용하는 것으로 널리 알려져 있으며, 이동 및 그리기 명령은 화면 또는 거북이라는 작은 로봇과 함께 선 또는 벡터 그래픽을 생성합니다.이 언어는 리스프와 관련된 프로그래밍 개념을 가르치고 나중에야 학생들이 거북이의 움직임을 이해하고 예측하고 추론할 수 있도록 하기 위해 고안되었다.로고에는 여러 방언에 큰 차이가 있으며 로고라는 이름의 거북이 그래픽 프로그램이 정기적으로 등장하기 때문에 상황은 혼란스럽다.
로고는 함수형 프로그래밍 [3]언어인 리스프의 다중 패러디그림을 각색한 방언입니다.표준 로고는 없지만 UCBLogo는 목록, 파일, I/O 및 스크립트 재귀 처리를 위한 최고의 기능을 갖추고 있으며 UC 버클리 대학의 강사 브라이언 하비가 컴퓨터 사이언스 로고 스타일 [4]3부작에서 그랬던 것처럼 모든 컴퓨터 사이언스 개념을 가르칠 수 있습니다.
로고는 보통 통역 언어이지만, 컴파일된 로고 방언(Lhogho, Liogo 등)이 개발되었습니다.로고는 대소문자를 구분하지 않지만 포맷을 위해 사용되는 대소문자를 유지합니다.
역사
로고는 1967년 월리 포이그, 신시아 솔로몬, 시모어 [5]파퍼트에 의해 매사추세츠 캠브리지의 조사 회사인 볼트, 베라넥, 뉴먼에서 만들어졌다.그것의 지적 뿌리는 인공지능, 수리논리, 발달심리학에 있다.로고 조사, 개발 및 교육 작업의 첫 4년은 BBN에서 수행되었습니다.Ghost라고 불리는 로고의 첫 번째 구현은 PDP-1의 LISP로 작성되었습니다.아이들이 단어와 [6]문장을 가지고 놀 수 있는 수학의 땅을 만드는 것이 목표였다.LISP를 모델로 한 로고 디자인 목표에는 전원[clarification needed] 및 정보 오류 메시지가 포함되어 있습니다.가상 거북이를 사용하면 그래픽 프로그래밍의 즉각적인 시각적 피드백과 디버깅이 가능했습니다.
최초의 로고 거북 로봇은 1969년에 만들어졌습니다.전시용 거북이가 실제 바닥 거북이보다 앞서 있었다.모던 로고는 첫 번째 거북이의 기본 개념에서 크게 바뀌지 않았다.첫 번째 거북이는 무선 조종이나 무선 조종이 아닌 밧줄로 묶인 바닥 로머였다.BBN에서 Paul Wexelblat은 터치 센서를 가지고 있고 앞으로, 뒤로, 회전하고 종을 칠 수 있는 어빙이라는 거북이를 개발했습니다.1968-69년에 Muzzey Jr.에서 로고를 1년간 사용한 최초의 학교 사용자는 다음과 같습니다.매사추세츠주 렉싱턴의 높은 곳.가상거북과 물리거북은 1970년부터 1971년까지 같은 도시에 있는 브릿지 스쿨의 5학년생들에 의해 처음 사용되었습니다.
거북이와 그래픽스
로고의 가장 잘 알려진 특징은 거북이(원래는 [5]같은 이름의 로봇에서 파생된 것), 이동 명령어 출력과 작은 접이식 펜, 그리고 함께 라인 그래픽을 생성하는 화면상의 "커서"입니다.이 아이콘은 전통적으로 삼각형 또는 거북이 아이콘으로 표시되었습니다(모든 아이콘으로 표시할 수 있음).1960년대 후반 시모어 파퍼트가 로고 언어에 거북이 그래픽을 추가해 사용자 워크스테이션에서 제어되는 간단한 로봇인 거북 로봇을 지원했다. 거북 그래픽은 로봇 몸체에 장착되거나 부착된 작은 접이식 펜을 사용하여 로봇에 할당된 그리기 기능을 수행하도록 설계됐다.
구체적으로는 기존 모델 대신 거북이 형상을 사용한 것이 거북이 로봇의 실제 움직임 논리를 모방한 것이다.거북이는 자신의 위치에 상대적인 명령을 사용하여 움직입니다. LEFT 90은 왼쪽으로 90도 회전함을 의미합니다.일부 로고 구현(특히 동시성과 여러 거북이를 사용할 수 있는 로고 구현)은 충돌 감지를 지원하며 사용자가 거북이 커서의 모양을 재정의할 수 있으므로 로고 거북이가 스프라이트로 기능할 수 있습니다.
터틀 지오메트리는 로고 이외의 환경에서도 엄밀하게 좌표 주소가 지정된 그래픽 시스템의 대안으로 사용될 수 있습니다.예를 들어, 거북 그래픽의 아이디어는 Lindenmayer 시스템에서 프랙탈을 생성하는 데에도 유용합니다.
실장
로고의 일부 현대 파생 모델들은 독립적으로 움직이는 수천 마리의 거북이들을 허용합니다.일반적인 2가지 구현이 있습니다.매사추세츠 공과대학의 StarLogo와 Northwestern University Center for Connected Learning(CCL) NetLogo가 있습니다.그것들은 새로운 현상을 탐구할 수 있게 해주고 사회, 생물학, 물리학, 그리고 다른 분야에서의 많은 실험과 함께 옵니다.NetLogo는 생물학 및 사회과학의 에이전트 기반 시뮬레이션에서 널리 사용됩니다.
비록 합의된 표준은 없지만, 언어의 핵심 측면에 대한 광범위한 합의가 있다.2020년 3월 현재 로고의 구현과 방언은 각각 308개이며,[8] 각각의 장점을 가지고 있다.308의 대부분은 더 이상 널리 사용되지 않지만, 많은 것들이 아직 개발 중에 있다.학교에서 널리 사용되는 상업적인 구현에는 MicroWorlds 로고와 Imagine 로고 등이 있습니다.
레거시 및 현재 구현에는 다음이 포함됩니다.
1980년대 초판
- LCSI(Logo Computer Systems, Inc.)에 의해 개발된 Apple II Plus용 Apple 로고 및 Apple IIe용 Apple 로고 라이터는 1980년대 초중반에 최고조에 달했던 로고의 가장 널리 사용되고 널리 보급된 초기 구현이었습니다.
- 물병자리 로고는 1982년 Mattel에 의해 물병자리 가정용 컴퓨터용 카트리지로 출시되었습니다.
- Atari 로고는 Atari 8비트 패밀리용으로 Atari에 의해 카트리지로 출시되었습니다.
- 컬러 로고는 TRS-80 컬러 컴퓨터용 Tandy에 의해 1983년에 카트리지(26-2722)와 디스크(26-2721)로 출시되었습니다.
- 코모도어 로고는 코모도어 일렉트로닉스에 의해 "A Language for Learning"이라는 부제를 달고 출시되었습니다.이 제품은 MIT 로고를 기반으로 Terapin, Inc.에 의해 강화되었습니다.Commodore 64 버전(C64105)은 1983년에 디스켓으로 출시되었고 Plus/4 버전(T263001)은 [9][10]1984년에 카트리지로 출시되었습니다.
- Experim Logo는 1985년 Experteligence Inc.에서 Macintosh 128K용으로 플로피로 출시되었습니다.
- Hot-Logo는 1980년대 중반 EPCOM에 의해 MSX 8비트 컴퓨터용으로 출시되었으며 브라질 포르투갈어로 자체 명령어 세트를 갖추고 있습니다.
- TI 로고(TI 99/4A 컴퓨터용)는 초등학교에서 사용되었으며, 초보 프로그래머에게 컴퓨팅의 기초를 가르칠 때 로고의 유용성을 강조했습니다.
- 스프라이트 로고는 로고 컴퓨터 시스템즈 주식회사에서 개발되었으며, 독립된 프로세스로 실행할 수 있는 10마리의 거북이를 가지고 있었다.이것은 Apple II 컴퓨터에서 실행되었으며, 컴퓨터의 슬롯 중 하나에 스프라이트 카드를 삽입했습니다.
- IBM은 LCSI(Logo Computer Systems, Inc.)가 공동 개발한 자체 버전의 로고(P/N 6024076)를 당시 새로운 IBM PC용으로 판매했습니다.
- ObjectLOGO는 객체 지향 프로그래밍 확장과 어휘 범위를 가진 로고의 변형입니다.버전 2.7은 Digitool, Inc.[11]에 의해 판매되었습니다.더 이상 개발 또는 지원되지 않으며 버전 7.[12]5 이후의 Mac 운영 체제에서는 실행되지 않습니다.
- Dr.Logo는 Digital Research에 의해 개발되어 IBM PCjr,[13] Atari ST 및 Amstrad [14][15][16]CPC를 포함한 컴퓨터에 배포되었습니다.
- 아콘소프트 로고는 1985년에 출시되었습니다.8비트 BBC Micro [17]및 Acorn Electron 컴퓨터용 로고 상용 구현입니다.로고의 완전한 구현으로서 Acon Computers용으로 개발되었습니다.여러 개의 화면 거북이와 4채널 사운드가 특징입니다.2개의 16kB ROM으로 제공되었으며,[18] 유틸리티와 드라이버가 함께 제공되었습니다.
1990년대 초판
- 1990년 2월, Electron User는 Timothy Grantham의 "Talking Turtle"[19]이라는 기사로 Acon Electron용 로고의 간단한 구현을 발표했습니다.
- aUCBLogo는 UCBLogo의 개서 및 확장입니다.
- LibreLogo는 LibreOffice의 일부 버전을 확장한 것입니다.2012년에 발매된 이 책은 파이썬으로 쓰여져 있다.벡터 그래픽을 라이터에 쓸 수 있습니다.
- 레고 로고는 컴퓨터에 [20]부착된 로봇 레고 벽돌을 조작할 수 있는 로고 버전이다.Apple II 컴퓨팅 플랫폼에 구현되어 1980년대 후반과 1990년대 [21]초에 미국 및 기타 초등학교에서 사용되었습니다.레고 로고는 [22]Scratch의 전신이다.
- UCBLogo(버클리 로고라고도 함)는 2009년에 마지막으로 출시된 표준 로고의 무료 크로스 플랫폼 구현입니다.MIT의 George Mills는 보다 세련되고 자유로운 MSWLogo의 기반으로 UCBLogo를 사용했습니다.짐 멀러는 완전한 로고 매뉴얼이었고 MSWLogo를 데모 언어로 [23]사용한 The Great Logo Adventure라는 책을 썼습니다.MSWLogo는 FMSLogo로 진화했습니다.
2000년 이후 최초 출시
- 로고 3D는 로고의 3차원 버전입니다.
- Pool은 2014년에 구현된 객체 지향 확장 기능을 가진 로고의 방언입니다. Pool 프로그램은 Microsoft Windows의 그래픽 IDE로 컴파일되어 실행됩니다.를 지원하는 시스템에서는 심플한 크로스 플랫폼 환경을 사용할 수 있습니다.NET 프레임워크
- QLogo는 UCBLogo의 오픈 소스 및 크로스 플랫폼 개서입니다.하드웨어 액셀러레이션그래픽을 사용하는 UCB의 거의 완전한 호환성을 갖추고 있습니다.
- Lynx는 Logo Computer Systems Inc.에서 개발한 온라인 로고 버전입니다.다수의 거북이를 실행할 수 있으며 애니메이션, 병렬 프로세스, 색상 및 충돌 감지 기능을 지원합니다.
- LogoMor는 JavaScript 및 p5.js를 기반으로 하는 오픈 소스 온라인 3D 로고 인터프리터입니다.3D 도면, 애니메이션, 멀티미디어, 3D 모델 및 다양한 도구를 지원합니다.또한 CodeMirror 기반의 완전한 기능 코드 에디터도 포함되어 있습니다.
- LbyM은 JavaScript를 기반으로 한 오픈 소스 온라인 로고 인터프리터입니다.Sonoma State University의 Learning by Making [24]프로그램을 위해 2021년 현재 작성 및 적극적으로 개발되었습니다.기존 로고 프로그래밍, 맞춤형 마이크로 컨트롤러와의 연결 및 최신 코드 에디터와의 통합이 특징입니다.
영향을 주다
로고는 Smalltalk 프로그래밍 언어에 주된 영향을 미쳤다.또한 Squak(Smalltalk의 변형)으로 작성된 로고 변형인 Etoys 교육 프로그래밍 환경과 언어에도 큰 영향을 미칩니다.로고는 AgentSheets 및 AgentCubes의 프로시저/메서드 모델에 영향을 미쳐 로고의 거북이 개념과 유사한 에이전트를 프로그래밍했습니다.로고는 복서에게 기본 언어를 제공했다.Boxer는 캘리포니아 대학교, 버클리, MIT에서 개발되었으며 읽고 쓰는 능력 모델을 기반으로 기술자가 아닌 사람도 [citation needed]쉽게 사용할 수 있습니다.
KTurtle은 [25]로고를 기반으로 KDE 환경을 위해 Qt에서 구현된 로고의 변형입니다.
로고의 영향을 받은 두 가지 결과물은 Scala의 변형인 Kojo와 웹 브라우저에서 실행되는 시각적 드래그 앤 드롭 언어인 Scratch입니다.
레퍼런스
- ^ Abelson, Hal; Goodman, Nat; Rudolph, Lee (December 1974). "Logo Manual". Artificial Intelligence Lab, Massachusetts Institute of Technology. hdl:1721.1/6226. Archived from the original on September 11, 2016. Retrieved August 28, 2016.
- ^ Goldenberg, E. Paul (August 1982). "Logo – A Cultural Glossary". Byte. p. 218. Retrieved 19 October 2013.
- ^ CSLS Vol 1, 서문 .pxvi, Harvey 1997
- ^ 컴퓨터 사이언스 로고 스타일, 브라이언 하비, MIT 프레스 (3권) ISBN 0-262-58148-5, ISBN 0-262-58149-3, ISBN 0-262-58150-7.2013-07-04년 Wayback Machine에서 온라인으로 사용 가능
- ^ a b "Logo Foundation". el.media.mit.edu. Archived from the original on 2011-07-21. Retrieved 2011-04-07.
- ^ "logothings". logothings.wikispaces.com. Archived from the original on 2011-12-07.
- ^ Pietrocola, Giorgio (2005). "Tartapelago". Maecla.
- ^ "The Logo Tree Project" (PDF). elica.net. Archived from the original (PDF) on 2009-03-06. Retrieved 2020-03-25.
- ^ Brain, Jim; Zimmerman, Bo (2017-10-30). "Canonical List of Commodore Products". Archived from the original on 2017-12-20. Retrieved 2017-12-03.
- ^ "Logo – Software Details". Plus/4 World. Archived from the original on 2017-12-04. Retrieved 2017-12-03.
- ^ 오브젝트 로고 2008-04-30은 Digitool 웹사이트의 Wayback Machine 페이지에 보관되어 있습니다(2008년 3월 4일 액세스).
- ^ Digitool 웹사이트 오브젝트 로고 주문 페이지 (2008년 3월 4일 접속)
- ^ "DRI ships 128K version of Dr. Logo" (PDF). Micro Notes - Technical information on Digital Research products. Vol. 2, no. 2. Pacific Grove, CA, USA: Digital Research, Inc. May 1984. p. 4. NWS-106-002. Archived (PDF) from the original on 2020-02-11. Retrieved 2020-02-11.
[…] Dr. Logo first appeared on the retail market in fall of 1983 for the IBM PC and climbed to the top of the Softsel Hot List. The retail release included SpeedStart CP/M, an abridged version of CP/M that boots automatically when the system is turned on. […]
[1] - ^ 디지털 리서치 DR 로고
- ^ Amstrad CPC 6128 - 컴퓨팅 이력
- ^ 수동 암스트래드 PCW 8256/8512
- ^ Field, Graham (1985). LOGO on the BBC computer and Acorn Electron. Macmillan. ISBN 0-333-39566-2.
- ^ Radburn, Derek. "Four Logos for the BBC Micro". The Micro User Education Special. The Micro User. Retrieved February 20, 2012.
- ^ "Talking Turtle". February 1990. pp. 20–21. Archived from the original on 28 March 2017.
- ^ Resnick, Mitchel (July 1993). "Behavior Construction Kits". Communications of the ACM. 36 (7): 64–71. doi:10.1145/159544.159593. S2CID 9263998. Retrieved 5 January 2022.
- ^ "The Laboratory Schools LEGO-LOGO Project". University of Chicago Laboratory Schools. Archived from the original on 20 July 2011.
- ^ Bull, G.; Garofalo, J.; Hguyen, N. (2020), "Thinking about computational thinking: Origins of computational thinking in educational computing", Journal of Digital Learning in Teacher Education, 36 (1): 6–18, doi:10.1080/21532974.2019.1694381, S2CID 214563715
- ^ Muller, Jim (November 2001). "MSWLogo, An Educational programming language". Retrieved 5 January 2022.
- ^ "Learning by Making ¦ Make@SSU". 14 August 2017. Retrieved 8 January 2022.
- ^ "The KDE Education Project – KTurtle". edu.kde.org. Archived from the original on 2006-08-27.
추가 정보
- 로고가 널리 사용되는 인공지능(1976) 초기 AI 교과서(에든버러 대학 사투리 AI2LOGO 사용)
- 터틀 지오메트리 아베슨과 디세사
- 아이디트 하렐 캐퍼턴, 에이블렉스 출판사 ISBN 0893917885.온라인으로 이용 가능
- 로고를 사용한 학습, Daniel Watt, McGraw Hill, ISBN 0-07-068570-3.아마존에서 이용 가능
- 로고 포함 교육:학습을 위한 구성 요소, Molly Watt와 Daniel Watt, Addison Wesley(현 Pearson) 1986, ISBN 0-201-08112-1 아마존에서 이용 가능
- "Logo" (PDF). Byte. Vol. 7, no. 8. McGraw-Hill. 1982. (바이트 매거진 특집 1982년호, 복수의 로고 기사 게재).
