スクイーク 6.1

2026/08/10 21:15

スクイーク 6.1

RSS: https://news.ycombinator.com/rss

要約

Japanese Translation:

Squeak 6.1「Vanessa」は、システム成立30周年に迫る主要な今後のアップデートであり、前のリリース以来開発された 1,700 以上のパッチと 9,000 のメソッド変更を統合しています。このバージョンは Vanessa Freudenberg (1972–2025) に献呈されており、クラス再構築のスピードアップが 30%、パッケージ検索の加速が 400%、メソッドの記号テキスト列挙のスピードアップが 20% と、大幅なパフォーマンス向上を提供します。主な新機能には、オブジェクト構造を navigating するためのツリーブラウザ(Monticello パッケージとの統合)や、「Objectland」(Squeak のワールド)といったレガシー機能を復活させるものが含まれており、アイコン的な Etoys レースカーや BlobMorph が特徴です。アップデートは Morphic GUI を刷新し、高 DPI サポート、改良されたテキストエディタ、強化されたメニューユーティリティを導入すると同時に、永続的な macOS 仮想マシン警告の修正も含みます。ツール面の重要な向上としては、新しいツリーブラウザ、「simulate」ボタンおよびバイトコードモードを備えた改良されたデバッガー、そして再帰的なプロセスに忠実なデバッグ機能が含まれます。カーネルアップデートでは、

Complex>>log
という新機能や Regex の Unicode リテラルサポートといった新機能が加わるとともに、HTML 解析の安全性向上などコア言語の改善も行われています。また、このリリースでは廃止事項(例:MorphicDebugger サブクラスの削除)に対処し、デバッガー通知器および Linux/macOS 上の SqueakSSL HTTPS サーバーにおける特定のバグを含む既知の問題一覧も含んでいます。

本文

Squeak 6.1「ヴァネッサ」リリースノート

Squeak が設立から30 周年を目前に控え、新しいバージョン Squeak 6.1 を公開します。今回のリリースの主なハイライトは以下の通りです。

  • ツリーブラウザ: 改良された階層的モーフィ(morph)を採用し、クラスやカテゴリを直感的にナビゲートできるようになりました
  • オブジェクトランド: 「Squeak のワールド」として知られるObjectland が復活します
  • カーネルインフラストラクチャ: シミュレーション、巻き戻し、スケジューリングのプロセスおよびクラスのリシェイピングにおいて、多数の変更と修正が行われました
  • ツールセット: コードの検査、デバッグ、プロファイル、バージョン管理を行うためのインターフェースに多様な改善が施されました

詳細な変更リストについては後述します。また、末尾に主要な非推奨(Major Deprecations)既知の問題(Known Issues)、および**互換性に関する注釈(Compatibility Notes)**が含まれています。

注記: このリリースノートは Squeak をダウンロードして閲覧することをお勧めします。より良い体験のためです。


1. レリースノートについて

今回のリリースノートは、単なる技術的な変更ログではなく、Squeak の新機能や機構を探索するためのハンズオンガイドとしても機能しています。

  • 開発の規模: 最後のリリースから 4 年が経ち、1,700 以上のパッチ9,000 以上のメソッド変更がマージされました
  • ヴァネッサ・フローデンベルク(1972-2025)を偲びます:
    /^(o.o)^\
    /^(o.o)^\
    /^(o.o)^\
    /^(o.o)^\
    /^(o.o)^\
    

2. 言語、ツール、および環境の詳細な改善

GUI フレームワーク

Morphic (ct.2218 / ct.97)

ツリーモーフィの大幅な刷新

  • ナビゲーション: カラー、マウス操作、キーボードショートカットを改良
  • フィルタ機能: 検索語句のハイライト表示、
    [TAB]
    キーによる単一列検索が可能化
  • 検索モード: 現在の選択範囲、すべての表示可能なノード、またはツリー全体を検索するための設定可能モードを追加
  • 再帰的検索:
    [CMD]+[F]/[CMD]+[G]
    で利用可能な「検索」/「再度検索」機能を導入
  • ドラッグ&ドロップ: ホバー後 1 秒でノードが自動的に展開されるようにサポートを改良
  • パフォーマンス: レイアウト、レンダリング、イベント処理における安定性向上

ワールド上で

  • クラス参照やメソッドカテゴリなどを新しいウィジェットとして表示するドロップをサポート
  • マウス操作のカスタマイズ(ダブルクリック時間、ドラッグしきい値)の新設定を追加
  • ドッキングバーに「ワークスペースを検索」を容易にする機能を強化
  • ヘルプメニューの再編成と装飾

