perl

このエントリーをはてなブックマークに追加
1デフォルトの名無しさん
お前らの蓄積された英知を振り絞り
俺にperlを叩きこんでください
32:02/05/13 14:20
3
>>1
板違いだ。

削除依頼
http://kaba.2ch.net/saku/

夢・独り言
http://life.2ch.net/yume/
5棄教者 ◆witdLTi2 :02/05/13 15:34
真珠入りの俺のティムポを君の穴万個に叩き込んであげます。
死を覚悟せんばかりの糞スレ。
破強者もともっちスレの常連のヨカン
8棄教者 ◆witdLTi2 :02/05/14 08:45
あまりにも>>1が可哀想なので Perl 講座を開催します。

第 1 講

言語の名前は Perl です。 PERL とか perl ではありません。
Perl の実行方法は使っている処理系によって若干異なります。
ここでは糞スレを立てた>>1が UN*X 系 OS を利用していると仮定して
話を進めます。

まず、シェルを立ち上げて
$ which perl
と打ち込んで下さい。私の環境では
/usr/bin/perl
と出ました。では続けて
$cat <<__PERL__ >hello
#!/usr/bin/perl
print "Hello, world!\n";
__PERL__
と打ち込んで下さい。 hello というファイルが生成されているはずです。
このファイルに実行権を付けましょう。
$chmod o+x hello
では実行してみましょう。
$./hello
Hello, world!
と表示されましたか?

ではこれにて今日の授業は終わりです。
>>8
先生!どうしてエディタを使わないんですか?
Perlはエディタで書くファイルは使えないのでしょうか!
それとも、

「俺はヒアドキュメントの使い手さ!」

と言う自慢なのでしょうか!
10棄教者 ◆witdLTi2 :02/05/14 10:41
>>9
プログラムがたったの二行だったからです。別に自慢するつもりはないです。
ただ、私より年上の人たちはMS-DOSだった時代、
C:\>copy con config.sys
って打っていましたよね?

明日は文字列変数の話をしようと思うので、プログラムがもう少し長くなります。
糞スレを立てた>>1や他の生徒の皆さんは、
明日までにエディタの使い方を予習しておいて下さい。
ちなみに私は Windows では秀丸を、UN*X では vi を使っています。
muleです。先生。
秀丸なんかやめて誰でも持ってるメモ帳にしてください、先生。
>>12
学生はタダだろ
秀丸ださひ・・・
15棄教者 ◆witdLTi2 :02/05/15 10:39
Perl講座第二回

今日はスカラー変数の使い方です。

彼女に挨拶をするプログラムを作りましょう。
昨日の print 文を使えば、
=====
#!/usr/bin/perl
print "Good morning, Licca\n";
print "Good afternoon, Licca\n";
print "Good evening, Licca\n";
=====
ってコードを書けばいいわけです。
でも彼女と別れて別の彼女を見つけたら三行とも書き換えないといけませんよね?
三行コードを書き換えるのはうざいし、
消し忘れがあったら新しい彼女とハルマゲドン状態になりかねません。
そこで変数の登場です。
====
#!/usr/bin/perl
$kanojo = "Licca";
print "Good morning, $kanojo\n";
print "Good afternoon, $kanojo\n";
print "Good evening, $kanojo\n";
====
とすると、一行コードが長くなってしまいますが、彼女が変わっても
2行目の $kanojo = "Licca"; を $kanojo = "Mieko"; に変えるだけで
挨拶をすぐに切り替えられ、彼女と無用の喧嘩を防ぐことができます。
16棄教者 ◆witdLTi2 :02/05/15 10:50
続き
この文字列変数は、くっつけたり繰り返したりすることができます。
====
$kanojo = "Licca";
$ore = "Kikyosha";
print $kanojo . $ore;
====
とやると LiccaKikyosha と出てきますね。
そう、 文字列やリテラルをピリオドで結ぶとくっつけることができます。
ではこういうのはどうでしょうか。
====
$kanojo = "Licca";
print $kanojo x 5;
====
結果は LiccaLiccaLiccaLiccaLicca になります。リカタン、ハァハァハァハァハァ。。 先生が壊れてしまいました。

この演算子は、省略した書き方ができます。
====
$kanojo = "Licca";
$kanojo .= "Kikyosha";
print $kanojo;
====
結果は LiccaKikyosha になります。
====
$kanojo = "Licca";
$kanojo x= 5;
print $kanojo;
====
結果は LiccaLiccaLiccaLiccaLicca になります。
今日はこの辺で。明日はリスト変数をやりますが、質問があった場合はその限りではありません。
17棄教者 ◆witdLTi2 :02/05/15 10:55
では生徒の皆さんからの質問への答えです。
>>11 Emacsじゃないんですね。
>>12 MacユーザやUN*Xユーザはメモ帳を持っていないでしょう。
>>13 先生は学生時代にライセンスを取得しましたが今はリーマンやってるんで
 お金を払わないといけないですね。
>>14 構文のカラー表示が vi に比べてちょっと弱いですね。
 でも秀丸のマクロを使いマクロっているんで、今更やめられないのが本音です。
>>1 文章は下手ですがこれでも「蓄積された英知を振り絞り」あなたにP「erlを叩きこんで」るつもりです。
 これまでの授業でわからないことがあったら遠慮なく聞いて下さい。
 難しい質問は他スレで聞いて下さい。
my $val = &{sub{
  return 1;
}}();

使い道がない (ノД`、)
19デフォルトの名無しさん:02/05/15 11:04
MacユーザならTextEditがあるけど
がいしゅつネタを自慢げに書き散らしてる◆witdLTi2のいるスレはここですか?
糞スレを再利用してんだから良いじゃねえか。
お前の書き込みよりはるかにマシだ。
22棄教者 ◆witdLTi2 :02/05/15 14:43
この糞スレを立てた>>1に限らず、
http://pc.2ch.net/test/read.cgi/tech/1020159839/l50
http://pc.2ch.net/test/read.cgi/tech/1017736187/l50
みたいな単発質問スレが多いので、
体系的にPerlを解説しておけば糞スレの生成率も下がるんじゃないかと思ったんですよ。
基本的にこのスレはsage進行でよろしく。
>>22

2chで「体系的」に解説する必要は無い。
マニュアル読め。
マニュアル読んで来るような奴ならこんな糞スレ
立てないっての。
あなたが善行と思っている行為は初心者の芽を摘み取っているに等しい愚行です。
何で?
2723:02/05/15 18:29
>>24

御意。
であれば「〜を見よ」とか、
「〜に〜な情報がある」って書き込みの方がナンボ有益なことかと思う。

ってゆーか、1次リソース調べないで、
あーいう「素人の解説」ばっかりをあてにしてると、
そこで解説されたことしか出来ない無能チャンが出来上がるだけなんだけど、
マニュアル読まない人種って危機感とか無いのかね。
28デフォルトの名無しさん:02/07/02 21:18
>>27
マニュアル読まなければいけないなんて。。
っていうかPerlはWebProg板の方が盛んだYO!
>>8
> $chmod o+x hello
自分では実行できない罠。