Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
Matzにっき
[go: Go Back, main page]

«前4日分 追記

Matzにっき

<< 2006/12/ 1 1. Ruby Advent Calendar : 25 Days of Ruby Joy and Celebration
2 1. 宣教師の手伝い
2. ボヘミアンの勝利(?)
3. Erubis - A faster alternative to ERB / eRuby
3 1. ブルークリスマス
4 1. 日本 Ruby 会議 2007
2. 凄い漢字
5 1. 日経Linux 2006年2月号
2. チープ教育
3. erubycon
6 1. 日経Linux 2006年2月号
2. スライド
3. 懇親会
4. TopFunky's PodCast Interview with Matz - O'Reilly Ruby
5. Script Languages
7 1. CUA TECHNOLOGY DAY 2006
2. 乗り遅れ
3. 〆切すぎました
4. XRuby
8 1. 帰宅
2. calkiハック
3. On Ruby: Rubinius Interview
4. 電話取材
9 1. Prayers for Seymour Papert
2. まつもとゆきひろ氏のHSPに対する見解について
10 1. デボーショナル
11 1. NaCl、Ruby/Railsの優位性語る - Java開発者はどこでつまずく?
2. OSSコミュニティは価値観が引力となってできる「銀河系」--CE Linux Forum上田氏
3. 検索サーバー:国内に設置 実現へ著作権法改正方針
12 1. 著作権保護期間は延長すべきか 賛否めぐり議論白熱
2. Introducing WSGI: Python's Secret Web Weapon
3. JRuby 0.9.2登場 - opensslエクステンションを追加、Railsサポートも改善
13 1. ウィニー開発者に罰金150万円の有罪判決 京都地裁
2. スポンサーを得るに値する人間になれるか
14 1. 取材
2. POPL
3. プログラミング言語ヒエラルキー
15 1. ruby の catch, throw は安心して利用できるのか?
2. ソフトウェア ジャパン2007
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 >>
Dr.Web 予測するアンチウイルス 持ち込み PC 対策でお悩みの方にオススメです。
ウイルス・スパイウェア検査・駆除 用ツール Dr.WEB CureIt! を無償配布中!

2006-12-15 [長年日記]

_ [Ruby] ruby の catch, throw は安心して利用できるのか?

答えは「そのレベルで安心できない人はRubyを使わない方がよい」です。 だって、整数のプラスだってなんだって再定義可能なんだから。

とはいえ、滅多にないとは言え名称の重複を心配しないといけないというのも切ない。

こういう時はまず原典を参照するに限る。 改めてCLtLを参照してCommon Lispのcatchとthrowについて調べてみると、

The catch special form serves as a target for transfer of control by throw. The form tag is evaluated first to produce an object that names the catch; it may be any Lisp object.

とある。がーん、今までずっとシンボルしかダメだと思ってたよ。 任意のオブジェクトがcatch/throwできるのね。

だとすると、やり方はある。

catchに引数を省略した時にタグになるようなオブジェクトを作ってやればいいんだ。 今まではシンボルに限定していたので、今まで使われたことのないシンボルを生成する gensymのようなことをするには抵抗があったのだが(シンボルはGCされないから)、 オブジェクトでいいというのなら、とりあえず任意のオブジェクトを作って渡してやればいいのだ。

新しいAPIだとこういう使い方になる。

catch {|tag|
   ....
   throw tag
}

で、tagは一度きりしか使われないオブジェクトだから(現在の実装は、Objectのインスタンスを渡す)、重複を気にせず使えるようになる。大域脱出させたい時には、tagのオブジェクトを引数で渡してやることになるだろう。

これで安心。

近い将来1.9にコミットしようと考えている。 でも、ささだくんに聞いたら、これってYARVだと実装が難しいんだって。 なかなか難しい問題だ。

_ ソフトウェア ジャパン2007

申し込みサイトがオープンした。 私も発表することになっている。

っていうか、坂村センセの直後に話すのは、ひっじょうに抵抗があるんですけど。 分不相応っていうか、なんていうか。

本日のツッコミ(全3件) [ツッコミを入れる]

