プログラミング

C言語

【入門】プログラミング言語を自作する方法⑤|for文・AST・自動テストでコンパイラを改善

プログラミング言語を作ってみた⑤。前回の続きです。今回は自作言語「五右衛門」にfor文を実装するとともに、AST(抽象構文木)の導入と自動テストを追加しました。コンパイラの設計改善や品質向上について解説します。
PHP

Zend Engineを読む① | php-srcをビルドする

PHPの実行エンジンであるZend Engineを読むための準備として、php-srcのビルド方法を解説します。buildconf、configure、makeの役割やデバッグビルドの手順も紹介します。
C言語

【入門】プログラミング言語を自作する方法④|if文・while文を実装して制御構文を作る

プログラミング言語を作ってみた④。前回の続きです。今回は自作言語「五右衛門」に if文・while文を実装しました。2パスコンパイルとバックパッチを用いて、JZやJMPによる制御構文を実現します。
PHP

PHPライブラリを作ってPackagist公開するまで

PHPライブラリを作ってPackagistに公開をしてみました。公開するまでの流れや、自動テストについてなど、開発サイクルを備忘録として残しておきます。
C言語

【入門】プログラミング言語を自作する方法③|変数として値を保持から出力まで

プログラミング言語を作ってみた③前回の続きです。今回は五右衛門に変数と出力機能を実装しました。プログラミング言語らしくなってきました。再帰下降構文解析 を用いることで、計算をスマートにパースすることができました。
C言語

【入門】プログラミング言語を自作する方法②|トークナイザを実装して文字列を分解する(C言語)

プログラミング言語を作ってみた②前回の続きです。今回はトークンナイザを実装して、分解をしました。トークンナイザを作ることにより、前回の文字列検索から可読性がかなり上がったと思います。
Laravel

【Laravel】GitHub Actionsでテストを自動実行する方法(Vite環境対応)

自前で用意したサーバで自動テストを実行しました。GitHub Actions の Self hosted runner です。pushするたびにテストサーバでLaravelの自動テストを実行します。
API

SCIM APIとは?仕組みと使い方をわかりやすく解説SCIM APIについて

SCIM API について、まとめてみました。SCIM APIとRESTful APIの違いとは?SCIM API に準拠したAPIの設計についてまとめました。
C言語

【入門】プログラミング言語を自作する方法①|まずは簡単なインタプリタを作る

プログラミング言語を作ってみた①ZendEnginを参考に新しいプログラミング言語を作ってみました。(現在も作成中)言語名はgoemonで、実行エンジンの名前はKama です。
PHP

Zend Engineとは?PHPの内部処理(コンパイル〜実行)を解説

PHPの内部構造を学習してみた