2009-01-01から1年間の記事一覧

スレッド並列 or ネットワーク並列 ?

http://d.hatena.ne.jp/asip/20090517#1270705220

TrueClass | FalseClass の親クラスBoolClass(仮)が欲しい! on Ruby

Rubyではtrue・falseは別クラスで TrueClass という継承になっています。 このため、オブジェクトにtrue、falseのどちらかが入ってきているかを チェックしたい場合 if object.eql?(true) || object.eql?(false) then ... end あるいは if object.kind_of?(T…

Meteorの修正

要素キャッシュの更新のタイミングを修正。#github上で0.9.1.7として公開。

JCPのあるべき姿

http://d.hatena.ne.jp/asip/20090511#1270708771

ダブルスタンダードになりかけることは標準化団体では珍しくない

http://d.hatena.ne.jp/asip/20090509#1270708392

JCPを主導する企業(Sun)は慈善団体でも慈善事業をしているのでもない

#某大手掲示板からリンクが貼られたので、JCPやJAVAのTCKを #話題にしているこの記事はBlogger上に移転しました。

DI標準化戦争? on JSR

http://d.hatena.ne.jp/asip/20090508#1270708090

Rubyが遅いといわれる原因

RubyはVMやインタープリタが遅いといわれてきましたが 実際はそればかりではありません。

Java7で予定されていたプロパティ構文案の見送りは正解

http://d.hatena.ne.jp/asip/20090505#1270708176

Rubyにおけるバイナリ非互換

ruby-devMLで1.9.1と1.9.2がバイナリ非互換になるという アナウンスが既に流れています。 あなたは「バイナリ非互換」という表記で何を連想しますか?

BigTable

http://d.hatena.ne.jp/asip/20090504#1270707791

Cocoaのアウトレットとアクション

http://d.hatena.ne.jp/asip/20090503#1270705556

Meteorの修正

Meteor::Elementクラスにcontent=メソッドを追加。 #elementはMeteor::Elementのオブジェクト element.content = 'abc' でelementにabcをセットします。 content=メソッドはHTMLエスケープを行い、 element.content('abc') element.content('abc',true) と等…

JetBrains RubyMine1.0

でました。 来月登場予定の1.1の目玉機能 ・Rails2.3対応 ・RubyスクリプトによるIDEカスタマイズ機能 今秋登場予定の1.5の目玉機能 ・Ruby1.9正式対応 ・cucumberサポート RubyMine Development Roadmap

ロジック高速化の処方箋 for OO言語

http://d.hatena.ne.jp/asip/20090428#1270706912

処理速度と拡張性・保守性

http://d.hatena.ne.jp/asip/20090425#1270707279

OO言語とメモリ割当

http://d.hatena.ne.jp/asip/20090425#1270707280

C(++)言語とポインタとリファレンス

リファレンス(ポインタ)自体に型はない。 リファレンス(ポインタ)とリファレンス(ポインタ)が指すオブジェクトを格納する変数 を同時に定義するために、リファレンス(ポインタ)の定義にリファレンス(ポインタ)が 指すオブジェクトの型を付加する構文になって…

動的型付とOO言語

モダンなOO言語において変数はリファレンス(or ポインタ)の入れ物にすぎない。 リファレンス(ポインタ)自体に型はない。 OO言語において、オブジェクトの型は生成された時点で決定され、変わることはない。 モダンなOO言語における動的型付とは変数の型が代…

JetBrains RubyMine1.0 Beta

JetBrains IntelliJ IDEAのユーザなので、その繋がりでユーザしてます。 LL界隈ではvim(or vi)使いやemacs使いの中に尊敬を集めているエンジニアが多い こともあり、これらのエディタを使う人が多い....ですが、これらのエディタは プログラミングに特化して…

プログラミングの真髄

http://d.hatena.ne.jp/asip/20090414#1270706609

Meteorの修正

Meteor::Element#copyのメソッド名をnew!に変更。 Meteor::ParserFactory#setParser、getParserをアクセサparserに変更。 メソッド名全体をaaaBbbからaaa_bbbに変更。 Meteor::Elementのイニシャライザで有効フラグをセットし忘れていたバグ等を修正。 #0.9.…

オブジェクト指向って結局...

データ(変数や変数の塊である構造体)とデータの振る舞い(関数)を関連づけて扱う 考え方。 考え方に過ぎないので、手続き型言語でもオブジェクト指向で記述することはできる。 但し、手続き型言語では制約が緩すぎてオブジェクト指向で記述することを書き手に…

OO言語における変数のメモリ領域確保のタイミングと変数の寿命

http://d.hatena.ne.jp/asip/20090404#1270707033

OO言語における処理速度向上

http://d.hatena.ne.jp/asip/20090402#1270706792

MacRuby0.5

パーサ(構文解析器)から直接LLVMの中間コードに変換・実行するVMをYARVの 代替としてアップルが開発中、MacRubyの次期リリース0.5で公開される予定。 詳しくはここやここ(日本語)。 日本ではmiura1729氏がYARVの中間コードをLLVMの中間コードに変換・実行 す…

Ruby処理系の識別 その2

Ruby1.9.1でRuby処理系実装を区別するための定数、RUBY_ENGINEが追加されていた。 Ruby1.9互換のRuby処理系ではこの定数を用いて、処理系毎の差異を考慮(吸収)した ライブラリ(スクリプト)を書くことが可能になる。

RubyとJavaの文字列の扱いの違い

Javaで文字列(String)はimmutable(改変不可)なオブジェクトであるの に対してRubyでの文字列はmutable(改変可能)なオブジェクト。 Javaではimmutable(改変不可)なオブジェクトであることから、メソッド 内に埋め込まれた文字列をコンパイラ側でプライベートS…

Meteorの修正

文字列の式展開と 微妙にスピードアップ? #githubにて0.9.1.1として公開済み #http://github.com/asip/meteor/tree/master

Meteorの修正

要素の複製をコピーコンストラクタではなくcopyメソッドを使用するように変更。 copyメソッドは要素キャッシュにキャッシュされていればそれを、されていなければ コピーコンストラクタで要素の複製を行う仕様で実装。 printメソッドの内部で行う要素の複製…