狠狠撸

狠狠撸Share a Scribd company logo
2017 年夏の Perl
Kenichi Ishigaki
@charsbar
YAPC::Fukuoka 2017
July 1, 2017
2017 年夏の Perl 5
Perl 5.26.0 が
出ました
既報の通り
今回はいろいろと壊れる
可能性があります
(※程度は人によります)
encoding プラグマ
の挙動が変わります
× use encoding 'cp932';
○ use encoding 'cp932', Filter => 1;
正規表現中の { の
扱いが変更に
5.16 で廃止、 5.22 以降警告が出ていたの
が
5.26 では死ぬように
$foo =~ /d{1,10}/; # ok
$foo =~ /d{1}/; # ok
$foo =~ /something{}/; # 5.26 ではエラー
$foo =~ /something[{]/; # ok
$foo =~ /something{/; # ok
$foo =~ /{}/; # これも ok
正規表現中の { の
扱いが変更に
$foo =~ /$hash{bar}/; # ok
$foo =~ /$notahash{}/; # 5.26 ではエラー
$foo =~ /${$foo}/; # ok ( デリファレン
ス )
$foo =~ /${${foo}}/; # ok ( デリファレン
ス )
$foo =~ /$foo/; # ok
$foo =~ /${foo}/; # 5.26 ではエラー
$foo =~ /${[^}]*}/; # ではこれは ???
5.28 で一度警告に戻して仕切り直すことになってい
POSIX::tmpnam() が
消えました
必要に応じて File::Temp の適切な関
数、メソッドを使ってください。
@INC から「 . 」が消え
ました
? inc::Module::Install
? テスト中の t::
? 環境設定用の do "localfile.pl"
? CGI スクリプトの require
"localfile.pl"
などを使っている方は要注意
@INC から「 . 」が消え
ました
? まずは CPAN クライアント
と Test::Harness をアップ
デート
? Minilla のようなオーサリン
グツールも
@INC から「 . 」が消え
ました
開発環境や CI 環境など、安全性が担
…保できる場合
?完全に移行が済むまでは環境変数
PERL_USE_UNSAFE_INC=1 が楽
( 移行が済んだら =0 に )
?特に大量のテストを抱えている場合
( 素の prove は . を戻してくれませ
@INC から「 . 」が消え
ました
? do や require は "./localfile.pl" の
ような書き方で回避できます
? do はファイルがなくても死なない
のでカレントディレクトリに該当
のファイルがあると新たに警告を
出すようになりました
do "localfile.pl" failed, '.' is no longer in @INC;
did you mean do "./localfile.pl"?
@INC から「 . 」が消え
ました
? use lib "." や perl -I. はカレント
ディレクトリを最優先させるので
、場合によってはかえって危険
? 迷ったら FindBin を使うか絶対パ
スで
? モジュールの中では @INC をいじ
らない。アプリやスクリプトの起
動時のみで十分
古い Perl 向けの対
策
? 配布するアプリやスクリプトの先
頭でカレントディレクトリを落と
すBEGIN { pop @INC, "." if $INC[-1] eq "" }
? sitecustomize.pl が有効なら、そ
の Perl を使う環境の @INC を調整
可能
レキシカルサブルーチン
が正式化
? 5.18 で実験的に導入
? 基本的にはコードリファレンスで代用可
能
{
my $foo = sub { ... };
$foo->();
}
{
my sub foo { ... }
foo();
}
レキシカルサブルーチン
が正式化
関数にモンキーパッチを当てるときには便
利 (?)
use Test::More;
subtest {
no warnings "redefine";
local *ok = sub { ... };
ok ...
};
use Test::More;
subtest {
my sub ok { ... }
ok ...
};
レキシカルサブルーチン
が正式化
万能ではないです
× my sub Test::More::ok { ... }
○ local *Test::More::ok = sub { ... };
use Test::More;
{
ok ...; # 先に出てきたものは当然ながら元のま
ま
my sub ok { ... }
}
ヒアドキュメント
が
インデント可能に{
my ($key, $value) = qw/foo bar/;
my $json_template = << "END";
{"$key": "$value"}
END
}
ヒアドキュメント
が
インデント可能に{
my ($key, $value) = qw/foo bar/;
my $json_template = <<~ "END";
{"$key": "$value"}
END
}
Unicode 9.0 サポー
トplackup -MEncode -e 'use 5.026; sub {[
200,
["Content-Type" => "text/plain"],
[encode_utf8(
"N{FIRST PLACE MEDAL} ".
"N{TUMBLER GLASS} ".
"N{SNEEZING FACE}"
)],
]}'
http://emojione.com
サブルーチンシグネチャ
がまともな速さに
use 5.020;
use experimental "signatures";
use Benchmark qw/cmpthese/;
cmpthese(10000000, {
no_signature => sub { no_sig(1, "value") },
signature => sub { sig(1, "value") },
});
sub no_sig { my ($num, $str) = @_; return "$num $str" }
sub sig ($num, $str) { return "$num $str";}
v5.20.0
Rate signature no_signature
signature 1261034/s -- -35%
no_signature 1926782/s 53% --
v5.26.0
Rate signature no_signature
signature 2020202/s -- -6%
no_signature 2155172/s 7% --
サブルーチンシグネチャ
がまともな速さに
@{^CAPTURE} 特殊変数
my $str = "2017-07-01: YAPC Fukuoka";
$str =~ /A([^:]+): (w+) (w+)/;
say "$1, $2, $3"; # 2017-07-01, YAPC, Fukuoka
my $str = "????-??-??: YAPC ???";
$str =~ /A([^:]+): (w+) (w+)?/;
say "$1, $2, $3"; # ????-??-??, YAPC, ( 警告 )
my $str = "????-??-??: YAPC ???";
my @capture = $str =~ /A([^:]+): (w+) (w+)?/;
say join ", ", @capture; # ????-??-??, YAPC, ( 警
告 )
my $str = "????-??-??: YAPC ???";
$str =~ /A([^:]+): (w+) (w+)?/;
say join ", ", @{^CAPTURE}; # ????-??-??, YAPC
%{^CAPTURE} 特殊変数
my $str = "2017-07-01: YAPC Fukuoka";
$str =~ /A
(?<date>[^:]+):s
(?<name>w*)s
(?<city>w*)
/x;
say "$+{date}, $+{name}, $+{city}";
# 2017-07-01, YAPC, Fukuoka
%{^CAPTURE} 特殊変数
my $str = "2017-07-01: YAPC Fukuoka";
$str =~ /A
(?<date>[^:]+):s
(?<name>w*)s
(?<city>w*)
/;
say "${^CAPTURE}{date}, ${^CAPTURE}{name},
${^CAPTURE}{city}";
実は特別扱いされていないために 5.26.0 では文字列埋め込
みがおかしな出力に ("{date}, {name}, {city}")
すでにパッチが提供されているので次版で直る見込み
詳しくは
perl(5260)?delta
を
5.28 で廃止が
予定されているも
の
異なる種類のハンドルの
共有はエラーに
5.28 からはファイルハンドルとディレクトリハンドルを
ひとつの変数で共有できなくなります
# 5.26 まで
open my $hd, '<', 'foo.txt';
opendir $hd, 'bar/';
say <$hd>; # foo.txt の中身
say readdir $hd; # bar ディレクトリ配下のファイル名
# 5.27.1
Cannot open $hd as a dirhandle: it is already open
as a filehandle
ヒアドキュメントの
終端は省略不可に
ヒアドキュメントの終端は明示してください
# 5.27.1
print <<; # NG
This has long been deprecated since 5.000.
# 5.26 までは上の空行が終端扱い
Use of bare << to mean <<"" is forbidden
関数呼び出しで継承元の
AUTOLOAD を呼ぶのは禁止
package A;
@ISA = qw/B/;
package B;
our @AUTOLOAD;
sub AUTOLOAD { ... }
package main;
A::foo();
# Use of inherited AUTOLOAD for non-
method A::foo() is no longer allowed
詳しくは
perldeprecation.pod
を
2017 年夏の Perl 6
あの「クリスマス」
から一年半が経ちま
した
「ロースト」のお味、試
してみましたか?
? Perl 6 では実装と仕様が明確に分
かれています
? ラリーが「クリスマス」に持って
きてくれたのは「公式テスト
(Repository Of All Spec Tests) 」の
クリスマス?バージョンです
$ perl6 -v
This is Rakudo version 2017.06 built on
MoarVM version 2017.06
implementing Perl 6.c.
? say $*PERL.version; # v6.c
? say $*PERL.name; # Perl 6
? say $*PERL.compiler.version; # v2017.06
? say $*PERL.compiler.name; # rakudo
? say $*VM.version; # v2017.06
? say $*VM.name; # moar
use 文で制御できるのは v6.c の部分だけ
2017.05 からは
perl6 -V がさらに充
実特に CPAN Testers との統合を目指して、 OS
distribution や Kernel 情報なども表示されるようになっ
ています$ perl6 -V
distro::auth=http://www.debian.org/
distro::desc=2017-06-29T03:22:49.796661+09:00
distro::is-win=False
distro::name=debian
...
kernel::archname=x86_64-linux
kernel::name=linux
kernel::version=3.16.0.4.amd.64
...
開発はいまも活発
に続いています
パフォーマンスや
安定性も着実に向上
Jonathan Worthington 氏が
2 期目の作業を完了しまし
た
(3 期目の助成金も申請中 )- http://news.perlfoundation.org/2017/04/perl-6-performance-and-reliabi-3.html
- https://6guts.wordpress.com/2017/06/08/sorting-out-synchronous-io/
Perl 6 の「安定
性」 ?
? テストがないものは実装があっても
「仕様」ではありません
? 疑問に思ったら設計文書ではなく公式
仕様テスト (ROAST) をご確認ください
? 互換性が壊れるような仕様変更につい
ては ( 開発版には先行実装が含まれる
かもしれませんが ) 正式には次のバー
ジョンに持ち越されます
中には特定の環境にしか公式テス
トが存在しないものがあります
given $*DISTRO.name {
when "macosx" {
#?rakudo.jvm 3 skip "file system events NYI? RT #124828"
subtest &macosx, "does watch-path work on Mac OS X";
unlink $filename; # in case we missed the cleanup
ok !$filename.IO.e, "make sure we don't have a file (2)";
subtest { macosx :io-path }, "does IO::Path.watch work on
Mac OS X";
}
default {
skip "Only OSX tests available", 3;
}
}
perl6/roast/S17-supply/watch-path.t
(for IO::Notification.watch-path)
IOwesomeness
Zoffix Znet 氏が I/O まわりの作業を完了しまし
た
? 実装しかなかった I/O 関係のコードすべ
てにテストとドキュメントが用意されま
した
? 仕様に含めない決定が下されたコードは
( 6.d で)削除されることになります
? パフォーマンスも改善されました
http://blogs.perl.org/users/zoffix_znet/2017/05/completion-
report-perl-6-io-tpf-grant.html
Unicode サポート
? Perl 6 が特にこだわっている分野
のひとつ
? Samantha McVey 氏が collation や
grapheme の扱いを強化中
Unicode サポート
say ?こんにちはこんにちは? ; # 半角? ?のみ
my $ 税率 = 1.08; ($ 金額 ×$ 税率 ).say;
say 100? ÷ ?; # 50000;
# say 100 ** 2 / unival("x[2155]");
say "in-between" if 10 ≦ $num ≦ 1000;
say ?こんにちはこんにちは? ; # 半角? ?のみ
my $ 税率 = 1.08; ($ 金額 ×$ 税率 ).say;
say 100? ÷ ?; # 50000;
# say 100 ** 2 / unival("x[2155]");
say "in-between" if 10 ≦ $num ≦ 1000;
Unicode サポート
見かけ上 1 文字に見えてしまう肌色修飾子なども正しく扱えます
$ perl5 -E 'say length "N{MAN}N{EMOJI MODIFIER FITZPATRICK TYPE-5}"' # 2
$ perl6 -e 'say "c[MAN]c[EMOJI MODIFIER FITZPATRICK TYPE-5]".chars' # 1
$ perl6 -e 'say "c[MAN]c[EMOJI MODIFIER FITZPATRICK TYPE-5]".codes' # 2
親切なエラーメッセー
ジPerl 5 ユーザがやらかしがちなミスは実行
時に正しい書き方を教えてくれます
$ perl5 -E 'say length "N{MAN}N{EMOJI MODIFIER FITZPATRICK TYPE-5}"'
$ perl6 -e 'say length "N{MAN}N{EMOJI MODIFIER FITZPATRICK TYPE-5}"'
# Unsupported use of N{CHARNAME}; in Perl 6 please use c[CHARNAME]
$ perl6 -e 'say length "c[MAN]c[EMOJI MODIFIER FITZPATRICK TYPE-5]"'
# Undeclared routine:
# length used at line 1. Did you mean 'elems', 'chars', 'graphs', 'codes'?
親切なエラーメッセー
ジ
2017.05 からは Perl 5 とは無関係な
ミスも教えてくれるようになりまし
た
$ perl6 -e 'say 42.195.Inf'
No such method 'Inf' for invocant of type 'Rat'.
Did you mean 'Int'?
perl6-js
ついに誰でもコンパイルが可能になりま
した (Node.js 7.x が必要 )
$ git clone https://github.com/rakudo/rakudo.git rakudo-js
$ cd rakudo-js
$ git checkout js
$ perl Configure.pl --backends=moar,js --gen-nqp --gen-moar
$ make js-all
$ ./perl6-js -v
This is Rakudo version 2017.06-223-g85a481c built on JS
implementing Perl 6.c.
$ ./perl6-js -e 'say(123)'
$ make js-spectest
http://blogs.perl.org/users/pawel_murias/2017/06/rakudojs-update---
build-sanely-and-passes-some-spec-tests.html
エコシステム
https://modules.perl6.org/
?2017 年 6 月の時点で 840 くら
い
?最終更新が「クリスマス」以
前のものは動かないかも
Perl 6 Ecosystem
Toaster最新のコミットでどの程度エコシステムが
壊れたかを確認できるように
https://toast.perl6.party/
https://perl6.party/post/Perl-6-Release-Quality-Assurance-Full-
Ecosystem-Toaster
Perl 6 のモジュールを書
く
とりあえず何か書いてみたいという
方は
skaji さんの App::Mi6 を
# panda は正式に開発終了になりました
$ zef install App::Mi6
===> Searching for: App::Mi6
===> Updated cpan mirror: https://raw.githubusercontent.com/ugexe/Perl6-
ecosystems/master/cpan.json
===> Updated p6c mirror: http://ecosystem-api.p6c.org/projects.json
$ mi6 new Your::Perl6::Module
書き上がったモジュールは
CPAN へ
5 月に開催された Perl Toolchain Summit
で Perl 6 のディストリビューションもそ
のまま PAUSE にアップロードできるよう
になりました
? 内部的には作者の Perl6 ディレクトリに移動
? App::Mi6 を最新にすれば CPAN へのアップ
ロードも可能に
$ mi6 dist
$ mi6 upload
書き上がったモジュールは
CPAN へ
最新の zef は CPAN のモジュールも認識し
ます
$ zef list --max=100
...
===> Found via Zef::Repository::Ecosystems<cpan>
Inline:ver('1.2.1')
Inline:ver('1.2')
Inline:ver('1')
IO::Glob:ver('0.1'):auth('github:zostay')
Text::CSV:ver('0.007'):auth('github:Tux')
Text::CSV:ver('0.008'):auth('github:Tux')
Data::Selector:ver('1.01')
Data::Selector:ver('1.02')
NativeCall:ver('1')
...
6.d.PREVIEW
? Rakudo 2017.02 からは最初の 6.c 非互
換機能となる nonblocking await の実装
が入っています
? 試す場合は use v6.d.PREVIEW; で
https://github.com/perl6/roast/blob/master/S17-supply/syntax-nonblocking-await.t
これから学ぶなら
当面はググるよりも信頼できる情報源を頼るの
が吉
?Perl 6 の各種アドベントカレンダー
– https://perl6advent.wordpress.com/
roast/integration/ 以下のテストも参照
– http://qiita.com/advent-calendar/2016/perl6
– http://qiita.com/advent-calendar/2015/perl6
?Perl 6 入門 : http://ja.perl6intro.com
?RosettaCode
https://rosettacode.org/wiki/Category:Perl_6
?公式テスト
?perl6.org
6.c 対応の書籍も続々
と書かれています
https://perl6book.com/
6.c 対応の書籍も続々
と書かれています
? Perl 6 at a Glance (Andrew Shitov; 2017.01.01)
https://deeptext.media/perl6-at-a-glance/ ( 電子書籍版も出ました )
? Think Perl 6
(Laurent Rosenfeld, Allen B. Downey; 2017.05.25)
http://shop.oreilly.com/product/0636920065883.do
? Migrating to Perl 6 (Andrew Shitov)
https://deeptext.media/migrating-to-perl6
? Learning Perl 6 (brian d foy)
https://www.learningperl6.com
6.c 対応の書籍も続々
と書かれています
? Perl 6 Fundamentals (Moritz Lenz)
http://www.apress.com/us/book/9781484228982
? Searching and Parsing with Perl 6 Regexes (Moritz Lenz)
https://leanpub.com/perl6regex
? Web Application Development in Perl 6 (Gabor Szabo)
? Using Perl 6 (Andrew Shitov)
? Perl 6 Deep Dive (Andrew Shitov)
その他の情報源
? Weekly changes in and around Perl 6
https://p6weekly.wordpress.com
? https://twitter.com/perl6org
? Youtube の Perl 6 関連ビデオ
http://bit.ly/perl6_english_video
? 次期バージョンについて
– https://github.com/perl6/specs/blob/master/v6d.pod
– https://github.com/rakudo/rakudo/blob/nom/docs/language_versions.md
? WEB+DB PRESS Vol.93 「 Perl 6 の歩き方」
http://gihyo.jp/dev/serial/01/perl-hackers-hub/003901
2017 年後半の主要
Perl 関連イベント
The Perl Conferences (YAPC)
?2017.06.18-23 (Alexandria, Virginia, USA) ( 終了 )
?2017.08.09-11 (Amsterdam, Netherlands)
Swiss Perl Workshop 2017
?2017.08.25-26 (Villars-sur-Ollon, Switzerland)
London Perl Workshop 2017
?2017.11.25 (London, UK)
Thank you

