APLNEWS 2006年10月号


1.VECTOR誌(The Journal of the British APL Association)の最新号(Vol.22 No.3 August 2006)は故Dr.Ken E.Iverson 追憶の特集号でした。博士と共にAPLの生誕とその後に直接関与された面々による博士の逸話などで埋められています。博士およびAPLに関する非常に貴重な資料であると思います。(Latest issue of the VECTOR magazine featured the memorial of Ken Iverson. People, who have worked with Ken during the early development stages and later, contributed his anecdotes etc. It is certainly a very precious document on Ken Iverson and APL.)


記事を寄せた一人である旧知のPaul Berry氏が奥さんSACHIKOさんと来日のついでに相模原の拙宅に遊びにこられました。彼はすでに現役を引退し、Californiaに居を構え、世界各地に旅行し、非常にうらやましい生活をエンジョイしていますが、APLの先輩やなかまの消息と伝えてくれました。また日時は定かではありませんが、11月初旬にMountViewのコンピュータ歴史博物館でAPL生誕40年の記念の集まりがあるそうです。お土産に2004年11月に開催された同博物館でのKen Iversonの追悼式典でのスピーチのCDをくれました。(Mr. Paul Berry, who is one of the contributor of the memorial visited me with his wife during his wife Sachikos home coming. He is now retired and travels widely in Europe and America and enjoys enviable California life, and gave me the latest information on our common friends of APL. He also told me that an event commemorating the 40th birthday of APL is being planned at Computer History Museum at Mount View, California sometime early November. He left me with a CD recording the speeches at the same museum in Nov, 2004 for the memory of Ken Iverson.)


私は9月前半家を留守にしていましたので、帰宅早々VECTOR以外にAPL Quote Quad誌のVol 34、No.4を受け取りました。これは2004年秋号となっていますが、2003年から2005年までの間Quote Quad誌が発行されていませんでしたので、今やっと新しい体制でVol.34のNo.1から発行が再開されたためです。(Iwas absent from home the first half of September and upon coming home I received APL Quote Quad Vol. 34, No. 4 which is the fall issue of 2004. This happens because Quote Quad was not issued in 2003 thru 2005 and they are catching up.)


ACM APL Quote QuadによるAPL Conferenceも2003年にサンディエゴで開催されたのを最後にAPL2000,Dyalog APL,Jなどのグループがそれぞれ別個に国際会議を開催し、統一されたものはありませんでしたが、現在2007年夏にROMAで再びAPL(=Array Processing Languages)の統合した会議が検討されています。

APLが研究、学問的なものから実用的なものに変革を遂げてしまっている現実に正面から取り組む姿勢を見せています。(APL Conference sponsored by ACM Quote Quad was last held in 2003 at San Diego and separate APL meetings were held by such groups as APL200, Dyalog APL and J Software. However, they are planning to have a consolidated conference again in Rome in the summer of 2007. They seem to be trying to face the reality of APL which has transformed from academic studies to business tools already.) 


当時日本IBMの江碕順子さんを中心にAPLユーザー企業からの実用事例の寄稿で成り立っていた機関紙“APLクラブ”(1981年9月から1987年3月までの計34号)はまさしくあるべき姿であったと思います。私もAPLが現在でも商業計算の分野で非常に役に立つことを証明し、記事を寄稿していきたいと思います。(APL Club magazine edited by Masako Esaki of the then IBM -34 issues Sept. 1981 thru Mar. 1987 with the articles contributed by the IBM APL users on their APL applications in Japanese had been the right treatment of APL. I would like to continue to prove the usefulness of this language today and contribute articles widely in those journals as much as I can.)


また、APL生誕40年記念のためのIBM APL Products and Servicesからの依頼記事は期限までに無事送付することができました。IBM広報も巻き込んだ行事になるようです。とりあえず私の記事は少なくとも一部はIBMのインターネットサイトに掲載されるようです。記事の中での日本企業名は時間の都合で、それぞれのご了解を得ずに掲載しましたが、内容については前向きの記事ですので、事後のご了解をいただきたいと思います。(I was able to submit an article in time to IBM APL products and Services to be included (hopefully) in the memorial issue of APL 40th birthday. In the article I have used the names of the companies without previous approval under my personal responsibility, but it is all the affirmative citation and would like to get their approval afterwards.)


2.APLがなぜ企業内で廃れる現象が生じたか(Why APL usage sharply declined in enterprises.)


