[HOME]  [全部表示 会議室風]  [全部表示 保存用]  [HOME]  [リストへもどる] [リストへもどる]

一括表示


  「問題解決」(problem solving) - 文太 22/11/02-16:10 No.10351
 ┗ Re: 「問題解決」(problem solving) - としき 22/11/03-13:37 No.10352
  ┣ Re^2: 「問題解決」(problem solving) - めざら 22/11/03-16:34 No.10353
  ┣ Re^2: 「問題解決」(problem solving) - 文太 22/11/03-18:16 No.10354
  ┃ ┗ Re^3: 「問題解決」(problem solving) - としき 22/11/04-19:31 No.10362
  ┃ ┗ Re^4: 「問題解決」(problem solving) - 文太 22/11/04-20:52 No.10363
  ┃  ┗ Re^5: 「問題解決」(problem solving) - としき 22/11/04-22:45 No.10365
  ┃   ┣ そこまでジャパンはすごかったのか! - 文太 22/11/05-12:18 No.10366
  ┃   ┃ ┗ Re: そこまでジャパンはすごかったのか! - としき 22/11/05-12:58 No.10367
  ┃   ┃ ┗ Pascal & Basic - 文太 22/11/07-23:03 No.10371
  ┃   ┃  ┣ cplate.def (v1.00) 再掲 - 文太 22/11/07-23:10 No.10372
  ┃   ┃  ┗ Re: Pascal & Basic - としき 22/11/09-13:00 No.10376
  ┃   ┃   ┗ Re^2: Pascal & Basic - 文太 22/11/09-23:06 No.10377
  ┃   ┃    ┣ Zen of Assembly Language - 文太 22/11/10-01:00 No.10380
  ┃   ┃    ┗ Re^3: Pascal & Basic - としき 22/11/11-03:33 No.10386
  ┃   ┣ 補遺とか訂正とか - としき 22/11/05-15:29 No.10368
  ┃   ┃┃┣ Re: 補遺とか訂正とか - 文太 22/11/06-12:20 No.10369
  ┃   ┃┃┣ Re: 補遺とか訂正とか - としき 22/11/07-19:16 No.10370
  ┃   ┃┃┗ Re^2: 補遺とか訂正とか - 文太 22/11/08-15:20 No.10373
  ┃   ┃ ┗ DOSとBasic - 文太 22/11/11-01:14 No.10383
  ┃   ┗ Re^6: 「問題解決」(problem solving) - konno 22/11/09-23:55 No.10378
  ┃    ┗ Re^7: 「問題解決」(problem solving) - としき 22/11/11-02:06 No.10384
  ┣ 「問題解決法」(problem solving)(^^; - konno 22/11/03-20:08 No.10355
  ┃ ┗ Re: 「問題解決法」(problem solving)(^^; - 文太 22/11/03-21:20 No.10356
  ┃ ┗ Re^2: 「問題解決法」(problem solving)(^^; - 文太 22/11/03-22:16 No.10358
  ┗ Re^2: 「問題解決」(problem solving) - 文太 22/11/04-21:20 No.10364

(10351) 10351「問題解決」(problem solving)  投稿者:文太   2022/11/02(水) 16:10
   コメント数 1

 としきさんに刺激を受けたので(大昔)、あっちのほうがいいのかもしれませんが、
ちょっとメモ的に。

 パスカルの本を眺めています。古い人たちは、Cでなくパスカルをやるものだ
ったみたいだからです。ジェフさんもそう、ノートンさんもそう。お二方の本、
両方、サンプルにアセンブラだけでなく、Basic と Pascal のコードが載っている。
 (Undocumented DOS -- Cも入る --, MS-DOS Encyclopedia -- C多数になる --。)

 で、ノートンさんが、もうちょっとアセンブラをきちんとやりたいなら
(つまりCPUを知りたければ)、この本だよ、と薦めていた本があり、それを開いて
みました。

 Stephen P. Morse, _The 8086/8088 Primer_, 2nd ed., 1982.

 これ、 初版は 1980 で、初代IBMマシンが 1981 のはずですから(つまり
MS-DOS 以前)、8086 っぽいのが登場してすぐ書かれた名著(とされている)。
古典。

 で、その2版では、パスカルを扱う章が追加されている。
 パスカルのソースが出てきて、ほとんど英語だよね、眺めれば何をどうやって
るのか分かるよね、で、マシン語はどう? 読めないよね、とか書いてあります。

 そこで、お題。
 問題が解決されるべきレベルで書かれる「高級言語」=パスカル
 (真の意味で)問題が解決される、CPUのレベルで書かれる「低級言語」=アセンブラ

 「CPUの動きに集中するより(アセンブラ)、問題解決の方法に(パスカル)
注意を払ったほうが有利な場合も多い」などなど。

 パスカルの教科書の多くに、「問題解決」という表現がいっぱい出てきます。
 へぇ、そういう分類があるんだ、と。

 今でもそうなんでしょうか? Windows プログラミングには、とうぶん関心を
向けないと思うけど。Delphi 7.0 for Win98 or laterは手に入れましたよ >としきさん

 テキスト処理なんて、問題解決そのもじゃないか、とか思いました。

c:\c>dir | sort

2022/10/19  01:26               363 delspc.def
2022/10/20  11:49               333 keyw_cpy.def
2022/10/21  21:37               743 addzspc.def
2022/10/22  13:18               379 vwx_strl.def
2022/10/22  20:24               683 2strsrch.def
2022/10/22  20:26               142 999.def
2022/10/22  20:28               142 ln_fin.def
2022/10/22  20:28             1,980 catg_fix.def
2022/10/22  20:29             3,413 altkey_t.def
2022/10/22  20:35             1,208 repl.def
2022/10/22  20:39               955 ren_repl.def
2022/10/22  22:27             1,138 keyp.def
2022/10/28  15:00               105 delallcr.def
2022/10/28  17:20               153 tabs.def
2022/10/28  18:23               370 tabs2.def
2022/10/28  23:24               342 etxtrf.def
2022/10/29  01:43               764 alpha.def
2022/10/29  01:57               739 ren_srch.org
2022/10/29  10:46               200 srch_do.def
2022/10/29  10:59               266 2repl.def
2022/10/29  11:23               220 srch_do2.def
2022/10/29  11:48               193 cnd_sch1.def
2022/10/29  13:40               704 ren_srch.def
2022/10/29  13:42               785 rn_schid.def
2022/10/31  01:04               159 delln_d.def
2022/10/31  21:43               283 2repl2.def
2022/10/31  22:44               199 srch_do3.def
2022/10/31  23:05               811 array2.def
2022/10/31  23:06               209 srch_do4.def
2022/10/31  23:33             2,860 g_story.txt
2022/10/31  23:36               636 array3.def
2022/10/31  23:40               665 arr_srch.def
2022/11/01  01:59               199 srch_do5.def
2022/11/01  02:13               131 srch_do6.def
2022/11/01  12:52               232 hyphn1.def
2022/11/01  14:16               147 hyphn0.def

 問題解決用Vzマクロ一覧(すべて使い捨て)。
 同じ日に何本もマクロを書いている。ストレスの絶頂で現実逃避をしています。


      - No.10351 -    このTreeへ           [リストへもどる] pre

(10351) 10352Re: 「問題解決」(problem solving)  投稿者:としき   2022/11/03(木) 13:37
参照先:http://toshiki.la.coocan.jp/
    10351 番 文太 さんへのコメント    コメント数 4

>  問題が解決されるべきレベルで書かれる「高級言語」=パスカル
>  (真の意味で)問題が解決される、CPUのレベルで書かれる「低級言語」=アセンブラ

これには、さらに上位があるんですよ。
つまり、何が問題であるのか、ということ。
そしてそれは多くの場合、高級言語よりもさらに抽象度の高い言語で記述されます。
いわゆる「自然言語」というやつです。
そして、それを徐々に、え〜と、なんていうんだろう、スケールダウン?
私らの世代では、段階的詳細化、なんて言い方をしました。
今でもこの言葉で検索すればいっぱい引っかかると思う。
つまり、最初は紙とペンと自然言語。次に、図でわかりやすく。
この図形化の部分が、おそらく、ここ数十年で一番進歩した部分だと思う。かつて
はフローチャート一択でしたが、今では何とかチャートというヤツが百花繚乱。
そして、これもコンピュータで容易に作画できるようになりました。
その次がコンピュータ言語っぽいところなんですが、ここはまだ抽象言語っぽい
もので十分。私はBASICっぽい、でも純粋BASICではない言語で考えることが多い。
ただ、ここの部分は、この発言冒頭で引用している文太さんの発言にあるように、
Pascalで考える人も多いようです。というか、その辺を考えやすいように設計
された言語がPascal、というのが設計思想でもあります。
で、Pascalで考えたのならそのままPascalのコンパイラにかけてもいいし、さらに
ほかの言語に移植するのも容易でしょう。

私もこの辺は、わりと基本に忠実なプログラミングをしていましたね。
昔、大学生のころ、8ビットアセンブラをハンドアセンブルしていた時代。BASIC
でロジックを組んで、それをアセンブラに落とす、ということをしていました。


>  パスカルの教科書の多くに、「問題解決」という表現がいっぱい出てきます。

最近の業界事情は知りませんが。
かつての情報処理業界では、問題解決をするのがプログラマーだ、という認識が
ありました。
ただ、解決するためには問題を認識しなければならない。
そして、当時は、問題を認識するのがSEとか、理想と現実の落差が問題である
わけだから、その理想を提示するのがコンサル、なんて分類がありました。
これらのうち、問題認識の部分については、かつて、#7387あたりで話題になった
『ライト、ついてますか』が話題の中心としている部分だったりしています。


あ、今日はそろそろ時間切れ。
野ざらしのほうにもいっぱい書きたいことがあるけど、明日以降になるなぁ。

      - No.10352 -    このTreeへ    コメント元:10351 へ [リストへもどる] soft

(10351) 10353Re^2: 「問題解決」(problem solving)  投稿者:めざら   2022/11/03(木) 16:34
参照先:http://mezala.la.coocan.jp/
    10352 番 としき さんへのコメント

> 野ざらしのほうにもいっぱい書きたいことがあるけど、明日以降になるなぁ。

えへへ.お待ちしておりますよ.
      - No.10353 -    このTreeへ    コメント元:10352 へ [リストへもどる] soft

(10351) 10354Re^2: 「問題解決」(problem solving)  投稿者:文太   2022/11/03(木) 18:16
    10352 番 としき さんへのコメント    コメント数 1

 「問題解決」の話題からそれますが。

>昔、大学生のころ、8ビットアセンブラをハンドアセンブルしていた時代。BASIC
>でロジックを組んで、それをアセンブラに落とす、ということをしていました。

 ちょっと前にBASMとかいう、(Power) BASIC -> Machine Lauguage への
翻訳機をみました。有名ですか? でしたか? ですかね。

 笑っちゃった。5行のソースが100行になっていた。高級言語が好きだな、
やっぱり。マシンパワーでいくらでもおぎなってください、ただしコマンドラインで
あること。
 Vzマクロ最高、sedも最高。
 もぐらさんのソースは……。でもいっぱい勉強になってます。
 なんで、もぐらさんがプロシージャを使わずマクロだけで攻めてるのか、などなど。
 c.mosさんのソースは美しいなぁ、やっぱり。Cライクだもの。アセンブラのマクロ
で、あんなことができるなんて。if ... else, while ... repeatも、しかし、開けて
みればラベルジャンプだった!


 戻る。
 僕が「問題解決」という表現で考えている(空想している)のは、時代の流れも
(流行)もあるのかな、ということ。

 つまりPC(Personal computer = microcomputer)の時代に入った。最初はBASIC
しかなかった。あとはマシン語。もうちょっと途中の位置でプログラミングできる言語、
そこそこシステムにアプローチできて、人間寄り(自然言語寄り)の言語が登場した
(移植された。Cはまだ)。
 で、その界隈の人は、アセンブラの原理的アプローチとの違いを示すために「問題
解決」という言葉を多用した、と。

 問題は何かをまず分析せよ。
 テキスト処理で、いっぱいいっぱいやってまーす。ファイルを壊しちゃったけど。
 しょうがないから、タマネギ苗の植え付けをしてるあいだ、2時間ばかり、OCR
ソフトにふたたび走ってもらうことにしました。「全自動」モードとかあるんです。
_Inside the IBM PC, Revised and Enlarged_. (1986) は、全387ページでした。
また、ちまちま、やっかぁ。長い行はダメです。

 でも今でも、そんなに使いますか? 「問題解決」という言い方。
 どのパスカル本にも出てくるのです。もちろん主に80年代から90年代前半の本。


      - No.10354 -    このTreeへ    コメント元:10352 へ [リストへもどる] soft

(10351) 10362Re^3: 「問題解決」(problem solving)  投稿者:としき   2022/11/04(金) 19:31
参照先:http://toshiki.la.coocan.jp/
    10354 番 文太 さんへのコメント    コメント数 1

>  ちょっと前にBASMとかいう、(Power) BASIC -> Machine Lauguage への
> 翻訳機をみました。有名ですか? でしたか? ですかね。

これ、私は全然知らない。
ちょっと検索してみた範囲では、引っかかってくるのは英語のサイトばかり。
どうやら、日本では流行らなかったのではないかなぁ。

>  でも今でも、そんなに使いますか? 「問題解決」という言い方。
>  どのパスカル本にも出てくるのです。もちろん主に80年代から90年代前半の本。

私はあまり聞いたことがありません。今でも、そしてその当時も。
もっとも、聞いても忘れている、という可能性も高い。
解法、という言葉はよく聞きましたが、でもこれはアルゴリズムのことだと思う。
ということで、大学時代の教科書を引っ張り出してきました。邦書です。

川合 慧著 PASCAL入門
共立出版 ISBN4-320-02150-9 1981年初版発行

この本では、目次や索引には「問題解決」という語は見当たりません。
が、よく読むと、冒頭、第1章の最初のページの5行目辺りから、それっぽい表現が
出てくる。以下、引用。

(前略)
> 人間にとっては、問題を解決することが主目的であり、細かな解法は二の次となる
> べきである。
(中略)
> 本書では、一般的な問題の解決に必要な仕事に対して、‘計算’という言葉を使う。

もしかしたら私は「問題解決」という用語が普及するよりも古い世代なのかも。
ということで、手元にある、もっと古い本を覗いてみた。
父の遺産です。中で扱っている言語もPASCALではなくFORTRANです。

竹内 均著 やさしいコンピューター プログラムしよう
日本放送出版協会 昭和44年発行 ISBNなし

今でいうところのエンドユーザーコンピューティングのはしりの方ですな。
自分が必要とするプログラムを自分で書いていた、という意味で。
なにせ、冒頭の「はしがき」でも、計算機(タイガー?)を回しまくっていたことに
触れているくらい。
余談ですが、この先生の眼鏡の趣味だけは私と合いません。
それはさておき。
この本でもやっぱり、目次や索引には「問題解決」という語は見当たりません。
なお、この本の第1章§3冒頭は以下のとおり。

> わたしたちは、まず問題を分析して、問題を解くためのある手順をつくり、
> これを論理や数学の言葉で書き下さなければならない。

おぉ、ありがたいお言葉。思わず拝んでしまいそう。
でも、あまり参考にならない事例ばかり引っ張ってきているだけかも。

ということで、私にはなじみがありません、ということでした。
      - No.10362 -    このTreeへ    コメント元:10354 へ [リストへもどる] soft

(10351) 10363Re^4: 「問題解決」(problem solving)  投稿者:文太   2022/11/04(金) 20:52
    10362 番 としき さんへのコメント    コメント数 1

>ということで、私にはなじみがありません、ということでした。
 僕はもう確信しました。パスカルあたり(周辺で)この表現は流行り始めた。
 ま、コンピュータの原理とも言えるのでしょうけど、まさしく、

>>Pascalで考える人も多いようです。というか、その辺を考えやすいように設計
>>された言語がPascal、というのが設計思想でもあります。

 って、ことなのでしょう。


 以下、ほぼ余談。

>>  ちょっと前にBASMとかいう、(Power) BASIC -> Machine Lauguage への"
>ちょっと検索してみた範囲では、引っかかってくるのは英語のサイトばかり。
>どうやら、日本では流行らなかったのではないかなぁ。
 あ、なるほど。失礼しました。日本語の壁もあったのかな?
 でも、Rom-BASICで最初、日本語なんて通らなかったんですよねぇ?
 あのサイトの感じからして、大昔からある、というものでもない感じだったかな。

>川合 慧著 PASCAL入門
>共立出版 ISBN4-320-02150-9 1981年初版発行

(前略)
> 人間にとっては、問題を解決することが主目的であり、細かな解法は二の次となる"
> べきである。"
(中略)
> 本書では、一般的な問題の解決に必要な仕事に対して、‘計算’という言葉を使う。"

 それっぽい。1981年。PC以前の時代ですね。

>もしかしたら私は「問題解決」という用語が普及するよりも古い世代なのかも。
 そんなこともないでしょう。

>父の遺産です。中で扱っている言語もPASCALではなくFORTRANです。
 わお! お父様もその筋のお方だったのですか。
 例のCPU本には、COBOLとPL/Mも言及される。後者は1章あてて。お父様
よりとしきさんの時代?

>竹内 均著 やさしいコンピューター プログラムしよう
>日本放送出版協会 昭和44年発行 =★1969年!  ISBNなし
>> わたしたちは、まず問題を分析して、問題を解くためのある手順をつくり、"
>> これを論理や数学の言葉で書き下さなければならない。"
>おぉ、ありがたいお言葉。思わず拝んでしまいそう。

 としきさんの気持ちはよく想像できますよ。いやぁ、問題は回避して目をつぶる
ためにある、つまり、ないことにするのが一番ではないかと思う。そんなもの
要らないよ。でも拝もう。

 自然農の教え:探せば問題は永遠に見つかる。どうせあるのだから、どうせない。
目をつぶりなさい。過去と未来を含む「ほんとうの今」を生きなさい。
 宗教だなぁ。

 僕があってもいいよ、と思うのは、問題でなくタスクだな。ごめんなさい。絡んでる
感じだ。

      - No.10363 -    このTreeへ    コメント元:10362 へ [リストへもどる] soft

(10351) 10365Re^5: 「問題解決」(problem solving)  投稿者:としき   2022/11/04(金) 22:45
参照先:http://toshiki.la.coocan.jp/
    10363 番 文太 さんへのコメント    コメント数 3

>  でも、Rom-BASICで最初、日本語なんて通らなかったんですよねぇ?

PC-8001って、1978年くらいでしたっけ。
こいつでBASICでは半角カナだけだったと思う。
私はPC-8801を1982年ごろに買ったけど、これはオプションで定価4万円の漢字ROM
を買ってくるとDISK-BASICでとりあえず日本語表示はできた。ROM-BASICでも可能
だったかどうかは覚えていない。
PC-9801だとDISK-BASICもROM-BASICもあまり差はないのではないかなぁ。

>  それっぽい。1981年。PC以前の時代ですね。

いや、もう8ビットマシン全盛時代ですよ。
当時のベーマガを見ても、20機種とか載っていたと思う。

>  わお! お父様もその筋のお方だったのですか。

その筋の仕事をさせられた、といった感じでしょうか。
もともとは中卒で電電公社に入って電信技手をやっていたんですよ。
エジソンと同業。モールス符号を打つ人ね。
でも、電報機械化というヤツで配置転換。行った先がテレビの中継関係の仕事。
ところが、ここも合理化の嵐というやつで、テレビ中継の自動化という話になった。
そのシステムのプログラム作成に携わったのです。
そして、その仕事をきちんとやり遂げて。
数年後、電電公社の職員教育用のコンピュータの教科書の執筆にも携わりました。
いや、一人で1冊書いたわけではありませんよ。6人で8章ぐらいの本だから、
うちの父は1章か2章分ぐらいしか書いていないはず。
なので、私の保育園時代の会社からのお土産は、使用済みの紙テープ。本物の
紙テープを使ってウルトラマンごっこができるなんて、考えてみれば贅沢な話。

>  例のCPU本には、COBOLとPL/Mも言及される。後者は1章あてて。

PL/Mって、実はあんまり知らない。コードを書いたことも読んだこともない。
一応、PL/Iのサブセット、ですよね。
私が若かったころのコンピュータの古典的名著といわれている「プログラム書法」
という本では、中のサンプルコードはPL/Iで書かれていました。この本は大学の
図書館で借りて読んだので、一応、建前上は、PL/Iのコードを読んだことがある、
といっていいのかなぁ。
COBOLも、たしなみとしてマスターしたかったけど、触れる機会がなかったなぁ。

>  としきさんの気持ちはよく想像できますよ。いやぁ、問題は回避して目をつぶる
> ためにある、つまり、ないことにするのが一番ではないかと思う。そんなもの
> 要らないよ。でも拝もう。

問題に目をつぶって回避してしまうというのはねぇ。
とりあえず、目の前に転がっている問題は、サツマイモの収穫。
収穫せずにそのまま放置してしまえ、というのは、自然農の方ならできるのかも
しれませんが、私にはそんなこと、とてもできません。
あるいは、空腹である、という問題。
そんな問題はなかったことにして、食事を取らない。
うむ、実はこれって最終的な解決かも。
      - No.10365 -    このTreeへ    コメント元:10363 へ [リストへもどる] soft

(10351) 10366そこまでジャパンはすごかったのか!  投稿者:文太   2022/11/05(土) 12:18
    10365 番 としき さんへのコメント    コメント数 1


NEC PC-8000 シリーズ
1979年5月09日 発表
1979年9月20日 出荷
希望小売価格 168,000円(周辺機器を含めないと実際のところは分からないなぁ)

9月28日がパソコン記念日/パソコンの日

1980年 日本人サラリーマンの平均年収(注)
300万円
つまり、平均月収25万円の時代(けっこう余裕で買えそう)
(あまり今と変わらない?−−非正規を除外すれば、年:473万円〔2012〕らしいが)
(『年収200万円で生きる方法』がヒットしたのが15年前? 今も同じかさらに
酷いと思うけど。)

https://nenji-toukei.com/n/kiji/10022

https://ja.wikipedia.org/wiki/PC-8000%E3%82%B7%E3%83%AA%E3%83%BC%E3%82%BA
https://ja.wikipedia.org/wiki/%E7%9F%B3%E7%94%B0%E6%99%B4%E4%B9%85

 おもしろい!

>>  でも、Rom-BASICで最初、日本語なんて通らなかったんですよねぇ?
>PC-8001って、1978年くらいでしたっけ。
>こいつでBASICでは半角カナだけだったと思う。
>私はPC-8801を1982年ごろに買ったけど、これはオプションで定価4万円の漢字ROM
>を買ってくるとDISK-BASICでとりあえず日本語表示はできた。ROM-BASICでも可能
>だったかどうかは覚えていない。
>PC-9801だとDISK-BASICもROM-BASICもあまり差はないのではないかなぁ。

>>  それっぽい。1981年。PC以前の時代ですね。"
>いや、もう8ビットマシン全盛時代ですよ。

 いやぁ、ノートン先生の「8086 family tree」(PC, XT, PCjr, AT; Compaq,
Compaq Plus, Compaq DeskPro .... --- 1985視点)なんてのを読んだところで、
僕の日本無知を知らしめてくれました。(注)
 当時の日本はすごかった! アメリカサイドから見るとNEC製FDDというのが
定番的に言及されてはいたのですが。

 市場を含めて考えると、ちょっと先を行っていたのかも。
 NEC98があそこまで(Win95までだっけ?)引っぱれたわけも理解できました。

 しかしBASMが日本で受けなかった理由は分からないなぁ。
 ソフトは書くものでなく買うものの時代に、すぐになったのかなぁ?
 Pascal, C のブームがすぐ来た? Vzの時代かも。

 続きは、明日以降です。
 だるいの。

(注)僕は、すぐさま当時の16万円っていくらのこと? とか発想してしまった。
ところが、ノートン先生の記述には、いっさいPCの市場価値(それとの相関)への言及
がない。ノートン先生、紳士ですねぇ。


      - No.10366 -    このTreeへ    コメント元:10365 へ [リストへもどる] soft

(10351) 10367Re: そこまでジャパンはすごかったのか!  投稿者:としき   2022/11/05(土) 12:58
参照先:http://toshiki.la.coocan.jp/
    10366 番 文太 さんへのコメント    コメント数 1

> つまり、平均月収25万円の時代(けっこう余裕で買えそう)

ボーナスというものもありますからね。
税金その他を考えると、月給の1か月分、というのが相当かと。
でも、普及の最初期、ということを考えると、かなり安いような気がする。
例えば、昭和30年代のテレビとか、いわゆるモータリゼーションといわれた、
同じく昭和30年代の自動車の月給に対する比率との比較ですが。

>  当時の日本はすごかった! アメリカサイドから見るとNEC製FDDというのが
> 定番的に言及されてはいたのですが。

パソコン用のFDDについは、少なくとも20世紀末、または21世紀初頭までは、
NEC製がかなり強かったはず。新品のシェアなんて知りませんが、21世紀のはじめ
ごろ、ジャンク屋で見かけるFDDはNEC製かミツミ製ばかり。
東芝のHDDと同じような感じかなぁ。

>  しかしBASMが日本で受けなかった理由は分からないなぁ。
>  ソフトは書くものでなく買うものの時代に、すぐになったのかなぁ?
>  Pascal, C のブームがすぐ来た? Vzの時代かも。

BASMって、そもそもいつごろ発表されたものなんでしょうか。
BASICのコンパイラなら、ほかにいくつか知っています。
「信長の野望」で有名な光栄も出していました。
CP/Mだったか、コマンドラインに「BASICC」というコマンドをうつコンパイラと
いうものも使った記憶があるけど、私のニーズにはあわなかった。DOSの時代に
なってからだったかなぁ。もはや覚えていない。
あと「BC」で起動するコンパイラもあったような、あぁ、忘却のかなた。
前にも書いたけど、私、BASICをアセンブラにする、というニーズはありました。
何をやりたかったかというと、浮動小数点演算。でも、当時の8ビットマシンの
時代に入手可能なBASICコンパイラって、ほとんど整数型のみ。雑誌に掲載されて
いたものもありましたが、そういったものしかなかったはず。
それこそ、自分でBASICコンパイラを作りたかったくらい。
だけど、大学でコンパイラの授業もとったけど、さっぱり理解できなかった。
もしかしたら、単位を落としたかも。一応、教科書は残っている。

なお、8ビット当時、BASIC以外の言語も、あることはありました。
クリーンコンピュータで有名なMZ-80シリーズに、少なくともPascalはあった。
たぶん、FORTRANもあったのではないかなぁ。
CP/M上では、FORTRAN、Pascal、C、COBL、PL/Mと、一通りありました。
またパソコン雑誌には、BASICコンパイラ以外に、独自言語もいろいろと発表されて
いました。microPASCALとか、TL/1とかGAMEとか。どれも大体ゲーム開発用の機能は
一通り備えていました。というか、当時の世間での最大のニーズはゲームでしたから。
だからといって、言語名がGAMEというのはすごいな。そして、TL/1もGAMEも、私の
記憶が確かなら、いずれもALGOL系というか、Pascalっぽい言語仕様だったような。
違ったかなぁ。
      - No.10367 -    このTreeへ    コメント元:10366 へ [リストへもどる] soft

(10351) 10371Pascal & Basic  投稿者:文太   2022/11/07(月) 23:03
    10367 番 としき さんへのコメント    コメント数 2

英語のまんまで、ごめんなさい、読んでくだされ。がんばれ!

   Personal Computer Computer Language Series
   Pascal Compiler
   Copyright International Business Machines Corporation 1981
   First Edition (August 1981)

from the above, below

Pascal, a relatively modern language, has benefited 
from many earlier languages (such as ALGOL) 
and is forming the basis of several new ones.

IBM has added several goals to this list:

IBM Personal Computer Pascal is designed to be 
a systems implementation language, especially 
suitable for writing compilers, interpreters, 
operating systems, and so on.

 2点ほど、接点があったので。
 IBM 初号機(1981)には、Pascalが付いてきたみたいで、ALGOLが先祖、
そしてコンパイラが作れるようにと IBMは、オリジナル・パスカルからいくらか
拡張をした、とありますね。
 この拡張というのが何なのか分からなかったのですが。

 ただ、僕が何となく思っているのは、basicコンパイラ(BCってたしか
MSの製品でなかったかなぁ?)と、Basic -> Asmに翻訳して、アセンブル
するのとは、ちょっと違うのじゃないかな、ということ。

 何となくアセンブルすると、すごく速くなりそう。ここが、ぼくが
BASMを面白いかな、と思った点。

>BASM!  The BASIC to 286 Assembly Language Translator (c) 1998

 というように、Basicが流行っていたときのものではないですね。
 Power Basicって何なのか(商品っぽい)調べておきます。
 Basicが方言まみれで収拾つかなくなってしまった、という話は聞いて
います。方言だらけなんでしょうね。

 でも僕が面白がる部分は……。所詮、テキスト処理ツール部分と
あとメモリとちょっとシステム寄りな部分だけでしょうから。

 親父さんは、COBOLも勉強したんだぁ。昔の人は偉いですよねぇ。
 Miyataさんが、「仕事はCOBOL、つまんない」とか言ってませんでしたっけ?
 ここから僕が思うのは、やっぱエディタはエディタで、「言語」で
プログラムする前に、いろんな工夫があるんだろうな、ということ。

 僕は、残りの人生をかけて、基本的に、これをやりたい。
 1 Vzを極める。
 2 Vzの存在意義を実証する=プログラミングする。道具は使って
   なんぼよ。

 まだまだ疲れてるけど、イエイ!


      - No.10371 -    このTreeへ    コメント元:10367 へ [リストへもどる] pre

(10351) 10372cplate.def (v1.00) 再掲  投稿者:文太   2022/11/07(月) 23:10
    10371 番 文太 さんへのコメント

 ふとこんなののことを思い出しました。
 コメントもオリジナルです。「$」の使い方が教育的ですね。
 FGALAPだと思います。

======== cplate.def (v1.00) ========
;127/376   NBH01153  BANT-iT           c.mos氏のC言語テンプレート・マクロ
;(12)   91/04/18 01:23
  
* M マクロ
  
50 [CR] "{..}"
        ?.
;       (fe<4||fe>5)?.                  ; 拡張子の判定
        #s (cd!='{') #d ?{ #m . }
        #m '}' #n #21
  
51 \[TAB] "Cテンプレート"
        ?.
;       (fe<4||fe>5)?.
        #s c=cd, #d
        &f(c,"iewfscrd") (r<0)? .
        p=$, p.8=c, >i                  ; こういう手もあるわけやね
:i      "f ()" #s .
:e      "lse" .
:w      "hile ()" #s .
:f      "or ()" #s .
:s      "witch ()" #s .
:c      "ase:" .
:r      "eturn" .
:d      "o {" #m "} while();" #n #21 .
  
*
======== End of cplate.def ========

      - No.10372 -    このTreeへ    コメント元:10371 へ [リストへもどる] pre

(10351) 10376Re: Pascal & Basic  投稿者:としき   2022/11/09(水) 13:00
参照先:http://toshiki.la.coocan.jp/
    10371 番 文太 さんへのコメント    コメント数 1

> 英語のまんまで、ごめんなさい、読んでくだされ。がんばれ!

機械翻訳を使わず、辞書だけでがんばった。

> IBM Personal Computer Pascal is designed to be
> a systems implementation language, especially
> suitable for writing compilers, interpreters,
> operating systems, and so on.

Wikipediaにもありますが、もともとPascalでPascalコンパイラというのは書ける
わけで、これはほかの言語のコンパイラを書くことができるようにしたい、という
意味なのかなぁ。

>  この拡張というのが何なのか分からなかったのですが。

先に書いたmicroPASCALですが、PC-8001への移植に当たっては、グラフィックの
関係のライブラリを追加した、というような話がありました。同様な事例として、
PascalにWindows対応のライブラリをくっつけたらDelphi、なんていう話もある
ようで、この比喩が的確かはわかりませんが、もしかしたらそういうことなのかも
しれません。

>  ただ、僕が何となく思っているのは、basicコンパイラ(BCってたしか
> MSの製品でなかったかなぁ?)と、Basic -> Asmに翻訳して、アセンブル
> するのとは、ちょっと違うのじゃないかな、ということ。

言葉のニュアンスが違う、というのはわかります。
でも、コンパイラというのは多くの場合、マシン語を直接出力します。
一方、アセンブラというのは、原義としては、マシン語と1対1の変換機。
なので、「Basic -> Asmに翻訳」というのがマクロ構文をビシバシ使っている
ものに対する翻訳であれば高級なプリプロセッサだと思いますが、単にマシン語
に翻訳するだけであれば、それはコンパイラに他ならない。
あとは、BASMという言語そのものがどういったものか、という点も知りたい。
つまり、世間一般で流通しているBASICとの言語仕様の差異とか制限とか。
極端なことを言うと、アセンブラのレジスタの数しか変数が使えない、なんて仕様
のBASICなら機械語に変換するのもたやすいかもしれない、みたいな感じで。
      - No.10376 -    このTreeへ    コメント元:10371 へ [リストへもどる] soft

(10351) 10377Re^2: Pascal & Basic  投稿者:文太   2022/11/09(水) 23:06
    10376 番 としき さんへのコメント    コメント数 2

>機械翻訳を使わず、辞書だけでがんばった。
 がんばりました〜!!! (^^)/~~~~

>Wikipediaにもありますが、もともとPascalでPascalコンパイラというのは書ける
>わけで、これはほかの言語のコンパイラを書くことができるようにしたい、という
>意味なのかなぁ。
 そういう意味なのではないですかねぇ。

>  この拡張というのが何なのか分からなかったのですが。

APPENDIX E. PASCAL STANDARD AND IBM FEATURES

Summary of IBM Pascal Features
This list summarizes the extensions added to Standard Pascal.

Syntactic and Pragmatic
Metalanguage 
Metacommands:	;これらはコンパイラへの擬似命令。
$BRAVE
$DEBUG
$ENTRY

 どどどどど。5ページくらい。読む気にならない。
 読んでも大半わからないだろう。


>言葉のニュアンスが違う、というのはわかります。
>でも、コンパイラというのは多くの場合、マシン語を直接出力します。
>一方、アセンブラというのは、原義としては、マシン語と1対1の変換機。
>なので、「Basic -> Asmに翻訳」というのがマクロ構文をビシバシ使っている
>ものに対する翻訳であれば高級なプリプロセッサだと思いますが、単にマシン語
>に翻訳するだけであれば、それはコンパイラに他ならない。

 ふーん。コンパイラよりアセンブラのほうがもっとマシンよりなのかと思って
ましたけど、そうとも限らない、と。ふーん、です。

>あとは、BASMという言語そのものがどういったものか、という点も知りたい。

 どうしても本気で知りたいなら、basm最終版を落としてもらって、basm.txtを
読んでもらうしかないですが、僕がなんとなく理解できたのは、
 ・配列に制限がある
 ・複文(?)=関数の返り値が関数の入力になるようなのはダメ=単文2つに分けよ。
 ・.comモデル用ソース生成で、relocatableなのは作れない。コンパイル時にメモリ
  配置が固まるものに限る。
ぐらいでしょうか。

 いっぱい足りないものがあるのかもしれませんが、概略としてはこんな感じ
みたいです。↓


"BASM supports the following statements and functions:"
Say 07,07,"DIR$        HEX$         OPEN           CLS            REPLACE"
Say 07,08,"SHELL       ASC          CLOSE          PRINT          SWAP"
Say 07,09,"TIME$       ABS          KILL           INPUT          DELAY"
Say 07,10,"DATE$       BIN2DEC      CHDIR          POS            ASM"
Say 07,11,"COMMAND$    GETKEY       MKDIR          CSRLIN         BEEP"
Say 07,12,"CURDIR$     INSTR        RMDIR          LOCATE         DIM"
Say 07,13,"UCASE$      VAL          NAME           COLOR          ARRAY SORT"
Say 07,14,"LCASE$      LEN          PRINT#         FRAME          ARRAY INSERT"
Say 07,15,"MID$        SGN          INPUT#         GETSCREEN      ARRAY DELETE"
Say 07,16,"TRIM$       EOF          LINE INPUT#    PUTSCREEN      SCAN"
Say 07,17,"LTRIM$      ERR          EOF            CHANGEATTR     MOD"
Say 07,18,"RTRIM$      AND          DIR$           VIDEOCARD      INCR"
Say 07,19,"EXTRACT$    OR           CURDIR$        DEF SEG        DECR"
Say 07,20,"REMOVE$     XOR          GET$           PEEK           SHL"
Say 07,21,"REPEAT$     NOT          PUT$           POKE           SHR"
Say 07,22,"SPACE$      TICKS        LEFT$          RIGHT$"
END SUB


SUB Display3
ReFrame
Say 13,05,"BASM supports a rich set of control and loop constructs
Say 07,07,"DO  - EXIT LOOP  -  LOOP
Say 07,08,"FOR - NEXT - STEP - EXIT FOR
Say 07,09,"IF  - THEN - ELSE - END IF
Say 07,10,"SUB - EXIT SUB - END SUB
Say 07,11,"GOTO  labelname
Say 07,12,"GOSUB labelname
Say 07,13,"RETURN
Say 07,14,"FUNCTION - EXIT FUNCTION - END FUNCTION
Say 07,15,"CALL  subname [parameters]       { CALL is optional }
Say 07,16,"SELECT - CASE - END SELECT
Say 07,17,"WHILE -EXIT WHILE- WEND
Say 07,18,"END  [optional DOS Errorlevel value]
END SUB

 じゅうぶん立派な気がする。GOTO、悪くないと思うけどなぁ。


>極端なことを言うと、アセンブラのレジスタの数しか変数が使えない、なんて仕様
>のBASICなら機械語に変換するのもたやすいかもしれない、みたいな感じで。

 なかなか受けましたが、そのようなことは書いてなかったと思う。

keep instructions short, 
use the registers, 
use string instructions,

 というのが、速いコードを書く鉄則だそうです。気にしないけど。変数、大好き。
 当たり前のことがさらりと書いてあっただけなのですが、引用元は、Zen of Asm Lang
です。知ってる? 怖いよ、タイトルからして。同じ著者の別の本のタイトルは、
Black Bookです。こ、怖いです。5年先にすら読もうとする可能性はかなり低い。
 もちろん、アサム本です。


      - No.10377 -    このTreeへ    コメント元:10376 へ [リストへもどる] pre

(10351) 10380Zen of Assembly Language  投稿者:文太   2022/11/10(木) 01:00
    10377 番 文太 さんへのコメント


DeepL にかけてください。

A case in point: a few years back, I came across an article about 8088
assembly language called "Optimizing for Speed." Now, "optimize" is not
a word to be used lightly; Webster's Ninth New Collegiate Dictionary
defines optimize as "to make as perfect, effective, or functional as
possible," which certainly leaves little room for error. The author had,
however, chosen a small, well-defined 8088 assembly-language routine to
refine, consisting of about 30 instructions that did nothing more than
expand 8 bits to 16 bits by duplicating each bit. (We'll discuss this
code and various optimizations to it at length in Chapter 7.)

The author of "Optimizing" had clearly fine-tuned the code with care, examining
alternative instruction sequences and adding up cycles until he arrived at
an implementation he calculated to be nearly 50% faster than the original routine.
In short, he had used all the information at his disposal to improve his code,
and had, as a result, saved cycles by the bushel. There was, in fact, only
one slight problem with the optimized version of the routine... It ran slower
than the original version.

 き、厳しすぎる。
 著者の名は、Michael Abrash.


      - No.10380 -    このTreeへ    コメント元:10377 へ [リストへもどる] soft

(10351) 10386Re^3: Pascal & Basic  投稿者:としき   2022/11/11(金) 03:33
参照先:http://toshiki.la.coocan.jp/
    10377 番 文太 さんへのコメント

> >  この拡張というのが何なのか分からなかったのですが。

> APPENDIX E. PASCAL STANDARD AND IBM FEATURES
> Metalanguage 
> Metacommands:	;これらはコンパイラへの擬似命令。

なるほど、これは私の感覚では、確かに正統な拡張と言う感じです。

>  どうしても本気で知りたいなら、basm最終版を落としてもらって、basm.txtを
> 読んでもらうしかないですが、僕がなんとなく理解できたのは、

そこそこ興味はそそられるので、落としてしまうかも。
とりあえず、ネットをさまよって、英語で書かれたいくつかのサイトをざっくり
読んでみたのですがね。関係者が書いたのか善意の第三者が書いたのかわからない
ページで、compilingという単語を見かけました。なので、これって実は、ただの
BASICコンパイラなのではないか、と思いました。
とはいえ、今の所はまだ、表面をなぞっただけ、という自覚はある。
私の知りたいところとしては、ごく簡単なもの、例えば hello world を表示する
だけとかでいいので、完璧に動作するソースリストと、それの変換結果がどうなる
か、というのを見たい。なぜかいまだにBASM用のソースリストにお目にかかれて
いない。

>  いっぱい足りないものがあるのかもしれませんが、概略としてはこんな感じ
> みたいです。↓

これをみるに、なかなかできの良いBASICコンパイラではないか、という思いが
ますます強くなります。


>  ふーん。コンパイラよりアセンブラのほうがもっとマシンよりなのかと思って
> ましたけど、そうとも限らない、と。ふーん、です。

ここだけ、ちょっと長くなるけど、解説。
私の感覚が古い、とか、かつてはそうだったけど今は違う、という部分は多々ある
かと思います。でも、もしBASMが20世紀末にリリースされたのであれば、私の
感覚も大ハズレではないと思う。

まず機械語というのはビットの羅列。そして人間には、どのコードが何をするか
なんてことを覚えるのはなかなか難しい。そこで記憶用の、いわゆるニーモニック
というのが開発された。最初はまさに、それぞれのコードの挙動の記憶用。のはず。
なお、ニーモニックという言葉の由来とか原義とかは、たぶん英語の専門家にお尋ね
いただいたほうがいいでしょう。
そして、ニーモニックを使ってコンピュータの挙動全体を書き下ろすようになった。
すると次に、それをそのまま機械語に変換できるとうれしい。
ということで、ニーモニックを機械語に変換するのがアセンブラ。
その後、アセンブラには擬似命令だのマクロ機能だのが追加されて、構造化構文
までサポートされるようになりました。
とはいえ、基本的にニーモニックと機械語は1対1。
そうではなく、変数に定数を代入する、というようなロジックでプログラムを書く
のが高級言語。最初のころのFORTRANとかCOBOLとか。そして、そのプログラムを
複数の機械語に変換する、というのがコンパイラ。
また、コンパイラも、ターゲットのマシンの機械語にコンパイルする、いわゆる
普通のコンパイラのほかにも、仮想的なマシンの機械語にコンパイルするという
種類のものが昔からありました。有名なところでは、JavaはJVMという仮想マシン
をターゲットにコンパイルされることが多く、WindowsやLinuxではそれぞれ自分
の環境で動くJVMを用意しています。古くは、PASCALでp-codeコンパイラという
ものがありました。これは pseudo code というものを出力するコンパイラで、
別途 p-codeを解釈するインタプリタを実際の各マシンで用意するという形に
なっていました。
これら伝統的なアセンブラやコンパイラのほかに、トランスレータというのかな、
別の言語処理系があります。つまり、ある言語を別の言語に変換する、というもの。
最初にBASMの話を聞いたとき、私はこれだと思ったんですよ。つまり、BASICの
ソースをバリバリの機械語にいきなり変換するのならコンパイラだけど、例えば
マクロを使いまくったアセンブラのソースに変換するのであれば、それはコンパイラ
でもアセンブラでもないよね、ということ。
これの有名なものにratforという言語があります。rational FORTRANということで、
構造化されたPascalっぽい構文のratforで書かれたプログラムをトラディショナルな
FORTRANに変換してくれるのです。ratforが最初に紹介されたときは、これはFORTRAN
の前処理、すなわちプリプロセッサであるという言い方をしていましたが、今では
プリプロセッサというのは単なる置き換え程度のみ行うものをさすようになっていて、
ratforのように構文解析して全く異なったものを出力するものに対しては使わない
用語となっているようです。

ということで、BASMの入力と出力がどうなっているか、ということに興味津々。
とはいえ、今日はもう寝る。
      - No.10386 -    このTreeへ    コメント元:10377 へ [リストへもどる] pre

(10351) 10368補遺とか訂正とか  投稿者:としき   2022/11/05(土) 15:29
参照先:http://toshiki.la.coocan.jp/
    10365 番 としき さんへのコメント    コメント数 3

自室で横着して記憶に頼らず、きちんと現物を確認してみました。
とはいえ、PC-8801のマニュアルとかは実家に戻らないと見れません。
とりあえず、自宅にあるもの、というところで。

> >  でも、Rom-BASICで最初、日本語なんて通らなかったんですよねぇ?
> PC-9801だとDISK-BASICもROM-BASICもあまり差はないのではないかなぁ。

手元にあった「N88-日本語BASIC(86)ユーザーズマニュアル」第1章の冒頭の記述
から引用。

>  PC-9800シリーズの各機種の本体にはN88-BASIC(86)インタプリタのROM(96KB)が内蔵
> されています。このROMにはN88-BASIC(86)の基本機能が組み込まれており、電源を入れた
> だけでBASICを使うことができます。このBASICをROMモードBASICと呼びます。
>  また、N88-日本語BASIC(86)のシステムディスクをフロッピィディスク装置にセットして
> BASICを起動させると、BASICの機能が拡張し、フロッピィディスク装置の使用、日本語の使
> 用などさまざまな機能が使えるようになります。このBASICをDISKモードBASICと呼びます。

そうなんだ、知らなかった。
文太さんの記憶のほうが正解でしたね。

> >  それっぽい。1981年。PC以前の時代ですね。
> いや、もう8ビットマシン全盛時代ですよ。
> 当時のベーマガを見ても、20機種とか載っていたと思う。

81年は、8ビットマシン全盛の、ちょっと手前でしたね。
82年のベーマガで、ポケコン含めて20機種ぐらいの掲載でした。

> >  わお! お父様もその筋のお方だったのですか。
> その筋の仕事をさせられた、といった感じでしょうか。

思い出話を一つ。
うちの父がコンピュータに携わっていた時代って、まだキーボードのJISが制定される
以前だったようです。なので、私が買ったPC-8801で数年ぶりにキーボードに触れた
ときに、記号とかカナの刻印の並びが昔と違う、なんてことを言っていました。

> 数年後、電電公社の職員教育用のコンピュータの教科書の執筆にも携わりました。
> いや、一人で1冊書いたわけではありませんよ。6人で8章ぐらいの本だから、
> うちの父は1章か2章分ぐらいしか書いていないはず。

書棚で現物を確認したら、5章の本を4人で執筆、でした。
うちの父が書いた分量に変わりはないと思うけど。
そして、その電電公社の教科書と並んで、私の全く読んだこともない本が数冊。
引越しの際に実家から持ってきたものだけど、何でこんなものを持ってきたんだろう。
その中にあったのが「別冊 ソフトウェア科学」。
産報という会社のだしていた「ソフトウェア科学」という雑誌の別冊、という体裁な
わけですが、そんな会社も雑誌も聞いたことがない。
後ろのほうのページの広告によると、別冊ではなく本体のほうの「ソフトウェア科学」
のキャッチフレーズは「ユーザーのためのコンピュータ専門誌」だそうな。
ユーザーのほうは音引きがあるのにコンピュータのほうにはないというのは興味深い。
それはさておき、この別冊というのが2冊あり、そのうちの1冊、1970年5月に
発行されたNo.1は「図解COBOL」。
ぅぉぉ、なんてこった。これで勉強していればよかったんだ。そうすれば

> COBOLも、たしなみとしてマスターしたかったけど、触れる機会がなかったなぁ。

たしなみ程度にはマスターできたかもしれない。
触れる機会がなかった、なんて、認識が甘いにもほどがある。
当然、私の学生時代にも、この本はすぐ手の届くところにあったはずなんだから。
ちなみに、もう1冊の別冊は1970年12月のNo.4「図解フローチャート」。


ところで、これらの本と並んで発掘されたのが、I/O誌1981年4月号。
この当時はパソコン誌は買っていませんから、あとから古本屋で入手したのでしょう。
そして、これの特集が「BASICコンパイラ」。うむ、なるほど、欲しくなったときに
たまたま見かけて購入したといった感じ。
ただ、特集といいつつ、中を覗くと、PC-8001用のBASICコンパイラの記事が一つだけ。
他の記事は、MZ-80用のアセンブラと、KUMAJIRIなる独自言語のベーシックマスターへの
移植。なんだこりゃ。
だけど、広告ページをピンポイントで覗いていくと、かなり興味深いものもある。
例えば、ハドソンがMZ用にBASIC COMPILERとかTini FORTRAN、Tiny ALGOLといったものを
出していたり、とか。シャープがMZ用にPASCALインタプリタを出していたり、とか。

ところで、PASCALといえば、先に触れたmicro PASCAL。
これについて記載しているのはASCIIの出した「プログラムライブラリ」という本です。
これはASCII本誌に掲載された記事をまとめたものだと思います。
この記事の冒頭には、以下のように記載されています。

> はじめに:
> 80年1月に丸山氏によって発表されたmicro PASCALは、その後TRS、MZに相次いで
> 移植され、早くもGAMEに続く80系マシンの標準言語になろうとしています。私も
> 発表後すぐにPC-8001に移植してみましたが、その高速性に驚き(後略)

なかなか、当時のマシンや言語環境を彷彿とさせてくれる文章だと思います。
      - No.10368 -    このTreeへ    コメント元:10365 へ [リストへもどる] soft

(10351) 10369Re: 補遺とか訂正とか  投稿者:文太   2022/11/06(日) 12:20
    10368 番 としき さんへのコメント

 ちょびっとだけサクっと。

>>  PC-9800シリーズの各機種の本体にはN88-BASIC(86)インタプリタのROM(96KB)が内蔵
>> されています。このROMにはN88-BASIC(86)の基本機能が組み込まれており、電源を入れた
>> だけでBASICを使うことができます。このBASICをROMモードBASICと呼びます。
>>  また、N88-日本語BASIC(86)のシステムディスクをフロッピィディスク装置にセットして
>> BASICを起動させると、BASICの機能が拡張し、フロッピィディスク装置の使用、日本語の使
>> 用などさまざまな機能が使えるようになります。このBASICをDISKモードBASICと呼びます。

 貴重な引用をありがとうございました。

>そうなんだ、知らなかった。
>文太さんの記憶のほうが正解でしたね。

 いえいえ、僕にその手の記憶があるはずがありません。Basicに触れたのは
1か月前が生まれて初めてですから。『ざべ』とか『べーまが』という過去ログで
頻出する単語の意味がわかるのにniftyに入ってから10年くらいかかったと思しいです。
 ですから、Rom-Basicの話は、想像と推測です。外れることの多い文太の得意技。
 別の言い方をすると、僕は想像を絶する変人だ、ということです。

 ただ、その後、Win9xには、olddosなるフォルダがシステム近辺にあり、そこに、
qbasic.exeが入っていることを知り、試してみた(のだっけ?)ら、やはり想像どおり、
日本語は通じず、us モードでないと機能しないことを発見しました。

 日本語の壁、NEC-98アーキテクチャーの壁、いろいろあったんですね。
悪口ではないですが、ガラパゴスしちゃうよなぁ、と。
 ちょっと賢そうなふりをしてつけ加えると、何しろ1.3億人の独自言語をもった
人々の市場です。いったん方向がずれると、軌道修正はなかなかできなかったのでしょう。
 巨大タンカーの針路変更のごとく。

 もっとどうでもいいことを少し。

 Peter Norton's Inside the (IBM) PCという本(シリーズ)は、たいへん長寿で、
僕の手元には2002年版もあります。わりと大幅改訂しながら長寿を保った模様。
2002年版ではさすがにBasicのプログラム・リスティングは載っていない。過去のものとして
歴史記述されるのみ。しかし、1997年の7版では、初版、2版(1983, 1986. これらも
けっこう大きく違う)のものとは違うBasicプログラムが掲載されていました。

 このシリーズに関して「残念」(?)なのは、一般大衆向けにやや専門的にPCの原理
を解説する本だから、PC世界が複雑化するについてどんどんプログラミングから離れて
いってしまったこと。初版や2版では、マシン語、Basic、Pascalのプログラム・リストから
debugの使い方、アセンブラの使い方、まで記述されていたのに、インターネットだ、XPだ、
NTVDMだ、スキャナーだ、pdf、タッチパネルだという後年版になってくると、もう
プログラムを「書く」、それを教える、みたいなところがなくなっちゃったのですね。


 その他のお父様のお話など、とてもとても興味深く読んでいます。
ありがとうございます。
 楽しい! 面白い! です。

>なかなか、当時のマシンや言語環境を彷彿とさせてくれる文章だと思います。
 なんか熱いですねぇ。ワクドキが伝わってくる。


 色々書きたいのだけど、だるいの。そして、今日20本のレポートを読みコメントを
入れ、4種のテストを作り、授業用に映画を1本みなくてはいけない。
 to do リストを作ったら、もう、うんざりしてきた。
 とにかく1ミリでも前に進まなくては……。山をくずせ、アリのように。

 ちょっとずつレスを返していきます。


      - No.10369 -    このTreeへ    コメント元:10368 へ [リストへもどる] soft

(10351) 10370Re: 補遺とか訂正とか  投稿者:としき   2022/11/07(月) 19:16
参照先:http://toshiki.la.coocan.jp/
    10368 番 としき さんへのコメント    コメント数 1

かなりどうでもいいことです。

> 産報という会社のだしていた「ソフトウェア科学」という雑誌の別冊、という体裁な

この会社と雑誌が気になったので、調べて見ました。
きちんと調べるのなら国会図書館ですが、ネットでざっくり、で十分。
結果。
産報出版という、後継の会社が存在していました。
現在は、溶接関係の本や雑誌を出しているようです。
会社概要のページ(ttps://www.sanpo-pub.co.jp/about/)によると

1948年11月 「溶接ニュース」(週刊)を創刊。これをもって創業とする。
      なお、発行は社団法人溶接学会から行われた。
1962年04月 株式会社産報と改称。
1985年05月 旧産報の事業整備のため溶接出版部門が分離独立し産報出版株式会社を
      設立、現在に至る。

だそうで。
なるほど、祖業回帰に当たって、現在はコンピュータ関係は扱っていない、と。
ん〜、そちらのほうは一体どうなったんだろう。ちょっと気になる。
さらに検索を重ねると、引っかかってきたのがツイッター。
ttps://twitter.com/akakit/status/1111251040370716673
おや、こちらだと雑誌名は「ソフトウェア」となっている。でも

> 後ろのほうのページの広告によると、別冊ではなく本体のほうの「ソフトウェア科学」
> のキャッチフレーズは「ユーザーのためのコンピュータ専門誌」だそうな。

キャッチフレーズは同じ。
どうやら、雑誌名が「ソフトウェア」から「ソフトウェア科学」に変わったらしい。
さらに追いかけてみたら ttps://acaddb.com/books/articles/5651069 より

> 巻次・年月次
>   2巻5号 (1970.5)-6巻8号 (1974.8) = 通巻9号 (1970.5)-通巻68号 (1974.8)
> 雑誌変遷 ID 00151400
>   ソフトウェア = Software ID AN00285688
>     産報 [編] 産報
>    通号表示併記: <1巻2号 (1969.11)>-2巻4号 (1970.4) = <通巻2号 (1969.11)>-通巻8号 (1970.4)
>     産報 1969-1970

なるほど、最初の8冊だけ「科学」がなかったのね。
ところで、上記「別冊」の後ろページに掲載されている本体の広告は1970年6月号。
ほほう、改題されて2号目、なのか。
また、廃刊はオイルショックのころ。あまり売れなかったということなんでしょう。
大型コンピュータのユーザ向けの雑誌のようですし。
ついでなので、1980年前後、いわゆるマイコンブームを牽引した大手誌の創刊を調べて
みたところ

工学社   I/O    1976年10月創刊
アスキー  月刊アスキー 1977年6月創刊
電波新聞社 月刊マイコン 1977年8月創刊
廣済堂   RAM    1978年2月創刊

ということでした。「ソフトウェア科学」も、あと数年がんばって、さらに路線変更
していたら、という気もしなくもない。


さて、産報。
こちらのほうも、もうちょっと検索をしていたら見つけたのが以下。

ttps://daihanrei.com/l/%E6%9D%B1%E4%BA%AC%E5%9C%B0%E6%96%B9%E8%A3%81%E5%88%A4%E6%89%80%20%E6%98%AD%E5%92%8C%EF%BC%95%EF%BC%94%E5%B9%B4%EF%BC%88%E3%83%AF%EF%BC%89%EF%BC%96%EF%BC%96%EF%BC%96%EF%BC%92%E5%8F%B7%20%E5%88%A4%E6%B1%BA

なんか、有名漫画家の本名が原告の中にある。
原告筆頭の方の名前は知らなかったけど、別の有名漫画家のお兄さんということで、
Wikipediaにも名前が載るくらいの大物。
これが確定判決かどうかはわからないけど、この判決が昭和54年、つまり1979年。
ということは、裁判の期間を考えると、1975年前後から、この産報という会社、いろいろと
手を出していた模様。多角化経営というヤツでしょう。でも、それがうまく行かなくて
1985年に事業整備ということになったのではないか、と推測できてしまいます。
大ハズレかもしれませんけどね。



あぁ、一体私は何を調べているのやら。
時間のムダとはいわないけど、ちょっと好奇心の方向がアレすぎるような気がする。
      - No.10370 -    このTreeへ    コメント元:10368 へ [リストへもどる] pre

(10351) 10373Re^2: 補遺とか訂正とか  投稿者:文太   2022/11/08(火) 15:20
    10370 番 としき さんへのコメント

 確かに好奇心の方向はアレですが、だいたい話は追えました。
 溶接会社がソフトウェア関連の雑誌をねぇ。

 それぐらいのフットワークの軽さがないと「成功」できないのかも。
 ま、この手の世の中と時流にそった生き方話というのも、たまには
好奇心を引きはします。
 漫画描いてもらったのに、原稿料が払えなかった、とか?

 でも、僕は1980年代のMS-DOS関連を一生いきるらしく……。
 こっちのほうが余程ビョーキ度は高いか重いか、という気がしました。
 正気を失ってはいない、、、と、思う。

 市場規模が違う、というのが大きいのでしょうが、アメリカの雑誌って
pdfがけっこう落ちています。PC (Tech|Disk) Journal, Byte etc etc ....
 日本語のになると、スキャナ(OCR)にかけられない、NEC98
の絶対的時代境界線がある、などの理由で、あまり探す気にならないのです
よねぇ。

 こっちも絶対に最終ラインはあるでしょうが、図書館で本(古い本)
を借りるほうが、僕にはまだ現実的だったりします。
 やがて廃棄処分になってしまうのだろうけど。

      - No.10373 -    このTreeへ    コメント元:10370 へ [リストへもどる] soft

(10351) 10383DOSとBasic  投稿者:文太   2022/11/11(金) 01:14
    10368 番 としき さんへのコメント


 歩いていたら、たまたま目に入って、うーん、そういうことだったんだなぁ、と。
 MSの歴史の中でのOSとBasicの関係。stand-alone Basic と MS-DOSの
ディスク管理という接点。

Microsoft and BASIC

On the surface, BASIC and MS-DOS might seem to have little in common, but in terms of file management,
MS-DOS is a direct descendant of a Microsoft version of BASIC called Stand-alone Disk BASIC.

 上、The MS-DOS Encyclopedia p.3 より。


      - No.10383 -    このTreeへ    コメント元:10368 へ [リストへもどる] soft

(10351) 10378Re^6: 「問題解決」(problem solving)  投稿者:konno   2022/11/09(水) 23:55
    10365 番 としき さんへのコメント    コメント数 1

としきさん

> ところが、ここも合理化の嵐というやつで、テレビ中継の自動化という話になった。
> そのシステムのプログラム作成に携わったのです。
> そして、その仕事をきちんとやり遂げて。
> 数年後、電電公社の職員教育用のコンピュータの教科書の執筆にも携わりました。

お父様は凄い人だったのですね。
最近のNHKのプロジェクトXで富士通VSIBMを見たんですがその時代の人ですよね。
オフィスコンピュータでCOBOLというところなんでしょうか。

現場の人がプログラム作成って、相当のスキルがないと無理だと思います。
今は絶滅しましたが、私もその時代の生き残りだと自負しています。
もっとも私は勝手にやり始めたアムロみたいなもので黙認してもらっていた口ですが。
でも実績こそ力、と思ってやり通しました。


# 絶滅したと思われていたのが地下で千年もROMってたとか・・・以下略

      - No.10378 -    このTreeへ    コメント元:10365 へ [リストへもどる] soft

(10351) 10384Re^7: 「問題解決」(problem solving)  投稿者:としき   2022/11/11(金) 02:06
参照先:http://toshiki.la.coocan.jp/
    10378 番 konno さんへのコメント

> お父様は凄い人だったのですね。

すごすぎるというか。とても私にはまねできない。
自慢の父親、という言い方もできるかもしれませんが、親族からは「あの親の子」
という意味で、私はいささか肩身が狭かった。いや、私よりも、母のほうが大変
だったかも。だって、父方からは、父親が優秀なのに子供が優秀でないとしたら
母親の血のせい、と思われたかもしれないので。
ついでなんで、愚痴を兼ねて、ここで父親自慢させてもらおう。
前にもどこかに書いたかもしれませんが、戦争のとき、甲府に疎開しました。
その後、戦後すぐぐらいだったか、市内の優等賞ということで、甲府の市長さん
から表彰されて、その記念というか副賞の硯は今でも残っている。なお、選考方式
がどういうものだったかは不明。各学校の推薦だったのかなぁ。
家が貧しかったので進学できず、中卒で電電公社(当時の電気通信省)に入ったの
ですが、中学の先生が「私に金があれば援助して進学させたかった」と言ったとか。
ここまで来ると、私ですら「ほんとかよ」といいたくなってしまう。
そして、中卒にもかかわらず、電電公社では最後、管理職になった。
うむ、管理職のかの字にも縁のない私はむなしさを覚える、ということは全くない
ですけどね。

> 現場の人がプログラム作成って、相当のスキルがないと無理だと思います。

当時はそうですよね。だって、今と違って一般人は日常的にコンピュータに触れる
機会なんかなかったはずだし。
でも、エンドユーザコンピューティングとかシステムアドミニストレーションとか、
私は横文字は嫌いなんですが、要は使う人がシステムに携わらないと、真に使い
やすいシステムにはならない。現に私、どっかの偉い人が構築したプログラムに、
毎日のように苦しめられている。理屈では「旧システム+紙」よりも効率化して
あることになっているのだけど、現場は困っているんだぞ〜! > 偉い人

> 今は絶滅しましたが、私もその時代の生き残りだと自負しています。

確かに、一時は絶滅しかかっていました。
でも、今の世の中、DX化なる掛け声の元に、現場でのシステム作成が推奨されて
いる模様です。ただ、これも、なかなか理想どおりとは行かない。
大体、何もわかっていない上のほうのおじさんが声をかけるのって、若くて生きの
いい若手社員。でも、そういう若手社員の場合、逆に現場の業務をわかっていない
んですよ。そして、業務を覚える前にシステムを作らされて、使えないシステムが
乱造される。さらに、本人も業務を覚える暇がないとか、若手社員を鍛えようと
てぐすね引いて待っていた現場では、若手がそちらに取られて人手不足になったり。
なので、実はこの時代、中堅から上、konnoさんのいう「その時代の生き残り」の
人は、なにげに活躍の場が広がっているのでした。
私も、スキル的には若手に毛が生えたようなものですがね。
年齢的には中堅から毛の抜けたようなものになりつつあるので、そっち方面で活躍
したいなぁ。
      - No.10384 -    このTreeへ    コメント元:10378 へ [リストへもどる] soft

(10351) 10355「問題解決法」(problem solving)(^^;  投稿者:konno   2022/11/03(木) 20:08
    10352 番 としき さんへのコメント    コメント数 1

「問題解決」というタイトルで、問題が解決したよ、という話かと思ったのですが
としきさんの書き込みで意味がわかった感じです。英語的表現なのかな。
日本語なら「問題解決法」かなと思ったら、英語にすると同じ「problem solving」なんですね。
ということでタイトルを改ざんしてみました。(^^;

> 昔、大学生のころ、8ビットアセンブラをハンドアセンブルしていた時代。BASIC
> でロジックを組んで、それをアセンブラに落とす、ということをしていました。

これ、VZマクロをアセンブラに変換する感覚だなと、最近は思います。
昔の話をすると、仕事でBASICのプログラムでデータを装置にシリアル伝送した後に印刷する作業がありました。
昔の通信速度は300ボーとか超遅かったので、印刷が終わるまでかなり時間がかかっていました。

この二つを同時に出来ないかと調べたら、8ビットアセンブラのプリンタバッファのソースを雑誌で見つけ
16ビットのアセンブラに自力で翻訳したら動いたので、仕事で使っていました。
8086CPU、ドットプリンタの時代でした。

> これらのうち、問題認識の部分については、かつて、#7387あたりで話題になった
> 『ライト、ついてますか』が話題の中心としている部分だったりしています。

なるほど、文太さんの話はここから繋がっているのですかね。

      - No.10355 -    このTreeへ    コメント元:10352 へ [リストへもどる] soft

(10351) 10356Re: 「問題解決法」(problem solving)(^^;  投稿者:文太   2022/11/03(木) 21:20
    10355 番 konno さんへのコメント    コメント数 1

konnoさん

 ありがとうございます。konno さんがどんな風に感じるか考えるか、興味が
あったんですよね。
 「問題解決」は、ある業界での術語です。としきさんがリンクを示してくれた
とおり、(たぶん)アカデミックな分野での言葉遣い。
 たとえば、「問題解決思考」みたく。

 (注)僕が眺めているパスカル本は、アメリカの大学で、授業で使われること
を想定した教科書です。 なんか言葉遣い("problem solving")や概念を、先生が
一生懸命教えようとしてる感じがする書き方で、ある意味、不自然な感じがしました。
先生本人(著者本人)も自然に沸いてきた言葉を使ってないと自覚している感じ。
 で、CPU本でも、パスカルにふれたとたん、その単語が出てきた。

 うん、konno さんは、あまり馴染みがないと。ある意味、想像のとおり。一部
の流行語だったんだろうと推測。

>8086CPU、ドットプリンタの時代でした。
 おお、すごいじゃないですか。16ビットです。もう MS-DOS がそのチップの
性能を引き出し始めます(始めてた、かもしれない)。 初代IBM機は、8088
のバス8ビットだったはずです。
 パンピア、いろんなところでお目にかかってます。へぇ、という感じ。

 このあたりの展開、c.mos さん、知ってたと思うんですよね。日立に入社して、
まずエディタ作ってたりしてたし。日立は、すぐPCから撤退したみたいなのだ
けど。日本最大の(家電)メーカーなのに。ちなみに、日本の原発の半分を作り
ました。規定で50%のシェアです。日本最大メーカー。もちろん戦前から続く
財閥系。ぜったい潰れない。

 当時の歴史ものを読むと、日本のメーカーが出てくる、出てくる。半導体電子立国
だった、ああ、ジャパン。
 インテルはまだ小さな会社で、嶋先生が活躍し……。

      - No.10356 -    このTreeへ    コメント元:10355 へ [リストへもどる] soft

(10351) 10358Re^2: 「問題解決法」(problem solving)(^^;  投稿者:文太   2022/11/03(木) 22:16
    10356 番 文太 さんへのコメント


 もうちょっとだけ付けたし。
 皆さんがそれほど興味を持つ話ではないと思うけど。

 曖昧な記憶ですが、僕は3週間くらい前に近所の図書館でパスカル邦書を4冊
借りました。そこでも、けっこうこの言葉「問題解決」が出てきていました。
 貸し出し後2週間で延長し、1か月は借りる予定なのに、ろくすっぽ
読めてませんけれど。
 NEC98べったりなのは、気にしてません。NECとIBMの違いが問題に
なる領域に行く予定はないからです。
 ただDOS派としては、日本におけるパスカルは不幸だったなぁ、とは思います。

 前にも書いたかもしれませんが、MS(PC)-DOSV/J 用 Pascal 日本語化パッチは
ベクターにありました。パッチ当て、まだできていません。
 (とらじさんは、どっかで、これを自分でやらなきゃ、と言ってました)

 パスカル? DOS用、Win用が、ネットに落ちています。倒産(?)、売却されて
しまったので、合法/非合法のラインは、かなり曖昧だと思いますが。どのヴァージョンまで?
的に。
 最新版Delphiは(Win7 32bitには入らなかったけど)、ちゃんと商品でした。

 コンパイルできる高級言語で、あそこまで分かりやすい(単語レベルだけど)のって、
僕は、ありがたいと思ってます。
 まだ勉強をし始めてさえいませんし、何やりたいの? も不明なままですが。
 DOSが分かりたい。これは間違いありません。
 もちろん、Cまで、行きます。
 余技でVisual Basicもやります。これは世間との付き合いがあれば、ですが。
 もちろん、最後は、c.mos語です。VzはDOSそのものだと思ってます。
 高橋さんのdump.defを使ってやるのじゃ。List of Listです。

 いま一番たのしいのは(永遠に)、テキスト弄りですね。つまり切った貼ったの
Vzマクロ。


      - No.10358 -    このTreeへ    コメント元:10356 へ [リストへもどる] soft

(10351) 10364Re^2: 「問題解決」(problem solving)  投稿者:文太   2022/11/04(金) 21:20
    10352 番 としき さんへのコメント

>私もこの辺は、わりと基本に忠実なプログラミングをしていましたね。
>昔、大学生のころ、8ビットアセンブラをハンドアセンブルしていた時代。BASIC
>でロジックを組んで、それをアセンブラに落とす、ということをしていました。

 ここ、構造化ってことを言ってますよね。たぶん、おそらく。
 パスカルが偉かったのは、「構造化」を可能にしたってことですよね。

 僕にとって、現在、「基本に忠実なプログラミング」って、ラインエディタです。
edlinとか、使ったことないのだけど。

……
(ln==655)?.
 これも割と最近の発見でした。

……
655q	# sed version

 プログラミングっぽくないでしょうか? 
 結果がでれば問題は解決されるのです。


----- たとえばこんなの -----
目次のページ情報の桁をそろえる。
;Introduction  				viii 
;   A Maze to Think About		x 

:a
	(ln==158)? .
	#> #a
	&#V(65)			;エライ!
	#> #d
>a
----------------------------

      - No.10364 -    このTreeへ    コメント元:10352 へ [リストへもどる] pre