More Related Content

What's hot (20)

about Perl5.10
about Perl5.10about Perl5.10
about Perl5.10
Kazuki KOMORI
?
OPcache の最適化器の今
OPcache の最適化器の今OPcache の最適化器の今
OPcache の最適化器の今
y-uti
?
モダンmod_perl入門 #yapcasia
モダンmod_perl入門 #yapcasiaモダンmod_perl入門 #yapcasia
モダンmod_perl入門 #yapcasia
鉄次 尾形
?
PHP と SAPI と ZendEngine3 と
PHP と SAPI と ZendEngine3 とPHP と SAPI と ZendEngine3 と
PHP と SAPI と ZendEngine3 と
do_aki
?
php-src の歩き方
php-src の歩き方php-src の歩き方
php-src の歩き方
do_aki
?
笔贬笔の今とこれから2014
笔贬笔の今とこれから2014笔贬笔の今とこれから2014
笔贬笔の今とこれから2014
Rui Hirokawa
?
Ruby 2.5
Ruby 2.5Ruby 2.5
Ruby 2.5
Masahiro Tomita
?
Everyday Life with clojure.spec
Everyday Life with clojure.specEveryday Life with clojure.spec
Everyday Life with clojure.spec
Kent Ohashi
?
笔贬笔の今とこれから2021
笔贬笔の今とこれから2021笔贬笔の今とこれから2021
笔贬笔の今とこれから2021
Rui Hirokawa
?
HHVM Hack
HHVM HackHHVM Hack
HHVM Hack
Masaaki Yonebayashi
?
Good Parts of PHP and the UNIX Philosophy
Good Parts of PHP and the UNIX PhilosophyGood Parts of PHP and the UNIX Philosophy
Good Parts of PHP and the UNIX Philosophy
Yuya Takeyama
?
『How to build a High Performance PSGI/Plack Server』のその後と ISUCON3を受けての話題
『How to build a High Performance PSGI/Plack Server』のその後と ISUCON3を受けての話題『How to build a High Performance PSGI/Plack Server』のその後と ISUCON3を受けての話題
『How to build a High Performance PSGI/Plack Server』のその後と ISUCON3を受けての話題
Masahiro Nagano
?
Norikraて?作るPHPの例外検知システム YAPC::Asia Tokyo 2015 LT
Norikraて?作るPHPの例外検知システム YAPC::Asia Tokyo 2015 LTNorikraて?作るPHPの例外検知システム YAPC::Asia Tokyo 2015 LT
Norikraて?作るPHPの例外検知システム YAPC::Asia Tokyo 2015 LT
Masahiro Nagano
?
Rake
RakeRake
Rake
Tomoya Kawanishi
?
PHP, Now and Then 2011
PHP, Now and Then 2011PHP, Now and Then 2011
PHP, Now and Then 2011
Rui Hirokawa
?
PHPの今とこれから 2013
PHPの今とこれから 2013PHPの今とこれから 2013
PHPの今とこれから 2013
Rui Hirokawa
?
痴补谤苍颈蝉丑ではじめる贰厂滨
痴补谤苍颈蝉丑ではじめる贰厂滨痴补谤苍颈蝉丑ではじめる贰厂滨
痴补谤苍颈蝉丑ではじめる贰厂滨
Iwana Chan
?
15分でCakePHPを始める方法(Nseg 2013-11-09 )
15分でCakePHPを始める方法(Nseg 2013-11-09 )15分でCakePHPを始める方法(Nseg 2013-11-09 )
15分でCakePHPを始める方法(Nseg 2013-11-09 )
hiro345
?
omoon.org の裏側 ?FuelPHP の task 活用例?
omoon.org の裏側 ?FuelPHP の task 活用例?omoon.org の裏側 ?FuelPHP の task 活用例?
omoon.org の裏側 ?FuelPHP の task 活用例?
Sotaro Omura
?
awk v.s. bashどっちが強い?@OSC2011Tokyo
awk v.s. bashどっちが強い?@OSC2011Tokyoawk v.s. bashどっちが強い?@OSC2011Tokyo
awk v.s. bashどっちが強い?@OSC2011Tokyo
Ryuichi Ueda
?
OPcache の最適化器の今
OPcache の最適化器の今OPcache の最適化器の今
OPcache の最適化器の今
y-uti
?
モダンmod_perl入門 #yapcasia
モダンmod_perl入門 #yapcasiaモダンmod_perl入門 #yapcasia
モダンmod_perl入門 #yapcasia
鉄次 尾形
?
PHP と SAPI と ZendEngine3 と
PHP と SAPI と ZendEngine3 とPHP と SAPI と ZendEngine3 と
PHP と SAPI と ZendEngine3 と
do_aki
?
php-src の歩き方
php-src の歩き方php-src の歩き方
php-src の歩き方
do_aki
?
笔贬笔の今とこれから2014
笔贬笔の今とこれから2014笔贬笔の今とこれから2014
笔贬笔の今とこれから2014
Rui Hirokawa
?
Everyday Life with clojure.spec
Everyday Life with clojure.specEveryday Life with clojure.spec
Everyday Life with clojure.spec
Kent Ohashi
?
笔贬笔の今とこれから2021
笔贬笔の今とこれから2021笔贬笔の今とこれから2021
笔贬笔の今とこれから2021
Rui Hirokawa
?
Good Parts of PHP and the UNIX Philosophy
Good Parts of PHP and the UNIX PhilosophyGood Parts of PHP and the UNIX Philosophy
Good Parts of PHP and the UNIX Philosophy
Yuya Takeyama
?
『How to build a High Performance PSGI/Plack Server』のその後と ISUCON3を受けての話題
『How to build a High Performance PSGI/Plack Server』のその後と ISUCON3を受けての話題『How to build a High Performance PSGI/Plack Server』のその後と ISUCON3を受けての話題
『How to build a High Performance PSGI/Plack Server』のその後と ISUCON3を受けての話題
Masahiro Nagano
?
Norikraて?作るPHPの例外検知システム YAPC::Asia Tokyo 2015 LT
Norikraて?作るPHPの例外検知システム YAPC::Asia Tokyo 2015 LTNorikraて?作るPHPの例外検知システム YAPC::Asia Tokyo 2015 LT
Norikraて?作るPHPの例外検知システム YAPC::Asia Tokyo 2015 LT
Masahiro Nagano
?
PHP, Now and Then 2011
PHP, Now and Then 2011PHP, Now and Then 2011
PHP, Now and Then 2011
Rui Hirokawa
?
PHPの今とこれから 2013
PHPの今とこれから 2013PHPの今とこれから 2013
PHPの今とこれから 2013
Rui Hirokawa
?
痴补谤苍颈蝉丑ではじめる贰厂滨
痴补谤苍颈蝉丑ではじめる贰厂滨痴补谤苍颈蝉丑ではじめる贰厂滨
痴补谤苍颈蝉丑ではじめる贰厂滨
Iwana Chan
?
15分でCakePHPを始める方法(Nseg 2013-11-09 )
15分でCakePHPを始める方法(Nseg 2013-11-09 )15分でCakePHPを始める方法(Nseg 2013-11-09 )
15分でCakePHPを始める方法(Nseg 2013-11-09 )
hiro345
?
omoon.org の裏側 ?FuelPHP の task 活用例?
omoon.org の裏側 ?FuelPHP の task 活用例?omoon.org の裏側 ?FuelPHP の task 活用例?
omoon.org の裏側 ?FuelPHP の task 活用例?
Sotaro Omura
?
awk v.s. bashどっちが強い?@OSC2011Tokyo
awk v.s. bashどっちが強い?@OSC2011Tokyoawk v.s. bashどっちが強い?@OSC2011Tokyo
awk v.s. bashどっちが強い?@OSC2011Tokyo
Ryuichi Ueda
?

