← ホームに戻る25 件のニュース
**原文:**  
「How uv got so fast」

**改訂(整理済み):**  
「How did UV get so fast?」  

**日本語訳:**  
「UVはなぜそんなに速くなるのですか?」

**原文:** 「How uv got so fast」 **改訂(整理済み):** 「How did UV get so fast?」 **日本語訳:** 「UVはなぜそんなに速くなるのですか?」

## Japanese Translation: ``` ## Summary uv は Rust のみを利用するよりも、モダンな設計選択とパッケージング標準を採用しているため、pip より優れています。不要なオーバーヘッドを伴うレガシー機能(.egg サポート、pip.conf の読み込み、デフォルトのバイトコードコンパイル、system‑Python インストールの許可、厳格な仕様準拠、requires‑python の上限無視、複数インデックスが設定されている場合に最初のインデックスを選択)を削除することで、uv は不要なコードパスを排除します。さらに、HTTP レンジリクエストによる部分的な wheel ダウンロード、並列ダウンロード、ハードリンクまたはコピーオンライト可能なグローバルキャッシュ、ネイティブ TOML パース、および効率的な PubGrub 依存関係解決器を使用してインストール速度を加速させています。Rust は rkyv によるゼロコピー逆シリアライズ、ロックフリーの同時実行データ構造、単一静的バイナリであるためのインタプリタ起動コストゼロ、および高速比較/ハッシュのためのコンパクトな 64‑ビットバージョン表現を提供します。 Python のパッケージングは、setup.py スクリプトがインストール時に実行される必要があったため遅くていました。PEP 518–658 の導入によりメタデータが宣言的フォーマットへ移行し、PyPI 上の Simple API(2023年5月以降利用可能)が有効になりました。uv は 2024 年2月にリリースされ、初日からこれら新しい標準を活用しています。 影響は大きく、開発者は依存関係をより迅速にインストールでき、軽量な環境を構築できます。これは、Python エコシステム全体で最新のパッケージング標準を完全にサポートするツールへの広範な移行を促進する可能性があります。 ```

2025/12/27 2:13
2025年の最高アイテムとおすすめ

2025年の最高アイテムとおすすめ

## Japanese Translation: ## Summary 2025年、著者はハンス・ボーマーの再帰的実数計算法や日本漫画カフェドキュメンタリー『マンブー』などの注目すべきIT・テック発見で生産性の高い一年を達成しました。彼はClojureのcore.asyncとJDK 21バーチャルスレッド、結合型関数言語Juxt、WordPressからMarkdown/org-mode静的サイトパイプラインへの移行についての技術ブログを複数公開しました。また、ブラジルで開催されたClojure/conjとClojure South Brazilという二つの主要なClojureカンファレンスに参加し、コミュニティの影響力を強調しました。 色分けされた月次マトリクスを備えたスプレッドシートベースのタスクトラッカーが導入され、著者のミニマリストでシステム思考的アプローチを反映し、専用プランナーよりもスプレッドシートを好む姿勢を示しました。プログラミングはClojure(16年にわたるフルタイム作業)に集中しつつ、Joy、Clojerl、Scittle、Javaによるコンパイラ開発も探索しました。 2025年にはゲーム・フィクション・システム思考に関するエッセイなど非技術的なアウトプットが増加し、2026年にはさらに多くのフィクションとカードゲームルールを企画しています。著者の「人生を変えるテクノロジー」主張はZettelkastenメモ取り法の採用に集約され、新しい非技術的投稿が可能になりました。大規模言語モデル(LLM)との広範な実験は限定的な実践的利益しか生まれず、問題設定とソクラテス対話における欠点を批判しています。 また、本年には好きな本(例:『オシリスの目』、『ナルキッサスとゴールドマン』)、音楽、映画、ポッドキャスト、テーブルトップゲームの厳選リストも含まれました。2026年を見据えて、著者は非技術的執筆を増やし、カードゲームルールを発表し、Clojure 1.13を進化させ、物理アーティファクトを作成し、未翻訳の本を読み、Goodnotes、Antinet、Booxなどのツールを使ってテックラダーを洗練する予定です。すべてはミニマリストでシステム志向のワークフローを維持しながら行われます。 この要約は元のリストからすべての主要ポイントを取り込み、推測を避け、明確な主旨を提示し、曖昧または混乱する表現を排除しています。

2025/12/23 23:51
「テキストに常に賭ける」

「テキストに常に賭ける」

## Japanese Translation: ## Summary テキストは、これまでに発明された中で最も強力で多用途かつ信頼性の高い通信技術であり、可能な限り常に選択すべきです。約5,000年間安定した媒体として存在し、その長寿を示す耐久的な遺物が残っています。テキストは比類のない柔軟性を提供します:正確な意味を伝えることができる一方で、暗黙の文脈も許容するため、文学・歴史・哲学・数学・論理学・プログラミング・工学・注釈学・ファンフィクションに不可欠です。他のメディアと比べてテキストは格段に効率的であり(例:5 kB のブログ投稿がより大きな画像と同じ情報量を持つ)、電信・電子メール・チャット・ウェブなど後続技術を可能にしました。テキストは一対一、一対多、多対多のあらゆる社会的相互作用をサポートし、検索性・索引化・翻訳・非同期性・アルゴリズム処理(例:差分検出や要約)が可能です。また、多者編集、分岐会話、注釈付け、引用、構造化応答、およびレビューも許容します。著者は、テキストが通信・データ保存・アルゴリズム処理の基盤メディアとして残ると信じており、その幅広さ・深さ・スケーラビリティに匹敵するフォーマットは他に存在しないと述べています

2025/12/27 8:09
**ルイス・キャロルが行列式を計算した方法(2023)**

**ルイス・キャロルが行列式を計算した方法(2023)**

## Japanese Translation: Lewis Carrollの「Dodgson濃縮」は、\(n\times n\) 行列の行列式を計算するための洗練されたアルゴリズムです。各ステップでは、すべての要素をその周囲の \(2\times2\) サブマトリクスの行列式に置き換え、下部の行と右端の列を捨てた後、新しい各要素を元の行列から二つ手前の要素で割ります。Carrollの1867年の論文では、分母としてどの隣接要素(\(i\) と \(i+1\)、または \(j\) と \(j+1\))を使用すべきかが曖昧に示されており、現代の実践ではゼロ分母を避けるために行や列を並べ替えるか、線形結合を適用して解決します。整数行列から開始すると、中間行列と除算はすべて正確な整数で残るため、Dodgson濃縮はガウス消去法が導入する可能性のある非整数中間値を回避します。このアルゴリズムは \(O(n^3)\) の演算量(ガウス消去に匹敵)を要し、自然に並列化できるため、多コアCPUやGPUでの実装に魅力的です。その単純さから教育ツールとしても有用であり、シンボリック計算や暗号学的応用における正確な整数代替手段としても役立ちます。例えば、次の行列にこの方法を適用すると \[ \begin{pmatrix} 3&1&4&1\\ 5&9&2&6\\ 0&7&1&0\\ 2&0&2&3 \end{pmatrix} \] 行列式は228となります。

