MSWロゴ

MSWLogo Windows

MSWLogoは、コンピュータ言語Logoをベースにした、グラフィカルユーザーインターフェース(GUI)フロントエンドを備えたインタープリタ型プログラミング言語です。マサチューセッツ工科大学(MIT)のジョージ・ミルズによって開発されました。そのコアはブライアン・ハーベイによるUCBLogoと同じです。Borland C++で書かれたソースコードが入手可能な、無料のオープンソースソフトウェアです

MSWLogoは、マルチタートルグラフィックス3Dコンピュータグラフィックスをサポートし、COMポートLPTポートからの入力が可能です。また、Windowsインターフェースもサポートしているため、このGUIを介して入出力(I/O)を利用でき、キーボードとマウスのイベントで割り込みをトリガーできます。MSWLogoバージョン6.5では、コマンドを使用して簡単なGIFアニメーションを作成することもできます。このプログラムは教育用ソフトウェアgifsaveとしても使用されています。ジム・ミュラーは、MSWLogoをデモ言語として使用した完全なLogoマニュアル 「The Great Logo Adventure」を執筆しました。

MSWLogoは、 Microsoft Windows向けのLogo言語のフリーでオープンソースな実装であるFMSLogo (教育用プログラミング環境)へと進化しました。GNU General Public License (GPL)に基づいてリリースされており、主にDavid Costanzoによって開発・保守されています。

特徴

MSWLogoのカメのアニメーションGIF(ベルヌーイのレムニスケート[ 1 ]
MSWLogo のカメのアニメーション GIF ( Limaçon )

MSWLogoはバージョン6.5b以降、以下の多くの機能をサポートしています: [ 2 ]

  • TCP/IP Winsockネットワーク
  • Win16、Win32、Win32s
  • 利用可能なすべてのフォントとサイズのテキスト。
  • 1024個の独立したタートル
  • ビットマップタートル
  • ビットマップの切り取り、貼り付け、伸縮
  • クリップボードのテキストとビットマップ
  • MIDIデバイス
  • 外部ハードウェアを制御するための直接I/O
  • シリアルポートおよびパラレルポート通信
  • ズーム
  • 末尾再帰:ほとんどの再帰関数を最適化
  • ユーザーエラー処理
  • 標準ロゴ解析
  • 画像の保存と復元。BMP形式ファイル
  • ピクセルあたりのカラービット数:1、4、8、16、24
  • 標準のWindowsハイパーテキストヘルプ
  • Windows標準印刷
  • ライブラリと作業領域を分離
  • Windowsダイアログボックスの構築
  • イベント駆動型プログラミング: マウス、キーボード、タイマー
  • マルチメディア デバイス: WAVサウンド ファイル、CD-ROMコントロールなど。
  • マルチプロセスを可能にするイベントタイマー
  • 3D透視図:ワイヤーフレームソリッド
  • アニメーションGIF生成
コマンド略語構文出力
転送fdFORWARD␣⟨number of steps to move forward⟩指定された回数だけタートルを前進させるforward 100またはfd 100
戻るbkBACK␣⟨number of steps to move backward⟩指定された回数だけタートルを後退させますback 100またはbk 100
rtRIGHT␣⟨degrees to rotate toward right⟩指定した角度だけタートルを右に回転させますright 228またはrt 228
ltLEFT␣⟨degrees to rotate toward left⟩指定した角度だけタートルを左に回転させますleft 228またはlt 228
ホームホーム画面中央に来るが画面は消えないhome
クリーンct cs画面上の軌跡を消去しますが、タートルは動かずにその場に留まりますclean
クリアスクリーンCS画面上の軌跡を消去し、画面中央に移動しますcs
タートルを隠すHTタートルを非表示にして、画面上の描画を鮮明に表示しますht
ショータートルST画面から隠れたタートルを表示しますst
ペンアップPUタートルを描画せずに移動するように設定しますpu
ペンダウンPD移動命令が出ると描画ペンに戻りますpd
クリアテキストCTコマンド画面内のすべてのテキストをクリアしますct
円を作るrepeat 360 [FD ⟨desired length in number of pixels divided by 360⟩ RT or LT 1]circle
模様支払う模様を作るpattern
SetPCSetPC␣⟨RGB value here (ex. 255, 255, 255)⟩ペンの色をそのRGB値に設定しますsetpc [255 255 255]
SetSCSetSC␣⟨RGB value here (ex. 255, 255, 255)⟩画面の色をそのRGB値に設定しますsetsc [255 255 255]

参考文献

  1. ^ピエトロコラ、ジョルジオ(2005年)「タルタペラゴマエクラ
  2. ^ 「MSWLogo バージョン 6.5b for Micro-Soft Windows 95/98/NT/2000/XP」Softron . 2019年7月21日閲覧