最初のプログラミング言語としてなぜか OCaml を叩きこまれた非エンジニア新卒女子、Ruby に触れて「ループってよくわからなくて…再帰じゃだめなんですか? 繰り返している間に状態が変わるのっておかしい」みたいなこと言っており順調に関数型エリートとして育ってる
2015-06-17 12:08:23この例の新卒女子が今「Ruby辞めていい?関数型のほうが肌にあってる。だって状態が変わるとかそんなんこじつけじゃん」と申しておりましたのでご報告させて頂きます。 twitter.com/mirakui/status…
2015-06-17 13:44:04まあ、関数型言語が得意な人も、学術研究分野を中心に需要はあると思うので、エンジニアとしては絶対に雇いたくないけど、そういう人がいてもいいんじゃないですかね。
2015-06-17 14:21:56個人的には、関数型言語でコードを書く人が、その関数型言語自体の実装について、どれだけ理解しているのか気になる。以前ツイッターでも、「○○は○○自身で書かれている(キリッ」みたいな脳味噌膿んでる馬鹿しか見かけなかったし。いわゆる過去のゆとり教育だけが、ゆとり脳を生み出すと思うなよ。
2015-06-17 14:29:33プログラミング言語使用者のほとんどは、使っている言語処理系実装の詳細は知らないと思われるし、それで良いのではないかと思います
2015-06-17 14:38:04.@camloeba いや、それはいいのですが、例えばその処理系のコードは特定のアセンブリ言語のコードを出力するのですか? そういう具体的な内容について全く理解していないようなので。私も興味ないので調べていませんが。
2015-06-17 14:38:28.@camloeba いや、それはいいのですが、例えばその処理系のコードは特定のアセンブリ言語のコードを出力するのですか? そういう具体的な内容について全く理解していないようなので。私も興味ないので調べていませんが。
2015-06-17 14:38:28そうですよ。OCaml で OCaml コンパイラをビルドするために、OCaml コンパイラのバイトコードとCで書かれたバイトコード実行系がソースに付属している twitter.com/voluntas/statu…
2015-06-17 14:41:07いや、先の話で、旧式言語を学ばずに関数型言語一本槍でエキスパートを目指すような感じの方の話があったので、それはそれでいいけど、そんなんで関数型言語をちゃんと理解しているの? 理解できるの? といった意味合いです。 twitter.com/n_enot/status/…
2015-06-17 14:46:22別に関数型に限った話じゃなくて、高級言語全般、更にはプログラム書いてるやつのどんだけが電子回路の挙動を理解してるのかって話にならんかね(´・ω・`) twitter.com/sessoh/status/…
2015-06-17 14:47:01@sessoh 関数型プログラミングを理解するには適した言語を使うのが良いとは思います。でもその言語処理系の実装だとかは、また別の技術ですし、それならそれで必要になったら学べるのなら全然構わないと思いますね
2015-06-17 14:49:58.@omanuke 別の方への返信にも通じますが、「まず軽く触れてみよう」とか「趣味でやってみるか」といった程度ならいいのですが、旧式言語を捨てて「これからは関数型言語の時代だ!」みたいなノリの場合は、それなりに理解していただかないと、例えば不具合があった場合などに困りますよね。
2015-06-17 14:50:01@sessoh んー、それはRubyでもC++でも同じでは? 言語にしろライブラリにしろDBにしろブラックボックスは有って、それを飲み込んでシステムは成り立ってると。下の挙動まで理解してるといいしそこまで見れて問題解決出来ると望ましいけど関数型に限った話じゃないのでは。
2015-06-17 14:55:24関数型言語ユーザーってSML#2.0.0からバックエンドがLLVMになりましたね、とかOCamlは自前でバックエンド実装してるけど結構コード綺麗だねとか雑談で話すものじゃないんですかね
2015-06-17 14:59:23@sessoh バックエンドが何を吐くかはあまり重要な知識ではないと思います。それよりはランタイム(特にGC)や値の内部表現の特性などを判っているほうが重要です。が、知っていなければ給料仕事ができないというものでもありません。(大きいところはもちろんそういう人を集めますが
2015-06-17 15:03:53@sessoh バックエンドが何を吐くかはあまり重要な知識ではないと思います。それよりはランタイム(特にGC)や値の内部表現の特性などを判っているほうが重要です。が、知っていなければ給料仕事ができないというものでもありません。(大きいところはもちろんそういう人を集めますが
2015-06-17 15:03:53ついにRubyが旧式言語と呼ばれる時代になったのか…。 twitter.com/cnosuke/status… twitter.com/sessoh/status/…
2015-06-17 15:03:57.@omanuke んー、例えば「このコードはどんな順番で処理されるでしょう?」という質問、旧型言語の方が関数型言語より正答率高いと思うんですよね。中途半端な理解で「利用する便利じゃん」だと、根本的な過ちを犯しそうで怖いなと。
2015-06-17 15:04:41@camloeba 重要か重要でないかではなく、実際には肝心なことを何も知らないのに、なんか知っていると思い込んでいる状態が、私いわく「脳味噌膿んでる」という話になります。
2015-06-17 15:06:58@camloeba 重要か重要でないかではなく、実際には肝心なことを何も知らないのに、なんか知っていると思い込んでいる状態が、私いわく「脳味噌膿んでる」という話になります。
2015-06-17 15:06:58@sessoh えてして関数型言語の方が抽象性は高そうなのでそれはあるかもですね。けどその抽象性の高さは生産性の高さの元でも有るし、富豪的にプログラミングしても昨今のCPUパワーで解決されることも多いかと。ゲームエンジンしかり抽象性は上手く扱えると強い味方になるものかとは思います
2015-06-17 15:12:52@sessoh 何れにしてもブラックボックスがある場合、いざという時に命取りになることはあるので抽象化の上でしか踊れない人が困るのは同意です(´・ω・`)
2015-06-17 15:13:58