Skip to content

Instantly share code, notes, and snippets.

@louiee
Last active December 14, 2019 13:40
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save louiee/851f9053f01faf2d51244570c9edcf6e to your computer and use it in GitHub Desktop.
Save louiee/851f9053f01faf2d51244570c9edcf6e to your computer and use it in GitHub Desktop.
# Do you know the LOGO language? / きみはLOGO言語を知っているか?

Do you know the LOGO language? / きみはLOGO言語を知っているか?

==========================

Why did I talk about this? / なぜ私はこの話にしたのか?

恐ろしいものであと数週間で2019年が終わり、令和元年も終わる。年が明ければ2020年。オリンピックイヤーでもあるが、同時に小学校でプログラミング教育が始まる。 小学生に何を教えるのか?おそらく、これに携わってる人たちはキチンとした答えがでてないのではないだろうか?(しらんけど)

実は子供向け、教育向けのプログラム言語というのはかなり昔からあった。そのうちの一つが今回紹介するLOGO と呼ばれるモノだ。 年が明けたら日本国で小学生からプログラム教育がはじまるこのタイミングなので、古の言語を紹介する。

LOGOってなあに? / What is LOGO?

LOGOは最初から児童への教育向けで開発されたプログラミング言語で、作られたのはなんと1967年。昭和でいえば42年。いまから52年前だ。もちろんインターネットもUNIXもない時代。 教育向け、児童向けで作られているが LISPのひとつ、サブセットをして認識してもらえれば評価があがるのではないだろうか?

もうひとつ、LOGOを語る上でかならず説明しないといけないものが タートルグラフィクスである。 LOGOと言えばタートルグラフィックス、タートルグラフィックといえばLOGOといっても過言ではない。

タートルグラフィックとは

画面上の仮想的な亀(タートル)に指示を出し、移動した軌跡を図として描画する方式のグラフィック 出力。座標系を理解しなくても、簡単な手続きの組み合わせで図を描くことができる。

三角形を書くプログラム

FORWARD 100  ;前へ100ドット進め
RIGHT 120   ;120度右へ回れ
FORWARD 100 
RIGHT 120  
FORWARD 100
RIGHT 120

なお、FORORDはFDと、RIGHTはRTと略せる

Sony SMC-777c and LOGO Language

はじめてLOGOをさわったのは1985年。この80年代でいろんなコンピュータでLOGOが移植されていた(らしい)。はじめての自前のコンピュータがSONYのSMC-777Cというやつで、こいつは3.5inchFDD内臓で、CP/M互換の独自のOSを積んでいた。こいつに梱包されていたのがLOGO(Dr.LOGO ※おそらくデジタルリサーチのLOGOだろうね) 8Bitな時代の人はどっかでLOGOさわってタートルグラフィックで遊んでるはず。自分もプログラムでのお絵描きなんかをした記憶がある。ファイルに名前をつけて呼び出すとかはこのとき覚えた。当たり前のように思ってるかもしれないが、当時はBASICがROMに内臓されて、プログラムかいてRUNってうったらそのプログラムが動いたのだ。ファイル名の指定とかなかったわけ。シングルだから。

LOGOの使用方法

2019年でLOGOってさわれるのか、調べたんだけど、名前が一般名詞っぽくって、かなり調べるのに手こずった。Linuxであれば rpmでインストールできるっぽい。OSXは Homebrewでババーンってはいるかな?とおもったけど、そんなのはなかった。バークレーのLOGOがあるので、HTTPでダウンロードすればつかえるっぽい。あとLibreOfficeでも動く。

あと、最近の言語だとタートルグラフィックはうごくっぽい。PythonだとかJavaだとか・・・

また、日本語でプログラムができる ものもWinodwsプラットホームにあったりします(しました。ちょっと古い) さっきの三角形を各プログラムも

三角形を書くプログラム(日本語ばん)

まえへ 100
みぎへ 120
まえへ 100
みぎへ 120
まえへ 100

上記で記述ができたりします。

さらには今風のブロック形式でもプログラムかけるタイプのものもあったりします。

最後に

調べてからわかったんですが、LOGOをつくった人の弟子が Smalltalkをつくり、そのまた弟子が Scratch を作ったとのこと。来年から小学校のプログラミング教育で使われる Scratchのおじいさん、おばあさんが LOGOなんだなと。 また、少し古い話をしましたが、2019年でもLOGOはまだまだ意味がある使い方ができるかと思います。ぶっちゃけLISPなんですから(笑)

教育プログラムの昔話ってことで、今回のお話はおしまい。


参考サイト

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment