プラットフォームごとのコードベース分断は、ロジック重複や型不整合、重厚な結合テスト環境を招く。プラットフォームエンジニアリングはこれら苦痛の「緩和」を目指すが、そもそも発生しない構成がとれるなら、それに越したことはない。
本トークでは、それを可能とするOCamlで全スタックを単一コードベースとして構成するアプローチを紹介する。Jane Street・Meta・Bloomberg等で採用されるOCamlは、HM型推論と実用言語初のエフェクトシステムを搭載。bytecode、x64/arm64/riscv64 native、js_of_ocaml、wasm_of_ocamlを駆使し、C・JS・WASMのいずれかが動けば「どこでも」動作し、React.js統合によりC/Rustが苦戦するUI開発も型安全に両立するマルチネイティブ言語である。
後半では、Cloudflare Workers上のバックエンド/クライアントから、デスクトップ・モバイルアプリまで備えた「純度100%のOCamlアプリケーション」を解剖し、妥協なきマルチネイティブ開発のフィージビリティを実証する。
合同会社コトイコンサルタンシー
プリンシパルコンサルタント&代表
大学でプログラミング言語論、形式手法を専攻。フリーランス時代を経て技術コンサルティング会社を設立。モバイル・デスクトップ・Webアプリケーション開発、システム開発(業務システム、組込みシステム、AI組込み型システムなど)、システムアーキテクチャ(市販ソフトのSaaS化、新規暗号通貨関連サービスSaaS、暗号プロトコルなど)、アルゴリズム(画像識別・情報抽出アルゴリズム、ランキングアルゴリズム、ドメイン特化言語、認証アルゴリズムなど)など様々なソフトウェア・システムの設計と開発に携わる。