META-ARCHITECT / CTO

一貫した設計思想で、技術の境界を超える

メタアーキテクト / CTOについて

大企業でファクトリーオートメーションのエンジニアとしてキャリアをスタート。PLCプログラミング、リアルタイム制御、生産ライン自動化に従事しました。しかし、同調圧力と形骸化した意思決定に嫌気が差し、独立。

技術者としてのもう一つの原点は、日本にWindowsが上陸する以前、AppleのGUIに憧れてMS-DOS上にウィンドウシステムを自作したことにあります。イベントループ、描画エンジン、ウィンドウ管理——すべてをゼロから書きました。

ファクトリーフロアからクラウドまで、ハードウェア制御からプログラミング言語設計まで——全レイヤーを経験してきました。その姿勢は今も変わりません。必要なものは、自分で作る。

単一の知識

私の成果物は、見かけ上は多様に見えるかもしれません。言語処理系、ORM、マルチプラットフォームフレームワーク、ファクトリーオートメーション——しかし、これらはすべて単一の設計原理から生まれています。

言語は道具に過ぎません。プラットフォームは制約に過ぎません。本質的な設計思想は、どの環境にも移植可能です。

それが「メタアーキテクト」の意味です。

主要プロジェクト

Lambda Smalltalk

Rustで実装したSmalltalk方言です。

レキサー、パーサー、バイトコードコンパイラ、仮想マシン、ガベージコレクタをフルスクラッチで開発。さらにLSP(Language Server Protocol)とDAP(Debug Adapter Protocol)を実装し、VS Codeとの統合も実現しています。

組み込み機能として、JSON/YAML/TOML/CSVパーサー、SQLite統合、HTTPクライアント、暗号化機能、Mustacheテンプレートエンジン、EBNFベースの文法パーサーを搭載。シングルバイナリで配布可能な実用的スクリプト言語です。

技術スタック
Rust, Earley Parser, Mark-and-Sweep GC, Tower-LSP

TORM — .NET向け2Way SQL ORM

C#/.NET向けに開発したORMフレームワークです。JavaのDomaに着想を得て、.NETエコシステム向けに再設計しました。

Roslyn Source Generatorによるコンパイル時コード生成、SQLファイル外出しによる2Way SQL、楽観ロック、エンティティリスナー、MEF2によるDIを実装。SQL方言の切り替えにも対応し、TERIOSファミリーの設計思想を継承しています。

技術スタック
C#, .NET, Roslyn Source Generator, MEF2

Pytalk — Python向けSmalltalkセマンティクス

Smalltalkのメッセージパッシングスタイルをpythonに持ち込んだライブラリです。

Smalltalkのコレクションプロトコル、ブロッククロージャ、カスケードメッセージをPython DSLとして実装。Lambda Smalltalkと組み合わせることで、同一の言語思想をネイティブ実装とホスト言語埋め込みの両面から実現できることを示しています。

技術スタック
Python

CTIソフトフォン — リアルタイム通信システム

C++で構築したステートマシン駆動のSIPソフトフォンです。

CTI(Computer Telephony Integration)を実装。TERIOSと同じ設計パターンを採用しています:状態実行にテンプレートメソッド、依存性注入にコンポーネントファクトリ、宣言的な状態遷移マップ。

技術スタック
C++, SIP, ステートマシンパターン

TERIOS — 超高速開発フレームワーク

エンタープライズ開発の生産性を根本から変えるフルスタックフレームワークです。

TERIOSは特定の言語やプラットフォームに依存しません。その設計思想は、以下の環境に移植されています:

バックエンド: Java (Spring Boot), Rust (Axum), C# (.NET)

フロントエンド: TypeScript/Vue, Flutter, Adobe Flex, Silverlight, WPF, C++ (Native)

プログラミング言語の壁を超え、技術トレンドの変遷を超えて、一貫したアーキテクチャを維持する——それがメタアーキテクトとしての私の仕事です。

技術は変わる。設計は残る。

設計原則

  • テンプレートメソッドパターンによるサービス層の標準化
  • JSONによるバリデーションルールとデータ変換ルールの外部定義
  • 宣言的DSLによるUI定義
  • フロントエンドとバックエンドで共通のバリデーション体系