タグ

ブックマーク / reinyannyan.hatenadiary.org (3)

  • livedoor Reader で irb (インタラクティブ ruby) - (new Hatena).blog()

    RedHanded 経由で irb のリモート版があるのを知り、早速作ってみました。LDR 上で :ruby 10.times { print "ho! " }なことができます。 また、セッションが維持されますので、前に定義した変数等を参照することも出来ます。 つまり、irb そのものです。 手元に ruby が無い 手元に計算機が無い ruby のお勉強系のブログでその場でお勉強 といった場面での活躍が期待できます。(よね?) ご利用はキーワードの方からどうぞ (user.js ファイルが提供されています)。 一応こちらにも定義部分を再掲しておきます: register_command("irb|ruby", function() { // See: http://redhanded.hobix.com/inspect/rubylessRuby.html var irb = "http:

    livedoor Reader で irb (インタラクティブ ruby) - (new Hatena).blog()
  • JavaScript でプロファイリング - (new Hatena).blog()

    追記 [20061103]: ライブラリ非依存なバージョンも書いてみました。id:reinyannyan:20061103:p1 でご覧下さい。 最近自分で書いた JS プログラムが驚くほど重かったので、どこに原因があるか調べたいと思いました。 その方法として、怪しいと思う箇所に (あるいは思わない箇所にも) 手作業でタイマーを仕掛けて、部分部分の実行時間を計測するのも手だと思うんですが、クラスのどのメソッドでどのくらい時間が掛かっているのかが自動的に分かる、というのが理想的かなと思いました。 (以下、prototype.js 的な (OO 的な) コーディングを対象とした話になります) まず思いついたのは、プロファイルしたいクラス (function オブジェクト) を受け取って、メソッドを動的に書き換えるという方法です: for (var m in klass.prototype) {

    JavaScript でプロファイリング - (new Hatena).blog()
  • prototype.js の Class 拡張試案 (2): 継承とスーパークラスへのアクセス (Update:20060301) - (new Hatena).blog()

    前回 id:reinyannyan:20051116:p1 の内容に幾つか問題点がありましたので、修正や解決策を新しいページにてお知らせします (今後も、新たに問題が発現すればこちらに追記したいと思います)。 Class.extend まず、新しいクラス継承の方法として Class.extend というメソッドを導入しましたが、これを改めて提示しておきます: Class.extend = function (object) { var newobj = new this; (Object.extend(newobj, object)).__super__ = this.prototype; return newobj; };変更点は特に無いんですが、new によってインスタンスを作成する関係上 (クローンでは prototype chain が壊れてしまう)、具象クラスの継承の場合、ini

    prototype.js の Class 拡張試案 (2): 継承とスーパークラスへのアクセス (Update:20060301) - (new Hatena).blog()
    secondlife
    secondlife 2006/03/06
    prototype.jsのClass拡張。かなりイイ。
  • 1