今はメモリもストレージも潤沢にあり、リッチなアプリケーション開発が容易です。しかし、制約があるからこそ新しいアイディアが見つかることもあります。ファミコンなどは数KB程度でゲームを実現しており、スーパーマリオの雲と草の形は同じで色が違うだけというのは有名な話です。これもメモリやストレージを削減するための工夫につながっています。 今回紹介するMONOSPACEはAssembly 2020の1KB以下のデモとして優勝した作品になります。

MONOSPACEの使い方

MONOSPACEは純粋に見て楽しむ作品です。ぜひ以下のYouTube動画を見てください。

コードはわずかにこれだけです。はっきりいって何が書いてあるのか分かりません。

ドットでアニメーションする作品です。音楽も流れます。

テキストも出ます。これが1024バイトに収まっているのが信じられません。

アニメーションの一部です。

MONOSPACEではPNGの圧縮技術を複数回適用してJavaScriptのサイズを低減しているとのことです。それによって、元のコードは原型を止めていません。1KBという制限の中で、どれだけすごい作品が作れるのか、これは制限があってはじめてクリエイティブが生まれるでしょう。富豪的な現状もいいですが、制約がある中で試すのもまたプログラミングの楽しさです。

MONOSPACEはJavaScript製のソフトウェア(ソースコードは公開されていますがライセンスは明記されていません)です。

MONOSPACE by @p01