APLが過去に多くの企業で盛んに利用され、もてはやされた時代(1977〜8年ごろから1987〜8年頃)から見れば現在は極端にその数が減少しています。その原因を探り今後の新しいAPLのあり方を考えて見たいと思います。この現象は程度の差こそあれ世界的な規模で観察されました。APLの衰退は驚異的なパソコンの発達と期を一にしています。すなわちAPLがパソコンをうまく利用し切れなかったと言えると思います。(As compared the the days (1977~8 thru 1987~8), when APL was actively adopted and used by many enterprises, the number of enterprises using APL has declined so dramatically. I would like to look into the reasons why it happened and think of the way APL should take in the future. This phenomenon also happened more or less in the world outside of Japan. It coincided with the tremendous progress of personal computers. It proves APL failed to use PC adequately.)  


日本においては日本語の処理の問題がありました。APL2になってパソコンが使用しているASCII(含むShiftJIS)コードではAPLの特殊文字が日本語とオーバーラップしています。したがってMicroSoftもAPLを正式にサポートすることを表明しているにもかかわらず、現在でもMS WORDやインターネットメールを初めとして、多くの場合APL特殊文字を簡単に使用することができません。(In Japan, we had the problem of Japanese language handling. As APL2 was introduced, ASCII (including Shift JIS) code, as used by PC, overlapped the code used by APL for special characters. Therefore, although Microsoft publicly stated the support of APL, it has been difficult to use APL characters in Word processors and Internet texts.)


一方IBMメインフレフレームの大型機ではEBCDICコードとIBM漢字(2バイトコード)が使用され、メインフレームのAPL2では各国語を取り扱う関係で4バイトコード方式が採用され、日本語の問題は発生しませんでした。IBMはパソコンをあまり重要視していなかったと思われますので、エンドユーザープログラミングの場がメインフレームからパソコンに移動する過程で日本語処理の問題が再びAPLユーザーの前に立ちはだかったわけです。(On the other side, with IBM mainframe APL2, EBCDIC and IBM Kanji code were used and to be able to process all different languages of the world, APL adopted 4-byte code and had no language support problems. It seems that IBM did not regard PC important, as the end-user programming shifted from mainframe to PC problem of Japanese language processing under PC became a insurmountable hurdle for the APL users.)


日本IBMではDOSの時代に日本語APLを製品化しましたが、DOSVとAPL2の出現で再びこの問題を最近まで取り上げることはありませんでした。しかしAPL2ではデータとしての日本語は一貫して努めて製品の機能に組み込んできています。したがって工夫さえすれば日本語の適用業務プログラムを組むことは可能でした。しかしこのことを理解して、APLの普及を推進するところは日本IBMでは出現しませんでした。(IBM Japan developed Nihonngo APL to run under Nihongo DOS, but as DOSV and APL2 appeared, IBM did not take this issue in the eyes of users here. APL2, however, has consistently tried to include the support of the Japanese language as data in APL peripheral functions. Therefore, with some efforts, it had been possible to write natural Japanese language applications. However no one in IBM Japan then could not understand this and continue promotion of APL.)


APLの特殊文字自体の問題は日本ではあまり問題にならないと思いますが、欧米先進諸国では一部にAPLの普及を阻害しているのはこの文字にあると思っている節があり、Ken Iveson自身APL特殊文字を使用しないAPL、すなわちJの開発に残りの人生をささげました。私の理解ではかって製品化された日立のAPLでもAPL文字を使用しない仕組みが取り入れられたようです。IBMのAPL自体もAPL特殊文字を使用しないニーモニック方式がサポートされたことがあります。これは当時APLの文字を入力するのにAPLキーボードが必要であったからです。(APL special characters themselves did not look odd to the average Japanese. But in the west there were some people to consider that it is due to the oddness of the characters that APL did not used widely. Ken Iverson himself devoted his life to the development of the J language which does not use APL special characters. In my understanding, Hitachi APL did not use APL characters. IBM APL itself once supported mnemonic in place of APL special characters. But it was because APL character entry required a hardware APL keyboard at that time.)


しかしこの方式は直感的でないので、むしろAPLに相応しくなく、私のように賛成しない人間も多く、現在のAPL(Jを除く)ユーザーを形成しています。Iverson自身はJ言語開発当時のコンピュータ技術の制約と一般の受け方から、配列処理言語の普及を急ぐためにやむをえないと思っていたことを私に漏らしたことがあります。(However, there were a number of people who did not accept this as non-intuitive and not suitable for APL, and remained as APL (not including J) users today.)  


APL2は設計上内部コードにUnicodeを使用しています。画面設計、印刷機能などMulti−byte(Shift JIS)コードと共にUnicodeのサポートを積極的に進め始め、前にお伝えしたとおり私もその早期実用化のために協力しています。現在私が採用している方式と比べ、Unicode方式で漢字、APL特殊文字交じりの関数リストを印刷するスピードは非常に速く、プログラムもより単純になります。(I understand APL2 uses Unicode internally. Unicode support in addition to the existing multi-byte support is actively started for such functions as Windows dialog design, printer output and graphics, etc. As compared to my current method, adoption of Unicode for printer output has proved much faster speed and much simplified coding.)


