fortran66のブログ

fortran について書きます。

現今のいわゆる自由貿易体制とやらの愚劣

[FT]繁栄するロシア農業 制裁が莫大なチャンスに

www.nikkei.com

 ロシア最大のサケ養殖業者ロシアン・アクアカルチャーは今年に入ってから、寒冷なバレンツ海で、生産量を6倍以上に増やしている。欧米からの輸入制限が引き起こしたロシア食品産業・農業が活況にわいている結果だ。

 消費者が国内産の食品に目を向けるなか、ロシア全土で農場や田畑、栽培ハウス、肥料工場が成長を遂げている。ロシアと西側の関係がこの20~30年で最悪になっていることも成長を後押ししている。

 ロシアが2014年にウクライナに侵攻し、クリミアを併合したことを受け、欧州連合(EU)と米国が一部ロシア企業に制裁を科した後、ロシア政府は欧米からの農産物・食品輸入に対する大々的な禁止措置で反撃した。

 一夜にして、ロシアの肉・魚輸入全体の約6割、乳製品、野菜、果物の輸入の5割が禁止され、国内生産者に莫大なチャンスをもたらした。EUからの食品輸入は13年から16年にかけて4割減少した。

■「海外投資家から大きな関心」
■食品・農業の株価が跳ね上がる
旧ソ連時代の記録を塗り替える
■米著名投資家「金・人、流れ込む」

有料記事なので、全文引用は避けますが、自由貿易が阻害されて国内で産業を回すようになったところ、投資と技術が流入し国内産業が活況を呈し、旧ソ連時代の記録を塗り替える生産量を挙げ、米・EUを抜く小麦輸出国となったようです。

ボーダー最前線 (米・メキシコ) 不法移民「見なくなった」

www.nikkei.com

 米国境警備隊のガブリエル・アコスタさん(41)は不法移民の取り締まりに割く労力が減り、「麻薬密売人などの検挙が増えた」と胸を張った。

 農業支援団体の関係者は「農家は米国人を雇いたくても応募がない。不法移民なくてはやっていけない」と打ち明けた。

奴隷労働や自国民搾取の上で成り立つ焼き畑農業式ビジネスモデル、自国民への教育・福祉・正当な対価すら放棄して他国が教育・育成した上がりだけを盗もうとする自由貿易体制とやらの愚劣さよ。

とはいえ現今のいわゆる自由貿易体制は国民国家の否定とセットになっているので、教育・福祉の放棄は当然の論理的帰結といえば、はた当然かwww

Guy L. Steele Jr. の講演と Fortran www

Guy L. Steele Jr. が Wirth 流の小さい言語を否定する講演

1998年の講演ですが、アナログビデオのくすんだ色調や OHP シートを手めくりするところなど、今となっては前世紀感の漂う雰囲気です。


Growing a Language, by Guy Steele

Fortran については冒頭で、チミ達が最初に好きになったころとは(言語がデブって)似ても似つかぬ姿になったろうとくさしています。Thinking Machine 社に居た頃、あんたが CM-Fortran や HPF (High Performance Fortran) でデブらせたんだろうとw 今世紀に入ってさらにデブってますけど。
f:id:fortran66:20170903021037j:plain

N. Wirth は必要最小限の要素まで言語要素を削ってゆく方針ですが、Guy L. Steele Jr.は小さい言語では駄目だと結論して、その実演のため1音節の単語のみがプリミティブだとして、二音節以上の英単語は定義してから話を進める面白講演をしています。

また言語が発達するには、言語自体を拡張する機能を持たせねばならぬとして、PASCAL・APL などが成功できなかったのは、その点にあると言っています。たしかに N. Wirth 言語は、言語自体の拡張という観念が欠落しています。

講演の最後では Java演算子オーバーロードとジェネリックを入れて、SUN が手を下さずともユーザーコミュニティーが自分で成長させる言語にすると言ってますが、その後の展開は如何でしょうか。数年前 Fortress 失敗の原因を Java の記述力の低さと言ってました。

Guy L. Steele Jr. が並列プログラムについて語る講演

講演冒頭で Fortran について DO LOOP を出して並列演算できない代表としてくさしていますが、30年前からソースコードレベルで、明示的に順序依存の DO LOOP と、順序非依存の配列演算や FORALL(25年前)を書き分けられることは HPF 規格策定にかかわってたあんたが知らないわけないだろうと(笑)


