Elixir」ソフトウェア開発の背景となるトレンドが変化するとき、新しいツールや新しいライブラリが求められます。マルチコアやクラウド環境が当たり前になった昨今、過去のどの時代よりも並行分散実行に対する要求が高まっています。Valimによる、そのトレンドへの解答がElixirです。「新言語を考えているんだ」とその文法に関する相談を受けたことがあります。Rubyの文法とRailsの柔軟性とErlangの並列分散性能の結実であるElixir、言語設計者がどんなことを考えながらElixirを作ったのか想像してみるのも楽しいでしょう。まつもとゆきひろこの本は、関数プログラミング言語というものに興味はあれど、畏れに二の足を踏むプログラマに優しい本です。わたしにとって、とても素敵な本だった、という意味です。自分の手足のように使うのもまだまだ遠い道のりです。少なくとも「プログラミングを変換で考える」という言葉の意味は読む前より分かるようになりました。パターンマッチをフィルタにする発想は魅力的で今すぐ使いたくなりましたし、プロセスを山のように生成してエラーを別のプロセスに監視させる仕組みは刺激的でした。再帰を書くのがちょっと得意になりました。プログラミングについて、新しい考え方、切り取り方、前より広い視野を持つことができたのです。この本の狙いどおりです。翻訳という形で関わることで、平易で実際的な語り口で、「考え方」を紹介してくれるこの本を、じっくり読むことができたのは幸運でした。この本を裏打ちするコンピューター科学の学識について、笹田にしっかりと理解を助けてもらえたのも、すばらしい体験でした。この魅力的な本の日本語版を、みなさまの元にお届けできることを嬉しく思います。オーム社から出版されましたので宣伝させて下さい。はまっていたようです。ベースに執筆された本になります。はまってるんだ、というのは、本書を読むとよくわかります。意識した文章もありました。出版されてしまったので、そちらをベースに翻訳しなおしています。出版され、呆然としたことを覚えています(大げさ)。手でパッチを当てていく作業...。出版されることになりました。出版されるということで、もうこれはしょうがないのかな、という感じです。見るに)多分そんなに無いんじゃ無いかな、と思うんで、ぜひ買って下さい。かみ砕いて紹介するコンテンツを用意しようと思います。何か、という説明が必要かもしれませんね。上で動くスクリプト言語です。Erlang、みたいな言語です。読みやすい言語なんじゃないかと思います。そのまま受け継いでいます。マクロやゆるい型システム(Dialyzer)などが使えます。あるのかもしれないけど...)。なんというか、とてもモダンな言語です。具体的なプログラム例です。とほとんど同じですね。本書の冒頭で紹介されている、少しそれっぽいプログラムをご紹介してみます。いう関数を定義しています。各要素の処理を、要素数の分だけプロセスを生成し、各プロセスで並行に実行する、というものです。見ても、よくわからないような気がしますが、大丈夫、本書を読めば、わかるようになります。良さを残すような、使いやすいものになっていますが、さらに、エコシステムが充実しています。ようなものが標準でついてきており、テストの記述もらくらくにできるようになっています。良い文化を取り入れたんじゃないかなと思います。あと、ドキュメントも豊富ですね。ついては紹介していません)。自身、それを文中で明確に否定しています)。ツールを使ってどのようにプロジェクトを進めていけばいいかをしっかりと解説しています。根底にある、関数プログラミングの考え方を、とても丁寧に解説していますので、その方面に不案内な方や、興味がある方にもオススメできると思います。Elixir」には、原著にはなかったおまけがついています。なんか書いて、ってお願いしたら、凄くいい文章をすぐに寄せてくれました。彼らは筆が早いですね。付録として巻末に掲載してあります。あ、あと関連するイベントを企画頂いているようですので、興味があればチェックしておいて下さい。RubySapporo.beam(札幌)以下、目次とちょっとした解説です。要するにイントロです。タイトルはマトリックスからですね。第I部では、並行制御以外の、基礎の部分を紹介しています。特長のひとつである、パターンマッチについて紹介しています。代入文じゃなくてパターンマッチ文になります。