APL文字を入力するには昔のように特殊なキーボードは必要ありませんが、APLインタープリターが必要です。しかしAPL Runtime ModuleはAPLフォントと共に一定の条件でIBMから無償で提供されています。またAPLでApplicationを組めば、日本語版のWindows XPには標準で提供されているAPL文字組み込みの漢字フォント“Arial Unicode MS”が利用できます。またこれらのフォントはWindowsのシステムFONTとして導入されますから、特殊記号の挿入機能でWORDやINTERNETの文章において使用することもできます。(To enter APL characters, we no longer need a special hardware of APL keyboard, but we need APL interpreters. APL Runtime Module can be used free if accompanied by APL application package. And it an application is written in APL, you can use Arial Unicode MS font with Kanji and APL characters and this font is included in the Japanese edition of Windows XP. Therefore you can insert APL characters in word processors and internet mails, etc.)


そもそも企業内で誰がどのような形でAPLを使用するかについて明確な分析をする必要があります。APLは忙しい個人が唯一使用できる汎用プログラミング言語であるといえます。しかし大切なことは他の言語と同様に個人の持つプログラム要求以上にファイル入出力、画像処理、印刷出力、画面出力、通信などその周辺機能を利用せざるを得ません。したがって、個人でプログラムする必要のある人は、周辺機能については最も簡単な方法で使用できる仕組みとサポートが提供される必要があります。(We have to look into the problem of who should use APL and how. APL is probably only general purpose programming language, which people in enterprises can use during busy office work. However, it requires handling of such additional functions as file I/O, graphic output, printing, input dialog design and others like any other languages. Therefore, these peripheral functions have to be usable at the simplest methods possible.)


また末端のユーザーでは汎用性の高い業務に直結したプログラムをAPLで組み提供すれば、APLの稼働環境を利用するにしてもAPLのプログラミングは必要がなくなります。またアイコンからの起動を設定すればAPLはまったく意識されません。多くの場合この方式で対応させることが、さまざまな業務のコンピュータ化の推進に非常に役に立ちます。このためにはユーザー部門の細かい要求を短時間に、効率よくプログラム化して提供できる専門スキル集団を利用する体制が必要です。(Besides, the plain users requirements can be processed with APL written application packages without being bothered by APL programming or even the use of APL. If the application packages most suitable to their work are delivered appropriately and the computerization of desk work can be accelerated more. For this purpose, a proper setup tp utilize skilled specialists on this language is required.)


現在日本の大企業はソフトウエアの開発保守に外部の小規模な専門スキル集団を利用することが会社の仕組みと相容れない場合が多く、APLのように個人の適性と能力に大きく依存するツールでは、内部の組織でも、外部の大きなソフトウエア会社でもそのようなスキル集団を育てることが困難である事実を直視することをためらう傾向にあり、海外の先進企業との大きな較差が存在します。これが日本におけるAPLソフトウエア産業の健全な育成の阻害要因になっています。これは日本の企業風土のなせる業で、私の知る限り海外でもAPLスキル集団は小規模で、大変長命で信頼がおけるところがほとんどです。(Today, many Japanese large enterprises are not prepared to use the outside small companies or individuals with high skills. They are hesitant most of time to face the fact that such skills as required by APL depend largely on individual aptitude and ability and rarely developable in large organizations inside or out, including large software companies. In this respect Japan is a little conservative as compared to the advanced enterprises in the west. This consequently hinders a sound development of the APL software industry. As far as I know, most of remaining APL skill groups are reliable and long-lived outside Japan.)


APL言語は非常に簡単な言語で、誰でもが使いこなせるということは正しいけれど、APLを業務処理に利用する場合は、APL言語以外に多くの周辺機能を制御しなければなりません。したがって、自分たちだけの解釈でAPLの利用を推進しようとした企業は周辺機能のサポートが担当IBM SEから提供されなくなった途端に、血が流れなくなり、陳腐化し、自然に消滅していったと考えられます。(It is true that APL as language is simple and something that anyone can use, but APL as applied to day-to day business applications require skills to have commands over many peripheral functions. Therefore as the support of IBM SEs is discontinued , circulation of blood stops and it jist wait for the natural death.)


3.次回予告(Plan for the next issue)


今月はこの記事に避ける時間が少なく、次回からはAPLによる業務プログラム開発の具体例を架空のサンプルでのシリーズ掲載を開始する予定です。(I couldnt spare much time for this news this month, but from the next month, I intend to feature a series of actual programming samples for developing fictitious business applications in APL.)