タグ

ブックマーク / sumim.hatenablog.com (6)

  • Dynamic Object-Oriented Programming with Smalltalk - Smalltalkのtは小文字です

    http://www.iam.unibe.ch/~scg/Teaching/Smalltalk/ Squeak3.9 でクロージャを扱えるようにするための機能拡張パッケージ、NewCompiler と AST のことを調べていたとき、こんなページを発見しました。Smalltalk と銘打っていますが、Squeak(の Smalltalk)で、しかも内容もかなりマニアックです。スイス・ベルン大学の講義の資料のように見えるのですが、こんなに偏っていていいんでしょうか。w あと、タイトルを見ていて、オブジェクト指向を明示的にして区別するときの呼び名で、 ケイのオブジェクト指向 vs ストラウストラップのオブジェクト指向 (これがベストだが内容を表わせてない) Smalltalk 由来のオブジェクト指向 vs C++ 由来のオブジェクト指向 (イメージしやすいが語弊あり杉) メッセージ指向のオブジ

    Dynamic Object-Oriented Programming with Smalltalk - Smalltalkのtは小文字です
  • 動的性が Ruby の遅さの原因? - Smalltalkのtは小文字です

    引き続き、Strongtalk ネタ。Smalltalk Tidbits, Industry Rants - Explaining the Nature of Reality 経由で。 HREF Considered Harmful - Ruby and Strongtalk Joel on Software でジョエル・スポルスキーが、Ruby の遅さの原因は動的結合、動的型システムにある…というようなことを言っているのに対して、Seaside のアヴィ・ブライアントが Strongtalk を例に挙げて、んなこたーないって反論しているみたいな話。ありがちな対立構図なんですが、知っている名前によって馴染みの処理系が(いずれも例として適切ではないっぽいにせよ…)引き合いに出されていたのが面白かったので。 なお、文にもありますが念のため、Strongtalk の静的型チェックはオプショナル

    動的性が Ruby の遅さの原因? - Smalltalkのtは小文字です
  • 「Collatz予想」(角谷予想,3x+1問題)のお題を CLOS で - Smalltalkのtは小文字です

    前のエントリーでやっていることを CLOS の「補助メソッド」で。しかし、こうもシンプルに書けてしまうと、なんだか、f をありのまま定義して手つかずにすることへの脱力感が際だちますね(^_^;)。 (defmethod f ((n integer)) (cond ((= n 1) 1) ((evenp n) (f (/ n 2))) ((oddp n) (f (+ (* 3 n) 1))))) (defmethod f :before ((n integer)) (setq steps (1+ steps)) (setq upto (max upto n))) (defmethod g ((n integer)) (setq steps 0) (setq upto n) (f n) (list steps upto)) (defmethod h ((n integer)) (let ((r

    「Collatz予想」(角谷予想,3x+1問題)のお題を CLOS で - Smalltalkのtは小文字です
    delta81
    delta81 2006/07/21
    最後のh()の定義がよくわからない(Lisp自体への不理解のせいかな?)。面白そうだらCLOS勉強してみようかなぁ。
  • 「Collatz予想」(角谷予想,3x+1問題)のお題を Squeak の Smalltalk で - Smalltalkのtは小文字です

    キミならどう書く 2.0 - ROUND 2 - ― Lightweight Language Ring を受けて。 前回、いろいろな(変なw)処理系でさんざん書き散らかしてしまったのを反省して、今回は、知らない人でも Smalltalk がどんな言語だかが分かるように、オーソドックスなのをひとつだけ。 クラス「Integer」に次の二つのメソッド、#collatz と #collatzSteps:max: を定義します。 Integer >> collatz "Answer the Collatz steps and the maximum value reached, of the receiver." ^ self collatzSteps: 0 max: selfInteger >> collatzSteps: steps max: upto self = 1 ifTrue: [^

    「Collatz予想」(角谷予想,3x+1問題)のお題を Squeak の Smalltalk で - Smalltalkのtは小文字です
  • ライブラリが使いやすくリッチだったら言語能力が貧弱でもなんとかなる - Smalltalkのtは小文字です

    檜山正幸のキマイラ飼育記 - あなたの「極小なプログラミング言語」は? より。 プログラミング言語をうんと小さくするのは、ライブラリのほうにフォーカスしたいからなんです(僕の動機は)。ライブラリが使いやすくリッチだったら言語能力が貧弱でもなんとかなるような気がします。その「気がします」という感覚を確かめてみたいんです。 くしくも、ここ数日つづいている、“ちょ、それ、まさに、Smalltalk www!”シリーズ(?)の第三弾でツッコもうと思っていたら、すかさず(違う)別のエントリーで釘をさされてしまいました。 単に「できるだけ小さな言語仕様」ってことなら、いくらでも案はあると思います。「通常のプログラミング言語に類似の構文」という制限も別に意識しなくてもいいでしょう。 で、これをふまえて改めまして。 「通常のプログラミング言語に類似の構文」の“縛り”を解いてよいのであれば、やっぱり私は「メ

    ライブラリが使いやすくリッチだったら言語能力が貧弱でもなんとかなる - Smalltalkのtは小文字です
  • Smalltalk は死んだ言語だ。by アラン・ケイ - Smalltalkのtは小文字です

    Matzにっき - Alan Kayといっしょ や 日 Ruby カンファレンス 2006(RubyKaigi)の まつもとさんの基調講演での言及から、一部の隠れ Smalltalk ファンの方々には衝撃をもって受け止められたり、あるいはおもしろおかしく取り上げる向きもある、くだんのセリフ。実は、アラン・ケイが Smalltalk への失望や批判的評価を述べることはそんなに珍しいことではありません。(…ので、びっくりしちゃった人は、これを機会に“耐性”を持つようにしましょう!w) たとえば、このブログではお馴染みの The Early History of Smalltalk には、こんなくだりがあります。 When I looked at Smalltalk in 1975, I was looking at something great, but I did not see an

    Smalltalk は死んだ言語だ。by アラン・ケイ - Smalltalkのtは小文字です
    delta81
    delta81 2006/06/15
    「(良い意味で)未完成である、(Smalltalk-80 からできたメタクラスに代表されるような)行き過ぎた一貫性を持たない、(Smalltalk ではほぼ仕様が固まってしまった)誕生から10年を経てもまだ変化し続けている」
  • 1