プログラミング言語の標準化
ークラウド時代の模索ー
デザイン思考教育研究所
画像電子学会 国際標準化教育研究会
黒川 利明
2015/11/16 大阪工大 標準化と人材育成セミナー
1
©T. Kurokawa, 大阪工大 標準化と人材育
成セミナー
概要と自己紹介
• プログラミング言語標準化の歴
史
– Fortran、Cobol
– PL/I、Ada
– Pascal, Basic
– Lisp、Prolog
– C, C++
• 変曲点 - Java
– Sun Microsystems
• C#
• ECMAScript、Ruby
• Python、PHP
• クラウド時代
• 計算機数学-形式言語、オート
マトン、グラフ
• 東芝、総合研究所
• Lispシステム
• 府中工場-RDB、Unix
• 第五世代プロジェクト
• IBM
– Prologコンパイラ
– 並列ワークステーション
– PS2商用化
• CSK
– ICES
– Design Thinking
• 金沢工大 虎ノ門
• デザイン思考教育研究所
2
©T. Kurokawa, 大阪工大 標準化と人材育
成セミナー
念の為に
• (国際)標準化とは
• プログラミング言語の標準化とは
• 言葉(例えば、日本語)の標準化との違い
• なぜ、プログラミング言語の標準化が必要な
のか
• プログラミング言語の標準化にはどんな作業
が必要か
• 標準化した後は、どうなるのか
3
©T. Kurokawa, 大阪工大 標準化と人材育
成セミナー
4
©T. Kurokawa, 大阪工大 標準化と人材育
成セミナー
5
©T. Kurokawa, 大阪工大 標準化と人材育
成セミナー
プログラミング言語標準化の歴史
• Fortran、Cobol
– APL、Mumps、Forth、CHILL
• PL/I、Ada
– 強力な言語
• Pascal, Basic – 教育、入門
• Lisp、Prolog
– KCL、第五世代プロジェクト
• C、C++ -- Unix
6
©T. Kurokawa, 大阪工大 標準化と人材育
成セミナー
変曲点 Java
• Sun Microsystems
• Java Study Group ー Bob Mathis
– JTC1 SC 22
• ECMA International
• 知財上の問題点
• Community Process
https://www.jcp.org/en/home/index
7
©T. Kurokawa, 大阪工大 標準化と人材育
成セミナー
C#
• Anders Hejlsberg
– Turbo Pascal, Delphi
• Microsoft
– Intel, HP
• ECMA International
• TC49 WG2 – Google, Microsoft, Xamarin
– https://github.com/ECMA-TC49-TG2/spec/issues
• IL, CLI, Generic, Strong typing + Unsafe
(pointer)
8
©T. Kurokawa, 大阪工大 標準化と人材育
成セミナー
ECMAScript、Ruby
• Netscape, Microsoft
• 1997, Browser War
• Airbnb, Mozilla, jQuery,
Google, Facebook,
Netflix, IBM, Intel,
PayPal, Yahoo!
• 2016以降は、毎年改訂
• まつもとゆきひろ
• 2012、IPA
9
©T. Kurokawa, 大阪工大 標準化と人材育
成セミナー
Python、PHP
• Guido van Rossum
• Community
• Documentation
• 統計、科学技術計算
• インタープリタ
• Library
• Cross platforms
• Python 2.xとPython 3.x
• Rasmus Lerdorf
• The PGP Group
• Facebook
– 社内標準
10
©T. Kurokawa, 大阪工大 標準化と人材育
成セミナー
クラウド時代
• Enterprise  Individual/Community
• 占有 → 共有
• 無償活動
• Globalism
• 反応性、Elasticity
• Hardware → Software (Moore’s Law)
• 分散・並列化
• 標準化と修正主義
– API japan.zdnet.pdf
11
©T. Kurokawa, 大阪工大 標準化と人材育
成セミナー
まとめ
• プログラミング言語がソフトウェア作成・保守
の基盤であることは変わらない
• ソフトウェア開発の問題は、「言語仕様」では
解決しない
• 標準化への大きな流れは、標準になる
• 並列処理への取り組みが技術課題
• 言語の進化は続く(だろう)
12
©T. Kurokawa, 大阪工大 標準化と人材育
成セミナー
著書
• 1.「LISP入門」,培風館,(Jun.1982〉
• 2.「PASCAL8週間」共立出版,(Nov.1982)
• 3.「Prologのソフトウェア作法」,岩波書店,(Nov.1985)
• 4.「新世代プログラミング」,共立出版,1986.(渕一博共編著)
• 5.「Prologプログラミング入門」,オーム社、1987(田村直之共著)
• 6.「作品としてのプログラミング」,岩波書店,1990
• 7.「ソフトウェアの話」,岩波書店,1992
• 8.「オブジェクト指向のおはなし」、日本規格協会、1995.(土居範久編共著)
• 9.「プログラミング言語の仕組み」、情報科学こんせぷつ 2,朝倉書店、1997
• 10.「ソフトウェア入門」,岩波書店,2004
• 11.「情報システム学入門」、牧野書店、2006
• 12.「文庫で読む科学」、岩波科学ライブラリ、2007(共著)
• 13.「渕一博, その人とコンピュータサイエンス」,近代科学社、2010(共編著)
• 14.「クラウド技術とクラウドインフラ―黎明期から今後の発展へ―」、共立出版、
2014
• 15. Service Design and Delivery - How Design Thinking Can Innovate Business and
Add Value to Society, Business Expert Press (August 29, 2015)
13
©T. Kurokawa, 大阪工大 標準化と人材育
成セミナー
訳書
1「コンピュータは考える」、培風舘、1983 (P.McCorduck,MachinesWhoThink)
2「ダイナミック・メモリ」、(黒川容子共訳)、近代科学社、1988(R.Schank,DynamicMemory)
3「インターネットビジネス活用の最前線」、トムソン・パブリッシング・ジャパン、1994
(M.Cronin,Doing Business on the Internet)
4ネットキッズのためのインターネット・ワークブック、D. Frazier,トムソン・パブリッシング・ジャパン、
1995
5英語技術文書の作法、D.Beer、朝倉書店,1998
6科学英文作成の基本、Silyn-Roberts、朝倉書店,1999
7コンピューターサイエンスの英語文書の書き方、J.Zobel、朝倉書店,2000
8数学の限界、 G.J.Chaitin、SIBアクセス,2000
9知の限界、 G.J.Chaitin、SIBアクセス,2001
10 UML仕様書、OMG、アスキー,2001(編集)
11セクシーな数学、G.J.Chaitin、岩波,2003
12メタマス!、 G.J.Chaitin、白揚社、2007
13 Google PageRankの数理―最強検索エンジンのランキング手法を求めて、A.N. Langwille & C.
D. Meyer, 共立出版、2009
14アルゴリズム クイックリファレンス、G. T. Heineman他,オライリージャパン、2010
15情報検索の基礎、Manning他、共立出版、2012
入門 データ構造とアルゴリズム、Karumanchi、オライリー・ジャパン、2013
16プログラミングC# 第7版、I. Griffiths、オライリー・ジャパン、2013
17 Think Bayes -プログラマのためのベイズ統計入門-、Allen B. Downey、オライリー・ジャパ
ン、2014-
18統計クイックリファレンス 第2版、Sarah Boslaugh, オライリー・ジャパン、2015
19 Think Stats-プログラマのための統計入門 第2版、Allen B. Downey、オライリー・ジャパン、
2015 14
©T. Kurokawa, 大阪工大 標準化と人材育
成セミナー

大阪工大プログラミング言語の標準化

  • 1.
  • 2.
    概要と自己紹介 • プログラミング言語標準化の歴 史 – Fortran、Cobol –PL/I、Ada – Pascal, Basic – Lisp、Prolog – C, C++ • 変曲点 - Java – Sun Microsystems • C# • ECMAScript、Ruby • Python、PHP • クラウド時代 • 計算機数学-形式言語、オート マトン、グラフ • 東芝、総合研究所 • Lispシステム • 府中工場-RDB、Unix • 第五世代プロジェクト • IBM – Prologコンパイラ – 並列ワークステーション – PS2商用化 • CSK – ICES – Design Thinking • 金沢工大 虎ノ門 • デザイン思考教育研究所 2 ©T. Kurokawa, 大阪工大 標準化と人材育 成セミナー
  • 3.
    念の為に • (国際)標準化とは • プログラミング言語の標準化とは •言葉(例えば、日本語)の標準化との違い • なぜ、プログラミング言語の標準化が必要な のか • プログラミング言語の標準化にはどんな作業 が必要か • 標準化した後は、どうなるのか 3 ©T. Kurokawa, 大阪工大 標準化と人材育 成セミナー
  • 4.
    4 ©T. Kurokawa, 大阪工大標準化と人材育 成セミナー
  • 5.
    5 ©T. Kurokawa, 大阪工大標準化と人材育 成セミナー
  • 6.
    プログラミング言語標準化の歴史 • Fortran、Cobol – APL、Mumps、Forth、CHILL •PL/I、Ada – 強力な言語 • Pascal, Basic – 教育、入門 • Lisp、Prolog – KCL、第五世代プロジェクト • C、C++ -- Unix 6 ©T. Kurokawa, 大阪工大 標準化と人材育 成セミナー
  • 7.
    変曲点 Java • SunMicrosystems • Java Study Group ー Bob Mathis – JTC1 SC 22 • ECMA International • 知財上の問題点 • Community Process https://www.jcp.org/en/home/index 7 ©T. Kurokawa, 大阪工大 標準化と人材育 成セミナー
  • 8.
    C# • Anders Hejlsberg –Turbo Pascal, Delphi • Microsoft – Intel, HP • ECMA International • TC49 WG2 – Google, Microsoft, Xamarin – https://github.com/ECMA-TC49-TG2/spec/issues • IL, CLI, Generic, Strong typing + Unsafe (pointer) 8 ©T. Kurokawa, 大阪工大 標準化と人材育 成セミナー
  • 9.
    ECMAScript、Ruby • Netscape, Microsoft •1997, Browser War • Airbnb, Mozilla, jQuery, Google, Facebook, Netflix, IBM, Intel, PayPal, Yahoo! • 2016以降は、毎年改訂 • まつもとゆきひろ • 2012、IPA 9 ©T. Kurokawa, 大阪工大 標準化と人材育 成セミナー
  • 10.
    Python、PHP • Guido vanRossum • Community • Documentation • 統計、科学技術計算 • インタープリタ • Library • Cross platforms • Python 2.xとPython 3.x • Rasmus Lerdorf • The PGP Group • Facebook – 社内標準 10 ©T. Kurokawa, 大阪工大 標準化と人材育 成セミナー
  • 11.
    クラウド時代 • Enterprise Individual/Community • 占有 → 共有 • 無償活動 • Globalism • 反応性、Elasticity • Hardware → Software (Moore’s Law) • 分散・並列化 • 標準化と修正主義 – API japan.zdnet.pdf 11 ©T. Kurokawa, 大阪工大 標準化と人材育 成セミナー
  • 12.
    まとめ • プログラミング言語がソフトウェア作成・保守 の基盤であることは変わらない • ソフトウェア開発の問題は、「言語仕様」では 解決しない •標準化への大きな流れは、標準になる • 並列処理への取り組みが技術課題 • 言語の進化は続く(だろう) 12 ©T. Kurokawa, 大阪工大 標準化と人材育 成セミナー
  • 13.
    著書 • 1.「LISP入門」,培風館,(Jun.1982〉 • 2.「PASCAL8週間」共立出版,(Nov.1982) •3.「Prologのソフトウェア作法」,岩波書店,(Nov.1985) • 4.「新世代プログラミング」,共立出版,1986.(渕一博共編著) • 5.「Prologプログラミング入門」,オーム社、1987(田村直之共著) • 6.「作品としてのプログラミング」,岩波書店,1990 • 7.「ソフトウェアの話」,岩波書店,1992 • 8.「オブジェクト指向のおはなし」、日本規格協会、1995.(土居範久編共著) • 9.「プログラミング言語の仕組み」、情報科学こんせぷつ 2,朝倉書店、1997 • 10.「ソフトウェア入門」,岩波書店,2004 • 11.「情報システム学入門」、牧野書店、2006 • 12.「文庫で読む科学」、岩波科学ライブラリ、2007(共著) • 13.「渕一博, その人とコンピュータサイエンス」,近代科学社、2010(共編著) • 14.「クラウド技術とクラウドインフラ―黎明期から今後の発展へ―」、共立出版、 2014 • 15. Service Design and Delivery - How Design Thinking Can Innovate Business and Add Value to Society, Business Expert Press (August 29, 2015) 13 ©T. Kurokawa, 大阪工大 標準化と人材育 成セミナー
  • 14.
    訳書 1「コンピュータは考える」、培風舘、1983 (P.McCorduck,MachinesWhoThink) 2「ダイナミック・メモリ」、(黒川容子共訳)、近代科学社、1988(R.Schank,DynamicMemory) 3「インターネットビジネス活用の最前線」、トムソン・パブリッシング・ジャパン、1994 (M.Cronin,Doing Businesson the Internet) 4ネットキッズのためのインターネット・ワークブック、D. Frazier,トムソン・パブリッシング・ジャパン、 1995 5英語技術文書の作法、D.Beer、朝倉書店,1998 6科学英文作成の基本、Silyn-Roberts、朝倉書店,1999 7コンピューターサイエンスの英語文書の書き方、J.Zobel、朝倉書店,2000 8数学の限界、 G.J.Chaitin、SIBアクセス,2000 9知の限界、 G.J.Chaitin、SIBアクセス,2001 10 UML仕様書、OMG、アスキー,2001(編集) 11セクシーな数学、G.J.Chaitin、岩波,2003 12メタマス!、 G.J.Chaitin、白揚社、2007 13 Google PageRankの数理―最強検索エンジンのランキング手法を求めて、A.N. Langwille & C. D. Meyer, 共立出版、2009 14アルゴリズム クイックリファレンス、G. T. Heineman他,オライリージャパン、2010 15情報検索の基礎、Manning他、共立出版、2012 入門 データ構造とアルゴリズム、Karumanchi、オライリー・ジャパン、2013 16プログラミングC# 第7版、I. Griffiths、オライリー・ジャパン、2013 17 Think Bayes -プログラマのためのベイズ統計入門-、Allen B. Downey、オライリー・ジャパ ン、2014- 18統計クイックリファレンス 第2版、Sarah Boslaugh, オライリー・ジャパン、2015 19 Think Stats-プログラマのための統計入門 第2版、Allen B. Downey、オライリー・ジャパン、 2015 14 ©T. Kurokawa, 大阪工大 標準化と人材育 成セミナー

Editor's Notes