まつもとゆきひろ 言語のしくみ

個数:
電子版価格
¥3,080
  • 電書あり

まつもとゆきひろ 言語のしくみ

  • ウェブストアに1冊在庫がございます。(2024年04月26日 15時26分現在)
    通常、ご注文翌日~2日後に出荷されます。
  • 出荷予定日とご注意事項
    ※上記を必ずご確認ください

    【ご注意事項】 ※必ずお読みください
    ◆在庫数は刻々と変動しており、ご注文手続き中に減ることもございます。
    ◆在庫数以上の数量をご注文の場合には、超過した分はお取り寄せとなり日数がかかります。入手できないこともございます。
    ◆事情により出荷が遅れる場合がございます。
    ◆お届け日のご指定は承っておりません。
    ◆「帯」はお付けできない場合がございます。
    ◆画像の表紙や帯等は実物とは異なる場合があります。
    ◆特に表記のない限り特典はありません。
    ◆別冊解答などの付属品はお付けできない場合がございます。
  • ●店舗受取サービス(送料無料)もご利用いただけます。
    ご注文ステップ「お届け先情報設定」にてお受け取り店をご指定ください。尚、受取店舗限定の特典はお付けできません。詳細はこちら
  • サイズ B5判/ページ数 353p/高さ 24cm
  • 商品コード 9784822239176
  • NDC分類 007.64
  • Cコード C3055

出版社内容情報

 世界中で使われているプログラミング言語「Ruby」の作者、まつもとゆきひろ氏が「言語の作り方」を初めて真正面から解説する本です。

 本書のため新言語「Streem」を作りました。2年をかけて新言語を実際にデザイン・実装した取り組みを、試行錯誤の過程も含めて詳しく解説しています。

 「今更、言語を作ってどんな意味があるの?」と思う人もいるかもしれません。
まつもと氏は言語を作る価値を本書でこう説明します。

 ●プログラミング能力の向上
 ●デザイン能力の向上
 ●自己ブランド化
 ●自由の獲得

 まずプログラミング言語の実装は、コンピュータサイエンスの総合芸術といえるでしょう。言語処理系の基礎である字句解析や構文解析は、ネットワーク通信のデータプロトコルの実装などにも応用できます。

 プログラミング言語はコンピュータと人間をつなぐインタフェースでもあります。そのようなインタフェースをデザインすることは、人間がどのように考え、暗黙のうちに何を期待しているかについての深い考察が求められます。
そのような考察を重ねることは、言語以外のAPIのデザインや、ユーザーインタフェース(UI)、ひいてはユーザーエクスペリエンス(UX)のデザインに役立つでしょう。

 こんな言語デザインの世界に皆さんをご案内します。

●第1章 さあ、どんな言語を作ろう
1-1 自ら言語を作る価値
1-2 言語処理系の仕組み
1-3 バーチャルマシン
1-4 言語デザイン入門(前編)
1-5 言語デザイン入門(後編)

●第2章 新言語「Streem」の設計と実装
2-1 抽象的コンカレントプログラミング
2-2 新言語「Streem」とは
2-3 文法チェッカーをまず作る
2-4 イベントループ
2-5 マルチスレッドとオブジェクト
2-6 キャッシュとシンボル
2-7 AST(抽象構文木)に変換
2-8 ローカル変数と例外処理

●第3章 オブジェクト指向機能を設計する
3-1 さまざまなオブジェクト指向
3-2 Streemのオブジェクト指向
3-3 Streem文法再訪
3-4 パターンマッチ

●第4章 Streemオブジェクトを実装する
4-1 ソケットプログラミング
4-2 基本データ構造
4-3 オブジェクト表現とNaN Boxing
4-4 ガーベージコレクション
4-5 ロックフリーアルゴリズム

●第5章 ストリームプログラミングを強化する
5-1 パイプラインプログラミング
5-2 パイプライン構成要素
5-3 CSV処理機能
5-4 時間表現
5-5 統計基礎の基礎
5-6 乱数
5-7 ストリームグラフ

まつもとゆきひろ[マツモトユキヒロ]

内容説明

