Would you like to see this page in English? Click here.

新品を購入

または
1-Clickで注文する場合は、サインインをしてください。
または
Amazonプライム会員に適用。注文手続きの際にお申し込みください。詳細はこちら
中古品を購入
中古品 - 良い 詳細を見る
価格: ¥ 2,067

または
1-Clickで注文する場合は、サインインをしてください。
 
   
こちらからも買えますよ
この商品をお持ちですか? マーケットプレイスに出品する
プログラミングErlang
 
 

プログラミングErlang [単行本(ソフトカバー)]

Joe Armstrong , 榊原一矢
5つ星のうち 5.0  レビューをすべて見る (3件のカスタマーレビュー)
価格: ¥ 4,620 通常配送無料 詳細
o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o
在庫あり。 在庫状況について
この商品は、Amazon.co.jp が販売、発送します。 ギフトラッピングを利用できます。
2点在庫あり。ご注文はお早めに。
2012/2/15 水曜日 にお届けします! 「お急ぎ便」オプション(有料)を選択して注文を確定された関東エリアへの配達のご注文が対象です。詳しくはこちら

キャンペーンおよび追加情報

  • 合わせ買いで割引:「本とPCソフトの合わせ買い」で最大2000円OFF。詳しくはこちら。クリエイター御用達のアドビ製品など、対象PCソフトのセレクション拡大中。

  • 著者ページ: 著者の作品一覧や、著者写真・略歴など、著者に関する情報を満載した「著者ページ」。著者の方は、「著者セントラル」へ。


よく一緒に購入されている商品

この本とプログラミングHaskell ¥ 2,940 をあわせて買う

プログラミングErlang + プログラミングHaskell
合計価格: ¥ 7,560

在庫状況の表示

  • 対象商品: プログラミングErlang

    在庫あり。 在庫状況について
    この商品は、Amazon.co.jp が販売、発送します。
    通常配送無料(一部の商品・注文方法等を除く) 詳細

  • プログラミングHaskell

    在庫あり。 在庫状況について
    この商品は、Amazon.co.jp が販売、発送します。
    通常配送無料(一部の商品・注文方法等を除く) 詳細


この商品を買った人はこんな商品も買っています


商品の説明

出版社/著者からの内容紹介

プログラミング言語「Erlang」のバイブルを翻訳。

Erlang(アーラン)とは、近年再評価されて注目を集めている関数型プログラミング言語です。
本書は、並行プログラミングに有効な言語として急速に一般にも認知され始めたErlangのバイブル的な解説書を翻訳するもの。
原著者はErlangの初期の頃からの開発者の一人。

著者からのコメント

Joeより

我々が暮らすこの世界は並列に動いている。
実世界に存在する他のものと同じように振る舞うプログラムを書きたかったら、プログラムも並行構造になることだろう。
並行アプリケーションを書くために設計された言語を使えば開発はすごく簡単になる。
Erlang のプログラムがモデル化しているのは、我々が考えたりコミュニケーションする様なのだ。

Joe Armstrong

訳者序文
本書を手に取ったあなたがプログラミングをゼロから学ぼうという人ならば、非常に幸運だ。なぜなら、現在主流のC++ やJava といった言語の概念にとらわれることなく、シンプルでありながら強力なプログラミング言語を学べるからだ。あなたがプログラミングの経験者でも同様に幸運だ。なぜなら、これまでのプログラミングの経験に加えて、Erlang というすばらしい道具を活用できるようになるからだ。

さて、近年のWeb をベースとしたシステムの発展は、これまで通信機器など高可用性を重視する用途以外ではあまり知られていなかったErlang に新たな注目を浴びせることになった。Webは基本的に開かれたシステムであるため、比較的簡単にサービスを構築して公開することができる反面、大量のアクセスをさばかなければならない状況も起きやすい。いわゆるC10K 問題である。10K = 10000 個のクライアントからのアクセスをいかにして切り回すかはいまや多くのエンジニアの頭を悩ます問題となっている。C10K 問題は20 世紀の間に提起されていたのだから、それからさらにWeb が発展した現在ではどのような状況であるかは推して知るべしである。

前述のC10K のサイトを見てもわかるように、その解決策はマルチスレッドプログラミングを駆使した煩雑なものが多い。これでは本来提供したいサービスのことを考えるための余裕がなくなってしまう。また、オペレーティングシステムが提供するスレッド環境はコストが高いものが多く、クライアント1 つにスレッドを1 つ割り当てるような贅沢な使い方ではとても10000 個のクライアントをさばくことなどできない。

Erlang ならばそんな贅沢もまったく問題ない。余計なことを考えずにサービスを作ることに集中できるのだ。