Four Solutions to a Trivial Problem - Guy Steele Jr.

従来の線形リストのような順序に依存する(イテレータ向きの)構造が並列化に向かないことを指摘していますが、出してくるネタは自分が 1980年代に Thinking Machine 社に居た頃考えた、結合則を利用して演算を Log2(N) ステップで実行するFFTっぽいアレでした。

Data parallel algorithms

https://scholar.google.com/citations?view_op=view_citation&hl=ja&user=Ur3sFscAAAAJ&cstart=120&sortby=pubdate&citation_for_view=Ur3sFscAAAAJ:u5HHmVD_uO8C


結合則はどのくらい成立するのか?スカラーの場合はいいとして、例えば行列-ベクトル積の反復は結合則が成り立つが、行列-行列積は演算量がオーダー一つ上がるのでこちらの累積冪を求めると並列化の効果が消されるのでは?などと様々な思いが去来します。

そもそも数学基礎論的な、ペアノ式に一次元全順序のリストから順序数を構成してしていく構造を写したイテレータ依存のアプローチは、基礎論でも実数論のところに来たところで選択の公理が突然でてきて、配列演算的(要素毎演算的)に順序に依らぬ処理が(手続きの詳細抜きで)一括で行われるようになる点に鑑みて、出発点がおかしい気がしなくもない。

メモ帳 HPF規格

HPF

High performance Fortran language specification (PARTI)
High performance Fortran language specification

(PART I)Fortran Forum is reprinting this High Performance Fortran Language Specification over several issues. The current issue is devoted to the first four chapters of the HPFF Language Specification. Remaining chapters of the HPFF Language Specification, and the HPFF Journal of Development, will be printed in installments in filture issues of Fortran Forum.


High Performance Fortran: Language Specification (PART II)
High Performance Fortran

(PART II)Fortran Forum is reprinting this High Performance Fortran Language Specification over several issues. Sections 1-4 of the Specification appeared as Fortran Forum (12:4), December 1993. The current issue is devoted to Sections 5-7. Remaining sectionsof the HPFF Language Specification, and the HPFF Journal of Development, will be printed in installments in future issues of Fortran Forum.

Intrinsic and library procedures
Extrinsic procedures
Storage and sequence association


High performance Fortran language specification (part III)
High performance Fortran language specification (part III)

The High Performance Fortran Forum (HPFF), a coalition of over 40 industrial, academic, and government organizations, met from March 1992 to March 1993 to discuss and define High Performance Fortran (HPF), a set of extensions to Fortran 90. The goal was to address the problems of writing data parallel programs for architectures where the distribution of data impacts performance. While it is intended that the HPF extensions will become widely available, HPFF is not sanctioned or supported by any official standards organization. More information is available from Chuck Koelbel: chk@cs.rice.edu

High Performance Fortran Handbook (Scientific and Engineering Computation)

High Performance Fortran Handbook (Scientific and Engineering Computation)

メモ帳 Fortran の歴史参考文献

Michael Metcalf, History of Fortran (2002)

Fortran の歴史について書いた本のリスト集。

History of Fortran

Often questions arise that relate to the history of Fortran and to the development of its various standards: "why was feature x included/excluded?", "which statement was in which standard?", "was there a conspiracy to do this, that or the other?", etc. Answers to all these and more can be found in the literature. I have tried to assemble a short list of books and journals that should be relatively easy to find or obtain in a good academic library, in the hope that it can be of service to such enquirers.

まさにこれが気になる点w 陰謀論

"why was feature x included/excluded?", "which statement was in which standard?", "was there a conspiracy to do this, that or the other?"

A. M. Gorelik, Statements, data types and intrinsic procedures in the Fortran standards (1966-2008) (2014)

命令・関数等の規格出入りの一覧表。これぞ学者の労作!
Statements, data types and intrinsic procedures in the Fortran standards (1966-2008)

コロナ・プログラム・シリーズ〈第4〉Fortran語入門 (1963)

主に IBM 社の FORTRAN II を機種ごとに解説したもの。FORTRAN I,IV の記述もあり。

