Skip to content

hkim0331/tls

Repository files navigation

TLS

The Little Schemer(Scheme 手習い)を読もうかい。

2022 年後期工学部 2 年生対象の「情報応用」でプログラミングに興味を持った人が対象ですが、 そうじゃなくても OK. 授業とか単位とかに関係なく学んでみないか。

なぜに?

大学やそれ以外のプログラミング授業の目的はプログラム言語の文法を覚えることではない。 プログラミング的考え方を身につけることだ。 しかし、そうじゃない授業は多い。 単位はゲット、理解はノットな学生が増えるばかり。

[2023-08-30 追記] 教えるつもりない人も、たくさん。 今日の会議、無責任発言に頭来て、俺は席を立って会議室ほとんど出るとこだった。 (大人気ない)と思い直し、「それ言ったら終わりだろ!」って一喝して席に戻った。 そういうつもりで教壇に立ってるんだな。学生に「やる気がない」って言う資格ない。

初心者にプログラミングを教えるとして、 選んだ言語によっては、その言語が学ぶ人の考え方に枠をはめてしまうことがある。 学んだはずの C や Python でちょっと大きいプログラム作ろうとしたら急激に難易度上がったりするだろ。 そうでなくても、出来合いのライブラリを組み合わせる以外、 まともなプログラムできなかったりするだろ。 それ、見逃しているもの、学び損ねたものがあるんだよ。 反対側から言えば教え損なったものがある。

C や Python などとは一味も二味も違う Scheme で、 手続き型とは違った角度からプログラミングの世界をのぞいてみよう。

お手本にするのは世界的なベストセラー The Little Schemer. 英語版でよければネットに無料で見つかる。 日本語の訳本は 「Scheme 手習い」。図書館に数冊、入れてもらいました。 「やさしい...」より数段イイ! でも、日本での人気は日本のレベルを反映してか、クエスチョンマーク。 また、著者たちの独特の書き方のため、初見の人たちは面食らうだろう。 なのでちょっと手助けします。

準備

「Scheme手習い」は理想的な Scheme 言語を仮想し、 実装とは離れ、紙と鉛筆、頭の中で、計算の過程を考えるみたいなことをやる。

できる人には相当なトレーニングなんだが、俺たち一般人には、ま、ツライわな。 で、やっぱ、作成したコードを実行できるアプリがあったほうが楽。 Scheme のコードを入力したらそれを実行してくれるアプリを Scheme の処理系 っていうとアタマ良さそうな雰囲気を出せる。

ここに書いてた内容は、やり直して doc/2023-09-04.md に書き直したので、そちらを読んでください。

  • https://replit.com が手軽

  • Windows/WSL で racket 開始

  • (Windows 直かに)

  • hkimura はどう racket してるか?

準備が大変?

「Scheme アプリがあった方が楽」って言うのに、逆になっちゃうが、 なくてもいいじゃん。TLS は元々は具体的なコンピュータなし、 紙と鉛筆でプログラミングをとことん考えようってのが基本だ。 行けるさ。

doc フォルダと src フォルダ

この後、doc フォルダに資料書き足していきます。

src フォルダには the little schemer をなぞるコードをそこに置きます。