テキストエディタ

  • ホバー中にリンクがアンダーライン付きになり、クリックや選択が便利に
  • 引用符のネスト対応(自動エスケープ/脱エスケープ)

Morphic API & メニュー構築

  • ハロイベントからの除外設定、ブロック経由のバロントラクトテキスト指定が可能に
  • 新しいユーティリティによるアイテムグループの追加やアクションターゲットの切り替え
  • メニューの末尾行トリミングなど、微調整と安定性改善多数

MorphicExtras (ct.360)

  • オブジェクトランド: 2003 年の有名な「Squeak のワールド」を再構築し、多彩な例を提供
  • Etoys ラスクーア: クラシックな例を復活、新規例を追加
  • BlobMorph: 18 年間無傷だった BlobMorph を再導入・更新
  • ウェブカメラ: ミラーオプション追加、ダブルバッファリング拡張、UI 改善
  • スコアプレイヤー: 楽器メニュー改良、ピアノ鍵盤の堅牢性向上

Etoys (ct.532)

  • チュートリアル: 描画とスクリプト作成に関するチュートリアルを復元・見直し
  • ゲーム: FreeCell に Undo ボタン追加、Tetris の状態表示改良
  • MIDI: 入力モーフィの楽器メニュー改良、プレイヤーギャラリーの堅牢性向上
  • 高 DPI サポート: アイコン、タイル、スクリプトエディタなどの改善

ST80 (mt.311)

  • ワールドメニューに「閉じる」項目追加
  • システムビューの高 DPI サポート改良
  • View>>imageForm
    によるビューのスナップショット取得機能追加
  • デバッグショートカット
    [CMD]+[SHIFT]+[D]
    追加

CommandLine (eem.27)

  • 「失敗時のイメージのスナップショット保存」設定の修復
  • ダイアログ UI(ファイル、フォントなど)へのサポート拡大

プログラミング & ツール

Tools (Tools-mt.1366 / ct.137)

  • 新しいツリーブラウザ: 階層的ペインでシステムカテゴリ・クラスを表示、Monticello パッケージを統合(5 つの新設定あり)
  • ドラッグ&ドロップ: ブラウザ間のすべての意味的な組み合わせをサポート
  • マルチ環境サポート: すべての種類のブラウザとメッセージセットに対応
  • 機能追加: 階層ツリーにダブルクリック支持、クラス定義のアノテーションコメント表示、カスタムブラウザ登録の拡張

インスぺクタ (Inspector)

  • カスタムインスぺクタフィールドへの拡張(メニュー項目貢献許可)
  • メタ(シフト)メニューによるアクセサのブロー/デバッグ
  • InspectorField>>#printBlock:
    で表現のカスタマイズ可能に

デバッガ (Debugger)

  • 条件検索: ネストされたメッセージ送信内で正確な条件検索コマンドを追加
  • ホームコンテキスト: スタックリストメニューに「ホームを選択」オプション追加
  • バイトコードモード: メソッドの単一 VM 指示を視覚化してステップ実行可能に
  • シミュレートボタン: メタサーキュラーエバリュエータによるデバッグモードを追加
    • ウィンドウメニュー「何を表示するか…」、またはコードペイン上の「ソース」ボタンからアクセス

Trunk & WorkSpace

  • Welcomes AndreasSystemProfiler
    導入(レポート形式・堅牢性向上)
  • ワークスペースで「ファイルからコンテンツをロード…」オプション追加
  • 変更回復: クラス定義削除、再カテゴリ化などの解析を改良

ブラウザ用修正

  • ショートカット不一致の修正、特異体の定義堅牢性向上
  • パッケージペインブラウザの UI 更新とクラスサイド
    do-its
    欠落修正
  • クラスリストブラウザでのソート一貫性確保

ToolBuilder (ct.176 / ct.370)

  • ブロックサポート(
    ToolBuilderSpec>>help:
    など)追加
  • UIManager
    への新しいショートカット機能追加(ファイル選択、進捗バー表示など)
  • Morphic/MVC 固有の UI グリッチ修正

SUnit (mt.153 / mt.95)

  • テスト結果にタイムアウト表示、クラスの除外修復
  • 失敗を再実行時のパスリセット機能強化

コア言語

