コンテンツへ移動

00 ラボ

オープンソースの遊び場。

クライアント業務とは別に、基礎を理解するために自分で作っているもの — 分散型言語、ランタイム、リバースエンジニアリング、インフラツール。すべてGitHubにあります。

言語設計 & ランタイム

言語を設計し、コンパイラを書き、VMが本当はどう動いているのかを掴むための実験場。

  • scatterlang Scatter

    Scatter

    主力 Nim

    実験的な分散型言語。コンパイラは .sct → Nim → C、暗号的オーナーシップ、CRDTをファーストクラスで扱い、プライバシースコープを型システムに組み込む。

    • #Nim
    • #言語設計
    • #CRDT
    • #分散
    • #コンパイラ
  • scatterlang vscode-scatter

    vscode-scatter

    TypeScript

    Scatter言語向けのVS Code拡張機能 — シンタックスハイライトとIDEツーリング。

    • #TypeScript
    • #VS Code
    • #ツーリング
    • #LSP
  • skyforce77 PocketVM_Legacy

    PocketVM_Legacy

    Nim

    小さなバイトコード仮想マシン — 言語ランタイムの基礎を実地で掘り下げるための題材。

    • #Nim
    • #VM
    • #バイトコード
    • #ランタイム

インフラ & ツール

現場の必要から生まれ、読みやすさを失わない大きさにとどめたツール群。

  • skyforce77 dedinamik

    dedinamik

    Go

    オンデマンドでサービスを起動し、アイドル後に停止するTCP/HTTPプロキシ — 控えめな専用サーバー向けのリソース最適化。

    • #Go
    • #プロキシ
    • #systemd
    • #オンデマンド
    • #リソース管理
  • skyforce77 jobtracker

    jobtracker

    Go

    求人情報アグリゲーター。150以上のプロバイダ(Disney、Netflix、Amazonなど)をスクレイピングし、Luaでフィルタリング、Pushover/Discordへ通知。

    • #Go
    • #スクレイピング
    • #Lua
    • #通知

リバースエンジニアリング & ゲーム

バイナリを分解し、エミュレータを書き、ものごとがどう動いているのかに迫る。

  • OpenMon Gringoats

    Gringoats

    Go

    ポケモンのセーブデータ(第1〜3世代)をバイナリレベルでリバースエンジニアリング — 世代をまたぐポケバンク用バックエンド、フォーマット変換つき。

    • #Go
    • #リバースエンジニアリング
    • #バイナリ解析
    • #ポケモン
  • skyforce77 Melasse

    Melasse

    Go

    実験的なGameBoyエミュレータ — CPUサイクルとメモリアーキテクチャをGoで再構築。

    • #Go
    • #エミュレータ
    • #GameBoy
    • #低レイヤ
  • skyforce77 awesome-pico8-clones

    awesome-pico8-clones

    キュレーション

    PICO-8クローンのキュレーション — ミニマルなゲームエンジン、インディー/ファンタジーコンソール文化。

    • #キュレーション
    • #PICO-8
    • #ゲームエンジン
    • #インディー
  • skyforce77 ctrulib-nim

    ctrulib-nim

    Nim

    CTRULib(Nintendo 3DS homebrew)のNimバインディング — Nim↔CのFFI、組み込み寄りのシステムプログラミング。

    • #Nim
    • #FFI
    • #3DS
    • #homebrew