人力検索はてなの「プログラミングに詳しい人に質問」がアレゲ
人力検索はてなで、「 プログラミングに詳しい人に質問です。大学でプログラミング経験の学部一年生向けにプログラミングを教えることを想定しています。週1コマ×半年程度の限られた時間で、プログラミングとはどういうものかという本質を教えたいのですが、どの言語を使うのが適切でしょうか。」という質問が。
これ、非常にアレなのが「まずは「プログラミングに詳しい」かどうか判定するための質問です。正しいものを選んでください。これに答えられない方は解答をご遠慮ください。」というのがあるあたり。以下の中から正しいものを選べ、ということなんだけど、何でSchemeを出したんだろ。
Schemeはインデントによってブロックを表現する Schemeは多くのレンタルサーバに標準でインストールされている Schemeでは関数がファーストクラスのオブジェクトである Schemeの文の終わりはセミコロンである Schemeは純粋関数型言語であり、副作用はモナドでくるむ必要がある Schemeは型に厳格なため整数の加算と浮動小数点数の加算の演算子が異なる Schemeは関数の呼び出し時に括弧を省略することが出来る Schemeのマクロ定義には#defineを使う Schemeの言語仕様はキューマシンとしての実装に適しているため並列化が容易である Schemeのブロックはbeginで始まりend.で終わる SchemeのコンパイラとしてはGHCが有名である いや、こんなの答えられる人本当に少ないって。だってScheme人口って他の言語に比べてかなり少ないんだぜ。Schemeは1.5からオートボクシングの機能をサポートした
Pythonはインデントによってブロックを表現する Perlは多くのレンタルサーバに標準でインストールされている JavaScriptでは関数がファーストクラスのオブジェクトである Cの文の終わりはセミコロンである Haskellは純粋関数型言語であり、副作用はモナドでくるむ必要がある Perlは関数の呼び出し時に括弧を省略することが出来る Cのマクロ定義には#defineを使う Rubyのブロックはbeginで始まりend.で終わる HaskellのコンパイラとしてはGHCが有名である までは分かるんだが、言語仕様は排他じゃないんだから、これらの条件にSchemeが当てはまるかもしれないし。 そしてJavaは1.5からオートボクシングの機能をサポートした
Schemeの言語仕様はキューマシンとしての実装に適しているため並列化が容易である は全く思いつかない……。 で、これを受けて [西尾泰和のはてなダイアリーにて「Q1ってそんなに難しいですか?簡単な問題のつもりだったんだけど。」といわれていますが、皆さんはどう思われますか?][2] なる質問ができていたw \# ちなみに自分は関数型言語は嫌いです。よってHaskellもSchemeも嫌いです。Emacsをいじるたびに、なんでEmacsはLISPという面倒くさい言語を採用したんだとか思いながらヒーヒー言ってます。 ということで、プログラミングを学ぶ人にお勧めしたいのはアセンブラですwSchemeは型に厳格なため整数の加算と浮動小数点数の加算の演算子が異なる