作者: KIMURA Koichi
日時: 2008/3/07(16:32)
Fe2+さんとは違って起源とか歴史を調べるのが大好きなBruce.です :)


機械伯爵 さんは書きました:
>> いやいやいや、強調したいのは、まず第一に教育用として作る/作った
>> というのと、結果として教育用としても満足行くものであるというのとは
>> 違うものじゃないか、ということです。で、Pythonは後者ではないかと。
> 
>  ABC言語の失敗を踏まえて「C調(死語)でないとダメ」というのが、
> Pythonの最初の基本方針だったはずです。
> 
>  実用言語として作るなら、別にABCはどうでもいいわけですし、むしろ
> 「実用言語としても使える」言語でないと「教育用言語としても普及しない」
> というニュアンスがあるような気がします。
> 
>  だから、最初から教育用(非プログラマのためのプログラミング言語?)
> のターゲットはあったと考えるんですけどね。

思うのも考えるのもご自由です。わたしが欲しいのはその裏づけとなる
できるだけ本人に近いところからでた本人が残した発言や文書です。


>  まぁ、全ての真実はGuido師の胸中次第ですけど。

であるなら、勝手に「師の胸中を判断して」本来そうではないかもしれないことを
広める結果になるのはいいのでしょうか?

単にそう使われているからという状況があるからそうだというのであれば、
Schemeもお仲間に入りませんか?

>> その伝で行くとPascalについても巷間云われていることについては
>> 少々けちをつけたくなるわけですが :)
> 
>  ヴィルト老師は……Pascalどうだろうなぁ……もともと、文法以上に
> ヴァーチャルマシン用の言語ってトコを強調してたような気がするし、
> こっちは、実用で作ったら教育用の方が適していた、というべきかな?
> ※無論、実用にも使われたわけだけど……


こちらですが、裏づけが取れました :)

Wirthが書いた The Programming Language Pascal というレポート

 http://www.standardpascal.org/The_Programming_Language_Pascal_1973.pdf


に

A programming language called Pascal is described which was developed on
the basis of
Algol 60. Compared to Algol 60, its range of applicability is
considerably increased
due to a variety of data structuring facilities.  In view of its
intended usage
both as a convenient basis to teach programing and as an efficient tool
to write
large programs, emphasis was placed on keeping the number of fundamental
concepts
reasonably small, on a simple and systematic language structure, and on
efficient implementability. A one-pass compiler has been constructed for the
CDC 6000 computer family.  This Report may serve as a programmers' manual
for PASCAL 6000.

とか

1. Introduction
The development of the language Pascal is based on two principal aims.
The first is to make available a language suitable to teach programming
as a systematic discipline based on certain fundamental concepts clearly
and naturally reflected by the language. The second is to develop
implementations
of this language which are both reliable and efficient on presently
available
computers.

という部分がありました。ただ、二つあるうちのひとつなんで、まだ納得
してない部分があったりしますが。


バーチャルマシン云々のほうは、Wikipediaに

In order to rapidly propagate the language, a compiler "porting kit" was
created in Zurich that included a compiler that generated code for a
"virtual" stack machine (i.e. code that lends itself to reasonably
efficient interpretation), along with an interpreter for that code - the
p-code system. Although the p-code was primarily intended to be compiled
into true machine code, at least one system, the notable UCSD
implementation, utilized it to create the interpretive UCSD p-System.
The P-system compilers were termed P1-P4, with P1 being the first
version, and P4 being the last.

というくだりがあるのですが、先ほどのレポートにこの辺に触れた部分は
見当たらないようです(ざっと見ただけなので見落としたかも知れません)


Wikipediaの参考情報にある

Niklaus Wirth: The Programming Language Pascal. 35-63, Acta Informatica,
Volume 1, 1971.

が読めればいいんですけどねえ。

N. Wirth: Recollections about the Development of Pascal. ACM SIGPLAN
Notices, Volume 28, No 3, March 1993.

というのもリンクにあるんですが、ACMの会員でないと本文を読ませてもらえま
せなんだ orz


>  ただ「Oberon」あたりとなると、はっきりと教育用を意識してるような気が
> しますけどね。

だから「気がする」じゃなくてその根拠を示してくださいってば :)

#あーHOPLの本どこにいったかなあ。


-- 
木村浩一/KIMURA Koichi
 I thought what I'd do was, I'd pretend I was one of those deaf-mutes or
shoud I?
 mail kbk at kt.rim.or.jp
 web  www.kt.rim.or.jp/~kbk/zakkicho/index.html