プログラミング言語「トポロジー」のサンプル「Life」

space LifeSystem {
    // 生命の基本単位となるセルの定義
    shape Cell {
        state: Boolean
        energy: Number
        neighbors: Collection<Cell>
        
        properties {
            continuous: false
            discrete: true
            dimension: 2
            bounded: true
        }
    }
    
    // 生命場の定義
    shape LifeField {
        grid: Collection<Cell>
        dimension: Number
        cycle: Number
        
        properties {
            topology: "discrete-grid"
            periodic: true
            conservation: "energy"
        }
    }
    
    // セルの状態遷移規則
    mapping evolve(cell: Cell) -> Cell {
        path {
            // 近傍の生存セル数を計算
            let alive_neighbors = count_alive_neighbors(cell)
            
            transform cell {
                // ライフゲームの基本ルール
                when cell.state == true {
                    // 生存則
                    when alive_neighbors < 2 {
                        cell.state = false  // 過疎による死亡
                    }
                    when alive_neighbors > 3 {
                        cell.state = false  // 過密による死亡
                    }
                } else {
                    // 誕生則
                    when alive_neighbors == 3 {
                        cell.state = true   // 誕生
                    }
                }
                
                // エネルギー更新
                update_energy(cell)
            }
        }
    }
    
    // フィールド全体の進化
    parallel mapping evolve_field(field: LifeField) -> LifeField {
        properties {
            parallel: true
            synchronous: true
        }
        
        path {
            // 全セルの同時更新
            transform field.grid {
                parallel for each cell in field.grid {
                    evolve(cell)
                }
            }
            
            // システム全体の保存則チェック
            validate_conservation_laws(field)
            
            // サイクルカウンタの更新
            field.cycle += 1
        }
    }
    
    // エントロピー計算
    mapping calculate_entropy(field: LifeField) -> Number {
        path {
            let total_cells = field.grid.size
            let alive_cells = count_alive_cells(field)
            
            // シャノンエントロピーの計算
            return compute_shannon_entropy(alive_cells, total_cells)
        }
    }
    
    // 創発パターン検出
    mapping detect_patterns(field: LifeField) -> Collection<Pattern> {
        transform field {
            // パターンマッチング
            find_stable_patterns ->
            find_oscillators ->
            find_gliders
            
            // パターン分類
            classify_patterns ->
            return patterns
        }
    }
}

言語の詳細仕様が欲しいという奇特な人がいたら、公開します。
Claudeに作らせただけですけど、面白かったので、サンプルコードを公開してみました。
上記をWebアプリ((js)に委嘱してみた。