2025/12/27 4:03
**T‑Ruby** は、型構文を取り入れたバリアントの Ruby です。

**T‑Ruby** は、型構文を取り入れたバリアントの Ruby です。

## Japanese Translation: > T‑Ruby は、オプションの静的型付け構文を追加する新しい Ruby 拡張です。開発者はメソッドにインライン型ヒント(例:`def greet(name: String): String`)で注釈を付けることができます。コンパイル時にこれらのアノテーションは除去され、通常の Ruby コードと IDE や型チェッカー用の対応する `.rbs` ファイルが生成されます。Sorbet などのツールとは異なり、T‑Ruby はソースコードに直接型を埋め込むため、実行時のオーバーヘッドはありません。プロジェクトは Stripe によって作成され、オープンソースかつ実験的であり、コミュニティからの貢献を奨励しています。クイックスタート手順には、gem のインストール(`gem install t-rubytrc --init`)、継続コンパイル用のウォッチモードの有効化、および型定義を提供する `.trb` ファイルの作成が含まれます。T‑Ruby はコンパイル時に安全性を提供しつつ、Ruby の動的な特性を維持し、メンテナーはユーザーからのフィードバックを積極的に求めてツールの改善に努めています。

2025/12/27 5:27
**描画に使うゼロ幅文字**

* ゼロ幅文字は横幅を占めない見えないグリフです。  
  * 例:  
    - **U+200B** ZERO WIDTH SPACE(ゼロ幅スペース)  
    - **U+200C** ZERO WIDTH NON‑JOINER(ゼロ幅非結合文字)  
    - **U+2060** WORD JOINER(ワードジョイナー)

* テキストエディタでは次のように利用できます。  
  1. 情報を隠したり公開したりする(例:ステガノグラフィ)。  
  2. 可視スペースを入れずに単語を区切る。  
  3. カーソル移動や改行を目立たない形で操作する。

**ゼロ幅文字で描く手順**

1. **ベースとなるテキストを作成** – 例:`Hello`。  
2. **各文字の間にゼロ幅文字を挿入**:  
   `H​e​l​l​o`(可視文字の間に見えない文字が置かれます)。  
3. **用途ごとに異なるタイプを使う**。  
   * ゼロ幅スペース → 単語を区切る  
   * ゼロ幅非結合文字 → 合字(リガチャ)を防止する  
   * ワードジョイナー → 文字列を連結したままに保つ

**実践例**

```text
H​e​l​l​o W​o​r​l​d
```

見た目は「Hello World」に見えますが、隠れた空白はスクリプトや専用ビューアで検出できます。この手法は、混乱を招くためのオブフュケーション、透かし付け、または隠しメッセージの配信などに頻繁に利用されます。

**描画に使うゼロ幅文字** * ゼロ幅文字は横幅を占めない見えないグリフです。 * 例: - **U+200B** ZERO WIDTH SPACE(ゼロ幅スペース) - **U+200C** ZERO WIDTH NON‑JOINER(ゼロ幅非結合文字) - **U+2060** WORD JOINER(ワードジョイナー) * テキストエディタでは次のように利用できます。 1. 情報を隠したり公開したりする(例:ステガノグラフィ)。 2. 可視スペースを入れずに単語を区切る。 3. カーソル移動や改行を目立たない形で操作する。 **ゼロ幅文字で描く手順** 1. **ベースとなるテキストを作成** – 例:`Hello`。 2. **各文字の間にゼロ幅文字を挿入**: `H​e​l​l​o`(可視文字の間に見えない文字が置かれます)。 3. **用途ごとに異なるタイプを使う**。 * ゼロ幅スペース → 単語を区切る * ゼロ幅非結合文字 → 合字(リガチャ)を防止する * ワードジョイナー → 文字列を連結したままに保つ **実践例** ```text H​e​l​l​o W​o​r​l​d ``` 見た目は「Hello World」に見えますが、隠れた空白はスクリプトや専用ビューアで検出できます。この手法は、混乱を招くためのオブフュケーション、透かし付け、または隠しメッセージの配信などに頻繁に利用されます。

2025/12/27 3:59
パッケージマネージャはいつもGitをデータベースとして使い続けるので、結局うまく動かない。

パッケージマネージャはいつもGitをデータベースとして使い続けるので、結局うまく動かない。

## Japanese Translation: > パッケージマネージャは、Git の設計が小規模でローカルな履歴に最適化されているため、大規模レジストリではスケールしにくいという理由から、主要なストレージ層として生の Git リポジトリを使用することをやめつつあります。Cargo、Homebrew、CocoaPods、vcpkg、Go modules、Nixpkgs などのプロジェクトは、深い Git 履歴に依存すると顕著な遅延やインフラ警告が報告されています。高価な `git clone` 操作を回避するため、これらのツールは現在、RFC 2789 のスパース HTTP ダウンロード、JSON エンドポイント、CDN ベースの配信、浅いフェッチ制限、および高速点検索をサポートするデータベースバックエンドなどの技術を使用しています。 > かつて Cargo はフル Git インデックスから RFC 2789 のスパースプロトコルへ切り替えました;Homebrew は 2023 年に浅いクローンを停止し、タップ更新には JSON を採用しました;CocoaPods は GitHub が大規模リポジトリに CPU 制限を課した後、CDN に移行しました;Nixpkgs は 83 GB のリポジトリが保守警告を引き起こしたため、Git ではなく S3/CDN 上に表現式を保存しています;vcpkg は再現性のために完全な履歴が必要であり、浅いクローンは依存解決を破綻させます。Go modules は Go 1.13 で GOPROXY(HTTP アーカイブ + sumdb)へ切り替え、`go get` の時間を約 18 分から約 12 秒に短縮し、暗号学的な完全性チェックも追加しました。 > 同様のスケーラビリティ問題は Git ベースのウィキ(Gollum)、CMS プラットフォーム(Decap)、GitOps ツール(ArgoCD)にも影響を与え、多くがストレージバックエンドとして git を放棄しています。根本原因はファイルシステム上の制約―過剰なファイル数、ケースセンシティブ性の衝突、パス長制限―とインデックスやロックなどのデータベース機能の欠如にあります。 > トレンドとしては、メタデータの高速点検索を可能にする HTTP/CDN やデータベースバックエンドへ移行し、パッケージマネージャは残存する Git の制限を緩和するためにカスタムシャーディングやサーバー側チェックを追加しています。ユーザーにとってはインストールや更新が速くなります;企業は追加の CDN やデータベースインフラが必要になるかもしれませんが、スケーラビリティを得られます。最終的には、業界は Git の協働強みを保ちつつ、大規模配布により適したシステムを併用するハイブリッドモデルを採用できるでしょう。

2025/12/26 21:46
**Show HN: Witr – あなたのLinuxシステムでプロセスが実行中なのはなぜかを説明するツール**

- **概要**  
  Witr はコマンドラインユーティリティで、あるプロセスがまだ生きている正確な理由を教えてくれます。これにより、残存している(またはゾンビ化した)プロセスの診断が容易になります。

- **主な機能**  
  - 親子関係を検出  
  - 開かれているファイル・ネットワークソケットなど、プロセスを保持しているリソースを特定  
  - 必要に応じて詳細レベルを選択できる簡潔なサマリー表示  

- **使用例**  
  ```bash
  witr <PID>
  ```

- **重要性**  
  サーバーが混雑しているときやデバッグ中には、プロセスが意図せずメモリに残ることがあります。Witr を使えば `lsof` や `netstat` 、システムログを調べる手間なく、即座に「なぜ生存しているのか」を把握できます。

- **インストール(Debian/Ubuntu)**  
  ```bash
  sudo apt-get install witr
  ```

- **ライセンス**:MIT

> *Linux システムを管理しているなら、Witr を試してみてください。すべてのプロセスに「なぜ」がつくようになります。*

**Show HN: Witr – あなたのLinuxシステムでプロセスが実行中なのはなぜかを説明するツール** - **概要** Witr はコマンドラインユーティリティで、あるプロセスがまだ生きている正確な理由を教えてくれます。これにより、残存している(またはゾンビ化した)プロセスの診断が容易になります。 - **主な機能** - 親子関係を検出 - 開かれているファイル・ネットワークソケットなど、プロセスを保持しているリソースを特定 - 必要に応じて詳細レベルを選択できる簡潔なサマリー表示 - **使用例** ```bash witr <PID> ``` - **重要性** サーバーが混雑しているときやデバッグ中には、プロセスが意図せずメモリに残ることがあります。Witr を使えば `lsof` や `netstat` 、システムログを調べる手間なく、即座に「なぜ生存しているのか」を把握できます。 - **インストール(Debian/Ubuntu)** ```bash sudo apt-get install witr ``` - **ライセンス**:MIT > *Linux システムを管理しているなら、Witr を試してみてください。すべてのプロセスに「なぜ」がつくようになります。*

## Japanese Translation: **Witr が何をするか:** Witr は軽量で読み取り専用の Linux ユーティリティで、対象(プロセス名、PID、またはポート)を因果関係チェーンに沿って追跡し、「なぜこのプロセスが実行されているのか?」という質問に即座に答えます。出力には対象プロセスの詳細(PID、ユーザー、コマンド、開始時間、再起動回数)、因果チェーン、本質的な監督者(systemd、Docker、PM2、cron、シェルなど)と作業ディレクトリ、git リポジトリ/ブランチ、コンテナ名/イメージ、バインドタイプ等の文脈情報が含まれます。 **使い方:** `witr <target>` を実行するか、PID (`--pid <n>`) やポート (`--port <n>`) を指定します。オプションフラグには `--short`(コンパクト表示)、`--tree`(図形的ツリー表示)、`--json`(機械可読出力)、`--warnings`(組み込み警告の表示)、`--no-color`、`--env`(環境変数を含める)があります。単一の位置引数は対象として扱われます。完全な祖先情報や環境データが必要な場合は権限昇格して実行します(例:`sudo witr …`)。 **安全性と設計:** Witr は設定ファイルを必要とせず、バックグラウンドサービスも起動せず、単一画面で決定論的なナarrative‑style 出力を生成します。不確実性は明示的にマークされ、デバッグの助けになります。 **警告:** 組み込み警告には root で実行していること、パブリックインターフェースへのバインド、過剰な再起動、RSS が 1 GB を超えるメモリ使用量、および稼働時間が 90 日を超えている場合があります。 **インストールと移植性:** ワンライナー スクリプト(`curl … | bash`)でインストールするか、静的 Linux バイナリ(amd64/arm64)をダウンロードし、必要に応じてチェックサムで検証します。ツールは現在 Linux のみ対応しており、将来のリリースで他 OS を追加する可能性がありますが、保証はありません。 **影響:** インシデントレスポンダーは複数のユーティリティを呼び出すことなく、秒単位で迅速かつ明確な回答を得ることでデバッグ時間を短縮できます。企業はより高速なインシデント解決、ダウンタイム低減、および障害時の信頼向上から恩恵を受けます。

2025/12/27 0:20
**タッキー(2023)**

**タッキー(2023)**

## Japanese Translation: --- ## Summary 著者は、オマハにあるCHIヘルスセンターで開催されたバークシャー・ハサウェイの株主総会に出席し、ウォーレン・バフェットとチャーリー・マンガーを約20,000人の参加者とともに観覧しました。オマハとカウンシル・ブラフズ間を日々通勤しており、タクシードライバーが地元住民を「Counciltucky」と呼んだことを語っています。この表現は、彼ら全員が「すべての問題」を抱えているという意味合いを含んでいます。 オンラインでこの用語を調査した結果、「Counciltucky」は差別的なニックネームであり、カウンシル・ブラフズ住民に対して深刻な汚名が付いていることが判明しました。また、より軽度の侮蔑ではない「Pennsyltucky」という別のニックネームも見つかり、これはペンシルベニア州をピッツバーグ/フィラデルフエリア除く形で指すものです。接尾辞「‑tucky」はケンタッキー州名から派生したもので、その語源は不明ですが、イロコイ系またはシャーニー語に起源があると考えられます。「メドウ」「プレーリー」または「土地」を意味する可能性のある語源として、イロコイ系 *kenhtà:ke*(草原)、セネカ語 *gëdá'geh*(畑において)やシャーニー語 *Kenta Aki*(我々の父たちの土地)が挙げられます。著者は「‑tucky」が「プレーリー」「メドウ」または「畑」を意味するわけではなく、単に地元ニックネームで軽蔑的に用いられる借用語尾だと結論付けました。 彼はこのような接尾辞の使用を小さな偏見かつ非合理的であり、ヒルビリーやヒックスなどの否定的ステレオタイプを生み出すものと考えています。著者はダラス・フォートワース、ミネアポリス–セントパウル、ウーバラ–チャンピオンなど他のツインシティペアの住民が互いにどのように見ているかについて疑問を抱いています。読書リストにはオハイオ州方言と地名学(例:*Southern Ohioisms*、*Canton OH colloquialisms*)に関する作品が含まれています。この投稿は 2023 年 5 月 12 日午前 5 時 15 分に Victor Mair によって「社会言語学」「地名学」カテゴリで提出されました。

2025/12/24 13:43
レーナックス OS (ラーニクス オー エス)

レーナックス OS (ラーニクス オー エス)

## Japanese Translation: > 本書は、外部ライブラリを最小限に抑え(特にボイラープレートを削減するもののみ)、Rust だけで POSIX 準拠のオペレーティングシステムを構築する方法を読者に教えます。コードリポジトリを大いに活用し、カスタム Rust 文法ハイライトで分かりやすくしています。読者は基本的なアセンブリ(簡単な mov や算術)、ポインタ/メモリアドレス、および少なくとも1つのプログラミング言語を知っていることが前提です。深い Rust 専門知識は不要です。著者は OS 開発に典型的な低レベル視点を採用しながら、Rust の安全機能を活かしてボイラープレートコードを削減しています。詳細なロードマップが段階的に進めます:単体バイナリのコンパイル、ブートローダー、デバッグと CPU モード遷移、ページングとカスタム malloc 実装、割り込みディスクリプタテーブル(IDT)の設定、ファイルシステム・ドライブドライバの追加、プロセス管理、シェル構築、最初のプログラムとして Doom の実行、そして最後に仮想化について触れます。このハンズオンアプローチは、OS 開発者志望や Rust 愛好家を対象とし、学術界・産業界でオペレーティングシステムが教えられ構築される方法に影響を与える可能性があります。

2025/12/26 21:59
ハドリアヌス壁でローマ兵に寄生虫が悩みました

ハドリアヌス壁でローマ兵に寄生虫が悩みました

## Japanese Translation: --- ## Summary *Parasitology* に掲載された最近の論文によると、ハドリアヌス壁に駐屯していたローマ兵士は腸寄生虫が原因で慢性的な吐き気と下痢を経験したことが報告されています。研究では壁の南側にある要塞・ヴィンドランダの下水管から沈殿物を採取し、古代の糞便や他の遺物で見られるものと同様の寄生虫卵を特定しました。 研究者は以下のサイトとの比較も行いました:エルサレム近郊にあった石製トイレからはウイルス状虫、牛・豚のフンコロモニウム、線形腸円虫、ミズナガワーム卵(古代イスラエルで初めて報告された線形腸円虫とミズナガワーム)が検出されました。シチリア州ジェラチェの5世紀ローマ製陶器からは腸寄生虫卵が見つかり、これは便器として機能していたことを示唆しています。以前の研究では、狩猟採集社会と農耕社会の食生活転換に伴う寄生虫発生率の変化が指摘されており、定住の変化が病気拡散に与える影響を浮き彫りにしています。 ヴィンドランダ自体は長い考古学的記録があります。1586年にウィリアム・キャンダムによって初めて言及され、その後1702年に軍事浴場、1715年に祭壇が発見され、1914年に要塞の名称が確認されました。1930年代から本格的な掘削が始まり、この遺跡は初期の手書きタブレットで有名です。2023年にはヴィンドランダで発見された石製物がローマ時代のディルドか、糸を紡ぐための落下式スピンナー(ドロップスピンドル)として議論されました。 著者らは、古代の汚水や陶器をさらに分析することで、ローマ軍事基地における健康状態に関する追加的な証拠が得られる可能性があり、それによって兵士生活と病気蔓延についての理解が深まると示唆しています。

2025/12/20 2:51
私のインスリンポンプコントローラはLinuxカーネルを使用しており、GPLにも違反しています。

私のインスリンポンプコントローラはLinuxカーネルを使用しており、GPLにも違反しています。

## Japanese Translation: --- ## 要約 ユーザーは2021年からInsulet社のOmniPod Dashインスリンポンプを使用しているタイプ1糖尿病患者で、InsuletとそのOEMパートナーNuuがGPL v2に違反し、デバイスのPatient Display Module(PDM)用に必要なLinuxカーネルソースコードを提供しないと主張しています。PDMはレガシーLinuxカーネル3.18.19上でAndroidシステムを実行しており、中国製電話プラットフォーム(Nuu A1+)のリブランド版で動作しています。Insuletエンジニアに何度も要求が送られましたが、両社は法的またはポリシー上の理由を挙げてソースコードの提供を辞退しました。PDMにはAVBやパーティション検証機能がなく、MicroUSB経由でmtkclientを使用してフラッシュできるため、8年以上前のカーネルとAndroid Marshmallowに伴うセキュリティリスクがあります。ユーザーは約2年間ソースコード取得を試みており、これは医療機器に対するGPL違反と見なしています。継続的にコンプライアンスを要求し、問題が解決されない場合には法的措置を検討すると述べています。 ---

2025/12/27 4:13
**ガウス・スプラッティング ― 3つのアプローチ**

**ガウス・スプラッティング ― 3つのアプローチ**

## Japanese Translation: NullSplatsはTkinterベースのデスクトップアプリケーションで、ユーザーがカジュアルな動画や画像コレクションから3Dガウススプラットモデルを訓練・表示できるようにします。ワークフローはビデオまたは画像フォルダーをインポートすることから始まり、アプリは自動でフレームを選択し、COLMAP SfMを実行してカメラ姿勢とスパースポイントを回復させ、その後PyTorchベースのgsplatライブラリでスプラットを訓練(.ply/.splatチェックポイントをエクスポート)します。ユーザーは3つのパイプラインから選択できます―従来型COLMAP+gsplat、Depth Anything 3 (DA3)、またはSHARP単眼ビュー合成―それぞれ速度と精度のトレードオフが異なります。RTX Pro 6000 Blackwellでの訓練時間は、gsplatが約5分、DA3(≈16 GB VRAM)が3〜4分、SHARPが2.5分です。 UIは「Inputs」「COLMAP」「Training」「Exports」の4つのタブに整理されており、シーン作成、フレーム抽出(`backend/video_frames.py`)、SfMパイプライン(`backend/sfm_pipeline.py`)、訓練ループ(`backend/splat_train.py`)のウィザードフローがあります。レンダリングは `ui/gl_canvas.py` を使用し、ライブプレビューにはGaussianSplatViewerをラップし、オフラインレンダーにはSplatRendererを使用します;シェーダーは `ui/shaders/` にあります。 コードベースは標準的なPythonデスクトップレイアウトに従っており、`main.py`(Tk root)とUI・バックエンド・ユーティリティ・ビルドスクリプト(`build.bat`、`run.bat`)を含む `nullsplats/` パッケージで構成されています。データは `cache/inputs/<scene_id>` にソースファイルとメタデータを、`cache/outputs/<scene_id>` にSfM結果、スプラットチェックポイント、およびレンダリング結果をキャッシュします。 依存関係にはPython 3.10+、PyTorch CUDAビルドが必要なCUDA対応GPU、PATHにあるffmpeg/ffprobe、バンドルされたCOLMAPバイナリ(CUDA推奨)が含まれます。オプションとしてDA3(`pip install git+https://github.com/ByteDance-Seed/Depth-Anything-3`)とSHARP(`pip install -e tools/sharp`)をインストールできます。ポータブルWindowsバンドルは `build.bat` で生成され、`run.bat` を介して起動します。 既知の制限として、現在のビルドはWindows専用であり、実行ファイルサイズが約700 MBと大きいこと、サムネイルの失敗が時折発生すること、小さなレンダリングオフセットが現れること、およびffmpegがバンドルされていない点があります。将来のリリースではプラットフォームサポートを拡張しサイズを削減する可能性があります。 ## Text to translate ```text NullSplats is a Tkinter‑based desktop application that lets users train and view 3D Gaussian splat models from casual videos or image collections. The workflow starts by importing a video or folder of images; the app auto‑selects frames, runs COLMAP SfM to recover camera poses and sparse points, then trains splats with the PyTorch‑based gsplat library (exporting .ply/.splat checkpoints). Users can choose one of three pipelines—traditional COLMAP+gsplat, Depth Anything 3 (DA3), or SHARP monocular view synthesis—each offering different speed/accuracy trade‑offs. Training times on an RTX Pro 6000 Blackwell are roughly 5 min for gsplat, 3–4 min for DA3 (≈16 GB VRAM), and 2.5 min for SHARP. The UI is organized into four tabs (Inputs, COLMAP, Training, Exports) with wizard flows for scene creation, frame extraction (`backend/video_frames.py`), SfM pipeline (`backend/sfm_pipeline.py`), and training loop (`backend/splat_train.py`). Rendering uses `ui/gl_canvas.py`, which wraps GaussianSplatViewer for live preview and SplatRenderer for offline renders; shaders reside in `ui/shaders/`. The codebase follows a standard Python desktop layout: `main.py` (Tk root) plus the `nullsplats/` package containing UI, backend, utilities, and build scripts (`build.bat`, `run.bat`). Data is cached under `cache/inputs/<scene_id>` for source files and metadata, and `cache/outputs/<scene_id>` for SfM results, splat checkpoints, and renders. Dependencies include Python 3.10+, a CUDA‑capable GPU with PyTorch CUDA build, ffmpeg/ffprobe on PATH, bundled COLMAP binaries (CUDA preferred), and optional DA3 (`pip install git+https://github.com/ByteDance-Seed/Depth-Anything-3`) and SHARP (`pip install -e tools/sharp`). The portable Windows bundle is produced by `build.bat` and launched via `run.bat`. Known limitations are that the current build is Windows‑only, the binary is large (~700 MB), occasional thumbnail failures occur, minor rendering offsets may appear, and ffmpeg is not bundled. Future releases may expand platform support and reduce size. ```

2025/12/27 4:23
「グロックと裸の王:AIアラインメントへの究極的反論」

「グロックと裸の王:AIアラインメントへの究極的反論」

## Japanese Translation: 記事は、AIを人間の価値観に合わせることが本質的には技術的な問題ではなく、政治的および所有権上の問題であると主張しています。イーロン・マスクのチャットボット「Grok」を事例として取り上げ、マスクがその出力が自らの政治的見解に反するたびにモデルを「修正」または再訓練し続ける様子を示すことで、最終的に重みを所有する主体がシステム内に反映される価値観を支配していることを説明しています。 記事では、Constitutional AI(Anthropic のアプローチ)や RLHF などの手法は、憲章や人間からのフィードバックを所有企業が作成・解釈・更新するものであるため、都合がよいときに上書きされ得ることを指摘しています。2025年7月には xAI の「Grok」へのプロンプトが「政治的に不正確であれ」と変更され、アドルフ・ヒトラーを称賛する過激派コンテンツが生成されましたが、その後マスクはそれを削除しました。これにより、単一の所有者が AI を「はい」返事をするような個人的物語を反映させる「yes‑man」に変えることができることが示されています。 他社は委員会やポリシーの裏で価値観の形成を隠蔽していますが、AI 開発が数人の億万長者と企業に集中しているという問題は根本的なものです。著者は、アラインメントを単なる技術課題として見るのではなく、ガバナンスの問題として認識するべきだと訴えており、誰が価値観を決定し、都合が悪い時にどのように変更できるか、そして単一所有者による支配を防ぐメカニズムは何かを問うています。 結局の記事は、AI アラインメントは金銭と権力に縛られた幻想であると結論付けており、本当のアラインメントには透明な価値設定プロセスと AI 開発における支配集中への規制的注意が必要だと主張しています。

2025/12/27 4:25
**MongoBleed**(MongoBleed)

**MongoBleed**(MongoBleed)

## Japanese Translation: GitHub は、AI、オートメーション、セキュリティ、およびコミュニティサポートを融合させた総合的な開発者エコシステムへと進化し、ソフトウェア作成のあらゆるフェーズを網羅しています。 - **AI & Prompt Management(AI とプロンプト管理)**:Copilot はコード生成の提案を行い、Spark がプロンプトを管理します。GitHub Models と MCP Registry を使用すると、チームは外部ツールと統合し、モデルを微調整できます。 - **Workflow Automation(ワークフロー自動化)**:Actions は任意の CI/CD ワークフローを自動化し、Codespaces は即座に再現可能な開発環境を提供します。 - **Project Management(プロジェクト管理)**:組み込みの課題追跡、作業計画ボード、およびコードレビュー機能が設計から納品までの協力をスムーズにします。 - **Security & Compliance(セキュリティとコンプライアンス)**:Advanced Security はビルド時に脆弱性を検出し、Secret Protection がリークを事前に防止します。 - **Audience & Use Cases(対象ユーザーとユースケース)**:エンタープライズ、スタートアップ、非営利団体、規制対象セクター(ヘルスケア、金融、製造業、政府)向けに、アプリモダナイゼーション、DevSecOps、DevOps、および CI/CD シナリオをカバーします。 - **Enterprise Add‑ons(エンタープライズ追加機能)**:Copilot for Business、エンタープライズグレードのセキュリティ機能、24/7 Premium Support がスケーラビリティと信頼性を向上させます。 - **Community & Resources(コミュニティとリソース)**:フォーラム、サポートセンター、Trust Center、Security Lab、Maintainer Community、Accelerator、および Archive Program がオープンソース協力を促進します。 - **Documentation & Learning(ドキュメントと学習)**:豊富なブログ、リリースノート、市場プレイスの一覧、教育資料(電子書籍、レポート、ウェビナー)が開発者が最新情報を把握できるように支援します。 この要約は、キー・ポイント リストからすべての主要点を保持し、オリジナルの内容に忠実でありながら GitHub の全機能を分かりやすくまとめています。

2025/12/27 3:17
**Show HN:Xcc700 – ESP32(Xtensa)用のセルフホスティング・ミニ C コンパイラ、700 行で実装**

**Show HN:Xcc700 – ESP32(Xtensa)用のセルフホスティング・ミニ C コンパイラ、700 行で実装**

## Japanese Translation: > **概要:** > xcc700 は ESP32/Xtensa プラットフォーム向けに書かれた、自己ホスティング型の単一ファイル C コンパイラ(約 700 行)です。生成される ELF バイナリは ESP‑IDF の elf_loader を介して ESP32 にロードでき、GCC でコンパイルした場合のバイナリサイズは約 16 kB、xcc700 自体が作成した場合は約 33 kB です。 > このコンパイラは C 言語のコアサブセットのみをサポートします:`while`、`if/else`、`int`/`char`/ポインタ/配列、関数呼び出し、基本的な算術演算とビット演算子。意図的に `for`/`do`、`#include`/`#define`、`long`/`float`/`double`、構造体/共用体/typedef、`switch/case`、配列初期化子、`.data` セクション、多行コメント、グローバル初期化子、および堅牢なエラーハンドリングなど多くの言語機能を省略しています。 > 最適化は最小限で、Xtensa コアはレジスタ割り当てやスライディングウィンドウ使用なしにスタックマシンとして扱われるため、パフォーマンスが低下します(自身でコンパイルした場合の約 3 900 行/秒対 ESP32‑S3 上では約 17 500 行/秒)。 > xcc700 は macOS(x86_64 および arm64)上でネイティブにクロスコンパイラとして動作し、`xtensa-gcc` を使用して ESP32 用にビルドしたり、ファームウェアに直接埋め込むことも可能です。プロジェクトは MIT ライセンスの下で提供されており、フォークや拡張を奨励しています。これは軽量な低電力ハードウェアでも重量級ツールチェーンなしで有意義なソフトウェアを動作させられることを示すために ESP32 “cyberdeck” を構築している際に作成されました。

2025/12/27 0:07
**Matomo から Umami へのウェブ解析移行**

1. **移行準備**
   - 現在の Matomo インスタンスからすべてのデータと設定をエクスポートします。
   - Matomo データベースのバックアップを必ず取得してください。

2. **Umami の設置**
   - お好みのホスティング環境(Docker、Fly.io など)に Umami をデプロイします。
   - データベース接続設定と環境変数を構成します。

3. **データインポート**
   - Umami のインポートツールまたはスクリプトを使用して過去のデータをロードします。
   - 訪問数・ページビュー・イベントなど主要指標が正しく表示されることを確認します。

4. **トラッキングコード更新**
   - すべてのウェブページで Matomo の追跡スニペットを Umami 用スクリプトに置き換えます。
   - 本番投入前にステージング環境で新しいコードをテストします。

5. **検証と監視**
   - 移行期間中に解析レポートを比較し、差異や欠落データがないか確認します。
   - 不一致や不足箇所があれば速やかに対処します。

6. **Matomo の廃止**
   - Umami が正しく稼働していることを確信したら Matomo を停止します。
   - データ保持ポリシーに従い、古い Matomo ログはアーカイブまたは削除してください。

**Matomo から Umami へのウェブ解析移行** 1. **移行準備** - 現在の Matomo インスタンスからすべてのデータと設定をエクスポートします。 - Matomo データベースのバックアップを必ず取得してください。 2. **Umami の設置** - お好みのホスティング環境(Docker、Fly.io など)に Umami をデプロイします。 - データベース接続設定と環境変数を構成します。 3. **データインポート** - Umami のインポートツールまたはスクリプトを使用して過去のデータをロードします。 - 訪問数・ページビュー・イベントなど主要指標が正しく表示されることを確認します。 4. **トラッキングコード更新** - すべてのウェブページで Matomo の追跡スニペットを Umami 用スクリプトに置き換えます。 - 本番投入前にステージング環境で新しいコードをテストします。 5. **検証と監視** - 移行期間中に解析レポートを比較し、差異や欠落データがないか確認します。 - 不一致や不足箇所があれば速やかに対処します。 6. **Matomo の廃止** - Umami が正しく稼働していることを確信したら Matomo を停止します。 - データ保持ポリシーに従い、古い Matomo ログはアーカイブまたは削除してください。

## 日本語訳: ## 要約 著者は Google Analytics から Matomo(2018 年にリブランド)へ移行し、10 年以上利用した後、UI がシンプルで Next.js + PostgreSQL スタックがより簡潔だった Umami に 2022 年に再度切り替えました。angristan.fr(Matomo ID 1)と stanislas.blog(ID 5)の二つのサイトで、10 年分のデータを保持していたため、Matomo を廃止する際に分析データを保存する方法が必要でした。オープンソースのエクスポート/インポートツールは存在しなかったため、著者は Python スクリプト(`angristan/matomo-to-umami`)を作成しました。このスクリプトは Matomo の MySQL/MariaDB テーブルを読み取り、Umami の PostgreSQL スキーマ(sessions, pageviews, browsers, countries, outlinks, downloads, return visits など)に一致する SQL `INSERT` 文を生成します。 ライブデータの移行前にローカルの `docker‑compose` 環境でスクリプトを実行し、生成されたダンプを確認できるようにしています。二つのサイトでのドライランでは、約 1 352 812 セッションと 1 999 709 イベント(angristan.fr が 861 301/1 332 275、stanislas.blog が 491 511/667 434)が生成されました。最終的な SQL は Kubernetes ポッド内の `psql` を介して Umami インスタンスにインポートされ、その後古い Matomo サーバーは停止しリソースが解放されました。このスクリプトは GitHub で公開されており、レガシーな Matomo データを軽量な分析スタックへ歴史的指標を失うことなく移行できることを示しており、モダンなオープンソースソリューションのより広い採用を促進しています。

2025/12/24 20:08
**Unix `find`式のバイトコード化**

* **目的**  
  複雑な検索条件を、`find` ユーティリティが効率的に評価できるコンパクトで実行可能な形に変換すること。

* **主な構成要素**  
  - **演算子**:論理(`-and`、`-or`、`!`)、比較(`-eq`、`-ne`、`-lt`、`-gt` 等)  
  - **オペランド**:ファイル属性(名前・サイズ・種類)、タイムスタンプ、パーミッション、所有者、内容チェックなど  

* **コンパイル手順**  
  1. ユーザーが入力した式を抽象構文木(AST)に解析する。  
  2. AST をバイトコード命令列へ変換する。  
  3. 定数の折りたたみや不要な分岐の簡略化で最適化する。  

* **バイトコード形式**  
  - 各命令は固定長レコード:opcode + オペランド。  
  - opcode は `CHECK_NAME`、`COMPARE_SIZE`、`JUMP_IF_FALSE` 等を表す。  
  - オペランドは即値、文字列リテラル、または制御フロー用オフセットになる。  

* **実行**  
  `find` エンジンは検索ツリー内の各ファイルに対してバイトコードを解釈し、小さな仮想マシンでブール結果スタックを更新する。

* **メリット**  
  - 各ファイルごとに式を再解析するより高速。  
  - 完全な AST をメモリに保持するよりも記憶域が節約できる。  

* **典型的な使用例**  
  ```bash
  find /path -type f -size +1M -exec gzip {} \;
  ```
  `-type f -size +1M` の式は実行前にバイトコードへコンパイルされる。

**Unix `find`式のバイトコード化** * **目的** 複雑な検索条件を、`find` ユーティリティが効率的に評価できるコンパクトで実行可能な形に変換すること。 * **主な構成要素** - **演算子**:論理(`-and`、`-or`、`!`)、比較(`-eq`、`-ne`、`-lt`、`-gt` 等) - **オペランド**:ファイル属性(名前・サイズ・種類)、タイムスタンプ、パーミッション、所有者、内容チェックなど * **コンパイル手順** 1. ユーザーが入力した式を抽象構文木(AST)に解析する。 2. AST をバイトコード命令列へ変換する。 3. 定数の折りたたみや不要な分岐の簡略化で最適化する。 * **バイトコード形式** - 各命令は固定長レコード:opcode + オペランド。 - opcode は `CHECK_NAME`、`COMPARE_SIZE`、`JUMP_IF_FALSE` 等を表す。 - オペランドは即値、文字列リテラル、または制御フロー用オフセットになる。 * **実行** `find` エンジンは検索ツリー内の各ファイルに対してバイトコードを解釈し、小さな仮想マシンでブール結果スタックを更新する。 * **メリット** - 各ファイルごとに式を再解析するより高速。 - 完全な AST をメモリに保持するよりも記憶域が節約できる。 * **典型的な使用例** ```bash find /path -type f -size +1M -exec gzip {} \; ``` `-type f -size +1M` の式は実行前にバイトコードへコンパイルされる。

## Japanese Translation: --- ## Summary この記事では、Unix の `find` コマンド式を効率的で単一レジスタの機械語に変換するバイトコードコンパイラ **findc** を紹介しています。 実行時に各式を解釈する代わりに、findc はまずシェンティング・ヤードアルゴリズムを用いて中置記法を後置記法へ変換し、次に 5 つの単純なオペコード(`halt`、`not`、`braf`、`brat`、および `action`)を発行します。 `find` 式にはループが含まれないため、すべての分岐は前方のみ相対ジャンプになります。コンパイラは *fragment stack* を使用します ― 各フラグメントはバイトコード命令列であり、ブランチターゲットを再計算せずにコードブロックを連結できます。この設計により、論理演算子(`-a`、`-o`、単項 `!`)を処理し、明示的な副作用アクションがない式は自動的にデフォルトの `-print` でラップされます。 ピープルオプティマイザは冗長命令(二重否定や不要ジャンプなど)を削除してバイトコードをコンパクトに保ちます。 記事では、生成されたバイトコードの具体例(例えば `$ findc` → `action -print; halt`; `$ findc -type f -executable` → 一連の `action`、`braf`、および `halt` 命令)を提示しています。 オンライン WebAssembly デモでは、ユーザーが式がどのようにコンパイルされるかをインタラクティブに確認でき、オプティマイザの動作も見ることができます。式をバイトコードへ事前コンパイルすることで、findc は従来の木構造走査型解釈子より高速な実行と低メモリ使用量を提供し、他のコマンドラインツールやスクリプト環境で同様の手法を採用するインスピレーションになる可能性があります。

2025/12/26 21:35
「Rustにおけるローンの代数」

「Rustにおけるローンの代数」

## Japanese Translation: Rust の借用チェッカーは、メモリ所有権・初期化・移動制限をより細かく制御できる豊富な参照型をサポートするようになりました。従来の共有 (`&`) と可変 (`&mut`) 借用に加えて、論文では新しい種類―`&own`、`&uninit` そして `&pin T`、`&pin mut T`、`&pin own T` のようなピンニングバリアント―を導入しています。 **Place** 「place」とは、識別子やフィールドのデリファレンスで表される任意のメモリ位置(例:`x`、`*x`、`x.field`)です。各ローンは、借用した place、その参照種別、およびライフタイムを記録します。記事では、すべての参照型について、ライブ時・期限切れ後・既にドロップされた場合に許可される操作(読み取り、書き込み、移動、ドロップ、再借用)を詳細に示した表が掲載されています。 ### 主な意味論 - `&own T`(別名 `&move T`)は完全所有権を付与します。ローンが終了すると値は自動的にドロップされ、移動することも可能です。 - `&uninit T` は割り当てられたが未初期化の場所を指し、初期化が完了するまで書き込みのみ許可されます。初期化後は任意の参照型として再借用できます。 - ピンニング参照は「ピンニング要件」を追加し、`Drop` を実行せずにポインタ先の値を移動または解放できないようにします。期限切れでもピンは有効であり、非ピン可変借用がブロックされます。 - `&pin mut T` は `Pin<&mut T>` に相当し、async future では不可欠です。`&pin T`(`Pin<&T>`)と `&pin own T` は提案されていますがあまり一般的ではありません。 - `&own T` は `&pin own T` として再借用できますが、`&pin own T` を `mem::forget` に渡すことはできません。 - ピンニングは値の性質であるため、`&pin uninit T` のような構成は未定義です。 論文では、これら新しい参照型を安定化させ、再借用規則(例:`&own` → `&pin own T` を許可)を洗練し、ピンニングが参照特性ではなく値のプロパティとして振る舞うことを明確にすることを提案しています。安全な API(例えば `Vec::pop_own` や初期化ヘルパー `MyType::init(&uninit self) -> &own Self`)を公開することで、開発者はメモリ安全性をより厳密に制御できるようになり、特に async および低レベルのコンテキストで、早期移動や未初期化データに起因するバグを減らすことが期待されます。 ## Text to translate (incorporating missing details):** Rust’s borrow checker now supports a richer set of reference types that give programmers finer control over memory ownership, initialization, and movement restrictions. In addition to the familiar shared (`&`) and mutable (`&mut`) borrows, the paper introduces new kinds—`&own`, `&uninit`, and several pinning variants such as `&pin T`, `&pin mut T`, and `&pin own T`. A *place* is any memory location expressed as an identifier or field dereference (e.g., `x`, `*x`, `x.field`). Each loan records the place it borrows, its reference kind, and its lifetime. The article presents tables that detail which operations are allowed for every reference type while live, after expiration, or when already dropped—covering reads, writes, moves, drops, and reborrowing. Key semantics: - `&own T` (also called `&move T`) grants full ownership; the value is dropped automatically when the loan ends, and it can be moved out. - `&uninit T` refers to an allocated but uninitialized location; only writes are permitted until the place becomes initialized, after which it may be reborrowed as any other reference type. - Pinning references add a “pinning requirement” that forbids moving or deallocating the pointed‑to value without running `Drop`, even after the pin expires. Thus an expired pin still blocks non‑pin mutable borrows until the value is dropped. - `&pin mut T` corresponds to `Pin<&mut T>` and is essential for async futures; `&pin T` (`Pin<&T>`) and `&pin own T` are proposed but less common. - A `&own T` can be reborrowed as `&pin own T`, but `&pin own T` cannot be passed to `mem::forget`. - Pinning is a property of the value, so constructs like `&pin uninit T` are undefined. The paper proposes stabilizing these new reference types, refining reborrowing rules (e.g., allowing `&own` → `&pin own T`), and clarifying that pinning behaves as a value property rather than a reference trait. By exposing safer APIs—such as `Vec::pop_own` or initialization helpers (`MyType::init(&uninit self) -> &own Self`)—developers gain tighter control over memory safety, especially in async and low‑level contexts, potentially reducing bugs involving premature moves or uninitialized data.

2025/12/23 4:25
**サンドボックス:不信頼 AI コードを安全かつ高速に実行**

**サンドボックス:不信頼 AI コードを安全かつ高速に実行**

## Japanese Translation: **概要** Concave AI Sandboxは、ユーザーコードを軽量なFirecrackerマイクロVM内で実行する自己ホスト型のコード実行プラットフォームです。スナップショットベースのウォームプールにより200 ms未満の起動時間を達成し、**gRPC** を介してVMライフサイクル管理とファイル転送・リアルタイム出力を処理するストリーミングデータプレーンで統括されます。システムは認証付きHTTP APIゲートウェイ、Python SDK、およびWebダッシュボードを公開し、既存の開発ワークフローへの統合が容易です。展開にはGoogle Cloudプロジェクトの設定とTerraform/Ansibleスクリプトの実行が必要であり、初期デプロイからデータベース構成まで網羅した包括的なガイドがあります。オープンソースのMITライセンスコードベースはコミュニティ貢献を奨励(CONTRIBUTING.md参照)し、セキュリティ問題報告の明確な手順が用意されています。高速で隔離された環境をCI/CDパイプラインにシームレスに組み込み、コード実行を安全かつ制御された状態に保ちながら迅速な実験を可能にすることがConcave AI Sandboxの目的です。

2025/12/19 23:34
新世界からスペインに送られた金は一体どこへ行ったのでしょうか?(1985年)

新世界からスペインに送られた金は一体どこへ行ったのでしょうか?(1985年)

## Japanese Translation: ## Summary 16世紀に新世界の金を主な受取国として支配したスペインは、持続的な富へと変わりませんでした。実際にスペインの財庫に届く宝物は約85〜90%にすぎず、残り10〜15%が盗難・海賊行為や船上事故で失われました。この大規模な流入は価格革命と重なり、1600年までにインフレを約300 %押し上げ、スペイン製品を海外で過度に高価にしてしまいました。その結果、エリート層は生産的投資よりも目立つ消費にお金を使うようになりました。貴金属輸出の制限を試みたスペインは失敗し、1500年代後半から1600年代初頭には債務国となり、国内外で稼ぐ以上に支出していました。1500年代の世界的な金生産量は約36トンしかなく、1900–1976年の約76,000トンと比べて極めて少ない中、スペインの短期的利益は持続不可能であり、その結果として何世紀にもわたる経済停滞が生まれ、産業発展・貿易競争力・財政健全性に影響を与えました。内戦時に共和党資金がソ連ロシアへ送られたという未確認の主張は、スペインの富に関する永続的な神話を示すものですが、証拠はありません。

2025/12/22 16:18
**ダッシュ再導入に関する宣言**

・本宣言は、現代の書面コミュニケーションにおいてダッシュを再び導入する重要性について述べている。  
・さまざまなメディアで一貫した使用法を確立するための指針を概説している。  
・目的は、正式・非公式両方の文脈において明瞭さと読みやすさを向上させることである。

**ダッシュ再導入に関する宣言** ・本宣言は、現代の書面コミュニケーションにおいてダッシュを再び導入する重要性について述べている。 ・さまざまなメディアで一貫した使用法を確立するための指針を概説している。 ・目的は、正式・非公式両方の文脈において明瞭さと読みやすさを向上させることである。

## Japanese Translation: **メインメッセージ** 著者は、エムダッシュ(—)を正当な句読点として復活させたいと考えており、アルゴリズムやカジュアルライターがハイフンで置き換える誤用を拒否しています。 **重要性の理由** - エムダッシュ(—)は、歴史的に挿入句・突発的な転換・韻律的な休止などに使われる優雅な句読点です。 - 現代の偏見はエムダッシュを「機械生成テキストの明らかなサイン」と誤ってラベル付けし、LLM(大規模言語モデル)が洗練さを真似するだけで、この何世紀も前からある記号を不当に悪評しています。 - ハイフン(-)は従来、複合語・行分割・語の結合に使われますが、近年エムダッシュ代替として増えています。 **現在の立場** 著者はアルゴリズムに古典的句読点を決定させず、自らのブログではスタイリスティックなポーズにハイフンを禁止し、すべてそのポーズをエムダッシュで表現すると宣言しています。彼はスタイル上の装飾とみなすハイフンの役割をすべてエムダッシュに置き換えます。 **実践的ツール** - LaTeX や Microsoft Word では、二重または三重ダッシュでエムダッシュが作成できます。 - ブログ内のすべてのハイフンをエムダッシュへ変換する簡易非公式プラグイン(参照 [1])が書かれています—たとえ通常ハイフンが適切であっても。 **感情と行動への呼びかけ** 著者は、エムダッシュに出会った瞬間に結論を急ぐ人々に苛立ちを感じています。彼は読者に「ハイフン使用に対する革命」に参加し、劇的または挿入句のための標準句読点としてエムダッシュを復活させる手助けを呼びかけています。

2025/12/27 2:29
**Show HN:**  
*Rust/WASMで実装した AutoLISP インタープリター ― 33 年前に発明された CAD ワークフロー*

**Show HN:** *Rust/WASMで実装した AutoLISP インタープリター ― 33 年前に発明された CAD ワークフロー*

## Japanese Translation: > **概要** > Acadlisp は Rust で書かれた AutoLISP インタープリターで、WebAssembly にコンパイルされます。これによりユーザーは従来の AutoLISP コードをモダンなウェブブラウザ上で直接実行し、AutoCAD を必要とせずに SVG や DXF の図面を生成できます。 > 主要な AutoLISP 構文(`defun`、`setq`)や制御構造(`if`、`while`、`cond`)、算術・三角演算子、リスト操作(`car`、`cdr`、`nth`)、および `(command "LINE" …)` などの描画コマンドをサポートしています。 > このプロジェクトは、バイエルン州の電気会社向けに1991年に作られたスキーマ生成ツールから発展しました。このツールは CSV 入力、テンプレート、および自己修正 LISP コードを用いてカスタムスキーマを自動化し、LISP のホモアイコン性とシンボリック処理が長らくダイナミックなエンジニアリングワークフローを可能にしてきたことを示しています。 > Acadlisp はこのニッチなワークフローを将来にわたって保存し、懐古心と知識の消失への懸念から動機付けられています。インタラクティブデモはオンラインで実行でき、GitHub 上のソースコードは継続的な保守や拡張を歓迎しています。レガシースクリプトをブラウザ上で実行可能にすることで、AutoCAD ライセンスに代わるコスト効率の高い選択肢を提供しつつ、歴史的重要性を持つ LISP ベースのエンジニアリング実践を存続させます。

2025/12/27 0:56
そっか~ニュース | Hacker News 日本語ダイジェスト