プチコン3号は内部コードにUNICODEを採用しており、2015年に発売を予定している海外版プチコン3号「SmileBASIC」とBASIC言語は完全互換となっている。コミュニティが一気に広がることが期待できそうだ。
また、ユーザー定義関数がサポートされた。これはユーザー自身が新しい関数を記述し、それをプログラムから利用できるというもの。よく使う処理などをまとめて自作ライブラリとしておけば効率的な開発が可能だ。
ユーザー定義関数が使えない今までのプチコンでも@ラベル〜RETURNで記述するサブルーチンで代用することも考えられる。だが、サブルーチンの場合、その中で使用する変数もグローバル変数であることや、サブルーチンに引数を渡すことができないなど、スコープの概念がない中での取り決め(サブルーチン内で使用する変数、サブルーチンに引き渡す引数用変数の命名規則など)を作らなければ再利用は難しい。
一方、ユーザー定義関数内で定義された変数はローカル変数として扱われるため、呼び出し元やほかのユーザー定義関数に影響を与えない。一般公開してライブラリとして利用してもらうことも可能だろう。開発者コミュニティから「弾幕ライブラリ」や「多関節ライブラリ」、「格闘ゲーム用コマンド認識ライブラリ」など、有用なライブラリが出てくるかもしれない。
そのほか、地味にうれしいのが複数行にまたがるIF文の実装だ。IF文は条件と真の場合の処理、偽の場合の処理と、要素が多い。さらに複数の条件を書くケースも多々あり、どうしても長くなりがち。複数行で分けることができると見通しがよくなる。
また、プログラムスロットという仕組みが新たに追加された。プログラムスロットはそれぞれ独立したプログラムの実行・編集環境で、スロット0〜3までの合計4スロットが用意されている。このスロットを切り替え、同時に最大4つのプログラムをオンメモリで切り替えながら実行・編集することができる。スロット間でのプログラムの呼び出しなどにも対応している。
プチコンでプログラムを書く場合、基本的に下画面をタッチして入力していく、というスタイルは変わらない。ニンテンドーDSシリーズにはBluetoothキーボード(ニンテンドーDS用ソフト「バトル&ゲット!ポケモンタイピングDS」に付属)があるので、それを使えればもっと楽になるのに、と考える人は多い。だが、そもそもニンテンドーDS本体にBluetooth機能がない(「バトル&ゲット!ポケモンタイピングDS」のDSカード内にBluetoothモジュールを内蔵している)ため、ダウンロードソフトであるプチコン3号では原理的に利用不可能だ。
予約語は色付きで表示され、見やすくなった。さらに、予約語にカーソルを合わせてヘルプボタンを押すとサンプルコード付きのヘルプが表示されるなど、プログラミングをサポートする機能の充実が図られている。ヘルプは非常に高速で、今までの立ち上げに時間のかかるリファレンスとは比べ物にならないくらい使いやすくなった。サンプルコードはプログラムにコピー&ペーストすることもできる。
また、編集画面に行の折り返し機能がついた。今までは1行が長い場合には横スクロールしなくてはならず、一覧性に難があったが、折り返し表示をオンにしておくとすっきりと1画面で確認できるようになった。1行100文字までという制限も撤廃されている。
同様に編集可能な行番号は1〜9999から0〜999999に増加した。ただし、単純に100倍になった、というわけではなく、各行の長さや空きメモリに依存する。なお、この行番号はエディタ上の行数表示であり、クラシカルなBASICのように分岐命令やジャンプ命令の飛び先指定に使うものではない。
そのほか、編集中のプログラムを破壊することなく別のプログラムを実行することができるスマイルボタンが追加された。デフォルトではグラフィックやアニメーションなどのリソースエディタ機能をもつSMILETOOLが登録されている。
Copyright © ITmedia, Inc. All Rights Reserved.