また、処理能力を増やすためのハードウェア側からのアプローチとしては、従来は駆動クロックの高速化が一般的であった。しかし、主に熱の問題から現在の半導体の駆動クロックは数GHz で頭打ちになると考えられているため、その代わりに処理装置を増やす方向、つまりマルチプロセッサ化やマルチコア化に拍車がかかっている。ここ数年でマルチプロセッサやマルチコアのマシンは個人でも手に入れられるようになってきたが、その上で動作するソフトウェアの方はまだまだハードウェアを生かしきれていないのが実情だ。

では、どうすれば並列ハードウェアを生かしたソフトウェアを作ることができるのだろうか? 一般には、pthread などに代表されるいわゆるマルチスレッドプログラミングのためのライブラリやフレームワークを使うことが多いだろう。しかし、競合条件を正しく見極めて排他制御を正しく適用するのはなかなか難しく、熟練したプログラマでさえも間違いを犯しがちだ。実際、訳者もマルチコアマシン用のオペレーティングシステムを開発しているが、それでも自分自身がその手の同期バグを仕込んでしまうことがあるし、もっと注意深い人々でもミスは皆無ではない。

人間は誰でもちょっとした間違いをしてしまうものだから、ここはコンピュータの方でなんとかすべきところだ。残念ながら、C やC++、Java、それにPerl やRuby、Scheme などの言語には、そのような間違いをしないような仕組みは備わっていない。後付けの仕組みや実験的な取り組みはあるが、実用的ではなかったり、実績に乏しい。その点、Erlang はもともと並列処理を念頭に置いて設計されているから、変数の排他制御の問題などは本質的に存在しない。それはErlang が関数型プログラミング言語の特徴をうまく生かしているからだ。関数型プログラミングというと身構えてしまう人もいるかもしれないが、実はそんなに難しくない。それどころか、プログラムは命令型プログラミング言語で書かれたものよりもずっとわかりやすい。実のところ、Erlang は関数型プログラミング言語の中でも文法がとっつきやすく、関数型プログラミングの入門にも適している。

ところで、並列指向プログラミングはErlang の最も大きな特徴だが、実はErlang の強みはそれ以外にもある。「関数型」でしかも「並列指向」と来れば、研究室を出たことのない、実績に乏しいプログラミング言語であるかのような印象を抱く人もいるかもしれない。しかし、Erlang には20 年を超える歴史があり、高度な信頼性が要求される通信機器の分野でも実績がある。そのような実績はもちろんErlang の基本設計の見通しの良さによるところも大きいが、忘れてはならないのはOTP というフレームワークの存在である。詳しくは本書の後半の解説に譲るが、OTP は信頼性の高いシステムを作るためのノウハウがつまっている。大規模なシステムを構築し、長年にわたって更新しつつ運用していくためのいわばデザインパターンと言える。また、本書で取り上げているのはOTP のごく一部でしかなく、そのほかにも実際のシステム構築において培われた興味深い機能があるので、本書の次のステップとして覗いてみるのもよいのではないだろうか。

Erlang は歴史のある言語だが、今現在も進化を続けている。本書はErlang OTP R11B5 というリリースを元にしているが、本書発行の時点で既に次のR12B0 というリリースが出ている。今回のリリースは以前のリリースとの互換性を保っているので、本書で解説していることはそのまま通用するはずである。ただし、R12B0 ではエラーメッセージがわかりやすいように変更されているため、エラーメッセージについてはかなり異なる部分がある。

なお、本書の翻訳にあたって、誤解を生じない範囲であえて用語の統一を図らなかった部分がある。原著でも読みやすさを優先して1 つの概念をいくつかの言葉で言い換えており、翻訳でもその方針に従っている。特に、並列(parallel)と並行(concurrent)は厳密にはそれぞれ異なる概念を指す言葉であるが、原著同様統一していない点に注意されたい。

最後に、多忙な中で本書をレビューし、有益なコメントをくださった平岡和幸、檜山正幸、堀玄、向井淳の各氏にこの場を借りてお礼を述べさせていただきます。また、オーム社開発局の方々にも各面でのサポートをいただき、感謝しております。その他、ここで逐一お名前を挙げることはできませんが、さまざまな方からのご協力の下に本書を作ることができました。ありがとうございました。

2008年2月
榊原一矢


登録情報

  • 単行本(ソフトカバー): 480ページ
  • 出版社: オーム社 (2008/2/23)
  • 言語 日本語
  • ISBN-10: 4274067149
  • ISBN-13: 978-4274067143
  • 発売日: 2008/2/23
  • 商品の寸法: 23.4 x 18.2 x 2.8 cm
  • おすすめ度: 5つ星のうち 5.0  レビューをすべて見る (3件のカスタマーレビュー)
  • Amazon ベストセラー商品ランキング: 本 - 203,605位 (本のベストセラーを見る)
  •  カタログ情報、または画像について報告

  • 目次を見る

