2008-04-01から1ヶ月間の記事一覧

世界のナベアツに“はじめての Scala”で果敢に挑戦

リファレンスをひきひき…(^_^;)。こんなふうに書いた方がシンプルだよ…とか教えていただければさいわいです。 object Nabeatsu { def main(args: Array[String]) { // 1 から 40 まで数えて((3の倍数)と(3がつく数字)の時だけ"アホに"なります) 1 から 40 ま…

世界のナベアツに Ruby で挑戦(sumim 版)

世界のナベアツに Ruby で挑戦する - Tociyuki::Diary すばらしい! 自分なりにも、Squeak Smalltalk 版からの移植っぽいやつを考えてみました(「#アホに」はお借りしました…)。Ruby は、ブロックがオブジェクトじゃないのがつらいですね(^_^;)。あと、Rub…

世界のナベアツに Squeak Smalltalk で挑戦する(改訂)

流行っているみたいなので。 力試しにナベアツのような判定をするプログラムを作ろうとしたと… - 人力検索はてな ただし、ふつうに書いてもつまらないので、例によって Smalltalk ならではの“はるか斜め上”に向かってかっ飛ばしてみました。w (#改訂:最…

世界のナベアツに Squeak Smalltalk で挑戦する(改訂)…の解説

id:sumim:20080417:p1 で定義されたメソッド群について、おおざっぱにですが説明を加えたいと思います。 まず、簡単なところで「#と:」と「#の時だけ:」。前者は #or: のエイリアス。後者も、ほぼ #ifTrue: のエイリアスですが、引数を改めてブロック化する…

三系統の“オブジェクト指向”を「北斗の拳」に例えてみる

OOP

id:sumim:20080415:p1 の続き? ▼データ型にこだわるOO → 南斗聖拳 広く伝承され、主立ったもので総勢一〇八派に分派している。また、有力流派から派生する流派(派生流派)も存在するため、流派の数はさらに増える(南斗聖拳 - Wikipedia より)。切り裂…

三系統の“オブジェクト指向”をできるだけ純粋にサポートする言語を探してみる

OOP

id:sumim:20080416:p1 の続き? ▼データ型にこだわるOO ユーザー定義型へのこだわりといえば、メインプログラムさえも型で表現しようとする Java をおいて他にないでしょう。ありがちな「メッセージングにこだわる〜」からの“汚染”もほぼ皆無のようですし…

“オブジェクト指向”の本質

OOP

「OO(OOP)とは何か?」については、ネタが割れてしまえばそんなに複雑なものではない…と個人的には最近、考えるようになってきています。 リスコフのユーザー定義型(aka、抽象データ型。データと手続きのセット)そのもの、あるいはその「ユーザー定…

プロトタイプベースの誤解

OOP

クラスベースのOOとプロトタイプベースのOOで決定的に違うのは、プログラムを動かしている最中にオブジェクトが出来ること、すなわちメソッド(method)を追加したり再定義したりできるかだ。 404 Blog Not Found:タイプ・クラス・プロトタイプ - OOの語彙 こ…

求人にみるプログラミング言語シェア

とりあえずJavaとC/C++/C#、あとJavaScriptを覚えれば、当分仕事には困らないようである。COBOLのしぶとさも目立つ。ちなみにHaskellやOCamlの求人は10以下だったそうだ。成長率では、C#とRubyが飛び抜けた伸びを示している。 引く手あまたのプログラミング…

Ruby に特異クラスを返すメソッドを設けるなら…

[ruby-dev:34192] Re: Object#singleton_class 気持ちは分かりますが、名前の合意ができるまでは導入しません。 * singleton_class→singletonパターンに登場するクラス、とく に標準添付のsingleton.rbで定義されているSingletonクラス トの混同がうれしくな…