mieki256's diary



2021/04/29(木) [n年前の日記]

#1 [basic] 色々なBASICをちょっとだけ触ってみた。その2

_昨日、 bwBASIC、Chipmunk Basic、FreeBASIC を触ってみたけど、他のBASICも気になったので、更にいくつか触ってみた。環境は Windows10 x64 20H2 と Ubuntu Linux 20.04 LTS。

今回は以下を試用。どちらも無償で利用できる。

Basic-256を試用。 :

プログラミング学習用のBASIC動作環境らしい。GUI表示されるウインドウの中に、エディタ部分、テキスト出力エリア、グラフィック出力エリアが入っている。

_BASIC-256 download | SourceForge.net
_BASIC256 - Everybody Can Learn to Program - An open-source computer language for learning
_Basic-256 - Wikipedia
_BASIC 256
_en:start [DokuWiki]

Windows10 x64 20H2上で試用してみた。BASIC256-2.0.0.11_Win32_Install.exe をDLして実行するとインストールされる。スタートメニューに登録された BASIC256 を実行するとウインドウが開く。

エディタ部分に print "Hello World" と打って、F5キーを押すと実行される。テキスト出力エリアに「Hello World」と出力された。

以下はグラフィックの描画テスト。ちなみに、ファイルの拡張子は .kbs になっているらしい。

_gdemo.kbs
w = 320
print "size: " + w + " x " + w
graphsize(w, w)
clg
color blue
for i=0 to w step 10
    color blue
    line w, i, (w - i), w
    color red
    line 0, (w-i), i, 0
    color green
    line i, 0, w, i
    color purple
    line 0, i, i, w
next i

以下のような図形を描画できた。

basic256_on_windows10_ss.png

各命令の簡単な説明は以下。
  • graphsize(W, H) で描画エリアのサイズを指定。
  • clg で描画エリアをクリア。
  • color blue で、描画色を青に。red, green, purple その他も指定できる。
  • line x0, y0, x1, y1 で、(x0, y0) - (x1, y1) に線を引ける。

Ubuntu Linux 20.04 LTS上でも試用してみた。apt でインストールできる。
sudo apt install basic256

basic256 で実行できる。Windows版と見た目はほとんど変わらない。

basic256_on_ubuntu_ss.png

感想としては…。簡易エディタまで含まれているので、たしかに学習向けかもしれない。

ただ、入力時にキーワード等の自動補完をしてくれたりするわけでもないので…。例えば、自動補完をガンガンしてくれる Microsoft Small Basic あたりと比べてしまうと、学習用の環境としては非力な印象も…。

Yabasicを試用。 :

グラフィック描画機能も持っているBASIC環境らしい。Yet another Basic の略で、Yabasic、だとか。

_Yabasic, Yet another Basic for Unix and Windows
_Yabasic, Yet another Basic for Unix and Windows
_Yabasic - Wikipedia

Ubuntu Linux 20.04 LTSでインストールしてみた。apt でインストールできる。
sudo apt install yabasic

以下を hello.yab として保存。

_hello.yab
clear screen
print "Press 'q' to quit ..."
label again
print color("green") "Hello ";
print color("blue") "World !   ";
if (inkey$(1)="q") exit
goto again

yabasic hello.yab で実行。画面に「Hello World !」の出力が繰り返される。qキーで終了。

yabasic_hello_on_ubuntu_ss.png

基本的には外部エディタでソースを書いて、yabasic hoge.yab と打って実行する模様。

ファイルを指定せずに、yabasic と打って実行すると、入力待ちになる。命令[Enter] 命令[Enter] と打っていって、最後にEnterをもう一度打つと、それまで打ち込んだ分を実行して終了する。

Windows10 x64 20H2上でも試用してみた。yabasic-2.89.1-setup.exe をDLして実行するとインストールされる。インストールされた場所にPATHを通したりはしない模様。ただ、インストール時、拡張子 .yab のファイルに yabasic.exe を関連付けしてくれているらしい。
> assoc .yab
.yab=Yabasic

> ftype Yabasic
Yabasic=c:\prog\yabasic\yabasic.exe "%1" "%2" "%3" "%4" "%5" "%6" "%7" "%8" "%9"

関連付けがされているので、DOS窓を開いて hello.yab と打ち込むだけで、yabasic.exe が呼び出されて実行することができる。

グラフィック描画命令についても、少し確認してみた。
  • open window W, H で、グラフィック描画用のウインドウを開くことができる。W, H は、横幅、縦幅のドット数。
  • color R,G,B で描画色変更。R,G,B は 0 - 255 の値を取る。
  • line x0, y0, x1, y1 で、(x0, y0) - (x1, y1) に線を引ける。
  • backcolor R,G,B でウインドウの背景色を指定できる。ただ、open window をしてから一定時間経たないと反映されない模様。
  • clear window でウインドウをクリア。

また、sleep N もしくは pause N で、N秒スリープできる。N は実数も指定可能。例えば 0.5 を指定すれば 0.5秒になる。

簡単なサンプルを書いてみた。

_gdemo.yab
w = 512
open window w, w
sleep 1
backcolour 0,0,0
clear window
for i=0 to w step 10
  v = 255 * i / w
  color 0, v, (255 - v)
  line 0, i, i, w
  color (255 - v), 0, v
  line i, 0, w, i
  pause 0.025
next i
sleep 3
end

Ubuntu上なら yabasic gdemo.yab、Windows10上なら gdemo.yab で実行できる。

yabasic_gdemo_on_ubuntu_ss.png

ちなみに、Linux上では、.yab の1行目に以下を書いておいて、chmod +x hoge.yab と打って実行権限を付ければ、./hoge.yab で実行できるようになる。
#!/usr/bin/env yabasic

グラフィック描画ができるあたりは Chipmunk Basic と似ている感じだけど、あちらよりは安定して動作しそうな印象を受けた。Ubuntu Linux上ではインストールも比較的簡単に思える。

以上です。

過去ログ表示

Prev - 2021/04 - Next
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30

カテゴリで表示

検索機能は Namazu for hns で提供されています。(詳細指定/ヘルプ


注意: 現在使用の日記自動生成システムは Version 2.19.6 です。
公開されている日記自動生成システムは Version 2.19.5 です。

Powered by hns-2.19.6, HyperNikkiSystem Project