この本のなか見!検索より (詳細はこちら
この本のサンプルページを閲覧する
おもて表紙 | 著作権 | 目次 | 抜粋 | 索引 | 裏表紙
この本の中身を閲覧する:

この商品を見た後に買っているのは?


この商品につけられているタグ

 (詳細)
タグをクリックすると、タグがつけられた商品、タグをつけた人が表示されます。※タグは初期設定で公開になっています。詳しくはこちら
 

 

 

カスタマーレビュー

3レビュー
星5つ:
 (3)
星4つ:    (0)
星3つ:    (0)
星2つ:    (0)
星1つ:    (0)
 
 
 
 
 
おすすめ度
5つ星のうち 5.0 (3件のカスタマーレビュー)
 
 
 
 
あなたの意見や感想を教えてください:
最も参考になったカスタマーレビュー

41 人中、39人の方が、「このレビューが参考になった」と投票しています。
5つ星のうち 5.0 Erlangならこの本が一番, 2008/3/2
By 
yoshik-y - レビューをすべて見る
(トップ500レビュアー)   
レビュー対象商品: プログラミングErlang (単行本(ソフトカバー))
 つい3ヶ月ほど前、アスキーから「プログラミング言語Erlang入門」という本が出て、「入門としては良い、Joe Armstrongの良い本があるのだが、翻訳されていないので」等とレビューを書いていたのだが、その本が翻訳された。並列処理と分散処理に特徴を持つが、分かりにくいとされる言語仕様を余すところなく紹介している。
 また、およそErlangで出来ることを簡単なものから複雑なものまで多数の例を挙げており、一番の特徴であるネットワークやデュアルCPUでのプログラミングなど何でも分かるだろう。
 訳も優れており、原著の雰囲気そのままに、読みやすくユーモアにあふれた語り口になっており飽きさせない。
 Erlangに興味を持った人全てに文句なしに勧められる本だ。
レビューを評価してください 
このレビューは参考になりましたか? はい いいえ


11 人中、8人の方が、「このレビューが参考になった」と投票しています。
5つ星のうち 5.0 前準備とMacでの工夫, 2008/9/24
レビュー対象商品: プログラミングErlang (単行本(ソフトカバー))
文句なしに、現時点での最強のErlang解説書。

Erlangの強みである並列化と分散化を“存分”に体験、学習および利用するためには、ある程度の準備が要求されます。最低二台のコンピュータで構成されるネットワーク環境に加え、DNSがあると助かります。

ただ、分散プログラミング部分にあたって、私のMac OSX 10.4は本の通りに上手くいきませんでした。もし、私と同じところで躓いたら、下記を参考にしてみてください。

1)ローカルホストでの分散の場合は、“erl -sname gandalf”でerlang環境を立ち上げるようにと書いてありますが、“erl -sname gandalf@localhost”にします。明確に'@localhost’を記入するということです。

2)DNSなしでマシン間の分散の場合は、"erl -name gandalf@xxx.xxx.xxx.xxx -setcookie abc" に改めて立ち上げると問題が解決します。ここのxxx.xxx.xxxは使用中のマシンのIPアドレスのことで、たとえば 192.168.1.1 などがそうです。
レビューを評価してください 
このレビューは参考になりましたか? はい いいえ


7 人中、5人の方が、「このレビューが参考になった」と投票しています。
5つ星のうち 5.0 めちゃくちゃいいです!, 2008/4/8
レビュー対象商品: プログラミングErlang (単行本(ソフトカバー))
私はこういった関数型言語については全然馴染みがなかったので、最初は非常に読みづらかったですが、それは書籍の問題ではなく、言語仕様というか文法や考え方の問題であって、内容は非常に良いです。
特にこの後、F#に関する本を読んだのですが、F#に比べると非常に言語仕様がシンプルで、並行プログラミングも分散プログラミングも区別することなく同じように書けるし、堅牢でミッションクリティカルなアプリケーションにはぴったりの言語です。
書籍の内容も読めば読むほど味が出る内容で、Erlangの安定性を支えるOTP(Open Telecom Platform)を使った定石アプリケーション構築の説明やアプリケーションを可動させたまま、実行コードを変更するホットスワッピングなどについても丁寧に説明されています。
プログラマたるもの、いろいろな言語に触れてみる必要があると思いますが、これは必読、お勧めの名著だと思います。
レビューを評価してください 
このレビューは参考になりましたか? はい いいえ

あなたの意見や感想を教えてください: 自分のレビューを作成する
 
 
この商品のカスタマーレビューだけを検索する



クチコミ

クチコミは、商品やカテゴリー、トピックについて他のお客様と語り合う場です。お買いものに役立つ情報交換ができます。
この商品のクチコミ一覧
内容・タイトル 返答 最新の投稿
まだクチコミはありません

複数のお客様との意見交換を通じて、お買い物にお役立てください。
新しいクチコミを作成する
タイトル:
最初の投稿:
サインインが必要です
 

クチコミを検索
すべてのクチコミを検索
   


リストマニア

リストを作成

関連商品を探す


同じキーワードの商品を探す


フィードバック


Amazon.co.jpのプライバシー ステートメント Amazon.co.jpの発送情報 Amazon.co.jpでの返品と交換