W++ と呼ばれる新しい実験的プログラミング言語が、33,000回を超えるダウンロードを記録したにも関わらず VSCode Marketplace から謎の削除を受け、開発者コミュニティで注目を集めている。Ofek Bickel 氏が教育プロジェクトとして作成したこの言語は、Python のようなシンプルさと .NET 統合の融合を目指していたが、その設計選択とマーケティングアプローチについて激しい議論を巻き起こしている。
謎の Marketplace 削除が疑問を提起
W++ VSCode 拡張機能は、わずか2時間弱で33,000ダウンロードを蓄積した後、Microsoft によってフラグが立てられ削除された。作成者によると、Microsoft は具体的な詳細を提供したりサポート要請に応答したりすることなく、これをマルウェアとして分類したという。急速なダウンロード数と突然の削除により、コミュニティは困惑しており、高いダウンロード数や削除自体が正当なものだったのかを疑問視する声もある。
作成者はその後、VSCode 拡張機能を含む全ソースコードを GitHub で公開し、開発者がコードを検査して自由に使用できるようにした。この透明性を重視した動きは、削除につながった可能性のあるセキュリティ上の懸念に対処する試みと見られる。
出来事のタイムライン:
- W++ VSCode 拡張機能がマーケットプレイスにアップロード
- 2時間未満で33,000回以上のダウンロードを達成
- 拡張機能が Microsoft により「マルウェア」としてフラグ付けされ削除
- Microsoft サポートからの返答なし
- 完全なソースコードが GitHub で公開
- 設計選択とマーケティングについてコミュニティでの議論が発生
Python との比較をめぐるコミュニティからの批判
W++ の最も論争の的となった側面の一つは、大幅な構文の違いがあるにも関わらず Python ライクとしてマーケティングされていることだった。コミュニティメンバーは、この言語にはセミコロンが含まれ、変数宣言に let
を使用し、全く異なるラムダ構文を持っていることを指摘した。これらはすべて明らかに非 Python 的である。
「少し混乱している。『Python のように見える』と言うが、基本的にすべてのスニペットに Python のように見えない要素がある。」
この批判により、言語は Python との比較を完全にやめて、.NET スクリプト言語としての独自のメリットに焦点を当てるべきかという議論が生まれた。一部の開発者は、この言語は Python ライクというよりも JavaScript ライクに見えると示唆し、マーケティングメッセージの正確性を疑問視している。
技術的設計選択が意見を分ける
この言語の技術的決定は、開発者コミュニティから様々な反応を生んでいる。W++ は Python のように有意な空白を使用するが、セミコロンと中括弧を保持しており、あるコメンテーターが「Python 開発者にも C# 開発者にも完全には魅力的でない中間状態」と表現した状況を作り出している。
メモリ管理の懸念も提起されており、特に類似のホスト言語シナリオでの経験を持つ開発者からの指摘がある。古い .NET フレームワーク上で IronPython を使用した経験のある開発者は、既存のランタイム上で言語を構築する際の潜在的なメモリリークとオブジェクトライフサイクルの複雑さについて警告している。
** W++ の主要機能:**
- C言語で書かれた完全なトークナイザー、パーサー、インタープリター
- ラムダ式による async/await サポート
- 制御フロー: if、else、while、for、switch文
- Try/catch + throw および return メカニズム
- カスタム VSCode シンタックスハイライトとスニペット
- NuGet パッケージ統合(pip ではない)
- IL にコンパイルし、.NET エコシステムと統合
パフォーマンスと採用の課題
起動パフォーマンスも別の懸念として浮上しており、コミュニティメンバーは初回実行時の JIT コンパイル遅延が迅速なスクリプトタスクでの採用を妨げる可能性があると指摘している。この問題は、W++ が高速な起動時間がユーザーエクスペリエンスにとって重要なスクリプト言語として位置づけられているため、特に関連性が高い。
Python と C# の間での言語の位置づけも、そのターゲットオーディエンスについて疑問を提起している。一部の開発者は、C# の流暢なインターフェースを使用した内部 DSL アプローチの方が、全く新しい言語構文を学ぶよりも .NET 開発者にとってより実用的かもしれないと主張している。
将来の展望とコミュニティの関心
批判にも関わらず、W++ はプロジェクトの教育的価値と実験的性質を評価する一部のコミュニティメンバーから真の関心を集めている。複数の開発者が、特にデータフロー解析と言語ツールの分野でプロジェクトへの貢献に関心を示している。
このプロジェクトは、言語設計とコミュニティの受容に関する興味深いケーススタディとして機能している。Python マーケティングの角度は論争を呼んだが、.NET 用の軽量なスクリプトレイヤーを作成するという根本的な目標は、簡単な自動化タスクに対して完全な C# よりもアプローチしやすいものを求める一部の開発者の共感を呼んでいる。
W++ の出来事は、新しいプログラミング言語がニッチを見つけ、その価値提案を効果的に伝える際に直面する課題を浮き彫りにしている。この言語が初期の論争を乗り越えて持続可能なコミュニティを構築できるかどうかは、今後の展開を見守る必要がある。
参考: W++