____________ Mind Version 9 改訂記録  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ (Version8からの情報も含みます) スクリプツ・ラボ有限会社 ※ −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−※ ※ (上にあるものが新しい情報です) ※ ※    ※ ※ Mind9のβ版のリリースは社内用なので外部の方には直接関係は  ※ ※ 無いのですが開発経緯を知っていただくため日付のみ記しました。※ ※ −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−※ (以下を 9.03版 としてリリース) 2026.07.xx (Windows) (2026.03.02 β7cリリース) 040. Mind9\ 直下にバッチ、grepdirs.bat、where.bat を設置   複数のフォルダを横断検索できる。予約語レベルの単語も   検索可能となった(たとえば,'+'や 'ならば'など) (2026.02.08 β7bリリース) 039. fileライブラリ内の機能追加   fileライブラリ内に処理単語「一ミリ秒単位待つ」を新設   fileライブラリ内に処理単語「一行切り出し」を新設 039. コンソール系ツール(ソースは tool\, toolUnicode\)を追加   euc2sjis, sjis2euc, euc2utf8, sjis2utf8, utf82euc, utf82sjis   を設置   Mind8にも一部存在下か、文字コード変換プログラムを修正し、   入力ファイル名も出力ファイル名も省略された時は標準入力と   標準出力で動作するようにした。  (コマンドライン上で他のアプリケーションと一緒にパイプ接続   して使われることに対応した)   なお、これに伴い、起動引数無しで起動すると文字列入力待ちとな   って、あたかもプログラムが停止したかのように見えるので注意が   必要である。(Ctrl-Z打鍵で脱出できる)   Usageは --help で表示できる。 038. Unicodeを扱う処理単語とマニュアルを標準装備(Mind8ではデータ   ライブラリ へのソース公開だったもの) 037. exeファイルにコード署名とバージョン情報を埋め込み。   Mind9\直下にあるREADMEテキストの「セキュリティ」セクションに   詳しく書かれていますのでお読み願います。 036. コンソール系ツール(ソースは tool\)を追加   wrstamp   mtouch (2025.12.29 β7リリース) 035. ランタイム(mruntXXX.exe)の修正   mruntXXX.exeとアプリケーションとのシリアル番号不一致が   あった場合のエラーメッセージを分かりやすいように変更   新しいカーネルでは以下のようなメッセージが表示される   ----------------------------------------------------   mruntXXX.exe: シリアル番号が不一致です。   ランタイム(mruntXXX.exe) のシリアル番号とアプリケーショ   ン(○○)が要求する番号が一致しません。ランタイムが古いか   あるいはアプリケーションが古いライブラリにリンクしています。   ---------------------------------------------------- 034. コンパイラしの修正   コンパイラを単純起動したときのUsage表示中にguilibの   ライセンス情報を表示するようになった (2025.01.08 β7リリース) 033. fileライブラリ内の機能修正   音を再生する機能を新設   (マニュアルは「8 入出力を行う単語」    −「音を再生する機能」にて) (2025.01.05 β6リリース) 032. プログラミングマニュアル(基礎編)の訂正   外部プログラムの実行の解説は索引上は独立して   「9b 外部プログラムの実行」の項目を立てた   (HTMLページレベルでは「9 ファイル操作」と    同じページ内に記述) 031. fileライブラリ内の機能修正   「子プロセス実行」「子プロセス起動」にバグがあり、   ダブルクオート囲みがアンバランスの場合にスタック   ずれを起こしていたので訂正した (2024.02.18 β4リリース) (2024.01.17 β3リリース) (2023.11.25 β2bリリース) (2023.11.23 β2リリース) (2023.10.18 β1リリース) 030. 処理単語名変更  (新)「実行情報」  (旧)「Mコード」 (この名称も旧互換のため残す) ---------------------------------------------------- 029. GUIライブラリ/サンプルアプリ/ドキュメント設置 ----------------------------------------------------         ↑ ※−−−−−−−−−−−−−−−−※ ※ ここから上は Mind Version 9  ※ ※−−−−−−−−−−−−−−−−※ ※−−−−−−−−−−−−−−−−※ ※ ここから下は Mind Version 8  ※ ※−−−−−−−−−−−−−−−−※         ↓ (以下を 8.0.08版 としてリリース) 2021.08.14 (Linux/Windows共) 028. マニュアル訂正 ・幾つかのhtmlファイルを修正して細かな内容の訂正 ・「f余り」は「f割った余り」に代えた  「f余り」は旧版互換として残した 027. 「f割った余り」を「f余り」の等価語として定義(asmequ.src)   (fileモジュールが更新されたので関連して上位のすべての ライブラリやサンプルプログラムが更新された) (以下を 8.0.07版 としてリリース) 2018.12.02 (Linux/Windows共) 026. マニュアル訂正 ・05-Array.html の末尾に間違いがあり訂正した。 ・「指定位置の文字を得る」についての解説があるが正しくは 「指定位置の文字」なのでそのように訂正した ・「余り」の代わりに「割った余り」を使うようにする   (「余り」は旧版互換として残した) 025. CGIライブラリの仕様変更 「H1終り」などの定義内で「表示」を使っているものを 「一行表示」とした。(末尾改行込みの出力となる) 024. CGIライブラリに単語追加 処理単語「utf−8をcharset設定」を追加 023. cgilib/ ディレクトリ内にあった filelock.src (ファイルロ ック処理)を取り除いた(上級向けライブラリの管轄とするため) 022. srclib/ ディレクトリ内にあったUnicode関係のソースライブラリ および bin/ ディレクトリ内にあったUnicode変換テーブルを取り 除いた(上級向けライブラリの管轄とするため) 021. (Unix, Windows 共に) 「子プロセス起動」「子プロセス実行」「子プロセスに振り替え」 にて、第一引数となるプロセス名が空列または無効なファイル名 であるときエラー検出できずに先に進んでしまっていたので正し くエラー検出するよう訂正した。 020. (Unix環境) 「子プロセス起動」「子プロセス実行」「子プロセスに振り替え」 にて、引数にダブルクオート付きがある場合(空白を含む引数など) 誤った引数処理をおこなってしまい子プロセスに誤った引数が 伝わっていた問題を解消した。 019. fileライブラリの機能として「binディレクトリ内のデータテー ブルを探索」があるが、WindowsのCGI環境でデータテーブル (たとえばUnicodeテーブル)を検出できない問題があり対処した 018. 「割った余り」を「余り」の等価語として定義(asmequ.src) 017. カーネルに単語追加 処理単語「f余り」を定義 (本来なら 1kerF.c の管轄だがMコードの並びおよびmrunt番号 を変えないため最終モジュール other.c で定義とした) 016. コンパイラの改良 数式表現中で % または mod (いずもれ余り演算) が小数に対応 していなかったので対応した。 →関連し kernel/other.c も変更あり →関連し sampleF/数式表現・小数.src も変更あり 注:旧ライブラリ と 新コンパイラ の組み合わせ 数式表現中で % を小数に適用すると文法エラー。 処理単語「f余り」を記述すると未定義エラー。 注:新ライブラリ と 旧コンパイラの組み合わせ 数式表現中で % を小数に適用するとエラーは出ないが 被除数の値をそのまま余りとして返す。 処理単語「f余り」は正しく動作する。 コンパイラ起動時のバージョン表示を "8.07" とする (以下を 8.0.06版 としてリリース) 2018.05.15 (Linux/Windows共) 015. コンパイラのバグを改修。 以下の例のようなソースコードをコンパイルすると (1) 「本体とは」が無い場合、実行時に落ちることがある (2) 「本体とは」が有る場合、実行時にスタックずれを起こす      ことがある(注:このケースでは「本体とは」は不要) ※-----------------------------------------------------※ メインとは      〜他の局所変数〜      〜他の局所変数〜      △△は 9個の 変数   ←何らかの配列定義   本体とは     〜略〜     〜略〜。 ※-----------------------------------------------------※ (以下を 8.0.05版 としてリリース) 2018.02.25 (Linux/Windows共) 014. マニュアル訂正(Linux関連の表記) 弊社実績に CentOS 7 を追加。 013. README.txt 中に記載されている弊社サイトのURLをhttpsに変更。 (スクリプツ・ラボのホームページ全体をSSL化したことに対応) 012. マニュアル(htmlファイル)の中に記載されている検索エンジン のリンク先を変更し、かつ、httpsに変更した。 (スクリプツ・ラボのホームページ全体をSSL化したことに対応) 011. socketlib/socketlib.src の処理単語「connect」にバグ が有り、アプリケーションが立ち上がって2度目以降の接続で 正常終了のはずがエラーリターンしてしまう問題を改修した。 010. mmake実行で再コンパイルがかかる際「〜をコンパイル」で示す 副ソースファイルが最初のコンパイルでは存在したのに次回で 消えたような場合、mmakeプログラムがスタックずれを起こす 問題を改修した。 009. 「最初のファイルの検索」「次のファイルの検索」にバグがあり、 「発見ファイル名」のパス部が誤って返される問題を修正した。 008. srclib/unidecode.src を改修。 エラーメッセージの文言に誤りがあり、正した。 007. Mindコンパイラのバグ改修。 以下のようなソースコードをコンパイルするとコンパイラが 無限ループに入ってしまう問題を改修した。 (注:「○○は ファイル」以外にも「○○は 文字列実体」 など、「長さ」指定を伴う定義すべて) ----------------------------------------------- ○○は ファイル (長さ △△)    ↑「。」が抜けている ( △△は) ←有っても無くても   [ ] ・・・・ ↑この数式表現の箇所で無限ループ ----------------------------------------------- (以下を 8.0.04版 としてリリース) 2017.04.30 (Linux/Windows共) 006.(Linux/Windows共 コンパイラのバグ改修) - 局所変数定義で「○○は 文字列実体」のように長さ指定を 省略し、さらに次行に文字列定数または文字列定数配列の シンボルが記述されるとコンパイラが内部異常で落ちること への対策 - 大域定義で「○○は 数値」のように末尾「。」を書き忘れ た場合にコンパイラが内部異常でスタックエラーになること への対策 (以下を 8.0.03版 としてリリース) 2017.04.02 (Linux/Windows共) 005.(Linuxのみマニュアル改訂) - シェルがcshの場合の解説を追加(関連し、pmind/ 直下に スクリプト usemindc を追加) - カーネルのmake時に必要なgcc関連パッケージの情報を追加 004.(Linux/Windows共) コンパイラ(mind.mco)の数式表現の処理にバグがあり訂正(B) 現象:数式表現中に小数定数をシンボル定義した単語の引用があ ると、それを整数のように扱って結果が異常になる。 003.(Linux/Windows共) コンパイラ(mind.mco)の数式表現の処理にバグがあり訂正(A) 現象:たとえば [ 値 - (式) ] のように右辺の値に括弧式 や関数があるようなケースで演算が左右逆におこなわれて しまう。(+ * は問題ないが - / で問題が起こる) (以下を mind-for-linux-8.0.02.tgz としてリリース) 2017.03.22 002.consoleライブラリ内の時間待ち処理単語に誤り訂正(Linux版のみ) 「ミリ秒待つ」「百ミリ秒待つ」〜「七百ミリ秒待つ」の処理単語 が呼ばれると無限待ちになってしまった。(CPU負荷は上がらない) 1秒未満の時間待ち処理が未実装だったことが原因。   →kernelディレクトリとfileディレクトリに訂正入る →関連し、すべてのライブラリとオブジェクトコードが更新された 注:ユーザ側でコンパイルしたプログラムは再コンパイルの必要あり →再コンパイルしないと起動時にserial no missmatchのエラー (以下を mind-for-linux-8.0.01.tgz としてリリース) 2017.03.19 001.マニュアルのファイル名間違い訂正(Linux版のみ) 現象としてはオンラインマニュアルまたはLinux環境下で、マニュアル   の閲覧で第4章へのHTMLリンクがたどれないという問題あり。 原因は doc/04-Data-and_Variable.html のファイル名は誤りで、 04-Data-and_variable.html が正しい(大文字/小文字違い)。 Windows環境ではファイル名の大文字/小文字が区別されないので問題は 生じず当面はWindows版の本件アップデートは行わない。 (初期リリース) 2017.03.11 Windows版: mind-for-windows-8.0.00.zip Linux版: mind-for-linux-8.0.00.tgz