Language Update Perl (小飼弾さんの代理) 竹迫 良範. 2006/06/30 2 LL イベント の歴史を 振り返る.

Slides:



Advertisements
Similar presentations
オブジェクト指向 言語 論 第八回 知能情報学部 新田直也. 多相性(最も単純な例) class A { void m() { System.out.println( “ this is class A ” ); } } class A1 extends A { void m() { System.out.println(
Advertisements

Wiki 的年寄りの昔話 WikiBase と YukiWiki 1.x. Wiki Wiki って言うけどさ。 こんなの見たことあるかよ?
C 言語講座第 5 回 構造体. 構造体とは ... 異なる型の値をまとめて新しい型とする 機能がある . つまり , 複数の変数を 1 つのまとまりにできる . 配列と違って同じ型でデータをまとめるのではな く違った型のデータをまとめられる .
© 2005 株式会社はてな 本資料の一部または全部の無断複製・転載を禁じます prototype.js と Perl で Ajax 株式会社はてな 伊藤 直也
P HI T S スクリプト言語を用いた PHITS の連続 実行 Multi-Purpose Particle and Heavy Ion Transport code System title 年 2 月改訂.
Web アプリをユーザー毎に カスタマイズ可能にする AOP フレームワーク
情報・知能工学系 山本一公 プログラミング演習Ⅱ 第3回 配列(1) 情報・知能工学系 山本一公
プログラミング基礎I(再) 山元進.
ISD実習E 2009年6月29日 LISPシステム入門 (第5回) 関数ポインタ eval システム関数.
プログラミング言語としてのR 情報知能学科 白井 英俊.
Shibuya Perl Mongers テクニカルトーク#6 竹迫 良範
情報基礎演習B 後半第5回 担当 岩村 TA 谷本君.
稲葉 一浩 (k.inaba) Python と プログラミングコンテスト 稲葉 一浩 (k.inaba)
プログラミング基礎I(再) 山元進.
2008/03/01 D-BOF k.inaba はじめての initial D 2008/03/01 D-BOF k.inaba
サポート力&フィードバック力 をつけよう ~OpenOffice.orgの場合~
プログラミングパラダイム さまざまな計算のモデルにもとづく、 プログラミングの方法論 手続き型 関数型 オブジェクト指向 代数 幾何.
Lightweight Language Weekend ls-lRシェル
読んだもの1 P0145R1: Refining Expression Evaluation Order for Idiomatic C++
第2回:Javaの変数と型の宣言 プログラミングII 2007年10月2日.
Ruby勉強会(第1回) 2006/06/29 竹内豪.
オブジェクト指向プログラミング(2) OOPの三大要素 「クラス」「ポリモーフィズム」「継承」
第8回 プログラミングⅡ 第8回
Androidソースコード公開後のJNI
Boost.勉強会 #8 大阪 ( ) C++ Tips 3 カンマ演算子編.
の まとめ 2007/04/02 (Mon) / d;id:hzkr
プログラミング演習Ⅰ 課題2 10進数と2進数 2回目.
ML 演習 第 7 回 新井淳也、中村宇佑、前田俊行 2011/05/31.
PHPの基礎と開発手法 Based on PHP5
スクリプト言語を用いたPHITSの連続実行
データ構造と アルゴリズム 第四回 知能情報学部 新田直也.
プログラムの制御構造 選択・繰り返し.
図書館職員のための アプリケーション開発講習会
第7回 プログラミングⅡ 第7回
お仕事にまったく役にたたない内容のコードレビューやりたいと思います。
復習 前回の関数のまとめ(1) 関数はmain()関数または他の関数から呼び出されて実行される.
オブジェクト指向言語論 第十一回 知能情報学部 新田直也.
オブジェクト指向言語論 第八回 知能情報学部 新田直也.
データ構造と アルゴリズム 第五回 知能情報学部 新田直也.
もっと詳しくArrayクラスについて調べるには → キーワード検索
プログラムの制御構造 配列・繰り返し.
PHP 概要 担当 岡村耕二 月曜日 2限 平成22年度 情報科学III (理系コア科目・2年生)
第5章 計算とプログラム 本章で説明すること ・計算の概観と記述法 ・代表的な計算モデル ・プログラムとプログラム言語.
オブジェクト指向言語論 第十一回 知能情報学部 新田直也.
統計ソフトウエアRの基礎.
プログラミング言語論 第十三回 理工学部 情報システム工学科 新田直也.
IF文 START もしも宝くじが当たったら 就職活動する 就職活動しない YES END NO.
C#プログラミング実習 第3回.
図書系職員のための アプリケーション開発講習会
オープンソースソフトウェアに対する コーディングパターン分析の適用
プログラミング入門2 第5回 配列 for文 変数宣言 初期化
JAVA入門⑥ クラスとインスタンス.
モジュール分割.
プログラミング 4 文字列.
オブジェクト指向言語論 第七回 知能情報学部 新田直也.
演算子のオーバーロード.
プログラミング演習I 2003年6月11日(第9回) 木村巌.
データ構造と アルゴリズム 第四回 知能情報学部 新田直也.
データ構造と アルゴリズムI 第三回 知能情報学部 新田直也.
第2話. 第2話 LLカンファレンス の歴史を 振り返る LL Saturday(2003年)
Object Oriented Programming in Perl
君ならどうする – ls-lRシェル Python編
プログラミング入門2 第3回 条件分岐(2) 繰り返し文 篠埜 功.
オブジェクト指向言語論 第十回 知能情報学部 新田直也.
3.テキストボックスによる データ入力 データ入力と表示のプログラム.
C言語講座第5回 2017 構造体.
情報処理Ⅱ 2006年10月20日(金).
情報処理Ⅱ 第8回:2003年12月9日(火).
岩村雅一 知能情報工学演習I 第7回(後半第1回) 岩村雅一
プログラミング 2 静的変数.
Presentation transcript:

Language Update Perl (小飼弾さんの代理) 竹迫 良範

2006/06/30 2 LL イベント の歴史を 振り返る

2006/06/30 3 LL Saturday ( 2003 )

2006/06/30 4 LL Weekend ( 2004 )

2006/06/30 5 LLDN ( 2005 ) 実態:スクリプト言語ヲタの祭り

2006/06/30 6 Web サイト

2006/06/30 7

8 キタ━━ ( ゚∀゚ ) ━━ッ !! 小飼弾 さん

2006/06/30 9

10 ここで、会場の 皆様に 質問

2006/06/30 11

require Dan::Kogai もちろん!

2006/06/30 13 ↓ require jcode.pl ? Perl4  Perl5 jcode.pl  Jcode.pm require Dan::Kogai ↓ use (J|En)code;

use Dan::Kogai 弾さんを使おう

キミならどう書く 2.0 前哨戦 Round 1 お題 「 100 までの素数を列挙せよ」

2006/06/30 16 Brainf*ck で 100 までの素数を列挙してみるテスト

2006/06/30 17

2006/06/30 18 Excel VBAで素数 featuring イルカ 冴子先生

2006/06/30 19 もちろんイルカくんも・・・

2006/06/30 20

2006/06/30 21 勝手に添削コーナー 雑誌やブログの記事に書かれてい る Perl のコードを弾さんが添削してく れる すばらしい連載企画

2006/06/30 22 プロダクションスクリプトに use strict; をつけないと、 左手のサイコレーターが TB をあびせるぞ !

2006/06/30 23 【ITレスラー戦国伝】タブとスペース抗争 の巻 登場人物 サイボウズ科学戦隊所属の IT レスラー 【燕 ( つばくろ ) の Kazuho 】 無所属の IT レスラー【ストロング弾】 謎の IT レスラー【ムッシュ石垣】 Six Apart の IT レスラー【南斗せきむら】 LD 所属の IT レスラー 【キャプター疾風 ( はやて ) 】 iY 所属の IT レスラー【魔人イヤプー】

2006/06/30 24 【ITレスラー戦国伝】タブとスペース抗争 の巻 スペース派閥 C 系の言語 は 4 、 Ruby は 2 いや、 Ruby は 3 スペでしょ タブ(萌ディタ流派) タブで揃えて、萌ディタでタブ幅を動的に切り替 え 保存時に変換 君たちは、 patch のことをきれいさぱーり忘れて いる。 人に patch を送るときには、必ず perl -i.bak -ple 's{^(\t+)}{q( ) x (length($1)*4)}e' old.pl としていただきたい。 秀丸エディタで、 CTRL + A → ALT + E → V → S とするとタブをスペースに変換(約 0.2 秒) そのタブ Acme::Tabify でよくね? Plagger でもいいけど

2006/06/30 25 添削希望のコードをブログで公開するメソッ ド

2006/06/30 26 TMTOWTDI There's more than one way to do it. Perl のスローガン

2006/06/30 27 TMDTWTDI There's more Dan the way to do it. Dan さんの場合

2006/06/30 28 結論 Dan さんの実装も 快く受け入れるの が Perl の文化

2006/06/30 29

Language Update Perl Shibuya.pm 竹迫 良範

2006/06/30 31 Perl6 の開発状況 ← いまここ

2006/06/30 32 多態型 存在型 帰納的 λ λ λ Pugs の登場( 2005 年)

2006/06/30 33 Haskell

Perl 6 で 何が変わるの? 素朴な疑問

2006/06/30 35 5秒でわかる Perl6 メソッド呼び出しを. で書けるように なった Perl5 $obj->method(); Perl6 $obj.method(); → これで Perl も立派な OO 言語の仲間入り!

2006/06/30 36 めでたし、めでたし 終了

Perl 5  6 の Update について もうちょっと詳しく・・・

2006/06/30 38 Perl6 で失ったもの ~後方互換性~ 文字列の連結は. (ドット) → ~ (チル ダ)に Perl5 # メソッド呼び出し $obj->method(); my $a = “ A"; sub func { return "x"; } # 文字列の連結 my $b = $a.func(); Perl6 # メソッド呼び出し $obj.method(); my $a = “ A"; sub func { return "x"; } # 文字列の連結 my $b = $a~func();

2006/06/30 39 配列とハッシュのアクセス方法が変更 はじめての人にもわかりやすく 変数のプレフィクス ルールが変更 Perl5Perl6 = (1, 2, 3); my %hash = ('a'=> 1); # 配列のメンバにアクセス my $x = $array[0]; # ハッシュのメンバにアクセス my $y = $hash{'a'} = (1, 2, 3); my %hash = ('a'=> 1); # 配列のメンバにアクセス my $x # ハッシュのメンバにアクセス my $y = %hash{'a'}

2006/06/30 40 Piping operators ( ) = map { floor($^x / 2) } grep { /^ \d+ <== map { floor($^x / 2) } <== grep { /^ \d+ $/ ==> grep { /^ \d+ $/ } ==> map { floor($^x / 2) }

2006/06/30 41 括弧省略 if, for, while, do ブロックでの(括弧省 略) キータイプの量が少なくなった Perl5Perl6 if ($a eq $b) { print "a=b\n"; } while ($i > 0) { $i--; } if $a eq $b { say "a=b"; } while $i > 0 { $i--; }

2006/06/30 42 Neko operator (ネコ演算子) Damian Conway 氏が OSCON2005 で発音 末尾を含まない「..^ 」 先頭を含まない「 ^.. 」 先頭と末尾を含まない「 ^..^ 」 Perl6 = (1..^5); # (1,2,3,4) = (1^..5); # (2,3,4,5) = (1^..^5); # (2,3,4)

2006/06/30 43 ネコ演算子って・・・ちょwおまwww ネコ耳モード ♪ ^..^ Illustration by SUGIMOTO Yoshiaki June 25, 2005

CPAN Recently Update

2006/06/30 45

2006/06/30 46 ■ 2006 年 : 現在 2941 個のモジュールがリリース

Moose.pm クラス定義をスマートに

2006/06/30 48 Perl6 (Pugs)

2006/06/30 49 Perl5 (Moose.pm)

Moose.pm サブクラスの作成 (派生クラスの継承)

2006/06/30 51 Perl6 (Pugs)

2006/06/30 52 Perl5 (Moose.pm)

Perl 5.9.x 開発版

2006/06/30 54 Perl の新機能

2006/06/30 55 // 演算子 ( err キーワード) 左辺が undef のときのみ右辺を評価 Perl5 でありがちなデフォルト値バグを回 避 0 (ゼロ) の扱いで失敗 それぞれ || → or, // → err に対応 Perl5Perl6 $num = || 1; $bar = func() or die; $num = // 1; $bar = func() err die;

2006/06/30 56 Perl UNIVERSAL::require が標準添付 実行時に $module を遅延ロードしたい eval “require $module”; $module->require; UNIVERSAL::require を使うと

2006/06/30 57 Catalyst で使われている

2006/06/30 58 Catalyst – Web Framework

Sledge ライブドア社の Web フレームワーク

2006/06/30 60

TripletaiL ユミルリンク社の Web フレームワーク

2006/06/30 62

2006/06/30 63 速報

東京 IT 新聞 2006 年 8 月 17 日

2006/06/30 65

2006/06/ Catalyst 2. Boofy 3. Sledge 4. CGI::Application 5. Soozy 6. Maypole 7. Jifty 8. Mason Perl の Web アプリケーションフレームワーク ランキング

2006/06/30 67 どう見て も サブテカです。 本当に(r y

Jifty 注目の Web フレームワーク

2006/06/30 69 Jifty の特徴 DRY (Don't Repeat Yourself) Full-stack Continuations Form-based dispatch Perl CPAN A Pony ※ あの Audrey Tang も開発に参加

2006/06/30 70

2006/06/30 71

2006/06/30 72 詳しくは …

2006/06/ 年 8 月 25 日発売 【著者】 小飼 弾、宮川達彦、伊藤直也、 川合孝典、水野貴明、加藤 敦、 石垣憲一、栗原由樹、まかまか、 池邉智洋、 ma.la 、竹迫良範、 ささだこういち、可知 豊、秋 山隆道、久保元治、滝澤隆史、 歌代和正 【書名】 まるごと Perl ! Vol.1 【定価】 1,995 円(本体 1,900 円+税)

2006/06/30 74

2006/06/30 75

2006/06/30 76 ソーシャル家計簿サイト powered by Perl CGI::Application で構築 秋のリニュで Catalyst に

Perl フレームワーク 国内実績、既に多数ということ で (わざわざ出場しなくても)

2006/06/30 78 Perl 最強 ! ( ≠ 災凶)

2006/06/30 79 ご清聴ありがとうございました