Topics

・関数型プログラミングとオブジェクト指向のパラダイムとしての対立 国内の【自称】関数型コミュニティと海外の論調の違い

ガラパゴス・ネットスラング=「関数型ポエム」という呪詛、先入観的読書と、フェアなレビューの登場

Qiitaの騒動から派生して、東北大学の住井 英二郎@esumii氏、らくだの卯之助@camloeba氏その他が、犯罪者集団に合流して2ちゃんねるでの誹謗中傷チームの「8賢者」「ウィザード組」とかアホなことをやってる件について

JavaScriptではES6+とReact-JSXからES5へのトランスパイルが標準に / ATOMエディタで最速環境構築 厳選パッケージ 3 + 3 2015年夏バージョン

2016年のnode、ES6、React、Babel、Atomエディタ界隈の方向性

Dockerじゃないsystemd-nspawn+machinectlが非常に良い

99%のプログラマがIQ145のJKに「ダサい」と言われてしまう理由とは?【その1】「計算機科学のほんとうの基礎」を理解していない。IQ145のJKと同じ事を語るMITの権威とSICPという聖典の権威を借りてマインドコントロールを解いてみよう

99%のプログラマがIQ145のJKに「ダサい」と言われてしまう理由とは?【その2】関数型プログラミングのイミュータブルな世界観とイミュータブルな実世界を完全に統合

10年先を行く斬新な関数型(FRP)データベースについて説明する 99%のプログラマがIQ145のJKに「ダサい」と言われてしまう理由とは?【その3】

[React (.js Facebook)解説 関数型プログラミングに目覚めた! IQ145の女子高生の先輩から受けた特訓5日間 サポート記事【静的HTML編】React 解説【動的HTML-FRP編】

量子コンピュータが超高速である原理と量子論とそれに至るまでの科学哲学史をゼロからわかりやすく解説01量子コンピュータが超高速である原理と量子論とそれに至るまでの科学哲学史をゼロからわかりやすく解説02

『関数型プログラミングに目覚めた!』のレビュー(Day-1)について

LISPデータ構造の問題点の指摘と抜本的解法としての新プログラミング言語の策定/純粋関数型言語「SPINOZA」

著書『関数型プログラミングに目覚めた! IQ145の女子高生の先輩から受けた特訓5日間』 [Day1]たち読み記事 無料公開中

『関数型プログラミングに目覚めた! IQ145の女子高生の先輩から受けた特訓5日間』を大変多くの方々にお買い求めいただき、感謝します。本書の全目次を公開し、質問を受け付けます。

2015年7月6日月曜日

プログラミングの世界的潮流と机上の空論としての関数型プログラミング②「素人としては深入りを避けたいと思いますが、そうだとすればそもそもJavaScript選んじゃったのが関数プログラミングへの無理解を象徴的に示すものなのだということになるような気がします。」(苦笑)

前回の続きです。

『関数型プログラミングに目覚めた!』のレビュー(Day-1)というのは、

@nonstarter
http://qiita.com/nonstarter
という素人かつ大学関係者を自称しながら、
言論人として文責をまったく負わずに済む、
素性のしれない匿名のQiita捨てアカウントによる、
書捨て記事であり、
「批判のための批判記事」です。

「レビュー」などと称していますが、対象となる書籍の良い部分は一切書いておらず、とにかく徹頭徹尾、揚げ足取り、歪曲捏造しているので、「批判のための批判記事」であることが露骨にあらわれてしまっていますが、本人はそのことに露ほども自覚がないのでしょう。

これから、記事をわけて、住井 英二郎@esumiiさんとか、らくだの卯之助@camloebaさんに聞きたいのだけど、そもそも貴方たちはOCamlでデスクトップアプリ書けるんですか?への「回答」の精査と、この
『関数型プログラミングに目覚めた!』のレビュー(Day-1)
シリーズによる本書への批判のための批判を精査していきます。

プログラミングの世界的潮流と机上の空論としての関数型プログラミング②「素人としては深入りを避けたいと思いますが、そうだとすればそもそもJavaScript選んじゃったのが関数プログラミングへの無理解を象徴的に示すものなのだということになるような気がします。」

いくら、「素人としては深入りを避けたい」と前置きをしていたとしても、

「そもそもJavaScript選んじゃったのが関数プログラミングへの無理解を象徴的に示すものなのだということになるような気がします。」

という発言の「無理解」ぶり、門外漢ぶりは苦笑レベルですが、実際、こういう門外漢が、訳知り顔として、本書や私の「無理解を象徴的に示す」とか、書き連ねているのが通常です。

プログラミングの世界的潮流と机上の空論としての関数型プログラミング、をテーマとして、投げかけたのが実は、
住井 英二郎@esumiiさんとか、らくだの卯之助@camloebaさんに聞きたいのだけど、そもそも貴方たちはOCamlでデスクトップアプリ書けるんですか?
であったわけですが、皮肉なことに、この回答(エアリプライ)自体も、この問題としている批判のための批判記事に追記、コメントされているので、まとめて扱えるのは好都合です。

と、まとめてトリロジー(ということにしておく)記事を、直近で書いてUPしましたが、この辺が、今現在の世界で、リアルタイムで怒涛の勢いで関数型プログラミング界隈で起こっていることです。

JavaScriptが、今一番、関数型プログラミングでアツい!というような状況であり、

名前の通り、Reactの
1.FunctionalReactiveProgramming
2.コンポーネント指向

の急速で圧倒的な普及により、プログラマの知的需要とすれば、JavaScriptベースの関数型プログラミングを習得したいわけです。

プログラミングの世界的潮流、主流は、言うまでもなくWeb、クラウドであるわけですが、「机上の空論」ではない関数型プログラミングも、Web、クラウドにあります。

住井 英二郎@esumiiさんとか、らくだの卯之助@camloebaさんに聞きたいのだけど、そもそも貴方たちはOCamlでデスクトップアプリ書けるんですか?って書いたのは、そういう背景があるわけです。

あんたら、広く一般の開発者が、最終的に使えない机上の空論こねくり回してるだけじゃないのですか?と。
信じてついていったら、最後、本当に何かいいモノがもらえるのですか?と実利的に質問したわけですね。
多くのプログラマはもちろん純粋な知的好奇心や学術性もあるけれど、ほとんどのプログラマは最終的な実利も求めるから。

そもそも関数型プログラミングがこれまでたいしてメインストリームとして普及しなかった理由はその辺にあります。「関数型プログラミングは理論先行で実用的ではない。」と。

昨今になって急に注目されはじめたのは、実用的になりうると認知されはじめてきたからです。
そして、この点、Webのデファクト言語であるJavaScriptの功績が多大であるのは言うまでもありません。

また、クラウドコンピューティングの最大手であるAWS - Amazon Web Servicesでは、本書にも書きましたが、関数型クラウドのAmazonLambdaを最近リリースしました。

enter image description here

AWSコンソールにログインすると、AWSの代名詞EC2に続いて、左上2番めにメニューがある、今AWSイチオシのクラウドサービスです。

enter image description here

関数型クラウドのAmazonLambdaに使われている言語はなにか?

もちろんWebデファクト言語のJavaScriptであり、node.jsです。

この、@nonstarterとかいう捨て垢の人物はそんな知的素養もなく、いや失礼、少なくとも、批判のための批判の対象の本書を読んだから、その程度の「世界的潮流」は学習できているはずですが、その上で、

「そもそもJavaScript選んじゃったのが関数プログラミングへの無理解を象徴的に示すものなのだということになるような気がします。」

と他者の「無理解」を象徴的に示す、とか、自らの愚かさをもって人を愚か者扱いにするという最低の行為をしているわけです。

GitHubやStackOverflowでの人気言語ランキング–Swiftが20位圏外で大躍進

産業調査会社のRedMonkが、2015年1月版のプログラミング言語ランキングを発表した。これはGitHubでの各言語の使用率と、プログラマー向けQ&AサイトのStack Overflowでの発言量を元に作られたもので、2010年から定期的に発表されている。

 2つの統計の相関を示すグラフと、各言語のランキングは以下の通りだ。

enter image description here

順位
1 JavaScript
2 Java
3 PHP
4 Python
5 C#
5 C++
5 Ruby
8 CSS
9 C
10 Objective-C
11 Perl
11 Shell
13 R
14 Scala
15 Haskell
16 Matlab
17 Go
17 Visual Basic
19 Clojure
19 Groovy
(同率順位はアルファベット順)

「机上の空論」ではない、
1. 実用的で洗練されたコンポーネント指向+FRPのWebアプリの実装であるFacebookのReact、
2. AmazonのクラウドサービスLambda、
関数型プログラミング言語としては人気実力ともに、JavaScriptは他を圧倒している状況であり、正直、誰も上記ランキング圏外のOCamlなんかで関数型プログラミング学びたいなんて思っていないわけですよ。

JavaScript言語における関数型プログラミング、特に、FRP、コンポーネント指向の実用的な関数型プログラミングの知識こそが広く多くの技術者、開発者が求める情報であり、私はその知識の基盤を提供できるから、本を書いた、そういうことです。

気力が尽きたので、Day3で本書のレビューは終了です。
研究関連の本1冊余裕で読めるくらいの時間を浪費した気がするのでもうやりません。
あとは誰か他の人がやってくだされば幸いです。

などと書いていますが、実際この人その辺りの本当に必要とされる知識、FRPやReactコンポーネント指向のことなんて何も知らないから、トピックに追随できなかっただけでしょう。

それも「おいおい、なんで一番大事なところの論評を君たちしないんだい?注意深く逃げているよね?」と欺瞞が明らかだったので、

住井 英二郎@esumiiさんとか、らくだの卯之助@camloebaさんに聞きたいのだけど、そもそも貴方たちはOCamlでデスクトップアプリ書けるんですか?って書きました。

長くなったので、次、この「お返事」について記事わけます。

【学習者要注意!】『関数型プログラミングに目覚めた!』のレビュー(Day-1)の「状態遷移関数」を使った非FRPのGUIコードがメモリリークする実用に耐えない不良品でしかなかったことについて 読者騙せて楽しいですか?

0 コメント:

コメントを投稿

Popular Posts

Blog Archive