Maker Faire Tokyo 2025でチェコの人たちが、四十年ぐらい前のマイコンボードを展示していましたが、そこのブラウン管ディスプレイに表示されていたのがKarel言語で記述されていると言っていました
じゃKarel言語って何なのと思ったのと、四十年前の言語が今も生き残っているのかというのは自然な疑問
実はちゃんと生き残っているようで、Pythonでも実装されていました
Pythonでの動かし方は、
% pip install stanfordkarel
でstanfordkarelをインストールする、なぜstanfordの名前がついているかというと、stanfordで学生の授業に使われたという経緯があるからのようです
以下のコードを見ればわかるように、forループはPythonのような形式、ロボットを動かすところは直感的なステートメントになっています
from stanfordkarel import *
def main():
n = 4
for i in range(n):
while front_is_clear():
move()
turn_left()
if __name__ == "__main__":
run_karel_program()
実行は、
% python karel.py
で起動しますが、ソースを見てわかるようにmain()が直接起動されるわけではなくて、run_karel_program()でプレイグラウンドが起動されて、起動されたプレイグラウンドからmain()を呼び出す形式を取ります
以下は実行させてみた動画
実はプレイグラウンドのカスタマイズもできるようです
KarelのキャラクタがGopherに似てる気がしますが、直接の関連は無いようで親しみやすいキャラクタを使うというところが共通点のようです
小中学生のテキストベースの学習言語としても面白いかなと思います
admin