Similar to 2017年夏の笔别谤濒 (20)

2018年夏の笔别谤濒5
2018年夏の笔别谤濒52018年夏の笔别谤濒5
2018年夏の笔别谤濒5
charsbar
?
20年越しで Perl 4 to 5 した話
20年越しで Perl 4 to 5 した話20年越しで Perl 4 to 5 した話
20年越しで Perl 4 to 5 した話
outerinside
?
笔别谤濒で伝统芸能
笔别谤濒で伝统芸能笔别谤濒で伝统芸能
笔别谤濒で伝统芸能
hitode909
?
笔别谤濒勉强会#2资料
笔别谤濒勉强会#2资料笔别谤濒勉强会#2资料
笔别谤濒勉强会#2资料
Kiyo Tsunezumi
?
実践Sass 後編
実践Sass 後編実践Sass 後編
実践Sass 後編
kosei27
?
惭辞箩辞濒颈肠颈辞耻蝉をウェブ制作现场で使ってみてる
惭辞箩辞濒颈肠颈辞耻蝉をウェブ制作现场で使ってみてる惭辞箩辞濒颈肠颈辞耻蝉をウェブ制作现场で使ってみてる
惭辞箩辞濒颈肠颈辞耻蝉をウェブ制作现场で使ってみてる
jamadam
?
GNU awk (gawk) を用いた Apache ログ解析方法
GNU awk (gawk) を用いた Apache ログ解析方法GNU awk (gawk) を用いた Apache ログ解析方法
GNU awk (gawk) を用いた Apache ログ解析方法
博文 斉藤
?
姫路IT系勉強会 Vol.11 第0回L-1グランプリ bash
姫路IT系勉強会 Vol.11 第0回L-1グランプリ bash姫路IT系勉強会 Vol.11 第0回L-1グランプリ bash
姫路IT系勉強会 Vol.11 第0回L-1グランプリ bash
Jun Nogata
?
详説ぺちぺち
详説ぺちぺち详説ぺちぺち
详説ぺちぺち
do_aki
?
Local php-100828 2
Local php-100828 2Local php-100828 2
Local php-100828 2
Akio Ishida
?
厂补蝉蝉(厂颁厂厂)について
厂补蝉蝉(厂颁厂厂)について厂补蝉蝉(厂颁厂厂)について
厂补蝉蝉(厂颁厂厂)について
Kazufumi Miyamoto
?
知ってるようで意外と知らない笔贬笔の便利関数
知ってるようで意外と知らない笔贬笔の便利関数知ってるようで意外と知らない笔贬笔の便利関数
知ってるようで意外と知らない笔贬笔の便利関数
Wataru Terada
?
鲍搁尝で游ぼう
鲍搁尝で游ぼう鲍搁尝で游ぼう
鲍搁尝で游ぼう
Hiraku Nakano
?
Okinawapm #1
Okinawapm #1Okinawapm #1
Okinawapm #1
Kei Kamikawa
?
とあるプロジェクトのつらみなコード
とあるプロジェクトのつらみなコードとあるプロジェクトのつらみなコード
とあるプロジェクトのつらみなコード
Yuya Taki
?
Rubyにおける構文追加の試み ?ボクとRubyと俺々文法?
Rubyにおける構文追加の試み ?ボクとRubyと俺々文法?Rubyにおける構文追加の試み ?ボクとRubyと俺々文法?
Rubyにおける構文追加の試み ?ボクとRubyと俺々文法?
Kenta USAMI
?
zsh とわたし
zsh とわたし zsh とわたし
zsh とわたし
Toshihiko Shimokawa
?
笔别谤濒6で游ぼう
笔别谤濒6で游ぼう笔别谤濒6で游ぼう
笔别谤濒6で游ぼう
VienosNotes
?
2018年夏の笔别谤濒5
2018年夏の笔别谤濒52018年夏の笔别谤濒5
2018年夏の笔别谤濒5
charsbar
?
20年越しで Perl 4 to 5 した話
20年越しで Perl 4 to 5 した話20年越しで Perl 4 to 5 した話
20年越しで Perl 4 to 5 した話
outerinside
?
笔别谤濒で伝统芸能
笔别谤濒で伝统芸能笔别谤濒で伝统芸能
笔别谤濒で伝统芸能
hitode909
?
笔别谤濒勉强会#2资料
笔别谤濒勉强会#2资料笔别谤濒勉强会#2资料
笔别谤濒勉强会#2资料
Kiyo Tsunezumi
?
実践Sass 後編
実践Sass 後編実践Sass 後編
実践Sass 後編
kosei27
?
惭辞箩辞濒颈肠颈辞耻蝉をウェブ制作现场で使ってみてる
惭辞箩辞濒颈肠颈辞耻蝉をウェブ制作现场で使ってみてる惭辞箩辞濒颈肠颈辞耻蝉をウェブ制作现场で使ってみてる
惭辞箩辞濒颈肠颈辞耻蝉をウェブ制作现场で使ってみてる
jamadam
?
GNU awk (gawk) を用いた Apache ログ解析方法
GNU awk (gawk) を用いた Apache ログ解析方法GNU awk (gawk) を用いた Apache ログ解析方法
GNU awk (gawk) を用いた Apache ログ解析方法
博文 斉藤
?
姫路IT系勉強会 Vol.11 第0回L-1グランプリ bash
姫路IT系勉強会 Vol.11 第0回L-1グランプリ bash姫路IT系勉強会 Vol.11 第0回L-1グランプリ bash
姫路IT系勉強会 Vol.11 第0回L-1グランプリ bash
Jun Nogata
?
详説ぺちぺち
详説ぺちぺち详説ぺちぺち
详説ぺちぺち
do_aki
?
厂补蝉蝉(厂颁厂厂)について
厂补蝉蝉(厂颁厂厂)について厂补蝉蝉(厂颁厂厂)について
厂补蝉蝉(厂颁厂厂)について
Kazufumi Miyamoto
?
知ってるようで意外と知らない笔贬笔の便利関数
知ってるようで意外と知らない笔贬笔の便利関数知ってるようで意外と知らない笔贬笔の便利関数
知ってるようで意外と知らない笔贬笔の便利関数
Wataru Terada
?
とあるプロジェクトのつらみなコード
とあるプロジェクトのつらみなコードとあるプロジェクトのつらみなコード
とあるプロジェクトのつらみなコード
Yuya Taki
?
Rubyにおける構文追加の試み ?ボクとRubyと俺々文法?
Rubyにおける構文追加の試み ?ボクとRubyと俺々文法?Rubyにおける構文追加の試み ?ボクとRubyと俺々文法?
Rubyにおける構文追加の試み ?ボクとRubyと俺々文法?
Kenta USAMI
?
笔别谤濒6で游ぼう
笔别谤濒6で游ぼう笔别谤濒6で游ぼう
笔别谤濒6で游ぼう
VienosNotes
?

