パスワードを忘れた? アカウント作成

Idle.slashdot.jpは、あなたの人生において完全な時間の浪費です。見るなよ、見るなよ。

3113798 comment

コメント: Re:週アスの報道…いや報道じゃないかも (スコア 2) 54

いや、僕もこのニュース聞いて「あ、コミケでカード決済できるかも」って思った口です。つり銭が足りないとかそういうときに「カードあったらそれでもいいですよ」って言えたら選択肢が増えるし。

まあ、コミケ会場だと電波状況が最悪なので3G、Wi-Fiともに繋がらないようなときに、とりあえずアプリ内で受け付けてあとからまとめて決済できるかどうかが重要じゃないかと思いますが。

3038164 comment

コメント: Re:日本でのDRMフリー電子書籍の現状 (スコア 1) 30

僕としては買った人がPC買い換えたり、スマホやタブレット端末でも読みたいという場合にできるだけ変な制限のない、私的複製の範囲のコピーは自由にできて、なんだったら家族とか少数の友達にコピーしてあげられる、かつ不特定多数が使える用にインターネット上のサーバににアップロードした場合読めなくなるような、または半分までしか読めないようなDRMがあったら、即採用したいと思ってます。そんな都合の良いものは存在しないので基本DRMなしでやってますが。
1895048 comment

コメント: Re:もともとPayPalはアダルト関連を排除していますよ (スコア 1) 58

もちろんサイトのアカウントも凍結されますよ。昔まだアダルト禁止の規定がなかった頃に自作エロ絵サイトで使ってて規約変更されたあと英語の文面ちゃんと読まずに放置してて凍結されたことがあります。なんとか口座にあったお金はデポジットできましたが、そのとき使っていた銀行口座は二度とPaypalでは使えなくなりました。(別メアドで取ったPaypalアカウントで銀行口座登録しようとすると拒否される)
1282827 comment

コメント: Re:LISTコンテキストだから (スコア 1) 5

by kr (#2078533) ネタ元: perl の配列

面白そうなので、自分も(好みにより言語はHaskellで)書いてみようと思ったら、
すでに沢山あってちょっとクラクラしました……。

No guessingってのがokkyさんと似た動機で書かれた版かな。
リスト中のアルゴリズムを順に試して、
うまく行ったらまたリストの最初から繰り返す、
という造りも同じようです。

Sudoku Solver等、
似たようなプログラムが見付かるところを見ると、
やはり誰しも書きたくなる題材なのですかね。

時間ができたら自分でも遊んでみたいと思います。
面白いネタに気付かせて戴いて有難うございました。

1281971 comment

コメント: Re:LISTコンテキストだから (スコア 1) 5

by kr (#2078461) ネタ元: perl の配列

古い格言に曰く、プログラムは思った通りではなく、書いた通りに動く。

@arrayを未定義値にしたいなら、

@array = undef;

ではなく

undef @array;

と書くべきだったという話ですかね。

undefの返値がLISTコンテキストで()と解釈されて欲しいと思うこともあるかもしれませんが、
それはそれで、

select undef, undef, undef, 0.1;

とか書けなくて不便という。

ある種のLISPにおけるnilの扱いと混同しがちですが、
結局のところ、Perlにおける()とundefを理解して適切に使い分けるのが吉かと思います。

混乱したらperldata(1)やperldoc -f undefを読み返しましょう。

937851 comment

コメント: Re:すいません勘違いでした。問題だったのはmd5sumでした (スコア 1) 11

すでに自力で答を得ているかもしれませんが御参考までに。

$filename = "file space";
open (MD5,"md5sum $filename |");

のような2引数のopenでパイプを作ると次のように動きます。

1. Perlが変数$filenameを展開。("md5sum file space |")
2. Perlが末尾のパイプ記号を見て、残りを/bin/shに渡す。("md5sum file space")
3. /bin/shが文字列を空白で区切る。("md5sum", "file", "space")
4. /bin/shが"md5sum"を探して引数("md5sum", "file", "space")を渡す。
5. md5sumが引数を見て"file"と"space"のMD5を計算しようとする。

Perlが/bin/sh経由でmd5sumを実行するので、 空白に限らず、/bin/shの特殊文字が意味を持ってしまいます。

例えば、カレントディレクトリの全ファイルのMD5を計算しようとして、

#!/usr/bin/perl --
# 注: 危険なスクリプト
foreach my $filename (<*>) {
    open(MD5, "md5sum $filename |");
    print <MD5>;
    close(MD5);
}

なんてスクリプトを使ってしまうと、例えばカレントディレクトリに、

$ touch "<'file space'|rm -rf *"

なんてやって変な名前のファイルを仕込まれていた場合に泣きます。 良い子は真似しないでね。

話を戻すと、そもそもPerlが/bin/sh経由でmd5sumを呼び出すのが悪いので、 もっと安全にパイプコマンドを作れば良いのです。 では、どうするか? 悩んだらマニュアルを読みましょう。RTFM!! この場合はopenで悩んでいるので、

$ perlfunc -f open

とかやって読みます。するとパイプの説明で盛んに「perlipcを読め」と書いてあるので、そっちも読みます。

$ man perlipc

すると"Safe Pipe Opens"節に、 shellに邪魔されない方法が色々書いてあります。好きなやり方を選びましょう。TMTOWTDI.

Ubuntu 11.10ならこんな感じで動くはず。

open(MD5, "-|", "md5sum", $filename)

ちなみにsystemとかbacktick(qx//または``)とかも同様の問題を孕んでおり、 解決策も似ているので以下RTFM。

では引き続きPerlプログラミングをお楽しみ下さい。enjoy!

937164 submission
アップル

HyperCardが消えた理由

タレコミ by cheez
cheez 曰く、
AppleがMacからHyperCardを消した理由についての考察本家/.にて取り上げられている。
HyperCardのポテンシャルを誰よりも理解していただろうジョブズは、HyperCardを無きものとしてしまった。その後も復活の要望は高く、市場もあったにも関わらず、類似ソフトウェアが登場することは無かった。
理由はHyperCardがAppleの作ろうとしている世界にそぐわなかったことにあるとこのブログでは指摘している。その世界とは、今はほぼ消えつつある「コンピュータを『使うこと』と『プログラミング』の境界の薄い世界、パーソナルコンピュータが単なる高価なビデオ付き電話ではなく、自分の頭の中を増幅してくれる端末である世界。そしてそれはAppleの囲い込み戦略が実現し得ない世界でもあったのだと。
HyperCardが存続されていたならば、iOS端末やその他Apple製品は現在のように存在していただろうか?ふと考えさせられる。
911095 submission
UNIX

あのタネンバウム教授、MINIXとその近況を語る

タレコミ by hylom
hylom 曰く、
UNIX系OSであるMINIXの開発者であり、Linus Torvald氏とOSについて激論を交わしたことでも知られるAndrew Tanenbaum(アンドリュー・タネンバウム)氏が、LinuxFr.orgとのインタビューに応じ近況を語っている(gihyo.jpの記事)。

相変わらずLinuxに関しては攻撃的な物言いで、「Linuxは5%程度のシェアしかないのに成功したというのはおかしい」などとこけ下ろしている。ともあれ、MINIXは順調に開発が進められており、組み込みシステムへの対応強化や可用性の向上など、今後も機能強化が続けられる模様。
typodupeerror

吾輩はリファレンスである。名前はまだ無い -- perlの中の人

読み込み中...