_ ささだ [あれ、難しいって言いましたっけ。入れるようにします。ところで、catch() 時に行う比較は C レベルのポインタ比..]

_ まつもと [比較はequal?です。つまりポインタ比較。 ]

_ ささだ [うお、equal? なんてものがあったんですね。Schemeの場合、文字数が短くなる(equal? -> eqv? ..]


2006-12-14 [長年日記]

_ [Ruby] 取材

ITmediaに載せるということで取材を受ける。 写真のためということで、わざわざ松江まで来てくださる。

日経、朝日、と続いて最近取材が続いている。

日経ITpro, ラジオ, で今度のITmediaだ。 なんだか露出が多くて恥ずかしい。

お昼は蕎麦。鴨南蛮と割子蕎麦でおいしい思いをした。 風穴さんも満足げだ。

_ [言語] POPL

1月17日から19日まで、フランスのニースで開かれる ACMのプログラミング言語に関するカンファレンス。

行きたいなあ。

Wednesday, 17 January 2007

Invited Keynote: 9:00 - 10:00

Perl 6: Reconciling the Irreconcilable
Audrey Tang

Session 1: 10:20 - 11:20

Operational Semantics for Multi-Language Programs
Jacob Matthews and Robert Bruce Findler

Semantics of Static Pointcuts in AspectJ
Pavel Avgustinov, Elnar Hajiyev, Neil Ongkingco, Oege de Moor, Damien Sereni, Julian Tibble, Mathieu Verbaere

A Typed Intermediate Language for Compiling Multiple Inheritance
Juan Chen

Session 2: 11:30 - 12:30

Cork: Dynamic Memory Leak Detection for Garbage-Collected Languages
Maria Jump and Kathryn S McKinley

Dynamic Heap Type Inference for Program Understanding and Debugging
Marina Polishchuk, Ben Liblit, and Chloe W. Schulze

Compositional Dynamic Test Generation
Patrice Godefroid

Locality Approximation Using Time
Xipeng Shen, Jonathan Shaw, Brian Meeker, Chen Ding

Session 3: 14:00 - 15:15

Modular Type Classes
Derek Dreyer, Robert Harper, and Manuel M.T. Chakravarty

First-Class Nonstandard Interpretations by Opening Closures
Jeffrey Mark Siskind and Barak A. Pearlmutter

PADS/ML: A Functional Data Description Language
Yitzhak Mandelbaum, Kathleen Fisher, David Walker, Mary Fernandez, and Artem Gleyzer

Generative Unbinding of Names
Andrew M Pitts and Mark R Shinwell

Session 4: 15:45 - 17:15

Types, Bytes, and Separation Logic
Gerwin Klein, Harvey Tuch, Michael Norrish

A Very Modal Model of a Modern, Major, General Type System
Andrew W. Appel, Paul-Andre Mellies, Christopher D. Richards, Jerome Vouillon

Context Logic as Modal Logic: Completeness and Parametric Inexpressivity
Cristiano Calcagno, Philippa Gardner, Uri Zarfaty

Thursday, 18 January 2007

Invited Keynote: 9:00 - 10:00

From Implementation to Theory in Product Synthesis
Don Batory

Session 5: 10:20 - 11:30

Scrap your boilerplate with XPath-like combinators
Ralf Lammel

Lightweight Fusion by Fixed Point Promotion
Atsushi Ohori , Isao Sasano

Lazy Multivariate Higher-Order Forward-Mode AD
Barak A. Pearlmutter and Jeffrey Mark Siskind

Session 6: 11:30 - 12:30

A Complete, Co-Inductive Syntactic Theory of Sequential Control and State
Kristian Stoevring and Soren B. Lassen

Towards a Mechanized Metatheory of Standard ML
Daniel K. Lee, Karl Crary, Robert Harper

Session 7: 14:00 - 15:30

Logic-Flow Analysis of Higher-Order Programs
Matthew Might

Extracting Queries by Static Analysis of Transparent Persistence
Ben Wiedermann and William R. Cook

Variance analyses from invariance analyses
Josh Berdine, Aziem Chawdhary, Byron Cook, Dino Distefano, Peter O'Hearn

Session 8: 16:00 - 17:30

Assessing security threats of looping constructs
Pasquale Malacaria

JavaScript Instrumentation for Browser Security
Dachuan Yu, Ajay Chander, Nayeem Islam, and Igor Serikov

Secure Implementations of Typed Channel Abstractions
Michele Bugliesi and Marco Giunti

Friday, 19 January 2007

Invited Keynote: 9:00 - 10:00

Advanced Programming Languages in Enterprise Software: A lambda-calculus theorist wanders into an enterprise datacenter
Chet Murthy

Session 9: 10:20 - 11:20

Proving That Programs Eventually Do Something Good
Byron Cook, Alexey Gotsman, Andreas Podelski, Andrey Rybalchenko, Moshe Vardi

Program Verification as Probabilistic Inference
Sumit Gulwani and Nebojsa Jojic

Session 10: 11:30 - 12:30

Lock Allocation
Michael Emmi, Jeffrey Fischer, Ranjit Jhala, Rupak Majumdar

Modular Verification of a Non-Blocking Stack
Matthew Parkinson, Richard Bornat and Peter O'Hearn

On the Analysis of Interacting Pushdown Systems
Vineet Kahlon and Aarti Gupta

Session 11: 14:00 - 15:30

Specialization of CML message-passing primitives
John Reppy, Yingqi Xiao

Conditional Must Not Aliasing for Static Race Detection
Mayur Naik and Alex Aiken

Interprocedural Analysis of Asynchronous Programs
Ranjit Jhala, Rupak Majumdar

Session 12: 16:00 - 17:30

Preferential Path Profiling: Compactly Numbering Interesting Paths
Kapil Vaswani, Aditya V. Nori, Trishul M. Chilimbi

Geometry of Synthesis: A structured approach to VLSI design
Dan Ghica

A Semantics-Based Approach to Malware Detection
Mila Dalla Preda, Mihai Christodorescu, Somesh Jha, Saumya Debray

しかたない、Proceedingsを待つか。いつ来るかなあ。

_ [言語] プログラミング言語ヒエラルキー

言語間でお互いにどう見ているかの階層。

「わかるわかる」というものもあれば、 「それは違うんじゃない」というものもある。

ところで、外から見たRubyプログラマへの印象ってのは

Rubyプログラマはどのプログラミング言語利用者よりも自分たちが上だと考えているが、 Webプログラミング言語以外が存在していることを知らないのでPerlよりも上にした。

という感じなんだろうか。実際は、私の周辺では 「Webプログラミング言語以外が存在していることを知らない」人なんてのは 少数派なんだけど。私の周辺は特異点である可能性が高いしな。

本日のツッコミ(全6件) [ツッコミを入れる]

_ ささだ [Webプログラミング言語ってなんでしょうか。Webアプリケーション構築用のプログラミング言語って意味かなぁ。]

_ まつもと [たぶんね > Webプログラミング言語]

_ 高橋清文 [「行きたいなあ−」は、「行きます!!」発言にはなりませんか。わたしは、Rubyがあらゆる世界言語カンファレンスには、..]

_ 凡人 [どなたか、Geekな人に尤も好まれている言語をご存知でしょうか? Geekな人のType別に教えていただければ、す..]

_ まつもと [どうやって調べたらいいんだろう > 尤も好まれている言語 客観的な調査はどうやったらいいのか分かりませんが、私..]

_ 凡人 [まつもと様、 >Rubyは...いろいろですね。とっつきやすいだけにGeek濃度はLispより低い? というのは..]


2006-12-13 [長年日記]

_ ウィニー開発者に罰金150万円の有罪判決 京都地裁

判決が出た。有罪。

150万の罰金刑で済んだのを喜ぶべきか、 有罪になったのを悲しむべきか。

しかし、法律素人の観点から見るとこの判決はおかしく感じる。

著作権侵害の幇助と見なせる要件は満たしていると言えないことはないと思うので、 法廷で「Winnyは主に著作権を侵害するために開発されたソフトウェアである」との 裁定が行われて、その結果有罪であると言うなら、論理は通っている。

あるいは、技術自体に罪はなくても、金子さんが世の中に著作権侵害を蔓延させようとしていた というのであれば、有罪なのもやむなしと思う。

しかし、実際には

(Winnyは)さまざまな分野に応用可能で有意義なものであり、技術自体は価値中立的なもの

であり、

(金子被告は)著作権侵害の状態をことさら生じさせることは企図しておらず、経済的利益も得ていない

と認定している。上記の両方が成立していないにもかかわらず、 これで有罪というのでは、 「では、いったい何が悪かったの」という話になるのではないだろうか。

判決文全文を読んだら、また違う印象を持つのだろうか。

_ スポンサーを得るに値する人間になれるか

ヨットレースへのスポンサーを集める話。

オープンソースソフトウェアもこれくらい熱心にスポンサーを集めたら、 もうちょっと違う形の発展があるだろうか。

しかし、スポンサーがいなければそもそも参戦できないヨットレースと コンピュータ1台(あとできればネット回線)があれば、開発できちゃうソフトウェアとでは かける熱意が全然違うのかもね。

スポンサー探しするくらいだったらコード書いてたいし。


2006-12-12 [長年日記]

_ [知財] 著作権保護期間は延長すべきか 賛否めぐり議論白熱

延長賛成派(特に松本零士)の意見がまるっきり論理的ではないのは、 私が反対派だからだろうか。

普通、延長したいなら、延長することのメリットについて語ると思うのだが、 浪花節もどきのような話(私の夫の作品の著作権が切れるのです〜)とか、 根性論(歯を食い縛って作品を生みだして〜)とか。

苦労したことに同情しないでもないが、 それは一律70年に伸ばす理由にはならない。 一定の要件を満たす時に延長を許すというならまだしも。

むしろ、そのような人情論が一律延長の理由になると感じられる感性が理解できない。 人情論で人類のコモンズの発展を阻害してよいのか。私にはとうていそうは思えない

まだまだ溝は深い。

_ [言語] Introducing WSGI: Python's Secret Web Weapon

WebアプリケーションフレームワークとHTTPサーバの間に入って抽象化を行う層。

Webアプリケーションフレームワークが林立するPythonの事情がきっかけになったに違いない。 が、そのような抽象化層の存在は(性能などのじゃまにならない限り)望ましいことだと思う。

あっというまにゼロからWSGI」も参照のこと。

Rubyもこういうのがどんどん出てくるくらいユーザや開発者の層が厚くなるといいなあ。

_ [Ruby] JRuby 0.9.2登場 - opensslエクステンションを追加、Railsサポートも改善

日々進歩しているらしいJRubyの新リリース。

Railsの動作も改善され、opensslも(スクラッチから実装したものが)添付され、 性能も改善されたらしい。

そのうち抜かれちゃったらどうしよう。「気にしない」と言いつつも 本音では結構意識しているような。

本日のツッコミ(全6件) [ツッコミを入れる]

_ libitina [著作権だけ保護が延長されるのはおかしいので、特許も延長してください、という意見は技術職からでないのだろうか。むしろ、..]

_ 高橋清文 [東京の仲間は、続々と「世界RubyOSS大学」構想の賛同協賛者になって行きつつあります。年明けのアクションが楽しみに..]

_ まつもと [やめて〜っ > 特許延長 公表日から20年ってのはいいなあ。 改定か再登録で延長できれば、延長賛成派も満足できる、..]

_ なひ [cruby用openssl wrapperのAPIをBouncyCastleで実装したのか! すげー。不毛さがイカす..]

_ Skirnir [私も特に松本零士氏の主張は論理的ではないと感じました。感情的というか、意固地になっているというか。とりわけうどん屋の..]

_ 亡者 [いや、貧乏人と金持ちの戦いというだけに見えますが。もちろんそれを explicit には言えないからいろいろ理屈はつ..]

本日のTrackBacks(全1件) [TrackBack URL: http://www.rubyist.net/~matz/tb.rb/20061212]

_ masterQ diary:[commons]著作権保護期間は延長すべきか 賛否めぐり議論白熱 ソフトウェアエンジニアとしては延長なんてもってのほか、 と思..


«前4日分 追記

RSS feed meter for http://www.rubyist.net/~matz/ Creative Commons License This work is licensed under a Creative Commons License.