Rubyの作者が初めて明かす!言語の作り方から学ぶ一流プログラマのスキルとセンス。本書のために作った新言語「Streem」を、どう設計&実装したかを一から解説。

目次

第1章 さあ、どんな言語を作ろう(自ら言語を作る価値;言語処理系の仕組み ほか)
第2章 新言語「Streem」の設計と実装(抽象的コンカレントプログラミング;新言語「Streem」とは ほか)
第3章 オブジェクト指向機能を設計する(さまざまなオブジェクト指向;Streemのオブジェクト指向 ほか)
第4章 Streemオブジェクトを実装する(ソケットプログラミング;基本データ構造 ほか)
第5章 ストリームプログラミングを強化する(パイプラインプログラミング;パイプライン構成要素 ほか)

著者等紹介

まつもとゆきひろ[マツモトユキヒロ]
1965年生まれ。鳥取県米子市出身。筑波大学第三学群情報学類卒業。プログラミング言語Rubyの生みの親。プログラミング言語デザインの第一人者。プロ言語デザイナー。株式会社ネットワーク応用通信研究所フェロー、一般財団法人Rubyアソシエーション理事長、Heroku Chief Architectなど、肩書多数。三女一男の父でもある(本データはこの書籍が刊行された当時に掲載されていたものです)
※書籍に掲載されている著者及び編者、訳者、監修者、イラストレーターなどの紹介情報です。

感想・レビュー

※以下の感想・レビューは、株式会社ブックウォーカーの提供する「読書メーター」によるものです。

えちぜんや よーた

68
残念ながら自分の知識・経験程度では第1章の数ページで撃沈。以下はほぼ抜粋の内容です。「プログラミング言語」と言っても正確には「言語」と「言語処理系」に分けられてる。言語は「文法」と「語彙」で構成される。文法はどのような記述がその言語でのプログラミングの表現になるかを定めたルール。語彙はその言語で記述されたプログラムの呼び出せる機能の集合のこと。語彙は最初から備わっている組み込み機能のことを指す。一方、言語処理系の方はその文法や語彙を実際にコンピュター上で実行できるようにするためのソフトウェアのことを指す。2017/09/07

calicalikoume

5
Streemという独自のプログラミング言語を開発する過程を解説した一冊。プログラミング言語を作るという事がどんなことなのかイメージするきっかけになりました。細かい部分は説明が難しいと感じる部分がありましたが、他の様々なプログラミング言語の特徴が雑学的にところどころに織り込まれている部分が大変面白かったです。2018/09/01

shibacho

2
雑誌連載の再録。事前知識としてC言語と関数型プログラミングに触れていることが望ましい。特に変数がimmutableうんぬんの話はほとんど何の説明もない(と思う)。MatzがStreemを作る過程の読み物であり、著者の試行錯誤の過程が見えるという意味では面白いが、これを読んだからといっていきなりプログラム言語が作れるわけじゃないので、個々のトピックは別の本で補った方がいいだろう。2017/10/02

ryo33

1
バーチャルマシンのところと基本データ構造のところが参考になった。これを読んでNumber型一本で行くことを決意できた2021/05/21

Syuparn

1
プログラミング言語「Ruby」の作者まつもとゆきひろさんが一から新しい言語を作るという趣旨の本です。ただの技術紹介、理論に留まらず、「なぜこの文法か」「どう役に立つのか」を第一に説明しているため、様々なプログラミング言語の設計理由を知ることができました。自分でも言語を作ってみたいと思える一冊です。2018/03/15

外部のウェブサイトに移動します

よろしければ下記URLをクリックしてください。

https://bookmeter.com/books/11274174
  • ご注意事項

    ご注意
    リンク先のウェブサイトは、株式会社ブックウォーカーの提供する「読書メーター」のページで、紀伊國屋書店のウェブサイトではなく、紀伊國屋書店の管理下にはないものです。
    この告知で掲載しているウェブサイトのアドレスについては、当ページ作成時点のものです。ウェブサイトのアドレスについては廃止や変更されることがあります。
    最新のアドレスについては、お客様ご自身でご確認ください。
    リンク先のウェブサイトについては、「株式会社ブックウォーカー」にご確認ください。