llvm作品一覧

  • 作って学ぶコンピュータアーキテクチャ —— LLVMとRISC-Vによる低レイヤプログラミングの基礎
    -
    ※PDF版をご希望の方は Gihyo Digital Publishing (https://gihyo.jp/dp/ebook/2022/978-4-297-12915-6)も合わせてご覧ください。 コンピュータアーキテクチャ,とくにCPUの命令セットアーキテクチャについて,RISC-Vを例に「上のレイヤからアプローチする」ことで理解を深めることを目的とした一冊。本書を一通り読み終えるころには,低レイヤに対する一段上の実力がついているはずです!
  • Rustで作るプログラミング言語 —— コンパイラ/インタプリタの基礎からプログラミング言語の新潮流まで
    NEW
    -
    【言語の開発を通して、プログラミングそのものへの理解を深めよう!】 小さなプログラミング言語から本格的なプログラミング言語へ……ステップバイステップでの開発を通して、プログラミングそのものへの理解を深めよう!Rustでの開発の勘所もわかって二度おいしい一冊です。 ■こんな方におすすめ ・コンピュータサイエンス、とくにプログラミング言語そのものやコンパイラについての素養を得たいと考えている人 ・他言語でのプログラミング経験があり、Rustの習得に興味のある人。とくに、学習のための題材を探している人 ■目次 ●第1章:プログラミング言語概論 プログラミング言語の分類/他の切り口での分類方法/コンパイルパイプライン ●第2章:スタックベース仮想マシン 仮想マシン概論/Rustでの実装/標準入力からの読み込み/パースとコマンドの実行/ブロックとネスト構造/if制御構文/変数の定義/複数行のソースコードへの対応/関数呼び出し/関数の再帰呼び出し/WebAssemblyへのコンパイルとブラウザでの実行 ●第3章:プログラミング言語の構文解析 構文解析が解決する課題/構文へのマッチ/トークンの切り出し/括弧によるグループ化/木構造の構築/式の構文木/パーサコンビネータnom/Parsing Expression Grammarによる構文解析/ASTインタプリタ/関数呼び出しの構文と評価/設定ファイルへの応用 ●第4章:スクリプト言語ランタイム 本章で設計する言語/構文と意味論/AST実行モデル/文(Statement)の導入/変数宣言/代入文/条件分岐/ループ/関数定義/その他の制御構文/動的型の導入 ●第5章:静的型付けと型チェック 静的型システムの概要/型チェックの基本構成法/型宣言/式と文の型チェック/組み込み関数の型定義/エラー位置の報告 ●第6章:バイトコードへのコンパイル バイトコードとネイティブコード/スタックマシンとレジスタマシン/命令セットの特徴と設計/バイトコードの構成/最小限のバイトコードの定義と実行/バイトコードへのコンパイル/リテラルテーブルの実装/任意のソースコードをパースしてバイトコードへ翻訳/完全な式のコンパイルと実行/条件分岐式のコンパイルと実行/ループ制御のコンパイルと実行/ユーザー定義関数/型チェッカーとの統合/状態マシンとコルーチン/コルーチンオブジェクトとジェネレータ/応用例 ●第7章:LLVMを使ったネイティブコードへのコンパイル llvm-sysとinkwell/inkwellでのHello, world!/ネイティブコードによるパフォーマンスの向上 ■著者プロフィール 佐久田昌博:東京大学工学系研究科 精密工学専攻 修士卒。C、C++を中心にソフトウェア技術者として15年の経歴がある。マサチューセッツ工科大学に客員研究員(Visiting Scientist)として1年間在籍。Rust開発を7年ほど前から始め、数多くの個人プロジェクトとともに商用製品の一部に使っている。
  • 6ステップで完全理解 新言語「Swift」(日経BP Next ICT選書)
    -
    米アップル社の新言語「Swift」が、従来の「Objective-C」に代わって、iOSとOS Xのアプリ開発標準言語になりつつあります。JavaやC#、Objective-C、JavaScript、Pythonといった言語の知識があれば難なくマスターできるでしょう。 Swiftの特徴的な機能として挙げられるのが「Optional」です。Optionalは難しくはありませんが、プログラミングの世界でまだそれほどメジャーな概念ではないと思われます。そこで、Step 2で詳しく説明しました。 「プログラミング自体を最近始めたばかり」という方にこそ、Swiftはオススメです。Swiftのプログラミングツールである「Xcode 6」には、「Playground」という面白いツールが付属するからです。双方向性が高く、ビジュアル面も優れています。コードを書けば即座に実行されて結果がわかります。このPlaygroundによるプログラミングについてはStep 1で説明しています。Step 2やStep 4もPlaygroundでコードを動かしながら読んでみてください。 基本事項を押さえたら、早速iOSアプリの開発に挑戦してみましょう。Step 3では簡単な画像表示アプリの作り方を、Step 5ではObjective-Cで記述されたiOS用ライブラリ「MBProgressHUD」をSwiftで使う方法を解説しました。 Step 6では少し趣を変えて、Swiftが利用するコンパイラ基盤「LLVM」を解説しています。 ※本書は日経ソフトウエア2015年1月号の特集記事を再構成したものです。

最近チェックした本