探検
Perlについて
2008/08/04(月) 20:58:41
質問スレはあるけど、Perl自身について語るスレがないので、立てました。
160デフォルトの名無しさん
2010/07/23(金) 14:29:55 Perl5大冒険の詳細
主人公(オレ) 白野真樹(シロノ シンジュ)
好きな言語はPerl,Objective-C
朝起きてiBookを立ち上げ、暇だったのでパソコンをしてプログラミングをしていた
外は真っ青に晴れ、快晴でセミの音がミンミンないていつもの夏休み・・・
そしてつかれたので、寝てしまった
以降、自分がこの事件に巻き込まれることは思っても居なかった
趣味:野球 ピンポン 筋トレ プログラマのバイト
幼なじみの 蛇山 みよし(ヘビヤマ ミヨシ)
パソコンにあまり興味が無いらしい、だけど前に遊びにいった時、彼の部屋でPython関連の本を見た事がある
パソコンに興味ないのになんで持っているんだろうと不思議に思っていた。
趣味:バイク 車関係の映画鑑賞 酒屋のバイト
高校時代の旧友 山下 誠吾(ヤマシタ セイゴ)
今現在はスリランカに住んでおり
鉱石や宝石の鑑定などを行っている
白野曰く 怪力である
趣味: ウサギの飼育 空手 柔道 筋トレ 地層調査
主人公(オレ) 白野真樹(シロノ シンジュ)
好きな言語はPerl,Objective-C
朝起きてiBookを立ち上げ、暇だったのでパソコンをしてプログラミングをしていた
外は真っ青に晴れ、快晴でセミの音がミンミンないていつもの夏休み・・・
そしてつかれたので、寝てしまった
以降、自分がこの事件に巻き込まれることは思っても居なかった
趣味:野球 ピンポン 筋トレ プログラマのバイト
幼なじみの 蛇山 みよし(ヘビヤマ ミヨシ)
パソコンにあまり興味が無いらしい、だけど前に遊びにいった時、彼の部屋でPython関連の本を見た事がある
パソコンに興味ないのになんで持っているんだろうと不思議に思っていた。
趣味:バイク 車関係の映画鑑賞 酒屋のバイト
高校時代の旧友 山下 誠吾(ヤマシタ セイゴ)
今現在はスリランカに住んでおり
鉱石や宝石の鑑定などを行っている
白野曰く 怪力である
趣味: ウサギの飼育 空手 柔道 筋トレ 地層調査
161デフォルトの名無しさん
2010/07/23(金) 15:04:20 マルチしてんじゃねえよ
うぜえ
うぜえ
162デフォルトの名無しさん
2010/07/23(金) 18:19:54 全然書き込んでねえくせに うぜえじゃねえよバカ^^しね
な?しねバーカが
な?しねバーカが
163名無し
2010/07/23(金) 20:48:44 この星の概要
この星では、酸素もあり呼吸もできる 重力は地球とさほど変わらない
現実世界と少しリンクしているモノがある 痛みがある
自分の体力はメモリであらわされる 呼吸など生命活動のたびにメモリーを消費していく だから人々は、モノをたべ
メモリを確保していくのだ 人の神経を司るのはCPUクロック数が速いほど、力がある
ただしCPUが高くてもメモリがないと力を意地する時間がへる メモリがあってもCPUが低いと非力である
モンスターも存在しており、やはり生存のため捕食する、そのため人間を狙う
カマをもったハッシャーなど 丸い形をした鉄壁を誇る アーリー
オールマイティーなグロブー たちの悪いモンスターは召喚といってBOTというモンスターを召喚してくる
他にはスプリッタというギタギタに切り裂いてくる凶悪モンスターも存在する まだまだモンスターは居るようだ
そしてこの星の、時間は1279844235というエポックタイム(unix時間)である おそらく誕生したのが1970年代
たぶん過去に冒険した人たちは数を多く居るのだろう、だがネットでそんな話を聞いた事は無い
記憶が消されるのか???
食文化
現在知っている、食べ物は、メモリなどクッキー、ルンパー(よくわからない骨付き肉みたいなモノ
とある言い伝えではexitという大魔術を使うと現実世界へ好きな時に帰れるらしい
そのため魔法陣が複雑なためC星の人々が解明を急いでいる
人種のタイプ
人それぞれタイプを持っており
Windows MacOS Linuxになっている
タイプの他には特性で、sh tchなどがある
この星では、酸素もあり呼吸もできる 重力は地球とさほど変わらない
現実世界と少しリンクしているモノがある 痛みがある
自分の体力はメモリであらわされる 呼吸など生命活動のたびにメモリーを消費していく だから人々は、モノをたべ
メモリを確保していくのだ 人の神経を司るのはCPUクロック数が速いほど、力がある
ただしCPUが高くてもメモリがないと力を意地する時間がへる メモリがあってもCPUが低いと非力である
モンスターも存在しており、やはり生存のため捕食する、そのため人間を狙う
カマをもったハッシャーなど 丸い形をした鉄壁を誇る アーリー
オールマイティーなグロブー たちの悪いモンスターは召喚といってBOTというモンスターを召喚してくる
他にはスプリッタというギタギタに切り裂いてくる凶悪モンスターも存在する まだまだモンスターは居るようだ
そしてこの星の、時間は1279844235というエポックタイム(unix時間)である おそらく誕生したのが1970年代
たぶん過去に冒険した人たちは数を多く居るのだろう、だがネットでそんな話を聞いた事は無い
記憶が消されるのか???
食文化
現在知っている、食べ物は、メモリなどクッキー、ルンパー(よくわからない骨付き肉みたいなモノ
とある言い伝えではexitという大魔術を使うと現実世界へ好きな時に帰れるらしい
そのため魔法陣が複雑なためC星の人々が解明を急いでいる
人種のタイプ
人それぞれタイプを持っており
Windows MacOS Linuxになっている
タイプの他には特性で、sh tchなどがある
164デフォルトの名無しさん
2011/05/05(木) 04:43:32.38165デフォルトの名無しさん
2011/05/28(土) 20:54:37.11 perl - 勝手に添削 - Perl中級者への道
ttp://blog.livedoor.jp/dankogai/archives/51687118.html
>ああ、ラクダ本の訳者ともあろうお方が…
ここで指摘されているようなことってここまで小馬鹿にされて断罪されなきゃ
いけない種類のミスなの?
ttp://blog.livedoor.jp/dankogai/archives/51687118.html
>ああ、ラクダ本の訳者ともあろうお方が…
ここで指摘されているようなことってここまで小馬鹿にされて断罪されなきゃ
いけない種類のミスなの?
166デフォルトの名無しさん
2011/05/28(土) 21:35:24.13 そのブログもここでいちいち取り上げなきゃいけない種類のものなの?
167デフォルトの名無しさん
2011/05/28(土) 22:52:24.57 当たり前だ。
168uy
2011/05/31(火) 18:31:12.30 RubyとPerl両方しった上でPerl使ってる奴ってどのくらいいんの?
Perl6構文みてたら、まだ全然Perlしんでないのは分かったんだけど
なんか、Rubyは( まだ成しえてないけど )大規模なソースコードも管理できる かもしれない設計になってるけど
Perlはそういうの完全に捨てて、ほんとにちょっとしたものをさっとかくだけの用途に特化していく方向に
歩んでるように見える
プログラミングの効率化を特殊変数っていう例外的なものによって作るっていう一見乱暴な手法も、
それが広まって言語使用者の共通知識となってしまえば、そこから効率は見える
特殊変数はマクロ、とまではいかないけど、平面構造的な一種のマクロ機構ではあると思う
クラスとかデザパタとか無駄なことやっていないで世界はマクロをするべきだと思う
この世界には、Ruby,Lisp,Pythonの概念しか必要ないと思っていたけど、Perlも一応含める事にする
Perl6構文みてたら、まだ全然Perlしんでないのは分かったんだけど
なんか、Rubyは( まだ成しえてないけど )大規模なソースコードも管理できる かもしれない設計になってるけど
Perlはそういうの完全に捨てて、ほんとにちょっとしたものをさっとかくだけの用途に特化していく方向に
歩んでるように見える
プログラミングの効率化を特殊変数っていう例外的なものによって作るっていう一見乱暴な手法も、
それが広まって言語使用者の共通知識となってしまえば、そこから効率は見える
特殊変数はマクロ、とまではいかないけど、平面構造的な一種のマクロ機構ではあると思う
クラスとかデザパタとか無駄なことやっていないで世界はマクロをするべきだと思う
この世界には、Ruby,Lisp,Pythonの概念しか必要ないと思っていたけど、Perlも一応含める事にする
169デフォルトの名無しさん
2011/05/31(火) 19:28:04.84 まず日本語を勉強すべきだと思う
170デフォルトの名無しさん
2011/06/01(水) 13:35:21.80171デフォルトの名無しさん
2011/06/01(水) 19:26:47.54 Rubyは作者がカルトの信者なのでなんとなく気持ち悪くて手を出す気になれずじまい
もちろん偏見です
もちろん偏見です
172デフォルトの名無しさん
2011/06/02(木) 08:15:29.68 > Perlはそういうの完全に捨てて
> ほんとにちょっとしたものをさっとかくだけの用途に特化していく方向に歩んでるように見える
それこそがPerlの本来の用途でしょ、書き捨てのテキスト処理を書くための言語
ちょっと無理してた Perl/CGI の時代は終わり、本来の道に戻った…と考えるべきだと思う
そもそもWebプログラミングに使われたのは、CGIが流行り出した当時
テキスト処理が気楽にできて、かつ多機能な言語が希少だったからで、Webも「できるけど」専門ではない
今はWebプログラミングが専門の言語とかもあるんだからそっちに任せればいいでしょ
> ほんとにちょっとしたものをさっとかくだけの用途に特化していく方向に歩んでるように見える
それこそがPerlの本来の用途でしょ、書き捨てのテキスト処理を書くための言語
ちょっと無理してた Perl/CGI の時代は終わり、本来の道に戻った…と考えるべきだと思う
そもそもWebプログラミングに使われたのは、CGIが流行り出した当時
テキスト処理が気楽にできて、かつ多機能な言語が希少だったからで、Webも「できるけど」専門ではない
今はWebプログラミングが専門の言語とかもあるんだからそっちに任せればいいでしょ
173デフォルトの名無しさん
2011/06/02(木) 08:26:24.71 あと「亜種・方言がほとんど無かった」ってのも当時はポイント高かったんじゃないかな
Unix系スクリプトはOS柄、総じてテキスト処理が得意だけど
一方で方言や亜種も多いんだが、Perlはそれがなかった
誰かが書いた掲示板スクリプトが、ほとんど手直しなしに他環境でも動く
…ってのがCGIの流行に拍車をかけたと思う
Unix系スクリプトはOS柄、総じてテキスト処理が得意だけど
一方で方言や亜種も多いんだが、Perlはそれがなかった
誰かが書いた掲示板スクリプトが、ほとんど手直しなしに他環境でも動く
…ってのがCGIの流行に拍車をかけたと思う
174デフォルトの名無しさん
2011/06/02(木) 11:04:56.84 perl - 勝手に添削 - Perl中級者への道
ttp://blog.livedoor.jp/dankogai/archives/51687118.html
>dieやwarnは\nでふるまいが変わる
こういう記事読んでるとPerlって適切な警告やエラーを表示しないので不適切な
コードを書いてしまう、またヘンなノウハウを山ほど知ってないと使えない欠陥言語って
印象がますます強くなるなあ。
ttp://blog.livedoor.jp/dankogai/archives/51687118.html
>dieやwarnは\nでふるまいが変わる
こういう記事読んでるとPerlって適切な警告やエラーを表示しないので不適切な
コードを書いてしまう、またヘンなノウハウを山ほど知ってないと使えない欠陥言語って
印象がますます強くなるなあ。
175デフォルトの名無しさん
2011/06/02(木) 11:14:01.42 それどっかのスレで見たな、コピペか?
176デフォルトの名無しさん
2011/06/02(木) 11:21:14.21 妄想じゃね?
177デフォルトの名無しさん
2011/06/02(木) 14:10:48.64 >>174
組み込みのエラー報告機能を使ってればCarpとか$SIG{__WARN__} とか色々サポートがあるから
俺はwarnとかdieの方が好きだけども、
単純なのが好きなら別に print STDERR "error\n" ; die; でもいいんじゃよ?
組み込みのエラー報告機能を使ってればCarpとか$SIG{__WARN__} とか色々サポートがあるから
俺はwarnとかdieの方が好きだけども、
単純なのが好きなら別に print STDERR "error\n" ; die; でもいいんじゃよ?
178デフォルトの名無しさん
2011/06/19(日) 08:12:35.18 >>173
Perlソースをパースするのが難しくてLarry以外の実装ができなかったってのが理由?
Perlソースをパースするのが難しくてLarry以外の実装ができなかったってのが理由?
179デフォルトの名無しさん
2011/06/19(日) 10:19:48.88 Rubyの連中って仮面ライダーでいうショッカーみたいだよな
松本ひろゆきをリーダーとして
松本ひろゆきをリーダーとして
180デフォルトの名無しさん
2011/06/19(日) 11:17:54.53 たしか、某掲示板の創設者もひろゆきとかいうやつだったな。
ひろゆきという名前は、終ってるな。
ひろゆきという名前は、終ってるな。
181デフォルトの名無しさん
2011/06/19(日) 11:52:38.74 Rubyのやつらって
眼鏡+松本ひろゆき信者+MacBook
っていうのはテンプレくさいですねえ
棒掲示板ののひろゆき
ひろゆきっていう名前は終わってますね
眼鏡+松本ひろゆき信者+MacBook
っていうのはテンプレくさいですねえ
棒掲示板ののひろゆき
ひろゆきっていう名前は終わってますね
182デフォルトの名無しさん
2011/06/23(木) 18:43:55.28 何この気持ちワルイPerl信者
Rubyをdisることしか楽しみがないのかな
Rubyをdisることしか楽しみがないのかな
183天使 ◆KOAgYBL/Xg
2011/06/30(木) 06:11:37.03 Rubyの奴らって赤い本もって、みんな目が血走ってんだよね
「日本発快楽オブジェクト指向言語Ruby」とかさ、 快楽オブジェクト指向言語て
快楽オブジェクト指向言語????
薬でもやってるんですか?
そのうち書籍に十字架とか記されて、表紙に神父が描かれるようになって、
「まえがき」のところに十字教の教えとかが入るようになって、
本の付録に、宗教グッズがつくようになるんじゃないかと心配してる
置くだけで霊装として機能するものとか、あんまりそういうものを一箇所においてるとエンジェルフォールみたいな事態への引き金になることもあるようだし
かなり危険視している者もいる
「日本発快楽オブジェクト指向言語Ruby」とかさ、 快楽オブジェクト指向言語て
快楽オブジェクト指向言語????
薬でもやってるんですか?
そのうち書籍に十字架とか記されて、表紙に神父が描かれるようになって、
「まえがき」のところに十字教の教えとかが入るようになって、
本の付録に、宗教グッズがつくようになるんじゃないかと心配してる
置くだけで霊装として機能するものとか、あんまりそういうものを一箇所においてるとエンジェルフォールみたいな事態への引き金になることもあるようだし
かなり危険視している者もいる
184デフォルトの名無しさん
2011/06/30(木) 10:27:09.29 ツマンネ
185デフォルトの名無しさん
2011/06/30(木) 18:28:31.94 忍者だの天使だの
中二臭の漂うハンドルだねえ
中二臭の漂うハンドルだねえ
186デフォルトの名無しさん
2011/07/01(金) 00:18:11.74 こいつ痛すぎwww
187デフォルトの名無しさん
2011/07/15(金) 13:02:14.19 パールは糞ってのは褒め言葉%
な気がする
な気がする
188デフォルトの名無しさん
2011/09/14(水) 09:47:36.23 >>177
エラーは吐きたいけど、終了させたくない事もあるんです!
エラーは吐きたいけど、終了させたくない事もあるんです!
189デフォルトの名無しさん
2011/09/14(水) 23:07:58.89 Perlについての質問箱 48箱目から来ました。
> 今の時代に合わない、ネットの書き込みを
> 全部排除してくれ。
> 世の中モダンPerlだけでいい。
に対して、無理に削除するんじゃなくて、だんだんと廃れて
使われなくなるのを待てばいいじゃないかと思っています。
すでに利用者がいるわけだから、供給者の都合で急になくなっ
たりしたら困るんじゃないかと思うのです。
それに古い機能はプリミティブ(簡素)であることが利点なので
いつまで経っても便利であることが変わらず、使われ続けるん
じゃないかと予想するのです。
上でワンライナーの話も出てますが。
> 今の時代に合わない、ネットの書き込みを
> 全部排除してくれ。
> 世の中モダンPerlだけでいい。
に対して、無理に削除するんじゃなくて、だんだんと廃れて
使われなくなるのを待てばいいじゃないかと思っています。
すでに利用者がいるわけだから、供給者の都合で急になくなっ
たりしたら困るんじゃないかと思うのです。
それに古い機能はプリミティブ(簡素)であることが利点なので
いつまで経っても便利であることが変わらず、使われ続けるん
じゃないかと予想するのです。
上でワンライナーの話も出てますが。
190デフォルトの名無しさん
2011/09/14(水) 23:17:50.81 参考書に、jcode.plがでてくる
191デフォルトの名無しさん
2011/09/15(木) 00:26:40.04 jcode.pl が廃れるべきものであるのなら、とっくに
廃れてるはず。
それなのに現実の世界がそうではないのは、jcode.pl
の実装およびインタフェースのシンプルさが利用者を
安心させるのだと思う。
特に「利用者の想定と一致しない内部状態を持たない」
ことは近年にない利点なのだろう。
廃れてるはず。
それなのに現実の世界がそうではないのは、jcode.pl
の実装およびインタフェースのシンプルさが利用者を
安心させるのだと思う。
特に「利用者の想定と一致しない内部状態を持たない」
ことは近年にない利点なのだろう。
192デフォルトの名無しさん
2011/09/15(木) 00:39:05.76 jcodeなんて外国じゃ使われてないよ。
ガラパゴス技術なんてどうでもいい。
ガラパゴス技術なんてどうでもいい。
193デフォルトの名無しさん
2011/09/15(木) 02:01:31.93 > jcodeなんて外国じゃ使われてないよ。
需要がないんだから当たり前だろ。
需要がないんだから当たり前だろ。
194デフォルトの名無しさん
2011/09/15(木) 03:58:34.77 Perl4の時代ならともかく普通はJcode.pmじゃねぇの
てかEncodeじゃダメなん?
てかEncodeじゃダメなん?
195デフォルトの名無しさん
2011/09/15(木) 07:34:34.47 UTF8フラグによるトラブルとLatin-1と解釈されることによるトラブルのどっちが対処しやすいか
196デフォルトの名無しさん
2011/09/15(木) 08:26:20.30 jcode.plはメンテされていないこと(自分でメンテすること)と、
utf8が使えないことを理解して使う分には悪くない。
楽したけりゃ、Encodeのfrom_to()を使っておけばいい。
utf8フラグにも無縁で居られる。
utf8が使えないことを理解して使う分には悪くない。
楽したけりゃ、Encodeのfrom_to()を使っておけばいい。
utf8フラグにも無縁で居られる。
197デフォルトの名無しさん
2011/09/15(木) 21:11:48.50 Perl使えるくせにUTF8フラグ程度でトラブルの?
それって、単にPerl使えないだけじゃ・・・
それって、単にPerl使えないだけじゃ・・・
198デフォルトの名無しさん
2011/09/15(木) 21:52:35.54 Perlが使えてもトラブる。
そもそもUTF8フラグはPerlの構成要素だと思っていない。
そもそもUTF8フラグはPerlの構成要素だと思っていない。
199デフォルトの名無しさん
2011/09/15(木) 23:47:50.61 utf8フラグは微妙に影響が出るからなあ。
正規表現で、全角数字が\dにマッチすることを知ったときは、悪寒が走った。
正規表現で、全角数字が\dにマッチすることを知ったときは、悪寒が走った。
200デフォルトの名無しさん
2011/09/15(木) 23:57:27.16 じゃあなんでPerlという言語
に搭載されてるのさw
お前のPerlを押し付けるな。
に搭載されてるのさw
お前のPerlを押し付けるな。
201デフォルトの名無しさん
2011/09/15(木) 23:59:46.21 自分がPerlを使えないってことを
認めたくないのだろう。
認めたくないのだろう。
202デフォルトの名無しさん
2011/09/16(金) 00:39:42.37203デフォルトの名無しさん
2011/09/16(金) 00:53:17.87 まあまあ、落ち着いて。
理解できたら、使ってやるから。
理解できたら、使ってやるから。
204デフォルトの名無しさん
2011/09/16(金) 03:22:16.30 >>202
返されてもなぁw
俺がutf8フラグを搭載したわけじゃないし、
utf8フラグはperl言語仕様に含まれるもので
perlが使えると言いたいのなら、
当然utf8フラグも使えなければならないもの。
返されてもなぁw
俺がutf8フラグを搭載したわけじゃないし、
utf8フラグはperl言語仕様に含まれるもので
perlが使えると言いたいのなら、
当然utf8フラグも使えなければならないもの。
205デフォルトの名無しさん
2011/09/16(金) 03:51:24.02206デフォルトの名無しさん
2011/09/16(金) 06:15:31.89 そこで僕は答えに辿り着いた。
use utf8; なんか使わない。
binmode STDOUT, ":utf8"; とかももちろん使わない。
文字数を数えたけりゃ decode (または utf8::decode) でフラグをつけて length すりゃいい。
substr 使うときも事前にフラグを付けりゃいい。
で、ソースとかデータは utf8 で書く。
これ完璧。
use utf8; なんか使わない。
binmode STDOUT, ":utf8"; とかももちろん使わない。
文字数を数えたけりゃ decode (または utf8::decode) でフラグをつけて length すりゃいい。
substr 使うときも事前にフラグを付けりゃいい。
で、ソースとかデータは utf8 で書く。
これ完璧。
207デフォルトの名無しさん
2011/09/16(金) 09:17:02.66 >>204
> 当然utf8フラグも使えなければならないもの。
使えなければならないかどうかは知らんが、
使「わ」なければならないもの、ではないわな。
use utf8;とno utf8;の選択ができる仕様になってるんだから。
だったらutf8フラグを「構成要素から除外」して考えていても
「Perlを使っている」ことに違いはないんでは。
それともお前さんは言語(自然言語含む)でもなにかツール類でも、
全ての機能を知り、かつ使わなければ「使える」と言っちゃいけん、って考えなのかい。
> 当然utf8フラグも使えなければならないもの。
使えなければならないかどうかは知らんが、
使「わ」なければならないもの、ではないわな。
use utf8;とno utf8;の選択ができる仕様になってるんだから。
だったらutf8フラグを「構成要素から除外」して考えていても
「Perlを使っている」ことに違いはないんでは。
それともお前さんは言語(自然言語含む)でもなにかツール類でも、
全ての機能を知り、かつ使わなければ「使える」と言っちゃいけん、って考えなのかい。
208デフォルトの名無しさん
2011/09/16(金) 10:02:34.11 この糞ジャップはモダンPerlに洗脳されてるから
utf8の全てを学ばないと気がすまないジャップ
早く死ね
だいたいのフィーリングでやれよ糞ジャップわかったか死ね
utf8の全てを学ばないと気がすまないジャップ
早く死ね
だいたいのフィーリングでやれよ糞ジャップわかったか死ね
209デフォルトの名無しさん
2011/09/16(金) 10:24:26.54 殺伐とした雰囲気は嫌いじゃないけどさ、
ム板もラストマンが増えすぎだよ。
ム板もラストマンが増えすぎだよ。
210別人だが
2011/09/16(金) 11:07:01.31 >>205
UTF8の2byte文字、3byte文字の途中で文字列が終了していても、
malformed byteとして扱わずに残りはほっといて終了する。
何度もバッファリングしながら読む時に便利。
HTMLやXML等のパーザ書いてる人は結構使ってる。
encode.c:process_utf8(dst, s, e, check, encode, strict, stop_at_partial);
が本体。
UTF8の2byte文字、3byte文字の途中で文字列が終了していても、
malformed byteとして扱わずに残りはほっといて終了する。
何度もバッファリングしながら読む時に便利。
HTMLやXML等のパーザ書いてる人は結構使ってる。
encode.c:process_utf8(dst, s, e, check, encode, strict, stop_at_partial);
が本体。
211デフォルトの名無しさん
2011/09/16(金) 14:07:43.91 >>210
ありがとん。
気になるのは、次のコードを走らせると、STOP_AT_PARTIALが有っても無くても
結果が変わらないところ。何か勘違いしてる所ある?
use PerlIO::encoding;
use Encode;
use IO::File;
my %type = (
"PERLQQ|STOP_AT_PERTIAL" => Encode::PERLQQ|Encode::STOP_AT_PARTIAL,
"PERLQQ" => Encode::PERLQQ,
);
while(my ($title, $value) = each %type){
$PerlIO::encoding::fallback = $value;
print "fallback: $title\n";
foreach my $in (
"\xe3\x81\x82",
"\xe3\x81\x82\xe3\x82\x81",
"\xe3\x81\x82\xe3",
){
open(my $fh, '<', \$in) or die $!;
binmode($fh, ":encoding(UTF-8)");
$fh->read(my $string, 5);
$fh->close;
printf("%0*v4x\n", ",", $string);
}
print "\n";
}
ありがとん。
気になるのは、次のコードを走らせると、STOP_AT_PARTIALが有っても無くても
結果が変わらないところ。何か勘違いしてる所ある?
use PerlIO::encoding;
use Encode;
use IO::File;
my %type = (
"PERLQQ|STOP_AT_PERTIAL" => Encode::PERLQQ|Encode::STOP_AT_PARTIAL,
"PERLQQ" => Encode::PERLQQ,
);
while(my ($title, $value) = each %type){
$PerlIO::encoding::fallback = $value;
print "fallback: $title\n";
foreach my $in (
"\xe3\x81\x82",
"\xe3\x81\x82\xe3\x82\x81",
"\xe3\x81\x82\xe3",
){
open(my $fh, '<', \$in) or die $!;
binmode($fh, ":encoding(UTF-8)");
$fh->read(my $string, 5);
$fh->close;
printf("%0*v4x\n", ",", $string);
}
print "\n";
}
212デフォルトの名無しさん
2011/09/16(金) 15:19:06.40213デフォルトの名無しさん
2011/09/16(金) 23:09:31.24214デフォルトの名無しさん
2011/09/16(金) 23:17:27.21 >>207
別に初心者はPerlを使うなとは言ってないから安心しろw
Perlのすべてを知ってからPerl使う人はいないだろ。
何も知らない初心者から、どんどんPerlを知って成長していく。
だから全部知る必要はないが、Perlを使えるという最低条件の一つがutf8フラグ。
ワイン好きなら美味しいワイン、まずいワインそれぐらいわかる。
いろんな種類を飲んで自称ワイン好きというのは構わない。
もちろんワインを飲んで構わない。
だがソムリエと言いたいなら、最低限のレベルってものがある。
Perlもそういうことだよ。プロの間で「Perlを使える」と言っていいのは
utf8程度、当然知っているべき最低限の知識だ。
お前はPerlを触ってるだけ。
別に初心者はPerlを使うなとは言ってないから安心しろw
Perlのすべてを知ってからPerl使う人はいないだろ。
何も知らない初心者から、どんどんPerlを知って成長していく。
だから全部知る必要はないが、Perlを使えるという最低条件の一つがutf8フラグ。
ワイン好きなら美味しいワイン、まずいワインそれぐらいわかる。
いろんな種類を飲んで自称ワイン好きというのは構わない。
もちろんワインを飲んで構わない。
だがソムリエと言いたいなら、最低限のレベルってものがある。
Perlもそういうことだよ。プロの間で「Perlを使える」と言っていいのは
utf8程度、当然知っているべき最低限の知識だ。
お前はPerlを触ってるだけ。
215デフォルトの名無しさん
2011/09/16(金) 23:38:35.12216デフォルトの名無しさん
2011/09/16(金) 23:41:04.56 はて? utf8知らないんだよね?
知らないのに、Perl使えるって自慢したいの?w
知らないのに、Perl使えるって自慢したいの?w
217デフォルトの名無しさん
2011/09/16(金) 23:41:36.72 レベル低いのが、俺は低くないんだ!って言ってるのか?w
218デフォルトの名無しさん
2011/09/17(土) 01:19:55.00 >>189
まあ、
> > 今の時代に合わない、ネットの書き込みを
> > 全部排除してくれ。
> > 世の中モダンPerlだけでいい。
なんてことを本気で言ってる奴はただのバカなんで単に放っておけばいいでしょ。
Perl使いはTMTOWTDIなところが好きで使っている人も多いと思うんで、
一律にオレの理想のPerlしか認めんみたいなバカは2chの匿名板以外にはきっとあまりいないでしょ。
昔書かれた古い情報ならそれがいつ書かれたのか確認できるようにすればいいだけの話で、排除までする必要もないし。
モダンじゃない書き方を示されたらモダンに書くならこうですよ、と別途提示すればいいんだし。
モダンな書き方のメリットも強調したいならどうしてその方がメリットばあるのかも含めてね。
まあ、
> > 今の時代に合わない、ネットの書き込みを
> > 全部排除してくれ。
> > 世の中モダンPerlだけでいい。
なんてことを本気で言ってる奴はただのバカなんで単に放っておけばいいでしょ。
Perl使いはTMTOWTDIなところが好きで使っている人も多いと思うんで、
一律にオレの理想のPerlしか認めんみたいなバカは2chの匿名板以外にはきっとあまりいないでしょ。
昔書かれた古い情報ならそれがいつ書かれたのか確認できるようにすればいいだけの話で、排除までする必要もないし。
モダンじゃない書き方を示されたらモダンに書くならこうですよ、と別途提示すればいいんだし。
モダンな書き方のメリットも強調したいならどうしてその方がメリットばあるのかも含めてね。
219デフォルトの名無しさん
2011/09/17(土) 09:34:31.83 >>218
やり方は一つじゃないのと、
やり方を一つしか知らない のは
全然意味が違うぞw
自分一人でやってるなら自分のやり方だけ知ってればいいだろうが、
他人のコードを読んだり修正するのであれば、別のやり方を知らないといけない。
自分が使わなくとも、やり方を知らないといけない。
マイナーなモジュールならともかく、Perlに標準機能として搭載されている
文字コード関連技術ぐらい知ってるのが当たり前だろう。
やり方は一つじゃないのと、
やり方を一つしか知らない のは
全然意味が違うぞw
自分一人でやってるなら自分のやり方だけ知ってればいいだろうが、
他人のコードを読んだり修正するのであれば、別のやり方を知らないといけない。
自分が使わなくとも、やり方を知らないといけない。
マイナーなモジュールならともかく、Perlに標準機能として搭載されている
文字コード関連技術ぐらい知ってるのが当たり前だろう。
220デフォルトの名無しさん
2011/09/17(土) 20:11:09.82221デフォルトの名無しさん
2011/09/17(土) 22:51:35.16 UTF8というコードの扱い方も一応複数あるんだよなそう言えば
222デフォルトの名無しさん
2011/09/18(日) 00:01:40.58 そもそも文字列なのかバイト列なのかというのは二者択一
ではなくて、おいらの頭の中でいいあんばいで処理して
いる。
それを処理系でマネをしようとしてutf8フラグなるもの
をこさえたんだけど、おいらの頭の中をうまいこと再現
してくれるわけじゃなくて、ギャップにぷぎゃーって
なるんだよな。
わかる?ぷぎゃーって?
コンピュータにはそれが分からない。
ではなくて、おいらの頭の中でいいあんばいで処理して
いる。
それを処理系でマネをしようとしてutf8フラグなるもの
をこさえたんだけど、おいらの頭の中をうまいこと再現
してくれるわけじゃなくて、ギャップにぷぎゃーって
なるんだよな。
わかる?ぷぎゃーって?
コンピュータにはそれが分からない。
223デフォルトの名無しさん
2011/09/18(日) 01:55:12.80 だから普段はuse utf8しないで、substrとか文字数カウントとかしたいときだけフラグ付けりゃいいじゃん
224デフォルトの名無しさん
2011/09/18(日) 04:55:59.29 >>222
抽象化能力がかけてるの?
文字は文字であって、それがどんなバイト列なのか
意識したらダメだよ。そんなものを意識すると
バイト列が変わっただけで混乱してくるでしょ?
ぷぎゃーってなってるのは、文字とそれを構成するバイト列。
つまり、文字集合と符号化方式を頭の中で切り離せてないからだよ。
Unicode と UTF8・UTF16・UTF32などの違いをしっかりと学習しようね。
抽象化能力がかけてるの?
文字は文字であって、それがどんなバイト列なのか
意識したらダメだよ。そんなものを意識すると
バイト列が変わっただけで混乱してくるでしょ?
ぷぎゃーってなってるのは、文字とそれを構成するバイト列。
つまり、文字集合と符号化方式を頭の中で切り離せてないからだよ。
Unicode と UTF8・UTF16・UTF32などの違いをしっかりと学習しようね。
225デフォルトの名無しさん
2011/09/18(日) 05:31:33.97226デフォルトの名無しさん
2011/09/18(日) 06:45:11.54 >>225
それはお前w、Unicode時代の正規表現を知らないだけじゃないか。
自分が無知だってことを知らせてどうするよ。もっといろんな言語をだなぁ。
■[Ruby][鬼車]UTF8で\dが全角数字にマッチ
http://d.hatena.ne.jp/gengar/20091019/1255888893
http://vbnmkyoto.blogspot.com/2010/12/d-javacommons-validatorperl.html
> 罠なのは、Javaでも commons-validator を使っていると、
> commons-validator の正規表現は perl と同等であること!
.NET Frameworkの正規表現
http://smdn.jp/programming/netfx/regex/0_abstract/
> \dは10進表記の数字に使用されるUnicode文字1文字
> \Dは\d以外の任意の1文字
>
> (\dには半角数字だけでなく、全角数字も含まれる)
そのまま使える正規表現集 for regExp (javascript)
http://befine.jugem.jp/?eid=29
> ・全て数値かどうか(全角でも半角でもOK)
> /^\d+$/
pythonの正規表現で日本語を扱う
http://taichino.com/programming/1272
[0-9]を表す\dですが、unicodeフラグを指定すると[0-90-9]と等しくなるようです。
それはお前w、Unicode時代の正規表現を知らないだけじゃないか。
自分が無知だってことを知らせてどうするよ。もっといろんな言語をだなぁ。
■[Ruby][鬼車]UTF8で\dが全角数字にマッチ
http://d.hatena.ne.jp/gengar/20091019/1255888893
http://vbnmkyoto.blogspot.com/2010/12/d-javacommons-validatorperl.html
> 罠なのは、Javaでも commons-validator を使っていると、
> commons-validator の正規表現は perl と同等であること!
.NET Frameworkの正規表現
http://smdn.jp/programming/netfx/regex/0_abstract/
> \dは10進表記の数字に使用されるUnicode文字1文字
> \Dは\d以外の任意の1文字
>
> (\dには半角数字だけでなく、全角数字も含まれる)
そのまま使える正規表現集 for regExp (javascript)
http://befine.jugem.jp/?eid=29
> ・全て数値かどうか(全角でも半角でもOK)
> /^\d+$/
pythonの正規表現で日本語を扱う
http://taichino.com/programming/1272
[0-9]を表す\dですが、unicodeフラグを指定すると[0-90-9]と等しくなるようです。
227デフォルトの名無しさん
2011/09/18(日) 09:24:45.51 RubyもJavaもpythonも関係なくて、関係あるのは今まで
使い続けたPerlなわけで、別に Unicode 時代をお招きした
つもりもないんだよね。
で、\d はこれまで [0-9] と同じってドキュメントに
書かれていたわけだから、Unicode に対応したからって
それが勝手に変わってしまうのは困る。
なぜかというと \d でマッチした内容は、テキストデータ
に埋め込む数字の文字列としても使うし、数値として計算
対象としても使うから。
そこんところをいいあんばいに混ぜて使っていたのが、
Unicode 対応という理由によって使いにくくなってし
まった。一体、何のための Unicode 対応なのか。
>文字は文字であって、それがどんなバイト列なのか
>意識したらダメだよ。そんなものを意識すると
>バイト列が変わっただけで混乱してくるでしょ?
いや、してこない。
(混乱するあなたをどうこう言うつもりはないけど)
処理系のために切り離さないといけないのは、設計思想
としてうまくないと思う。
使い続けたPerlなわけで、別に Unicode 時代をお招きした
つもりもないんだよね。
で、\d はこれまで [0-9] と同じってドキュメントに
書かれていたわけだから、Unicode に対応したからって
それが勝手に変わってしまうのは困る。
なぜかというと \d でマッチした内容は、テキストデータ
に埋め込む数字の文字列としても使うし、数値として計算
対象としても使うから。
そこんところをいいあんばいに混ぜて使っていたのが、
Unicode 対応という理由によって使いにくくなってし
まった。一体、何のための Unicode 対応なのか。
>文字は文字であって、それがどんなバイト列なのか
>意識したらダメだよ。そんなものを意識すると
>バイト列が変わっただけで混乱してくるでしょ?
いや、してこない。
(混乱するあなたをどうこう言うつもりはないけど)
処理系のために切り離さないといけないのは、設計思想
としてうまくないと思う。
228デフォルトの名無しさん
2011/09/18(日) 09:34:53.65 文字列として見たら5も5も同じ。
そうゆう意味ではフラグが立ってる時の\dは全角半角関係ないのは分かる。
が、227の言い分もわからんでもない。
そんな自分は [0-9] って書いてる。
そうゆう意味ではフラグが立ってる時の\dは全角半角関係ないのは分かる。
が、227の言い分もわからんでもない。
そんな自分は [0-9] って書いてる。
229デフォルトの名無しさん
2011/09/18(日) 09:39:52.67 バイト列はうそをつかないけど
utf8フラグはうそをつくから使いづらい
utf8フラグはうそをつくから使いづらい
230デフォルトの名無しさん
2011/09/18(日) 09:42:09.24 > で、\d はこれまで [0-9] と同じってドキュメントに
> 書かれていたわけだから、Unicode に対応したからって
初心者かお前w
ちゃんとドキュメントは読みましょう。
http://perldoc.jp/docs/perl/5.10.0/perlretut.pod
> \d は数字にマッチします; 単に [0-9] だけではなく、非ローマ字スクリプトからの 数字もマッチします
> 書かれていたわけだから、Unicode に対応したからって
初心者かお前w
ちゃんとドキュメントは読みましょう。
http://perldoc.jp/docs/perl/5.10.0/perlretut.pod
> \d は数字にマッチします; 単に [0-9] だけではなく、非ローマ字スクリプトからの 数字もマッチします
231デフォルトの名無しさん
2011/09/18(日) 09:46:24.15 ちゃんと勉強を続けている人なら
\dは非ASCIIの数字にもマッチすると知ってる。
なぜ知らないの? そっちの方が不思議だ。
\dは非ASCIIの数字にもマッチすると知ってる。
なぜ知らないの? そっちの方が不思議だ。
232デフォルトの名無しさん
2011/09/18(日) 09:49:51.72 だから変えるなって
233デフォルトの名無しさん
2011/09/18(日) 09:55:45.19 変わってないよ。昔から\dは”数字”にマッチする文字クラスだ。
数字ではなく、特定のバイナリ列だと勘違いしているから
そういう間違いを犯すハメになる。
数字ではなく、特定のバイナリ列だと勘違いしているから
そういう間違いを犯すハメになる。
234デフォルトの名無しさん
2011/09/18(日) 09:58:11.72 他にも、 . (ピリオド)は一バイトではなく一文字にマッチするものだからな。
しっかり正規表現が扱うのは文字だとわかっていれば当然の結果だが、
お前の場合、日本語で.を使った場合、どうマッチするんだよ?
日本語が3バイトEUCだったらどうするんだよ。とか悩むんだろうな。
しっかり正規表現が扱うのは文字だとわかっていれば当然の結果だが、
お前の場合、日本語で.を使った場合、どうマッチするんだよ?
日本語が3バイトEUCだったらどうするんだよ。とか悩むんだろうな。
235デフォルトの名無しさん
2011/09/18(日) 10:51:09.14 >>233
> 変わってないよ。昔から\dは”数字”にマッチする文字クラスだ。
変わってないよ、じゃないだろ。処理対象次第で実際に振舞いが変わる。
現実世界では「変わってないよ」では何も解決せんのじゃ。
まあ高度な抽象化能力によって実際のコーディングとは無縁な
非現実の世界に生きている者にはなんの問題もないのかもしれんがな。
> 変わってないよ。昔から\dは”数字”にマッチする文字クラスだ。
変わってないよ、じゃないだろ。処理対象次第で実際に振舞いが変わる。
現実世界では「変わってないよ」では何も解決せんのじゃ。
まあ高度な抽象化能力によって実際のコーディングとは無縁な
非現実の世界に生きている者にはなんの問題もないのかもしれんがな。
236デフォルトの名無しさん
2011/09/18(日) 10:56:07.76237デフォルトの名無しさん
2011/09/18(日) 12:29:22.88 > 変わってないよ、じゃないだろ。処理対象次第で実際に振舞いが変わる。
といわれてもなぁ。
Unicode非対応からUnicode対応になったんだから、
そりゃUnicodeを認識できるようになるわw
Unicode文字をちゃんと文字として認識させたかったんだからさ。
いつまでもASCIIのみ、まともに対応じゃだめでしょw
.を一バイトにマッチさせても意味ないんだし。
といわれてもなぁ。
Unicode非対応からUnicode対応になったんだから、
そりゃUnicodeを認識できるようになるわw
Unicode文字をちゃんと文字として認識させたかったんだからさ。
いつまでもASCIIのみ、まともに対応じゃだめでしょw
.を一バイトにマッチさせても意味ないんだし。
238デフォルトの名無しさん
2011/09/18(日) 12:36:14.71 まあ、とにかくやりずらくなったってことだ。
239デフォルトの名無しさん
2011/09/18(日) 12:45:26.37 ぷぎゃーがギャップの逆の綴りだと誰も指摘してくれない件
240デフォルトの名無しさん
2011/09/18(日) 12:52:08.48 >お前の場合、日本語で.を使った場合、どうマッチするんだよ?
>日本語が3バイトEUCだったらどうするんだよ。とか悩むんだろうな。
悩まない
. は1文字を表現するんだから。もちろん3バイトEUCにマッチする
>日本語が3バイトEUCだったらどうするんだよ。とか悩むんだろうな。
悩まない
. は1文字を表現するんだから。もちろん3バイトEUCにマッチする
241デフォルトの名無しさん
2011/09/18(日) 14:27:13.49 一体何を悩むんだろうな
他の選択肢を聞いてみたい
他の選択肢を聞いてみたい
242デフォルトの名無しさん
2011/09/18(日) 15:16:18.57 \d の代わりに $d を使う
$d はあらかじめ qr/[0-9]/ として用意しておく
うん、おれいいこと言った
$d はあらかじめ qr/[0-9]/ として用意しておく
うん、おれいいこと言った
243デフォルトの名無しさん
2011/09/18(日) 15:35:58.93 結局実力が劣る奴が
utf8フラグを理解できずに
ファビョってただけか。
utf8フラグを理解できずに
ファビョってただけか。
244デフォルトの名無しさん
2011/09/18(日) 16:07:16.86245デフォルトの名無しさん
2011/09/18(日) 16:12:39.25 発端
IO::File->new_tmpfile が「ファイルハンドルを返すもの」と理解してれば、
今の時代にこんな書き方はしない。
世の中モダンPerlだけでいい
http://hibari.2ch.net/test/read.cgi/tech/1313840197/327-333 Perlについての質問箱 48箱目
IO::File->new_tmpfile が「ファイルハンドルを返すもの」と理解してれば、
今の時代にこんな書き方はしない。
世の中モダンPerlだけでいい
http://hibari.2ch.net/test/read.cgi/tech/1313840197/327-333 Perlについての質問箱 48箱目
246デフォルトの名無しさん
2011/09/18(日) 16:16:54.04 モダンPerlもPerlの一部だよ。
Perl使えなくて、Perl使いは名乗らないでください。
Perlちょっと触ってる程度にしてね。
Perl使えなくて、Perl使いは名乗らないでください。
Perlちょっと触ってる程度にしてね。
247デフォルトの名無しさん
2011/09/18(日) 17:15:14.64 モダンPerlしか使えないおれは負け組みってことっすか。
分かりました。
これからは jcode.pl を使って書くようにします。
分かりました。
これからは jcode.pl を使って書くようにします。
248デフォルトの名無しさん
2011/09/18(日) 17:46:34.60249デフォルトの名無しさん
2011/09/18(日) 17:58:14.96250デフォルトの名無しさん
2011/09/18(日) 22:20:58.07251デフォルトの名無しさん
2011/09/19(月) 00:01:45.42252デフォルトの名無しさん
2011/09/19(月) 01:33:23.03 >>251
「古いものは必要ない限り」って言ったよ。
「古いものは必要ない限り」って言ったよ。
253デフォルトの名無しさん
2011/09/19(月) 02:05:07.40 >>252
てことはつまり、「新しいものも必要ない限り」勉強しなくていい、ってことになるな。
てことはつまり、「新しいものも必要ない限り」勉強しなくていい、ってことになるな。
254デフォルトの名無しさん
2011/09/19(月) 02:47:00.05 今後も新しいものが必要ないならw
そこで成長ストップだよ。
そこで成長ストップだよ。
255デフォルトの名無しさん
2011/09/19(月) 07:34:09.27 まあ今まで知らなかった「古いもの」を新たに知るのも成長のうちだからな。
古いものは「必要ない限り」勉強しなくていい、という時点でやはり成長ストップだな。
古いものは「必要ない限り」勉強しなくていい、という時点でやはり成長ストップだな。
256デフォルトの名無しさん
2011/09/19(月) 08:47:55.20 その通り。
そしてPerlの世界では、古いものはいつか必要になってくる。
KENT先生もそう言っている。
そしてPerlの世界では、古いものはいつか必要になってくる。
KENT先生もそう言っている。
257デフォルトの名無しさん
2011/09/19(月) 09:23:04.37 使える道具は多いに越したことはないという話だな。
Perlやプログラミングに限った話でもなし。
Perlやプログラミングに限った話でもなし。
258デフォルトの名無しさん
2011/09/19(月) 10:36:17.40 必要もないのに押し付けるための押売り文句として
「モダンPerl」なる用語ができたわけだ。
必要性があって作られたのなら、そんな言葉がなく
てもちゃんと広まる。今まで出てきた新機能は
そうだったんだから。
「モダンPerl」なる用語ができたわけだ。
必要性があって作られたのなら、そんな言葉がなく
てもちゃんと広まる。今まで出てきた新機能は
そうだったんだから。
259デフォルトの名無しさん
2011/09/19(月) 10:43:19.36 モダンPerlは広まってるよ。
260デフォルトの名無しさん
2011/09/19(月) 12:01:04.69 なるほど、モダンPerlはLarryが使ってないからPerlは
このところ成長がストップしていたわけか。
今Perlの新バージョンをリリースしてるのは他の人らし
いしな。
このところ成長がストップしていたわけか。
今Perlの新バージョンをリリースしてるのは他の人らし
いしな。
レスを投稿する
ニュース
- 【赤坂ライブハウス刺傷】逃走していた自衛官の男(43)を殺人未遂の疑いで逮捕 警視庁 被害女性とは知人関係 [Ailuropoda melanoleuca★]
- 【千葉】コンビニに尿入りペットボトル並べた疑い、26歳男「むしゃくしゃして」…購入した客が飲もうとしたところ臭いに違和感 [ぐれ★]
- 中国官製報道「日本経済はもう持たない」にネット民ツッコミ「ニュースだけ見てたら日本はもう百回くらい爆発してる」 [1ゲットロボ★]
- 植田日銀総裁 「円安進行が物価高を起こしている」 ★4 [お断り★]
- 【STARTO ENTERTAINMENT】timelesz、メンバーの不適切言動を謝罪「不用意かつモラルに反した発言であった」 全員の署名入りでコメント [Ailuropoda melanoleuca★]
- 【硬貨】500円だと思ったら「500ウォンが入っていた」価値は約10分の1 全国で飲食店などで“500ウォントラブル”相次いで報告 [ぐれ★]
- 【画像有り】ヘイトスピーチ系ネトウヨYouTuberのへずまりゅう、駐車中に大阪府警に職質される [718678614]
- 『ネット右翼になった父』って本を読んだが
- スーパー銭湯でチンコ丸出しの奴頭おかしいのか
- AVって儲かるらしいけどすごくない?
- 【神奈川新聞】「暇空茜」を県警追送検 [746833765]
- ハムエッグ派VSベーコンエッグ派
