ディスカッション (11件)
『Mini Micro』は、懐かしいコンピュータの雰囲気を現代に再現した、超小型のファンタジーコンピュータです。この小さなデバイスは、単なるおもちゃではなく、本格的なプログラミング体験とゲーム制作を楽しめるワクワクするようなプラットフォームです。コーディングの楽しさを追求したい方や、ミニマルな開発環境に興味があるエンジニアにぴったりのツールといえるでしょう。
無料だけどオープンソースじゃないの?見落としてたかな?
いい感じだね。itch.ioに誰かがアップしてたゾンビゲームが一番楽しめたよ。一つ気になったのは、ゲームスピードがかなり速く感じることかな。アステロイドゲームではほとんど何もできなかったし、他のゲームも全体的に動作がかなり速い気がする。ただの気のせいかもしれないけど。
https://miniscript.org/ が https://bitcoin.sipa.be/miniscript/ とは別のプログラミング言語だと気づくまで少し混乱したよ。
どうやら高レベル言語専用みたいだね。つまり、機械命令セットや直接アドレス指定可能なメモリはないってこと。
こういうので、ESP32やRaspberry Pi 2530で動かせるやつがあったら最高なんだけどな。どちらも基本的なHDMIとUSBは扱えるし、あるいは7インチディスプレイを載せた100ドル以下のラップトップとかさ。
Raspberry Piだと簡単に思い浮かぶけど、フルLinuxを積んでしまうと、ハードウェアを完全に制御しているという本質的な感覚は得られないんだよね。かなり上級者じゃない限り、「ベアメタル」を操作することはないだろうし。
個人的には、コンピュータデバイスを完全に制御できていない感覚っていうのは、出発点としてあまり良くないと思うんだ。幸運なことに、自分は8KBのBASICマシンから始めたからね。
Pico-8とPicotronもチェックしてみて。
https://miniscript.org/files/MiniScript-QuickRef.pdf によると:
「クラスやオブジェクトは、親を指す特殊な __isa エントリを持つマップである。これは new 演算子を使うと自動的に設定される」
Shape = {"sides":0}
Square = new Shape
Square.sides = 4
x = new Square
x.sides // 4
ということは、
-
Shape はマップ(前述の構文、つまりリテラル文字列をキーとして作成されている)
-
Square はクラス?
-
x はオブジェクト?
それともこの言語はプロトタイプベースなの?もしそうなら、なぜ「クラス」という言葉が出てくるんだろう?もし違うなら、「new someMap」でクラスを作って「new someClass」でオブジェクトを作るのは混乱を招かないかな?
あと、リストや文字列に対して除算が定義されているのが興味深い。一体どういう意味なんだろう?
追記:https://miniscript.org/files/Strout_iSTEM-Ed2021.pdf を読んだら、プロトタイプベースだった。教育用言語としては面白いね。
これもチェックしてみて。実在する物理的なコンピュータだよ:https://www.francksauer.com/index.php/micro-8
今のWebページなら、以下のことができるのに、なぜこういったプロジェクトにマニュアルやインストーラーが必要なのかよくわからないな。
-
オフラインで動作可能(PWA)
-
レスポンシブでほぼあらゆるデバイスで動作
-
WASMのおかげで何でも動かせるし、最低限でもJS/HTML/CSSはすでに使える
-
説明とランタイムの両方を、どんなデバイス上でも即座に一つのページで提供できる
-
物理ハードウェアとも接続できる。最近の https://hacks.mozilla.org/2026/05/web-serial-support-in-firefox/ や、その他のAPIを参照のこと。
論文の中で唯一の非自明なサンプルコードが完全にバグってるのは妙だね。文字列リストの最長共通接頭辞を求める関数が(["a", "bc", "ade"] で試してみて)失敗してるよ。