Kernel (ct.1688 / ct.482)

  • 数字:
    Complex>>log
    や巨大な整数の三角関数など新機能・最適化多数
  • ブロッククローージャ: 非ローカル退出値サポート(
    BlockClosure>>valueWithExitValue
  • 保存変更チェック: 特定のビューにスコープ可能に
  • プロセス&スケジューリング:
    • 半解凍されたプロセスの反復終了改善
    • Process>>destroy
      で VM クラッシュ防止
    • リカursiveプロセス忠実なデバッグサポート
  • Promises:
    • プロミス結合ヘルパー(
      #all:
      ,
      #race:
      など)追加
    • Promise>>value
      の振る舞い変更(詳細参照:互換性注釈)
  • メソッド・コンテキスト: SistaV1 バイトコードセット対応、64k インスタンス変数クラス作成可能

Collections (ct.1115)

  • 便利な列挙・コピー機能の追加
  • マグニチュードと辞書間の弱い型付け改善(算術適用可能に)
  • バイナリ述語によるソート、プレフィックス/サフィックステストの新機能

Texts (ct.?? / ??)

  • 属性追加機能 (
    #addAttributeBack:
    ) の実装
  • HTML パースの劇的改善(クリップボード・リッチテキストメール対応)
  • <blockquote>
    ,
    <p>
    ,
    <div>
    などのタグ空白処理改善
  • base32
    符号化サポート

Chronology (ct.98)

  • タイムゾーン構成クラスの再構築(DST 認識ゾーン定義可能に)
  • DateAndTime>>offset:
    の ANSI 準拠復元

Compiler (ct.535)

  • プライベートメソッドのオーバーライド・拡張可能に
  • 変数の影付け警告設定、未定義一時変数警告削除

グラフィックス & サウンド

Graphics (nice.562)

  • HTML/CSS: パース改善、ディithering 追加、マルチモニターアクセサ
  • 画像/GIF: 透過画素値復号、半透明インターレース PNG 読み込み、GIF リーダー非推奨化
  • パフォーマンス: フォームフィルタリング・カラー構築の高速化

TrueType (tpr.99)

  • 古いユニコードマッピングテーブルフォントとの互換性維持

Sound (ct.102)

  • サウンドプレイヤー/レコーダーデバイスアクセサ追加
  • AIFF ファイル読み込みサービス追加
  • メモリーストリーム上の保存時冗長性の修正

ファイル & ネットワーク

Files (mt.223)

  • キャッシュ: イメージ内への変更ファイルキャッシュ設定(Squeak 6.0 の機能を補完)
  • パス展開: Linux/Unix で
    ~
    パス展開サポート
  • 堅牢性: ディレクトリ存在テスト、ファイル作成時刻計算の改善

Network (nice.289)

  • IPv6: 新しいネットワークサポート(デフォルト有効化)
  • メール: EML ファイル表示、リッチテキスト/添付画像サポート
  • SMTP: 新規コマンド(verify, quit)、CRLF インジェクション検出対応

WebClient (ul.138)

  • OPTIONS リクエストの手動処理(CORS プリーフライト対応)
  • WebUtils
    JSON パースァーのサンセット

システムサービス

System (ct.1522)

  • ガベージコレクション: エフェメロン導入、弱間接循環依存関係の GC 対応
  • クリップボード: 拡張インターフェース有効化(OS 横断リッチテキスト貼り付け)
  • 変更回復: クラス定義・メソッド削除の発見機能

システムナビゲーション & UI

  • プライミティブやプラグマを含むカテゴリクエリの追加
  • 高 DPI サポート拡張、スレッド化 VM への対応
  • テーマカラー調整(Community Dark, Trim)

Regex (ct.93)

  • Unicode 表現:
    \x41
    ,
    \u{1F388}
    ,
    \p{N}
    など新サポート
  • 機能: キャプチャグループ、非キャプチャグループ、ルックアラウンド対応
  • 左端最長一致オプションフラグ追加

3. バージョン管理 & パッケージ管理

Installer & Monticello

  • Installer (ct.458): HTTPS スキームサポート(source.squeak.org など)
    • Metacello コンパイル警告回避、インストール速度向上
  • Monticello (ct.822):
    • HTTPS リポジトリへの移行を有効化
    • versionNamed:
      の堅牢性向上(欠落する MCZ 拡張子自動追加)
    • 「(すべて) を現在の変更セットに追加」のクラス対応可能化

4. 主要な非推奨(Major Deprecations)

重要: 後方互換性を重視しつつ、以下の破壊的変更が行われています。詳細は「互換性注釈」を参照してください。

  1. デバッガ: プロジェクト固有のサブクラス (
    MorphicDebugger
    ,
    MVCDebugger
    ) が廃止され、
    Debugger
    から直接継承可能に。
  2. BrokenPromise: プロミスが拒否された際、元の例外を再信号(または汎用エラー)。61Deprecated パッケージ未インストール時は Error サブクラスとして扱われなくなる。
  3. Renamed Methods/Selectors:
    • Promise>>error
      #errorValue
    • ClassDescription>>[all]MethodsInCategory:
      #[all]SelectorsInCategory:
  4. 非推奨メソッド:
    • SequenceableCollection>>checkedAt:
    • SequenceableCollection>>copyWithoutFirst

5. 既知の問題(Known Issues)

以下の問題について、回避策または今後の対応が必要です。

  • デバッガ通知: バックグラウンドプロセスから発生する場合、「Proceed」ボタンが無効になる可能性があります。
    • 回避策: 首先「Debug」をクリックし、次に「Proceed」をクリックしてください。
  • 無限ループ: リカursiveプロセス忠実デバッグ時に、特定のステップで無限ループが起きる可能性があります。
    • 対応: バグレポートを送信してください。
  • 正規表現: ルックベハインド内の貪欲パターンが誤って処理されます。
  • HTTPS サーバー (Linux/macOS): SqueakSSL を通じた HTTPS サーバーの実行は機能していません。
  • ファイルディスクリプター枯渇 (Linux): 特定の状況でイメージがクラッシュする可能性があります。
    • 回避策:
      ulimit -n
      でファイルディスクリプターの数を増やしてください。
  • Wayland (Linux): テキストモーフィがクリック毎に焦点を失うことがあります。
    • 対応: バグレポートに添付された情報をご利用ください。

バグ報告: 新しいバグを発見した場合は、http://bugs.squeak.org/ にご共有ください!


6. 互換性注釈(Compatibility Notes)

以下の振る舞いの変化を事前にご了承ください。

  • Promise>>value: 現在リセーバーを待機します(以前は nil を返しました)。

  • Matrix オペレーション:

    #with:do:
    など、サイズ不一致に対しては明確なエラーを信号します(以前は無視していました)。

  • Text ファーマット: 属性は最後の引数を上に表示します。

    Text streamContents: [:stream | 
       stream withAttributes: {TextColor blue. TextEmphasis bold} do: 
          [stream nextPutAll: 'abc'. 
          stream withAttribute: TextColor red do: 
             [stream nextPutAll: 'def']]. 
    ] 'hi {1}' asText 
       addAttribute: TextColor red; 
       format: {'name' asText addAttribute: TextColor green}.
    
  • DateAndTime>>offset: ANSI 準拠のため、タイムゾーンを再解釈せず同等の時刻を返します。古い振る舞いは

    #asLocalAt:
    または
    #utcOffset:
    で実現可能です。

  • Regex キャプチャグループ: 左から右への順序で一貫して保存されます(代替案で右から左でした)。

  • メニュー構築:

    #addList:
    はヘルプトプル内のバックスラッシュを改行として解釈します。

  • ヘルプシステム: ファイルベーストピックの

    sortBlock
    はディレクトリにも再帰的に適用されます(実装例:
    AbstractFileBasedHelpTopic>>defaultSortBlock
    )。


すべての貢献者に感謝いたします!

同じ日のほかのニュース

一覧に戻る →

2026/08/10 19:10

Muse Glimmer:常時稼働型ローカルエージェントワークフローに最適化された 30 バラマイトモデル

## 日本語翻訳: 以下に、キーポイントリストに含まれていた欠落した事実的詳細を取り込みつつ、明確さと流れを維持し、ソース資料の包括的な表現を確保する改良されたサマリーを提示します。 ## 改良されたサマリー: Meta は、標準的な消費者向けハードウェアでの高性能で常時稼働可能なローカルエージェントワークフローに特化するように設計された、300 億パラメータを持つ AI モデル「Muse Glimmer」を正式にオープンソース化しました。このモデルは Apache 2.0 ライセンスの下でリリースされており、Meta の大型の Muse Spark チェリーターからの新型ディストリルションレシピと、コンパクトなアーキテクチャを通じて、ハードウェア制約と能力をバランスさせることで、インターネット接続なしで完全オフラインでの高度なタスク(関数呼び出し、ローカルコーディング、LLM-as-a-judge 評価など)の遂行を可能にします。モデルは 100 語以上の言語をサポートし、認識エンコーダーによるマルチモーダル入力を備えています。 MacBook M4-Max、M5-Max、RTX 5090(24 GB または 32 GB の VRAM)など、デバイス上での流れるようなリアルタイム相互作用を確保するために、モデルは重みを 20 GB 未満に圧縮する 4 ビット量子化を採用しています。推論はさらに加速され、DFlash ベースの「drafter」モデルを使用してスペキュレティブデコーディングが行われます。このドラフトモデルは並列でトークンブロックを提案し、それを検証します。Muse Glimmer は DeepSearch QA、MCP-Atlas、𝛕-Bench、SWE-Bench などのベンチマークで強靭なパフォーマンスを発揮し、Gemma4-31B や Qwen3.6-27B を上回っています。 開発リソースは Hugging Face で公開されており、llama.cpp、MLX、ExecuTorch、Ollama、LM Studio、Unsloth、Together AI などを含むフレームワーク向けの最適化された統合が順次導入される予定です。モデルのトレーニングは 3 つのフェーズ(事前学習:ログイットディストリルテーション、中盤学習:より長いコンテキストとエージェント主体のデータ、事後学習:オンポリシーディストリルテーションおよび強化学習を用いた SFT)で行われました。これらの取り組みは、複雑なコーディングおよび評価シナリオにおけるアクセシブルなローカル AI 実行のエコシステムを大幅に拡張します。

2026/08/11 5:20

イリノイ州が、Linux を年齢確認義務の対象とする法律を可決しました。

## Japanese Translation: イリノイ州は HB5511(公共法 104-0664)を制定し、主要なソーシャルメディアプラットフォームおよびオペレーティングシステムプロバイダーを対象とした厳格な法律を施行することで、オンライン上の未成年者の保護を図っています。同法案は段階的に適用され、2028 年 1 月より発効します。この立法により、18 歳未満の利用者に対してデフォルトの保護措置が適用されます。具体的には、アルゴリズムに基づくフィードの禁止、午後 10 時から翌日午前 7 時までの通知制限、大人の不特定多数からの連絡遮断が含まれます。2028 年までに、OS ベンダーおよびアプリストアは必須の年齢申告手順を実施し、利用者の年齢層(13 歳未満、13〜15 歳、16〜17 歳、または 18 歳以上)を表す暗号化された API シグナルを提供する必要があります。「未成年」という年齢層が受信されると、これらの安全デフォルトが自動的に適用されます。コロラド州やカリフォルニア州の法律とは異なり、HB5511 はオープンソースソフトウェアプロジェクトに対する**免責条項を設けていない**ため、GitHub に代表されるコミュニティ運営または非営利のコードリポジトリにも適用されます。執行はイリノイ州司法長官に独占されており、個人による私的訴訟は禁止されています。法案本文では、過失による違反については影響を受けた子供 1 人あたり民事罰が 2,500 ドル、故意な違反については 7,500 ドルと上限が定められていますが、プリッツカー知事のプレスリリース当初には最高 50,000 ドルというより高い罚款が言及されており、本文では完全に調整されていない不一致が生じています。

2026/08/11 3:12

GPU 上の Rust SIMD

## Japanese Translation: VectorWare は、既存の CPU コードを書き換えずに、Rust の SIMD 抽象化(例:`core::simd`)を用いて高パフォーマンスな GPU アプリケーションを実行することを開発者にもたらす技術であり、この分野における世界初です。この画期的な成果は、標準的なスレッディングの概念を NVIDIA GPU ワープロップに直接マッピングし、手書きの PTX と比較して零のオーバヘッドを実現します(例えば、通常の `fn main` に `#![feature(portable_simd)]` を付与したソースコードで)。これは、内部の Rust ベースの中間表現(IR)を活用することで可能になっています。システムは要素ごとの算術演算、レーンマスクを生成する比較、それらによる選択操作、およびレーンをまたぐ水平型削減をサポートします。さらに、ワープロンプログラミングのための決定論的なテストを確保し、CPU デバッグツールに匹敵する信頼性を提供する専用参照インタプリタも実装されています。現在では NVIDIA ハードウェア向けに最適化されていますが、アーキテクチャ非依存の IR は、AMD のウェーブフロントおよび Vulkan サブグループ向けにも設計されています。今後の開発では、GPU 向けのスレッド合成や非同期操作の実装、また行列形状の SIMD をテンザコアへの変換(ローリング)が焦点となります。この進展により、業界ユーザーは新たなベクトル型を導入したり膨大なコード書き換えを伴う高コストなアプローチをとらずとも、要素ごとの算術演算と削減を効率的に活用することができます。ただし、制約としては、ベクトル幅の不一致(例:CPU の柔軟な N 対 GPU の固定 32/64 レーン)、およびハードウェアパターンと一致しない跨レーン操作におけるパフォーマンスコストが含まれます。