...ing logging 4.0

はてなブログに移行しました。D言語の話とかいろいろ。

プログラミングの本質

プログラミングに詳しい人に質問です。大学でプログラミング経験の学部一年生向けにプログラミングを教えることを想定しています。週1コマ×半年程度の限られた時間で、プログラミングとはどういうものかという本質を教えたいのですが、どの言語を使うのが適切でしょうか。

この僕が適当なことをお答えしよう!


プログラミングの本質は,使うことを許されたリソースだけを用いて,使うことを許された単位処理だけの組み合わせで,期待した結果を得るための複合処理を記述することである.


それより具体的なことは各論.
例えば,手続き型言語関数型言語の違いは単位処理の違いに過ぎないし,計算量云々はリソースが実質有限のときに工夫が必要という話に過ぎない.
だからプログラミングの本質を学ぶために適切な言語なんて存在しないし,単位処理という「やってもいいこと」さえ規定されていれば,処理系の実装がなくったっていい.
実際,数学を勉強するときには,処理系なんてなくても僕らはなんとかやってきているのだし.

どうでもいいいが

いやよくないが,コメント欄が長すぎて面白そうなのに読む気になれない.
ああ,もったいない,もったいない.

プログラミングに詳しいってなんぞ

schemeを知らなかったらプログラミングに詳しいとはいえないねはい残念でしたーってのはどうなのよ.
それほんとにschemeじゃないとダメ?
schemeだけしか知らない人はどうすんの?
関数型言語一般じゃダメなの?
ほんとに手続き型言語や論理型言語じゃダメなの?
そもそもフォンノイマン型じゃないとダメなの?
ねえ?