More from charsbar (20)

Common boolean class_for_perl5
Common boolean class_for_perl5Common boolean class_for_perl5
Common boolean class_for_perl5
charsbar
?
万国之津梁
万国之津梁万国之津梁
万国之津梁
charsbar
?
Better detection of what modules are used by some Perl 5 code
Better detection of what modules are used by some Perl 5 codeBetter detection of what modules are used by some Perl 5 code
Better detection of what modules are used by some Perl 5 code
charsbar
?
Json(::PP) is a-changing
Json(::PP) is a-changingJson(::PP) is a-changing
Json(::PP) is a-changing
charsbar
?
2016年のPerl (Long version)
2016年のPerl (Long version)2016年のPerl (Long version)
2016年のPerl (Long version)
charsbar
?
JSON, JSON::PP, and more
JSON, JSON::PP, and moreJSON, JSON::PP, and more
JSON, JSON::PP, and more
charsbar
?
perl language update
perl language updateperl language update
perl language update
charsbar
?
2013年の颁笔础狈モジュール作成事情
2013年の颁笔础狈モジュール作成事情2013年の颁笔础狈モジュール作成事情
2013年の颁笔础狈モジュール作成事情
charsbar
?
What you need to remember when you upload to CPAN
What you need to remember when you upload to CPANWhat you need to remember when you upload to CPAN
What you need to remember when you upload to CPAN
charsbar
?
On UnQLite
On UnQLiteOn UnQLite
On UnQLite
charsbar
?
typemap in Perl/XS
typemap in Perl/XS  typemap in Perl/XS
typemap in Perl/XS
charsbar
?
Analyze CPAN, Analyze Community
Analyze CPAN, Analyze CommunityAnalyze CPAN, Analyze Community
Analyze CPAN, Analyze Community
charsbar
?
Annual Report 2012
Annual Report 2012Annual Report 2012
Annual Report 2012
charsbar
?
DBD::SQLite
DBD::SQLiteDBD::SQLite
DBD::SQLite
charsbar
?
CPANTS: Kwalitative website and its tools
CPANTS: Kwalitative website and its toolsCPANTS: Kwalitative website and its tools
CPANTS: Kwalitative website and its tools
charsbar
?
CPANTS 2012
CPANTS 2012CPANTS 2012
CPANTS 2012
charsbar
?
Revisiting ppm
Revisiting ppmRevisiting ppm
Revisiting ppm
charsbar
?
惭辞箩辞濒颈肠颈辞耻蝉::尝颈迟别を使ってみよう
惭辞箩辞濒颈肠颈辞耻蝉::尝颈迟别を使ってみよう惭辞箩辞濒颈肠颈辞耻蝉::尝颈迟别を使ってみよう
惭辞箩辞濒颈肠颈辞耻蝉::尝颈迟别を使ってみよう
charsbar
?
変数、リファレンス
変数、リファレンス変数、リファレンス
変数、リファレンス
charsbar
?
關於perl的 文件翻譯
關於perl的文件翻譯關於perl的文件翻譯
關於perl的 文件翻譯
charsbar
?
Common boolean class_for_perl5
Common boolean class_for_perl5Common boolean class_for_perl5
Common boolean class_for_perl5
charsbar
?
万国之津梁
万国之津梁万国之津梁
万国之津梁
charsbar
?
Better detection of what modules are used by some Perl 5 code
Better detection of what modules are used by some Perl 5 codeBetter detection of what modules are used by some Perl 5 code
Better detection of what modules are used by some Perl 5 code
charsbar
?
Json(::PP) is a-changing
Json(::PP) is a-changingJson(::PP) is a-changing
Json(::PP) is a-changing
charsbar
?
2016年のPerl (Long version)
2016年のPerl (Long version)2016年のPerl (Long version)
2016年のPerl (Long version)
charsbar
?
JSON, JSON::PP, and more
JSON, JSON::PP, and moreJSON, JSON::PP, and more
JSON, JSON::PP, and more
charsbar
?
perl language update
perl language updateperl language update
perl language update
charsbar
?
2013年の颁笔础狈モジュール作成事情
2013年の颁笔础狈モジュール作成事情2013年の颁笔础狈モジュール作成事情
2013年の颁笔础狈モジュール作成事情
charsbar
?
What you need to remember when you upload to CPAN
What you need to remember when you upload to CPANWhat you need to remember when you upload to CPAN
What you need to remember when you upload to CPAN
charsbar
?
typemap in Perl/XS
typemap in Perl/XS  typemap in Perl/XS
typemap in Perl/XS
charsbar
?
Analyze CPAN, Analyze Community
Analyze CPAN, Analyze CommunityAnalyze CPAN, Analyze Community
Analyze CPAN, Analyze Community
charsbar
?
Annual Report 2012
Annual Report 2012Annual Report 2012
Annual Report 2012
charsbar
?
CPANTS: Kwalitative website and its tools
CPANTS: Kwalitative website and its toolsCPANTS: Kwalitative website and its tools
CPANTS: Kwalitative website and its tools
charsbar
?
Revisiting ppm
Revisiting ppmRevisiting ppm
Revisiting ppm
charsbar
?
惭辞箩辞濒颈肠颈辞耻蝉::尝颈迟别を使ってみよう
惭辞箩辞濒颈肠颈辞耻蝉::尝颈迟别を使ってみよう惭辞箩辞濒颈肠颈辞耻蝉::尝颈迟别を使ってみよう
惭辞箩辞濒颈肠颈辞耻蝉::尝颈迟别を使ってみよう
charsbar
?
変数、リファレンス
変数、リファレンス変数、リファレンス
変数、リファレンス
charsbar
?
關於perl的 文件翻譯
關於perl的文件翻譯關於perl的文件翻譯
關於perl的 文件翻譯
charsbar
?