変数(配列[77 以降では文字変数])に FORMAT 文相当の文字を入れて、FORMAT を動的に変更する可変 FORMAT 機能は、1960年の FORTRAN II の増補で入った。

UNIVAC 1107 FORTRAN IV に alternate return (例外処理の元祖)と entry 機能(Module の元祖)、abnormal 関数指定(関数副プログラムの純粋性の保証、[im]pure 識別子)がすでに存在していた。

FORTRANで童話もどき!

昭和30年代にメキシコでコンピュータに小説を書かせていた!(たぶん)FORTRAN

新聞によりますと、昭和三十年代末にメキシコの大学にてジョーゼフ・グライムズ氏が、露人ウラジミール・プロップ氏による「民話の法則」なるものに基づいて、モンテカルロ法によるおとぎ話の自動生成に取り組んでいたそうです。これは従来、昭和四十年代後半とされていたコンピュータによる小説生成の起源を遡らせるものだそうです。

プログラムには FORTRAN が使われたであろうとのことです。

なお、この試みは後に放棄されましたが、その理由は生成される話がつまらなかったからだそうです。

テンプレ・ラノベやエロ同人なら問題なし!コンピュータによる自動生成の日も近い!

www.theregister.co.uk

Grimes' Fairy Tales: A 1960s Story Generator

Grimes later reworked his program, “probably in FORTRAN”, to run on an IBM 1401, but eventually he abandoned the project because the stories were “all boring”.

https://www.researchgate.net/publication/319301897_Grimes%27_Fairy_Tales_A_1960s_Story_Generator

メモ帳 Fortran 規格まとめ 続き

FORTRAN 規格の歴史

Martin N. Greenfield, History of FORTRAN standardization (1982)
History of FORTRAN standardization

FORTRAN66 規格制定時の経緯に詳しい。プログラム言語の規格化という初めての挑戦の苦労、方言の乱立する言語の規格化という事情、IBM 社の FORTRAN IV を基本に据えたものの IBM 社内にも FORTRAN の規格・定義がなかったこと、メタ言語による記述をあきらめて英語で記述することにしたこと、それまでの ASA 規格にない長大な規格文書になったために審査に1年以上かかったこと、定義に注意を払ったにもかかわらず曖昧さの指摘が多く寄せられて、それらの解釈を定めるに至ったことなど。

また FORTRAN77 では 1971年頃には規格がまとまると考えていたのが伸びたこと、構造化命令が BLOCK IF 文だけになった経緯、曖昧さが多かった 66 規格の反省から明瞭な規格とするために文書が肥大したこと等、さらに Fortran8x 規格の初期構想(クリーンなコア言語+モジュールによる過去互換等)にも触れられている。

ASA Standard FORTRAN

前書き
W. P. Heising, History and summary of FORTRAN standardization development for the ASA
History and summary of FORTRAN standardization development for the ASA
本文
S. Gorn, FORTRAN vs. Basic FORTRAN: a programming language for informational processing on automatic data processing systems
FORTRAN vs. Basic FORTRAN

曖昧さへの解釈定義補足

Clarification of Fortran standards—initial progress (1969)
Clarification of Fortran standards—initial progress

In 1966, after four years of effort, FORTRAN became the first programming language standardized in the United States. Since that intital achievement, study and application of the standard specifications have revealed the need for maintenance of the standards. As the result of work intiated in 1967, as initial set of clarifying interpretations has been prepared. The nature of the maintenance, corrections to the standard specifications, and completed interpretations are reported.

Clarification of Fortran standards—second report (1971)
Clarification of Fortran standards—second report

In 1966, after four years of effort, Fortran became the first programming language standardized in the United States. Since that initial achievement, study and application of the standard specifications have revealed the need for maintenance of the standards. As the result of work initiated in 1967, an initial set of clarifying interpretations was prepared and this clarification was published in Communications of the ACM in May 1969. That work has continued and has resulted in the preparation of this second set of clarifying interpretations. The nature of the maintenance and the new set of corrections to and interpretations of the standard specifications are reported.

FORTRAN77 紹介

Walt Brainerd, Fortran 77 (1978)
Fortran 77

