タグ

Perlに関するmhrsのブックマーク (38)

  • Complement of "Natural Language Principles in Perl"

    Perlの自然言語原理」 ―補遺 2002-11-25, Daichi Mochihashi <daiti-m@is.aist-nara.ac.jp> Ruby の(日における)隆盛が Perl を置き換えているかに見える現在、私がこの 文書を訳したのは、Perl には Ruby にはない思想があり、それは簡単に捨て去られる べきではない、と思ったからでした。 この文書で Larry が言っているのは、言語学的な詳細は惜くとして、一言で言うと 「自由の思想」とも呼ぶべきものなのではないかと思っています。Perl とはそもそも "Pathologically Ecletic"(病的折衷主義の) 言語ですが、それは問題に対する アプローチの面にも及んでおり、1つの問題をオブジェクト指向、関数型のような 固定された次元からだけではなく、様々な視点から眺め、「切る」ことができる 自由な言語を

    mhrs
    mhrs 2006/11/22
    『Perlの自然言語原理』補遺。
  • Natural Language Principles in Perl (ja)

    Perlの自然言語原理 by Larry Wall (Perl作者), " Natural Language Principles in Perl". Japanese: Daichi Mochihashi <daiti-m@is.aist-nara.ac.jp> (解説) 一度学んで、何度も使う 自然言語は一度学べば、何度も使うものである。ここから言語の設計者が学べるのは、 言語は学びやすさではなく、表現力の方に最適化されるべきだ ということである。ゴルフカーの運転を学ぶのは簡単だが、それでは やりたいことを表現することはできない。 しだいに学ぶ 人は自然言語を学ぶのを決してやめないという意味で、一度も自然言語を 学んでしまうことがない。 どんな人もかつて、何かの自然言語を完璧に学んでしまったことはない。 不幸にして, 直交性に対する要求から、多くのコンピュータ言語はいつでも 任意の自由

    mhrs
    mhrs 2006/11/22
    『Perlの自然言語原理』。『Natural Language Principles in Perl』("http://www.wall.org/~larry/natural.html")の邦譯。
  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
  • ppencode - JavaScript demo

    ppencode - JavaScript demo Input text Perl program Copyright(C) 2005 Yoshinori TAKESAKO. All rights reserved. return to top

  • ppencode - JAPH perl program encode

    ppencode is a program that trains JAPH (Just Another Perl Hacker). With ppencode, YOU are also JAPH from now! As you can see, ppencode uses only reserved keywords. Demo JavaScript version ppencode - JavaScript online demo Perl version ppencode - download Usage $ echo -n "just another perl hacker" | ppencode #!/usr/bin/perl -w length q else and print chr oct hex ord qw q bind q and print chr ord q

    mhrs
    mhrs 2006/11/08
  • 更新履歴兼雑記 - Perl記号ゴルフとAcme::EyeDrops

    ここからが題です。 Perl は頭がおかしいです。すごすぎる。この感動を伝えたいと思います。まず Perl の基からです。 Hello world! を書きましょう。 ''=~('(?{'.('[[).[|`%,,/`[/[@$'^'+)@@/^(@@@@@,@),@').'! "})')えーと。このくらいわかりますよね。これは Hello world という一番簡単なプログラムなのでわからない人はちょっとプログラムの才能が無いです。嘘ですが。 Perl では記号だけでは出力もできないかな、というような話をしていたところ、 Acme::EyeDrops の出力は記号だけで出力してるぞ、ということでした。これは見たことがあったのですが、確かに今見ると記号だけです。で、これの出力の意味を理解してたんですが、なんともすごいものでした。書いてから後で Perl ヤロウどものことだから既に常識だ

    更新履歴兼雑記 - Perl記号ゴルフとAcme::EyeDrops
    mhrs
    mhrs 2006/11/07
    「Perl の基本」
  • Daring Fireball: Markdown

    By John Gruber Archive The Talk Show Dithering Projects Contact Colophon Feeds / Social Sponsorship Jiiiii — Free to download, unlock your anime-watching-superpowers today! Main Basics Syntax License Dingus Download Markdown 1.0.1 (18 KB) — 17 Dec 2004 Introduction Markdown is a text-to-HTML conversion tool for web writers. Markdown allows you to write using an easy-to-read, easy-to-write plain te

    Daring Fireball: Markdown
    mhrs
    mhrs 2006/09/17
    「Markdown is a text-to-HTML conversion tool for web writers. 」
  • https://www.cs.odu.edu/~fmccown/research/lazy/warrick.html

    mhrs
    mhrs 2006/09/10
    Internet ArvhieやGoogle等のキャッシュからリソースを取得し、ウェブサイトをディレクトリ構造と共に復元するスクリプト。-wrオプションで取得先を指定出來る。「-wr ia」でInternet Archiveからのみ、等。
  • Perl 5.8.x における日本語コード変換のメモ

    Perl 5.8ではEncode.pmが標準モジュールとなり、多バイト文字を標準で簡単に扱えるようになりました。が、jcode.plやJcode.pmを用いたコード変換の経験があると、逆にこれが仇となって文字化けの嵐に遭います。(私の場合そうだったというだけで、普通はそんなこと無いのかもしれないのですが。)漸く最近になって基的な考え方が飲み込めるようになって来たので、この辺をまとめておこうと思います。なお、メモは新たにPerl 5.8.x的なPerlスクリプトを書く際に気をつけることをまとめたものであり、基的には既存のスクリプトにPerl 5.8 + Encode.pmを適用するためのものではありません。また、utf8でスクリプトを書くことを前提にしています。が、どちらにせよ、この知識は参考になると思います。(たぶん。) 文冒頭ですが、まず参照先を示しておきます。以下のドキュメント

    mhrs
    mhrs 2006/06/15
  • How to Sort

    sortの使い方 0: 組み込み関数の使い方 ここでは、sortの使い方を説明します。 「クイックソートはどれくらい効率いいか?」みたいなアルゴリズム論的な話じゃなくて、 プログラム言語に入っている組み込み関数やメソッドの使い方です。 1: 単純なソート 単純に sortを使うと、配列を数値の小さい順、またはアルファベット順に並べかえます。 Perlの場合 @a = ("a", "b", "A", "B", 1, 3, 24, "2"); @b = (1, 3, 24); $, = ", "; print sort(@a), sort(@b); 結果:1, 2, 24, 3, A, B, a, b, 1, 24, 3 Perlでは、数値も文字列として並べ替えられます(24のほうが3より前)。数値だけの配列でも同様です。 $, = ", " は、配列を printするときに、要素の間に「,

    mhrs
    mhrs 2006/05/31
    「アルゴリズム論的な話じゃなくて、プログラム言語に入っている組み込み関数やメソッドの使い方」
  • W3CDTFをPerlで扱う - 徒委記

    W3CDTFをPerlで扱う PerlでW3CDTFとエポック秒を相互に変換するためのスクリプトを作ってみました。 (そのためだけに新しくモジュールを入れるのは避けたかったので) Time::Localはたぶん標準でPerlに入っているのではないかと思います。 正規表現はPerlメモ/W3C形式の日時の解析を参考にしました。 blosxom用のプラグインentries_kacheで使用しています。 use strict; use Time::Local; use HTTP::Date; # 比較のため my $samp = &sampledate; print "-----\n"; print "origin: $samp\n"; my $t = wdt2time($samp) || 0; print "str2time: ", str2time($samp), "\n"; print "

  • Perlメモ

    複数のプロセスでロック状態が異常であると判断し,そのうちの 1つがロックを解除したことにより,別のプロセスがロックしたにもか かわらず,先ほどロック状態が異常であると判断したプロセスによってこの正常なロッ クを解除されてしまう可能性があります. この方法の問題点は,異常なロック状態を解除する操作が正常なロック状態をも 解除できてしまうことにあります.逆に言えば,異常なロック状態を解除する操作に よって正常なロック状態を解除できなければ問題ないわけです.そのためにはどうす ればよいのか? 答えはロック状態が常に変化していけば よいということです.そして,これを実現するのに都合がよいのが rename による方法になります. 最初のスクリプトで説明しますと,ロックファイルが lockfile という 名前のときがロックが解除されている状態で,lockfile987654321 のよう に後ろに

    mhrs
    mhrs 2006/05/30
    「HTMLタグの正規表現」とか。
  • スクリプト言語の比較::__END__

  • Kazuho@Cybozu Labs: C - a pseudo-interpreter of the C programming language

    mhrs
    mhrs 2006/05/03
    「ワンライナーも書くことのできる C 言語のインタプリタ」
  • スクリプト言語の比較

    スクリプト言語の比較 *1 *2 *3 *4 *5 *6 *7 コメント 行の継続 定数 未代入の変数へのアクセス 変数の展開 入出力 出力 フォーマット出力 出力先変更 標準入力 __END__ 演算 +1 整数/整数 負数の除算 文字列 真と偽 多重代入 多岐分岐 関数 関数 関数引き数 関数引数に対する副作用 関数のデフォルト引数の値の評価タイミング 関数のデフォルト引数にコンテナ型を使用した場合の振舞 関数戻り値 関数の再帰 関数の別名 関数定義内関数定義 関数の引数の順番 関数にファイルハンドルを渡す オブジェクト指向 クラスの定義 インスタンスメソッドの定義 メソッドのクラス内での利用 インスタンスメソッドの可視性 インスタンスメソッドの追加 インスタンス変数 インスタンス変数の可視性 インスタンス変数の追加 クラス変数 クラスの継承 多重継承 スーパクラスのメソッド呼び出し

  • http://srekcah.org/~utashiro/perl/scripts/mg/

    mhrs
    mhrs 2006/03/09
    multi-line grep: 改行で分斷された日本語の檢索に對應したgrep。
  • FANTASTiX

    遠いところからよくお越しくださいました。 CSS(カスケーディング・スタイル・シート)を駆使した、高速&低負荷の CGI スクリプトを公開しています。BBS で出力される文書は HTML 4.01 に準拠しています。詳しくはFANTASTiXの目標をご覧ください。

    mhrs
    mhrs 2006/02/24
    HTML 4.01準據のHTML文書を吐く掲示板スクリプト。
  • 色々な言語でライフゲーム

    Squeak Perl Scheme Ruby Prolog 色々な言語でライフゲームを作ってみました。 ライフゲームについてはライフゲーム保存会 が詳しいです。また、The Game of Life ですばらしい Java アプレットを遊ぶ事が出来ます。 まず手始めに、Squeak で原型を作りました。Squeak は オブジェクト指向の元祖である Smalltalk の直系の子孫です。最近の言語はどれもオブジェクト指向の 影響を受けているので、まず Squeak で作ったら他にも移植しやすいだろうと思ったのです。 作りながら決めた仕様は以下のとおり。 盤のサイズは 20 x 20 最初ランダムなパターンが現れる 0.2秒に一度世代交代 50 回世代交代をしたらまたランダムなパターンを生成 盤のクラス名は LifeMap ただ、Squeak 版以外は手を抜いてコマンドライン実行です。全部

  • いやなブログ: 配列操作の比較表: Ruby, Python, JavaScript, Perl, C++

    配列操作の比較表: Ruby, Python, JavaScript, Perl, C++ プログラムを書いていると、他のプログラミング言語の記憶とごっちゃになって、「配列の後ろに要素を追加するのは push だっけ、 append だっけ」などと混乱することがあります。特に Ruby, Python, JavaScript はコードの書き方が似ているので、この問題が起きがちです。 そこで、備忘録として、 Ruby, Python, JavaScript, Perl, C++ の配列操作の比較表を作りました。一番慣れている Ruby を基準にしています。間違いなどがあったらご指摘いただけると助かります。他の言語のもあるといいなあ。 Ruby (Array) Python (list) JavaScript (Array) Perl (@) C++ (std::vector)

  • http://ash.jp/ash/src/codetbl/

    mhrs
    mhrs 2005/10/25
    「JIS X 0201とJIS X 0208の文字コード表を作成するためのperlスクリプト」