Recently uploaded (11)

LF Decentralized Trust Tokyo Meetup 3
LF Decentralized Trust Tokyo Meetup 3LF Decentralized Trust Tokyo Meetup 3
LF Decentralized Trust Tokyo Meetup 3
LFDT Tokyo Meetup
?
【卒业论文】尝尝惭を用いた惭耻濒迟颈-础驳别苍迟-顿别产补迟别における反论の効果に関する研究
【卒业论文】尝尝惭を用いた惭耻濒迟颈-础驳别苍迟-顿别产补迟别における反论の効果に関する研究【卒业论文】尝尝惭を用いた惭耻濒迟颈-础驳别苍迟-顿别产补迟别における反论の効果に関する研究
【卒业论文】尝尝惭を用いた惭耻濒迟颈-础驳别苍迟-顿别产补迟别における反论の効果に関する研究
harmonylab
?
空间オーディオを用いたヘッドパスワードの提案と音源提示手法の最适化
空间オーディオを用いたヘッドパスワードの提案と音源提示手法の最适化空间オーディオを用いたヘッドパスワードの提案と音源提示手法の最适化
空间オーディオを用いたヘッドパスワードの提案と音源提示手法の最适化
sugiuralab
?
実はアナタの身近にある!? Linux のチェックポイント/レストア機能 (NTT Tech Conference 2025 発表資料)
実はアナタの身近にある!? Linux のチェックポイント/レストア機能 (NTT Tech Conference 2025 発表資料)実はアナタの身近にある!? Linux のチェックポイント/レストア機能 (NTT Tech Conference 2025 発表資料)
実はアナタの身近にある!? Linux のチェックポイント/レストア機能 (NTT Tech Conference 2025 発表資料)
NTT DATA Technology & Innovation
?
ラズパイを使って作品を作ったらラズパイコンテストで碍厂驰赏を貰って、さらに、文化庁メディア芸术祭で审査员推荐作品に选ばれてしまった件?自作チップでラズパイ...
ラズパイを使って作品を作ったらラズパイコンテストで碍厂驰赏を貰って、さらに、文化庁メディア芸术祭で审査员推荐作品に选ばれてしまった件?自作チップでラズパイ...ラズパイを使って作品を作ったらラズパイコンテストで碍厂驰赏を貰って、さらに、文化庁メディア芸术祭で审査员推荐作品に选ばれてしまった件?自作チップでラズパイ...
ラズパイを使って作品を作ったらラズパイコンテストで碍厂驰赏を貰って、さらに、文化庁メディア芸术祭で审査员推荐作品に选ばれてしまった件?自作チップでラズパイ...
Industrial Technology Research Institute (ITRI)(工業技術研究院, 工研院)
?
测距センサと滨惭鲍センサを用いた指轮型デバイスにおける颜认証システムの提案
测距センサと滨惭鲍センサを用いた指轮型デバイスにおける颜认証システムの提案测距センサと滨惭鲍センサを用いた指轮型デバイスにおける颜认証システムの提案
测距センサと滨惭鲍センサを用いた指轮型デバイスにおける颜认証システムの提案
sugiuralab
?
【卒业论文】深层学习によるログ异常検知モデルを用いたサイバー攻撃検知に関する研究
【卒业论文】深层学习によるログ异常検知モデルを用いたサイバー攻撃検知に関する研究【卒业论文】深层学习によるログ异常検知モデルを用いたサイバー攻撃検知に関する研究
【卒业论文】深层学习によるログ异常検知モデルを用いたサイバー攻撃検知に関する研究
harmonylab
?
第1回日本理学疗法推论学会学术大会での発表资料(2025年3月2日 高桥可奈恵)
第1回日本理学疗法推论学会学术大会での発表资料(2025年3月2日 高桥可奈恵)第1回日本理学疗法推论学会学术大会での発表资料(2025年3月2日 高桥可奈恵)
第1回日本理学疗法推论学会学术大会での発表资料(2025年3月2日 高桥可奈恵)
Matsushita Laboratory
?
贬补谤耻办颈厂丑颈苍办补飞补冲尝尝惭を利用した果树农家の経験知の対话的蓄积支援冲诲别颈尘2025
贬补谤耻办颈厂丑颈苍办补飞补冲尝尝惭を利用した果树农家の経験知の対话的蓄积支援冲诲别颈尘2025贬补谤耻办颈厂丑颈苍办补飞补冲尝尝惭を利用した果树农家の経験知の対话的蓄积支援冲诲别颈尘2025
贬补谤耻办颈厂丑颈苍办补飞补冲尝尝惭を利用した果树农家の経験知の対话的蓄积支援冲诲别颈尘2025
Matsushita Laboratory
?
2025フードテックWeek大阪展示会 - LoRaWANを使った複数ポイント温度管理 by AVNET玉井部長
2025フードテックWeek大阪展示会 - LoRaWANを使った複数ポイント温度管理 by AVNET玉井部長2025フードテックWeek大阪展示会 - LoRaWANを使った複数ポイント温度管理 by AVNET玉井部長
2025フードテックWeek大阪展示会 - LoRaWANを使った複数ポイント温度管理 by AVNET玉井部長
CRI Japan, Inc.
?
狈辞诲补滨迟蝉耻办颈冲反省観点の分类に基づく试合の振り返り支援システムに関する有用性検証冲顿贰滨惭2025
狈辞诲补滨迟蝉耻办颈冲反省観点の分类に基づく试合の振り返り支援システムに関する有用性検証冲顿贰滨惭2025狈辞诲补滨迟蝉耻办颈冲反省観点の分类に基づく试合の振り返り支援システムに関する有用性検証冲顿贰滨惭2025
狈辞诲补滨迟蝉耻办颈冲反省観点の分类に基づく试合の振り返り支援システムに関する有用性検証冲顿贰滨惭2025
Matsushita Laboratory
?
LF Decentralized Trust Tokyo Meetup 3
LF Decentralized Trust Tokyo Meetup 3LF Decentralized Trust Tokyo Meetup 3
LF Decentralized Trust Tokyo Meetup 3
LFDT Tokyo Meetup
?
【卒业论文】尝尝惭を用いた惭耻濒迟颈-础驳别苍迟-顿别产补迟别における反论の効果に関する研究
【卒业论文】尝尝惭を用いた惭耻濒迟颈-础驳别苍迟-顿别产补迟别における反论の効果に関する研究【卒业论文】尝尝惭を用いた惭耻濒迟颈-础驳别苍迟-顿别产补迟别における反论の効果に関する研究
【卒业论文】尝尝惭を用いた惭耻濒迟颈-础驳别苍迟-顿别产补迟别における反论の効果に関する研究
harmonylab
?
空间オーディオを用いたヘッドパスワードの提案と音源提示手法の最适化
空间オーディオを用いたヘッドパスワードの提案と音源提示手法の最适化空间オーディオを用いたヘッドパスワードの提案と音源提示手法の最适化
空间オーディオを用いたヘッドパスワードの提案と音源提示手法の最适化
sugiuralab
?
実はアナタの身近にある!? Linux のチェックポイント/レストア機能 (NTT Tech Conference 2025 発表資料)
実はアナタの身近にある!? Linux のチェックポイント/レストア機能 (NTT Tech Conference 2025 発表資料)実はアナタの身近にある!? Linux のチェックポイント/レストア機能 (NTT Tech Conference 2025 発表資料)
実はアナタの身近にある!? Linux のチェックポイント/レストア機能 (NTT Tech Conference 2025 発表資料)
NTT DATA Technology & Innovation
?
ラズパイを使って作品を作ったらラズパイコンテストで碍厂驰赏を貰って、さらに、文化庁メディア芸术祭で审査员推荐作品に选ばれてしまった件?自作チップでラズパイ...
ラズパイを使って作品を作ったらラズパイコンテストで碍厂驰赏を貰って、さらに、文化庁メディア芸术祭で审査员推荐作品に选ばれてしまった件?自作チップでラズパイ...ラズパイを使って作品を作ったらラズパイコンテストで碍厂驰赏を貰って、さらに、文化庁メディア芸术祭で审査员推荐作品に选ばれてしまった件?自作チップでラズパイ...
ラズパイを使って作品を作ったらラズパイコンテストで碍厂驰赏を貰って、さらに、文化庁メディア芸术祭で审査员推荐作品に选ばれてしまった件?自作チップでラズパイ...
Industrial Technology Research Institute (ITRI)(工業技術研究院, 工研院)
?
测距センサと滨惭鲍センサを用いた指轮型デバイスにおける颜认証システムの提案
测距センサと滨惭鲍センサを用いた指轮型デバイスにおける颜认証システムの提案测距センサと滨惭鲍センサを用いた指轮型デバイスにおける颜认証システムの提案
测距センサと滨惭鲍センサを用いた指轮型デバイスにおける颜认証システムの提案
sugiuralab
?
【卒业论文】深层学习によるログ异常検知モデルを用いたサイバー攻撃検知に関する研究
【卒业论文】深层学习によるログ异常検知モデルを用いたサイバー攻撃検知に関する研究【卒业论文】深层学习によるログ异常検知モデルを用いたサイバー攻撃検知に関する研究
【卒业论文】深层学习によるログ异常検知モデルを用いたサイバー攻撃検知に関する研究
harmonylab
?
第1回日本理学疗法推论学会学术大会での発表资料(2025年3月2日 高桥可奈恵)
第1回日本理学疗法推论学会学术大会での発表资料(2025年3月2日 高桥可奈恵)第1回日本理学疗法推论学会学术大会での発表资料(2025年3月2日 高桥可奈恵)
第1回日本理学疗法推论学会学术大会での発表资料(2025年3月2日 高桥可奈恵)
Matsushita Laboratory
?
贬补谤耻办颈厂丑颈苍办补飞补冲尝尝惭を利用した果树农家の経験知の対话的蓄积支援冲诲别颈尘2025
贬补谤耻办颈厂丑颈苍办补飞补冲尝尝惭を利用した果树农家の経験知の対话的蓄积支援冲诲别颈尘2025贬补谤耻办颈厂丑颈苍办补飞补冲尝尝惭を利用した果树农家の経験知の対话的蓄积支援冲诲别颈尘2025
贬补谤耻办颈厂丑颈苍办补飞补冲尝尝惭を利用した果树农家の経験知の対话的蓄积支援冲诲别颈尘2025
Matsushita Laboratory
?
2025フードテックWeek大阪展示会 - LoRaWANを使った複数ポイント温度管理 by AVNET玉井部長
2025フードテックWeek大阪展示会 - LoRaWANを使った複数ポイント温度管理 by AVNET玉井部長2025フードテックWeek大阪展示会 - LoRaWANを使った複数ポイント温度管理 by AVNET玉井部長
2025フードテックWeek大阪展示会 - LoRaWANを使った複数ポイント温度管理 by AVNET玉井部長
CRI Japan, Inc.
?
狈辞诲补滨迟蝉耻办颈冲反省観点の分类に基づく试合の振り返り支援システムに関する有用性検証冲顿贰滨惭2025
狈辞诲补滨迟蝉耻办颈冲反省観点の分类に基づく试合の振り返り支援システムに関する有用性検証冲顿贰滨惭2025狈辞诲补滨迟蝉耻办颈冲反省観点の分类に基づく试合の振り返り支援システムに関する有用性検証冲顿贰滨惭2025
狈辞诲补滨迟蝉耻办颈冲反省観点の分类に基づく试合の振り返り支援システムに関する有用性検証冲顿贰滨惭2025
Matsushita Laboratory
?

2017年夏の笔别谤濒