There is a new standard Fortran. The official title is “American National Standard Programming Language Fortran, X3.9-1978,” but it is more commonly referred to as “Fortran 77,” since its development was completed in 1977. It replaces the Fortran standard designated X3.9-1966. This paper describes many of the features of Fortran 77 and also provides some information about how and why the standard was developed.

Fortran90 紹介

JeanneAdams, Fortran forum year (1985)
Fortran forum year - ScienceDirect

The ANSI Fortran Standards Committee, X3J3, is now completing a Fortran Forums Program that began in April, 1984 at CERN in Geneva, Switzerland. The program was initiated to solicit user
input on the draft revision of the Fortran Language currently nearing completion and to explain some of the less commonly understood features proposed in a questionnaire distributed.

Fortran8x の構想スケッチmp提示、取り入れる機能へのアンケートなどがなされています。

Jeanne Adams and Walt Brainerd, Fortran 8x, the draft Fortran standard revision (1988)

Fortran 8x, the draft Fortran standard revision - ScienceDirect

The Fortran 8x draft standard, as forwarded to X3 for further processing as an American National Standard, is summarized. A way to evolve Fortran as a modern language now and into the future is described.

W.S.Brainerd, The programming language standards scene, ten years on Paper 5: Fortran (1994)

The programming language standards scene, ten years on Paper 5: Fortran - ScienceDirect

This paper, one of a simultaneously published set on ten years of activity in programming language standards describes the developments in standardization of the programming language Fortran which have taken place in the period 1983–1993.

Jeanne Adams and Walt Brainerd, A little history and a Fortran 90 summary (1996)

A little history and a Fortran 90 summary - ScienceDirect

Some of the history of the development of the Fortran language is presented, from a de facto standard early in the 1950s at IBM to the major revision that Fortran 90 represents. The article concludes with a short description of the major features of the language.

メモ帳 Fortran 文書まとめ 

FORTRAN66 規格策定準備時点でのメモ

W. P. Heising, History and summary of FORTRAN standardization development for the ASA (1964)
History and summary of FORTRAN standardization development for the ASA

FORTRAN は、コンピュータ言語として初めて公的な規格となるべく議論が重ねられました。

この号の目次を見ると、コンピュータプログラムは特許の対象となり得るか?などということを論じています。

初期の IBMメインフレームのソフトウェアは、特許や著作権のようなもので保護されていないため、パブリックドメイン扱いで、OS・Compiler 共々そのエミューレータとともにネットに出回っています。

FORTRAN77 規格時点での回顧

Martin N. Greenfield, History of FORTRAN standardization (1982)
History of FORTRAN standardization

岩波FORTRAN辞典

岩波FORTRAN辞典

Fortran8x

Walter S. Brainerd, The current programming language standards scene II: FORTRAN (1983)

The current programming language standards scene II: FORTRAN - ScienceDirect

14 個も言語が並ぶ中の筆頭が Fortran

Fortran 8X Explained

Fortran 8X Explained

Programming Language Standardisation (Ellis Horwood Series in Computers and Their Applications)

Programming Language Standardisation (Ellis Horwood Series in Computers and Their Applications)

Programming Language Standardisation (Ellis Horwood Series in Computers and Their Applications)

Programming Language Standardisation (Ellis Horwood Series in Computers and Their Applications)


Fortran90 規格 光と影

Brian Meek, The Fortran (not the foresight) Saga: the light and the dark (1990)

The Fortran (not the foresight) Saga: the light and the dark

The Fortran (not the foresight) saga


(子供の頃本棚に、フォーサイト家、チボー家、楡家、ブッテンブローグ家、スワン家とか色々並んでたけど、結局バスカビル家だけ読んだwww)

High Performance Fortran の興亡

The rise and fall of High Performance Fortran
講演のビデオがあることが分かりました。Table of contesnts から。

Proceedings of the third ACM SIGPLAN conference on History of programming languages

同じ号に、
Niklaus Wirth, Modula-2 and Oberon もあります。 Guy Steele, Bjarne Stroustrup 等の有名人の講演もあります。

High Performance Fortran Handbook (Scientific and Engineering Computation)

High Performance Fortran Handbook (Scientific and Engineering Computation)

PCクラスタで並列プログラミング―High Performance Fortranで楽々並列化

PCクラスタで並列プログラミング―High Performance Fortranで楽々並列化