はじめに
  • 本コースのご紹介
まずは基本から。電卓もどきを作ってみよう
  • このセクションのゴールについて
  • 電卓もどきプログラム初期バージョン
  • 状態遷移図を理解してプログラムを改善してみよう
  • エラーチェックを追加してみよう
  • このコースの文法表現方法について
  • 数字のチェックルーチンを自作してみよう(その1)
  • 数字のチェックルーチンを自作してみよう(その2)
  • 連続して演算ができるようにしてみよう
  • 「=」を入力したときにだけ計算結果を表示するようにしてみよう
  • 演算子の優先順位を考慮して計算してみよう(1)
  • 演算子の優先順位を考慮して計算してみよう(2)
  • 括弧を導入してみよう(1)
  • 括弧を導入してみよう(2)
  • 括弧を導入してみよう(補足)
字句解析(トークン分解)について学ぼう
  • このセクションのゴールについて
  • 字句解析とトークン分解について
  • 予約語トークンを作ってみよう
  • 数字トークンを作ってみよう(1)符号なし数字
  • 数字トークンを作ってみよう(2)符号付き数字
  • トークン列を使って電卓もどきを改造してみよう
  • 字句解析のエラー出力を改造してみよう
  • 構文解析のエラー出力を改造してみよう
インタプリタを作ってみよう
  • このセクションのゴールについて
  • PRINT文を実装してみよう
  • 代入文を実装してみよう
  • 単項式 -a を実装してみよう
  • 【補足】単項演算子 -a を実装してみよう
  • プログラム化してみよう(1)プログラム化とは?
  • プログラム化してみよう(2)クラスProgram
  • LISTコマンドを実装してみよう
  • LISTコマンド・異常系処理の追加
  • LOADコマンドを実装してみよう
  • SAVEコマンドを実装してみよう
  • RUNコマンドを実装してみよう
  • CLEAR文を実装してみよう
  • GOTO文を実装してみよう
  • IF~GOTO文を実装してみよう
  • traceオプションとエラーメッセージを強化してみよう
  • FOR文の文法説明
  • FOR文を実装してみよう
  • FOR文の異常系のテストをしてみよう
  • IF~THEN~ELSE文の文法説明
  • IF~THEN文を実装してみよう
  • IF~THEN文の異常系のテストをしてみよう
  • LISTコマンドで段付表示されるようにしてみよう
  • 文字列と文字列変数を導入してみよう
  • 文字列変数の代入文を実装してみよう
  • PRINT文を拡張してみよう
  • 条件式に文字列比較を追加してみよう
  • INPUT文を実装してみよう
  • REM文(コメント文)を実装してみよう
  • 配列を実装してみよう(1)配列の定義
  • 【補足】配列を実装してみよう(1)配列の定義
  • 配列を実装してみよう(2)代入文
  • 配列を実装してみよう(3)算術式
  • GOSUB文を実装してみよう
  • RENUMコマンドを実装してみよう
リファクタリング
  • IF/FOR文などの直接実行時のエラー対応
  • 行番号と配列添字のエラーチェック強化
  • CLEAR文とREM文の修正
  • エラーメッセージの改善
  • LISTコマンドの改善
  • SAVEコマンドの改善
  • 配列の添字に算術式も指定可能にしてみよう
組込関数の実装方法
  • 文字列関数MID$()を実装してみよう
  • 関数INT()を実装してみよう
インタプリタで作成したプログラム例
  • オセロゲーム
不具合修正
  • if文の不具合の修正
  • listコマンドの不具合の修正