楽 屋 裏
e-Gadget
原因不明の
多重ループの問題 の続報です。
これまで分かっている問題発生の条件は、2重ループ構造で、内側ループにカウントジャンプ命令でのループ脱出を付加したコードです(以下参照)。
問題プログラム1While 1
20→C
Do
Dsz C
LpWhile 1
WhileEndこれは、最後のWhileEndでSyntax ERROR が発生します。
問題プログラム2Do
20→C
Do
Dsz C
LpWhile 1
LpWhile 1今回は、カウントジャンプ命令をループ脱出に使わなくても、2重ループでのエラーと問題が確認されました。
問題部分の抽出は、まだ出来ていませんが、Doループを
Lbl/Goto に置き換えたところ、エラーと問題が解消したので、間違いなく2重ループの問題と言えます。
前回の異常報告から約1週間、カシオ様からはまだ連絡がありません。
確実に回避する方法を得たいところです。
今回の質問をきっかけに、カシオ様から当ブログを閲覧頂くようになりました。クレーマーでないことは、お分かり頂けると思います。Casioファンとして応援しています。
応援クリックをお願いします。励みになるので...
一応、ここでも状況アップデートしておきます。
カシオ様から回答があり、今回の現象は仕様として理解して欲しいとのことです。
今回の問題をプログラミング時に回避するために、もう少し本質に近い理解をしたいので、追加で質問をしております。
確実な回避方法が分かれば、それでOKです。
もう少し待とうと思います。
藤堂様
> もしかして、この動作の問題は、カシオ自体も気づいてなく、検証しているかもしれませんね。もう少しまって、結果を待ちましょう。
う~む、発売して7年間、気付かない、ユーザーからの連絡がないと言うことが、ちょっと想像しにくいのが正直なところ。
主に、欧米のユーザーからの報告は上がっていないのだろうか?
最近年度末進行で仕事が忙しく、海外のカシオファンサイトに行っていないのですが、落ち着いたら、そちらでの情報入手も試みようかと思っています。
もしカシオ様自体が、知らなかった現象だったと言う場合、以下も考えられます。
・こんな問題は、特に騒ぐものではなく、自分で対応しているヨ、と言うユーザーが大半
・そんなに一所懸命に電卓でプログラミングなどしないヨ、と言うユーザーが大半
などと、心の中で一瞬抵抗があったのですが...
そういえば、著名な先生が書かれたMicrosoft C 入門なる書籍を購入し、C言語習得にいそしんでいた時のこと。もう20年以上前の話です。
付属のグラフィックライブラリが、どうも仕様通りに動かないと言う問題に直面しました。
Microsoft C に添付されている説明書通りにコードを打ち込んでも、書かれた通りの動作をしない。
その著名な先生の本を見ると、Microsoft C の説明書と殆ど同じ記述で、カット&ペーストで作ったんじゃないか疑惑が...
要するに著者自身が確認しないでプログラミング本を出版していたわけです。
さて、まっとうな手順として、Microsoftに問い合わせたところ、最初は「そんな筈はない、あなたのコードがどこかおかしいに違いない...」から始まり、根気良く対話を続けました。
結局最後は「バグでした」。これを契機に自分でグラフィックライブラリを作ってしまったと言う、特大の収獲も得られました。
世界のマイクロソフト、世界中でこのバグが見過ごされていたのか...それとも私のように自作のグラフィックライブラリを作って使う人が多かったのか、今もって謎ではあります。
これを思い出し、藤堂様のおっしゃるのが正解かも知れない、とも思ったわけです。
もしかして、この動作の問題は、カシオ自体も気づいてなく、検証しているかもしれませんね。もう少しまって、結果を待ちましょう。