Pythonの10年とこれから   柴田 淳 @ats   ウェブコア株式会社12年8月6日月曜日
短い自己紹介   「みんなのPython」の著者です   嫁&息子&わんこLove12年8月6日月曜日
Pythonの,10年で変わったこと   変わらなかったことについて話します12年8月6日月曜日
2003年 日本のPython   超マイナー12年8月6日月曜日
2003年にPythonの発表をしたとき   •珍獣扱い     • 「インデント,ウザくないですか?」という質問があった     • 意味が分からない   •外資ヘッドハントの標的   •秘密兵器的に使っていた12年8月6日月曜日
2003年世界のPython   超メジャー12年8月6日月曜日
期待のルーキー   •標準ライブラリが充実(Battery Included)   •マルチプラットフォーム   •Googleが使い始める(2002年,Python 2.2)   •Python 2.3(2003年7月29日リリース)12年8...
Zope   Pythonのキラーアプリ12年8月6日月曜日
Zope   • サーバ内蔵Webアプリケーションフレームワーク   • オブジェクト指向,メタプログラミングを使った開発   • テンプレート言語   • KVM風のオブジェクトデータベース(ZODB)内蔵   • プリミティブなO/Rマッパ...
Anaconda   GUIインストーラ12年8月6日月曜日
Anaconda   • GUIフレームワークPyGTKベース   • ファンシーなUIでLinuxのインストールベース拡大に貢献   • Linuxのデスクトップは最近では普通にPythonを使っている   • yum   • Pythonな...
NumPy(Numeric)   科学計算ライブラリ12年8月6日月曜日
NumPy(Numeric)   • Pythonの科学計算用ライブラリ   • 大規模な多次元配列,行列のデータ型を内蔵   • 高速な数学ライブラリ   • SciPy(NumPy + MatPlotLib),BioPython,etc. ...
Pythonの                           あんま変わってない             言語としての10年12年8月6日月曜日
Changes between Python 2.3 to 2.7   Python 2.3   Python 2.4   Python 2.5          Python 2.6      Python 2.7     (2003)   ...
Changes between Python 3.0 to 3.3   Python 3.0       Python 3.1        Python 3.2    Python 3.3     (2008)           (2009...
慎重すぎるPython   デコレータの例12年8月6日月曜日
デコレータとは             def foo(self):                 perform method operation             foo = classmethod(foo)            ...
決まるまで4ヶ月かかった(c.f. PEP 318)    def func(arg1, arg2, ...):   |が好きだよ派        pass    func = dec2(dec1(func))      |classmetho...
今時のPythonベースサービス12年8月6日月曜日
利用者の広がり   PythonはWebだけじゃない12年8月6日月曜日
10年で最も進んだ   イノベーション   チープ革命12年8月6日月曜日
チープ革命が科学計算の分野にもインパクトを   • SGI,クレイがコモディティ化したPCサーバに     • 並列計算が主流に   • FORTRANやMathematicaなどの代替としてPythonが選ばれる     • 外部ライブラリと...
Pythonがデファクトとして使われている分野     バイオイン    フォマティクス         自然言語処理    CG             気象科学       GIS   金融工学12年8月6日月曜日
LucasfilmとTwisted   • 2004年から利用   • 分散レンダリングに利用   • 2009年にスポンサーに12年8月6日月曜日
気象とPython   • PyAOS     Python for Atmospheric     and Oceanic Science   • 海洋気象物理学のためのラ    イブラリ   • 日本の気象庁でも利用     • 省庁で日本...
シンプルなのは              いいことだ12年8月6日月曜日
シンプルさがもたらす恩恵   • 複数の実装系     • Jython,IronPython,PyPy   • Python Inspiredな言語など     • Boo,CoffeeScript,Go(?)   • Pythonの世界広が...
そろそろPython 3   • Python 3.3イケてる(2012年8月末リリース予定)   • 主要フレームワーク,ライブラリがPython 3に対応                 みんなのPython               第...
ありがとうございました12年8月6日月曜日
Upcoming SlideShare
Loading in …5
×

LLdeade Python Language Update

9,694 views

Published on

This is the slide of 15 minutes talk at the annual lightweight language event in Japan, which mentions to past decade and future of Python language.

Published in: Technology

LLdeade Python Language Update

  1. 1. Pythonの10年とこれから 柴田 淳 @ats ウェブコア株式会社12年8月6日月曜日
  2. 2. 短い自己紹介 「みんなのPython」の著者です 嫁&息子&わんこLove12年8月6日月曜日
  3. 3. Pythonの,10年で変わったこと 変わらなかったことについて話します12年8月6日月曜日
  4. 4. 2003年 日本のPython 超マイナー12年8月6日月曜日
  5. 5. 2003年にPythonの発表をしたとき •珍獣扱い • 「インデント,ウザくないですか?」という質問があった • 意味が分からない •外資ヘッドハントの標的 •秘密兵器的に使っていた12年8月6日月曜日
  6. 6. 2003年世界のPython 超メジャー12年8月6日月曜日
  7. 7. 期待のルーキー •標準ライブラリが充実(Battery Included) •マルチプラットフォーム •Googleが使い始める(2002年,Python 2.2) •Python 2.3(2003年7月29日リリース)12年8月6日月曜日
  8. 8. Zope Pythonのキラーアプリ12年8月6日月曜日
  9. 9. Zope • サーバ内蔵Webアプリケーションフレームワーク • オブジェクト指向,メタプログラミングを使った開発 • テンプレート言語 • KVM風のオブジェクトデータベース(ZODB)内蔵 • プリミティブなO/Rマッパーを使ってDB操作12年8月6日月曜日
  10. 10. Anaconda GUIインストーラ12年8月6日月曜日
  11. 11. Anaconda • GUIフレームワークPyGTKベース • ファンシーなUIでLinuxのインストールベース拡大に貢献 • Linuxのデスクトップは最近では普通にPythonを使っている • yum • PythonないとLinux動かない12年8月6日月曜日
  12. 12. NumPy(Numeric) 科学計算ライブラリ12年8月6日月曜日
  13. 13. NumPy(Numeric) • Pythonの科学計算用ライブラリ • 大規模な多次元配列,行列のデータ型を内蔵 • 高速な数学ライブラリ • SciPy(NumPy + MatPlotLib),BioPython,etc. • iPythonは科学技術系紀元12年8月6日月曜日
  14. 14. Pythonの あんま変わってない 言語としての10年12年8月6日月曜日
  15. 15. Changes between Python 2.3 to 2.7 Python 2.3 Python 2.4 Python 2.5 Python 2.6 Python 2.7 (2003) (2004) (2006) (2008) (2010) yield文 set型 条件式 with文 Set型のリテラル デコレータ 絶対/相対import except .. as ディクショナリ/ ジェネレータ式 try/except/finally 8/2進数のリテラル Set内包表記 複数行import 例外の バイトリテラル Python 3からの 新スタイルクラス化 バックポート 整数型の統合 クラスデコレータ Python 3からの バックポート12年8月6日月曜日
  16. 16. Changes between Python 3.0 to 3.3 Python 3.0 Python 3.1 Python 3.2 Python 3.3 (2008) (2009) (2011) (2012) print()関数 with文で複数の (モラトリアム期) u”∼”リテラルの復活 context managerを view 受けられるように yield from 比較の変更 浮動小数点の 例外の再構成 整数型の統合 評価方法変更 “/”演算子の変更 文字列型の変更 bytes型 関数注記 キーワードのみ引数 nonlocal文 クラスデコレータ except .. as12年8月6日月曜日
  17. 17. 慎重すぎるPython デコレータの例12年8月6日月曜日
  18. 18. デコレータとは def foo(self): perform method operation foo = classmethod(foo) def foo(cls): pass foo = synchronized(lock)(foo) foo = classmethod(foo) もっと綺麗に書きたい12年8月6日月曜日
  19. 19. 決まるまで4ヶ月かかった(c.f. PEP 318) def func(arg1, arg2, ...): |が好きだよ派 pass func = dec2(dec1(func)) |classmethod def foo(arg1,arg2): pass decorate文が必要だよ派 decorate: @が好きだよ派 classmethod def foo(arg1,arg2): def @classmethod foo(arg1,arg2): pass pass @classmethod 記号で囲むべきだよ派 def foo(arg1,arg2): pass [classmethod] def foo(arg1,arg2) @classmethod: def foo(arg1,arg2): pass pass def foo @classmethod (arg1,arg2): <classmethod> pass def foo(arg1,arg2): pass 前に記号をつけるべきだよ派12年8月6日月曜日
  20. 20. 今時のPythonベースサービス12年8月6日月曜日
  21. 21. 利用者の広がり PythonはWebだけじゃない12年8月6日月曜日
  22. 22. 10年で最も進んだ イノベーション チープ革命12年8月6日月曜日
  23. 23. チープ革命が科学計算の分野にもインパクトを • SGI,クレイがコモディティ化したPCサーバに • 並列計算が主流に • FORTRANやMathematicaなどの代替としてPythonが選ばれる • 外部ライブラリとの連携のしやすさ • NumPy,SciPy,BioPython,MatPlotLib12年8月6日月曜日
  24. 24. Pythonがデファクトとして使われている分野 バイオイン フォマティクス 自然言語処理 CG 気象科学 GIS 金融工学12年8月6日月曜日
  25. 25. LucasfilmとTwisted • 2004年から利用 • 分散レンダリングに利用 • 2009年にスポンサーに12年8月6日月曜日
  26. 26. 気象とPython • PyAOS Python for Atmospheric and Oceanic Science • 海洋気象物理学のためのラ イブラリ • 日本の気象庁でも利用 • 省庁で日本の明日を真剣に考え ているのは気象庁だけ • 日本の明日を真剣に考えている のはPythonだけ12年8月6日月曜日
  27. 27. シンプルなのは いいことだ12年8月6日月曜日
  28. 28. シンプルさがもたらす恩恵 • 複数の実装系 • Jython,IronPython,PyPy • Python Inspiredな言語など • Boo,CoffeeScript,Go(?) • Pythonの世界広がりまくりんぐ12年8月6日月曜日
  29. 29. そろそろPython 3 • Python 3.3イケてる(2012年8月末リリース予定) • 主要フレームワーク,ライブラリがPython 3に対応 みんなのPython 第三版が出るのです (2012年8月末くらい)12年8月6日月曜日
  30. 30. ありがとうございました12年8月6日月曜日

×