Skip to Content
プログラミング言語AWK 第2版
book

プログラミング言語AWK 第2版

by Alfred V. Aho, Brian W. Kernighan, Peter J. Weinberger, 千住 治郎
May 2024
Intermediate to advanced
276 pages
3h 51m
Japanese
O'Reilly Japan, Inc.
Content preview from プログラミング言語AWK 第2版

7章専用言語

Awk は「専用言語」のトランスレータ開発に用いられることが多い。ここで言う専用言語とは、用途を限定した簡易言語 (little lan­guage、小さな言語) を意味する。トランスレータを取り上げた理由の 1 つに、言語処理系の動作を学ぶことがある。本章ではまずアセンブラを例に取り上げ、アセンブリ動作の基礎を簡単に示す。このアセンブラには、アセンブルしたプログラムを実行するインタプリタが付属しており、この組み合わせを用い、アセンブリ言語とコンピュータアーキテクチャの基礎を示す。その他に電卓の基本演算例と、Awk 言語のサブセットを対象とした、再帰下降型トランスレータの基本動作を示す例も取り上げる。

実装に多くの労力を費やす前に、言語の構文や意味論を検証するのが良いだろう。その例として本章では、グラフ作成言語、ソートコマンドのオプション生成言語を取り上げる。

実用性を備えた言語を実装したい向きもあるだろう。本章ではさまざまな電卓も例に取り上げる。

ここで取り上げる言語処理系は、次図に示す概念を基に構築する。

ch07/fig/ch07fig-01.png

フロントエンドのアナライザ (字句解析、解析器) は、ソースプログラムを読み込み、演算子、オペランドなどの字句単位に分解する。ソースプログラムの解析時には文法的に正しいかどうかも検査し、誤りがあればエラーメッセージを出力する。最終的にソースプログラムをなんらかの中間形式へトランスレート (翻訳) し、出力するまでがアナライザの仕事だ。その中間形式からターゲットプログラムを生成するのは、バックエンドのシンセサイザ ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

プログラミングRust 第2版

プログラミングRust 第2版

Jim Blandy, Jason Orendorff, Leonora F. S. Tindall, 中田 秀基
仕事ではじめる機械学習 第2版

仕事ではじめる機械学習 第2版

有賀 康顕, 中山 心太, 西林 孝
詳説 イーサネット 第2版

詳説 イーサネット 第2版

Charles E. Spurgeon, Joann Zimmerman, 三浦 史光, 豊沢 聡
Linuxカーネルプログラミング 第2版

Linuxカーネルプログラミング 第2版

Kaiwan N. Billimoria, 武内 覚, 大岩 尚宏

Publisher Resources

ISBN: 9784814400706Publisher Website