感情タグBEST3
Posted by ブクログ
Ruby,Io,Prolog,Scala,Erlang,Clojure,Haskell という特徴ある7つの言語の特徴が、
それぞれ有名な映画の登場人物に例えられながら、コンパクトに学べる本です。
私は金融機関で、COBOL(!!)を使って開発をやってるSEですが、
Javaも書けるようになろうと意気込んで勉強を始めたところ、
「文法は違うけど考え方はCOBOLと対して違わないじゃん」と、ややガッカリめの気持ちになったことがありました。
この本を読んでみて、それもそのはずと思いました。
JavaとCOBOLは、ともに静的型付けの手続型言語で、系統的には非常に近い。
例えるなら、ゴリラとチンパンジーくらいの違いしかありません。
世の中には、哺乳類(JavaやCOBOL等、静的型付けの手続型言語)から見たら 爬虫類(動的型付け)、鳥類(関数型)、魚類(論理型)くらい、全然違う種類のプログラミング言語があるんだー!!!
ということを、この本を読んで知りました。
プログラミング言語の世界の広がりをコンパクトに垣間見せてくれる、探究心をくすぐる一冊です。
ちなみに、この本でも取り上げられている言語・Rubyを作ったまつもとゆきひろさんが監訳しています。
Posted by ブクログ
日本人好みの複数言語を比較するタイプの本で、著者が時系列にして言語の仕様や哲学を細かく解説していく様子がとてもわかりやすいです。
言語の選択も秀逸で、プロトタイプ言語、動的型言語、関数型言語など、バランスよく解説してあり、プログラムのパラダイムと哲学がはっきりと理解できる本です。
Posted by ブクログ
プログラム言語の本。
まだ7つのうち2つ、RubyとIoのところまでしか読み進んでいないけど、充分楽しめている。
RubyのメタプログラミングによるDBアクセスなんかはすっきりして面白そう。美しいシンタックスであれば、読み手はシンタックスに注意をはらう必要がなくなり、コードの真意に近づくことができるというのは良い。
コードは人からコンピュータへの意志の伝達だが、同時に人から人への意志の伝達でもあるのだから。
Rubyは柔軟性が高い言語であるのだが、CからJavaへと型が厳密な言語を利用していってる私としては、簡単にスパゲッティになりそうで怖い。
続いてIo言語、これは初めて目にした名前なのだが。
プロトタイプベースの言語で、記述の規則は他に似たものは知らないが、すっきりシンプルなシンタックスで、学習用にとても良いと感じた。
著者も述べていたが、同じプロトタイプベース言語のjavascriptへの理解が深まったのではないかと思う。
まだまだ5つの言語、世界が待っている。
読み終われば考えなおすかもしれないが、とりあえず一区切りとしたい。
Posted by ブクログ
決まった手順で決まったようにやる業務オペレーションしてるときは
理解できなくてもサラッと流さないことには先に進めないんだけど.
#なんでこうやるのかとか誰もわからんから...
しかし,理解してるかどうか気にしないでやるような↑やり方に
馴染み過ぎると,解ることと解らないことが
識別不能でもよくなってくるのがトテモ問題.
この本は
解らないところを注意深く探しながら
ちょっとづつ読み進む感じ.
いつもと違う脳味噌が動くし,オモシロい.
そういえば,新しい言語を実際にうごかすの久しぶり.
頭いい人は,実際にやらなくてもサラッ理解して読めるのかな?
Prologでスライドパズルやらせるとオモシロいかしらん?
とか思いながら現在4章完.
#セマンティクWebでPrologパッケージてあるのかな?
Posted by ブクログ
この図書では7つの言語が紹介されている.その言語すべてにおいて開発された経緯や思想が描かれている.演習を交えてその一分を学び習得するきっかけとなるように記述されていてとても面白い内容だった.自分はコードを流し読みするだけだったがぜひ輪講で演習を交えて行いたいと思った
Posted by ブクログ
邦題「JavaからRubyへ」の著者であるブルース テイトによる7つのプログラミング言語の紹介書。紹介されている言語はRuby, Io, Prolog, Scala, Erlang, Clojure, and Haskellと、進級取り混ぜといった感じはあるが、今ホットな言語が並んでいる。本書には、7つのプログラミング言語の紹介とコア部分を学ぶためのプラクティスが書かれているが、環境のインストール方法等は一切省かれているし、あまり補足説明はないので、入門ではなく、それなりの技量のあるプログラマ向けの言語紹介書と言った説明が本書には適切だろう。
見ての通り関数型と言われている言語が中心であり、かつほぼスクリプト言語という点が筆者の「センス」の現れだし、良さだと思う。
今後ソフトウェア開発は大規模集中ではなく、分散開発とマッシュアップ、コンパイルとCASEツールによる品質維持とインストーラー作成ではなく、自動テストによる品質と開発効率の維持、継続的開発と継続的展開に切り替わっていく課程で、開発言語もよりラピッドな言語、実行環境に移っていくだろう。そのときの有力な候補がこの7つの言語の中にあると思う。