プログラミング言語の仕組み

プログラミングゲンゴノシクミ

プログラミング言語の仕組みの表紙
ハードウェア
著者:
黒川 利明(クロカワ トシアキ)
出版社:
朝倉書店
出版日:
1997年04月15日頃
ISBN:
9784254127027
シリーズ:
情報科学こんせぷつ 2
在庫:
メーカー取り寄せ
0
初級者向け
ソフトウェアアーキテクチャアルゴリズムプログラミング言語コンピュータアーキテクチャ言語設計プログラミングパラダイム歴史ツールコンパイラーインタープレタ

なぜ注目されているか

総合577位 ↑ 23 ランクアップ 言及 3 件
言及数
685位

書籍紹介

特定の言語を用いることなく, プログラミング言語全般の基本的な仕組を丁寧に解説。〔内容〕概論 / 言語の役割 / 言語の歴史 / プログラムの成立ち / プログラムの構成 / プログラミング言語の成立ち / プログラミング言語のツール / 言語の種類
1. はじめに

1.1 プログラミング言語の学習はなぜ難しいのでしょう

1.2 プログラミング言語の基本事項

1.3 本書を読むための予備知識

1.4 本書の狙い

2. プログラミング言語の役割

2.1 プログラム

2.2 アルゴリズム

2.3 プログラミング言語の役割

2.4 プログラミング言語の本質的な役割

2.5 プログラムと, 人間やコンピュータシステム / ツールとの関わり

3. プログラミング言語の歴史

3.1 バイナリはプログラミング言語でしょうか?

3.2 アセンブリ言語

3.3 高水準言語

3.4 言語の世代分け

3.5 構造化プログラミング言語

3.6 非フォンノイマン型アーキテクチャのプログラミング言語

3.7 パソコンの登場と簡易言語

3.8 ネットワークを考えたプログラミング言語

3.9 プログラミング言語の将来の動き

4. プログラムの成立ち

4.1 言語と言語を用いて表される内容

4.2 プログラムの目標とプログラムの仕様

4.3 プログラムで使われるデータの種類とその分類

4.4 データの表現と構造

4.5 プログラムの中の処理, 手続き

4.6 プログラムの内容についての別の見方

5. プログラムの構成ーー形式論

5.1 構成の抽象的な書き方

5.2 プログラムの構成

5.3 流れ図 (フローチャート)

5.4 オブジェクトコードの構成

5.5 ソースプログラムの構成

6. プログラミング言語の成立ち

6.1 言語一般の成立ち

6.2 プログラミング言語での文字

6.3 プログラミング言語での語 (word)

6.4 表現, 式

6.5 文

6.6 プログラム単位

6.7 モジュールとライブラリ

6.8 プログラム

7. プログラミング言語のツール

7.1 ツールについての簡単な説明

7.2 ツールの基本的な仕組み

8. いくつかのプログラミング言語の種類 (型)

8.1 構造化構文のプログラミング言語

8.2 自然言語構文のプログラミング言語

8.3 関数式 (論理式) 構文のプログラミング言語

8.4 コマンド方式 (行命令) のプログラミング言語

9. 付録 用途別のプログラミング言語

10. 練習問題の解答

11. 参考文献

12. あとがき

13. 索 引

技書の森解説

新しい言語を覚えるたびに文法を一から暗記し直す負担は、言語に共通する骨組みを知っているかどうかで大きく変わります。『プログラミング言語の仕組み』 (黒川 利明 著、朝倉書店、1997 年 4 月 15 日刊) は、叢書「情報科学こんせぷつ」の第 2 巻にあたる教科書で、版元は「特定の言語を用いることなく, プログラミング言語全般の基本的な仕組を丁寧に解説」と紹介しています。特定の言語の入門書ではなく、言語というもの全体を外から眺めるための本です。

言語の役割と歴史から、文字 / 語 / 文の成り立ちへ

目次は 1 から 13 までの番号で並び、8 までが本文、9 が付録「用途別のプログラミング言語」、そのあとに練習問題の解答、参考文献、あとがき、索引が続きます。1 章「はじめに」は「プログラミング言語の学習はなぜ難しいのでしょう」という節で始まり、本書を読むための予備知識と本書の狙いを示します。2 章で言語の役割を整理し、3 章の歴史は「バイナリはプログラミング言語でしょうか?」という問いからアセンブリ言語、高水準言語、言語の世代分け、構造化プログラミング言語、非フォンノイマン型アーキテクチャの言語、パソコンの登場と簡易言語、ネットワークを考えた言語へと進みます。4 章と 5 章はプログラムの側から、データの種類と表現、処理と手続き、流れ図、オブジェクトコードとソースプログラムの構成を扱います。6 章「プログラミング言語の成立ち」は文字、語、表現と式、文、プログラム単位、モジュールとライブラリと、言語を小さな単位から積み上げる順に並び、7 章でツール、8 章で構造化構文、自然言語構文、関数式 (論理式) 構文、コマンド方式という言語の種類を見ます。巻末に練習問題の解答があるため、独習でも手を動かしながら確かめられます。

言語を部品の積み重ねとして見る視点

この並びは、言語処理系がソースコードを読む順序とよく似ています。ソースコードはまず文字の並びであり、それが語 (トークン) にまとめられ、語が式や文を作り、文が関数や手続きのような単位にまとまり、さらにモジュールやライブラリとして組み合わされます。ソースコードを機械が実行できる形へ変える コンパイラー は、まさにこの階層を下から順に組み立て直す仕組みです。どの言語にもこの階層があると分かると、初めて見る言語でも、語の区切り方や文の終わり方、名前の有効範囲といった違いを「どの層の違いか」で整理できるようになります。本書の 6 章が文字から順に積み上げる並びは、この骨組みを言語に共通のものとして見せる構成です。なお、処理系そのものを掘り下げたい場合は、同じ叢書の第 8 巻『コンパイラの仕組み』 (渡邊 坦 著) が別に用意されています。

1997 年刊であることをどう受け止めるか

本書は 1997 年の刊行で、3 章の歴史は「ネットワークを考えたプログラミング言語」「プログラミング言語の将来の動き」の節で締めくくられています。そのため、言語の歴史の記述は 1997 年時点までの技術環境を前提にしたものとして読む必要があります。一方で、文字から文、プログラム単位へと積み上がる言語の構造や、構文の型による言語の分類は、個別の言語の流行に左右されにくい題材です。目次には型システムや意味論の形式的な定義を名に掲げた節は見当たらないため、型理論や意味論を本格的に学びたい人は、その分野の専門書を別に選ぶほうが目的に合います。

何か一つの言語を書き始めたばかりで、次の言語に進む前に言語全般の骨組みを整理しておきたい人や、情報系の授業の副読本を探している人には、言語の役割から構造、種類までを練習問題付きで一冊にまとめた本書は手堅い選択です。最初に学ぶ言語そのものを決めたい段階なら、プログラミング言語の入門書ガイド で言語別の入門書を先に選び、文法に少し慣れてから本書に戻ると、言語を外から眺める視点がいっそう生きてきます。

言及した記事 (3 件)

この本に興味がある方におすすめ

関連する本

黒川 利明 の他の書籍

関連記事

関連用語

共有: