タグ

2007年5月24日のブックマーク (18件)

  • ants Lab. | その他 | JavaScriptデバッグ ツール作ってみました<第1回>

    JavaScriptは、開発するのはエディタとWebブラウザがあれば事足りるのに、デバッグが恐ろしく面倒なんです。数千行のコードを書くと、Webブラウザごとの動作の違いだとか、オブジェクトの振る舞いの違いに苦労させられます。そこで、オリジナルでデバッグ ツール「Geranium」を作ってみることにしました。 まず現物を見てもらった方が分かりやすいと思うので、こちらをご覧ください。今回は手軽なサンプルということで、カラー ピッカーを作ってみました。このページにGeraniumを組み込んであります。 ■カラー ピッカー colorPicker.html 「へ? 何も起きないじゃん……」と思った人は大正解です。このままではGeraniumは動き出しません。ブラウザの別画面で立ち上がったカラー ピッカーのURL欄の末尾に、「?debugger=true」を追加してみてください。 デバッグ出力がモリ

  • 工夫と趣向と分別と。 - 2007-05-19の日記 - Perlの罠 - リスト

    夜も更け、無性に打ちたい気分になったので新宿へ遠征。風速0.5の店で朝まで遊んだ。ブランクを経て再開後は、再構築したセオリーに沿って打つ中でなかなかブレイクスルーがなく、二着三着ばかりのゲーム代負けが続いていた。  し… 続きを読む »

  • 檜山正幸のキマイラ飼育記 - プログラマのためのJavaScript (0)

    ジジイの手習いで、JavaScriptを勉強中でございます。その動機は「結局、ブラウザベースRIAかよ」のようなこと。非ブラウザベースのリッチクライアントへの期待を失ってしまったんですね。短期的・現実的な策としては、Ajax的な手法によるRIAなのかなぁ、という気分。ただし、「短期的」が“1年”と“5年”ではえらい違いです。今のところ僕には、「短期的」の実際の期間はわかりません。 僕のJavaScript調査の結果は、「初心者でも使えてプログラマでも困惑するJavaScript 」などに書きました。これらの続きとして、「プログラマのためのJavaScript (*)」というタイトルで書こうかと予定してます。あくまで予定、気まぐれでモノグサな僕のことだから、…… “プログラマのための”というのは、C, C++, Java, C#など“普通の”プログラミング言語にある程度慣れていることを前提に

    檜山正幸のキマイラ飼育記 - プログラマのためのJavaScript (0)
  • 初心者でも使えてプログラマでも困惑するJavaScript - 檜山正幸のキマイラ飼育記 (はてなBlog)

    昨日に続いてJavaScriptネタ。 JavaScriptは誰でもすぐ使えるように工夫されている -- これは嘘ではないでしょうが、最初の敷居が低いから「やさしい」とは言えないようです。僕自身と少数の事例からは、C、C++Javaなどの“普通の”言語に慣れていても、JavaScriptには違和感・抵抗感を感じて、わず嫌いで手を出さないとか、かじったが放り投げるとか、… どうも「むずかしい」みたい。 実行環境が主にブラウザというのがまず異質ですが、この点は置いといて、言語仕様と言語処理系の観点から、JavaScriptの「むずかしさ」(と魅力)を述べたいと思います。 ●徹底的にオブジェクト的 JavaScritは、クラス、継承、情報隠蔽機構などを持たないので、まがい物の、あるいは中途半端なオブジェクト指向言語と思われているようです。そもそも、「何がオブジェクト指向か」って議論が不毛だか

    初心者でも使えてプログラマでも困惑するJavaScript - 檜山正幸のキマイラ飼育記 (はてなBlog)
  • JS番外編:これって、アスペクト指向かぁ - 檜山正幸のキマイラ飼育記 (はてなBlog)

    対話的JavaScript処理系(この記事を参照)におけるテスト/デバッグ手段として、ちょっと面白いことを考えたので紹介します。まー、ジャスト・ア・思い付きですけどね。 で、これって、かすかにアスペクト指向と言えなくもないかもしれない、とか思ったりして(って、まどろっこしい!)。 内容: アドバイス機能とその用途 仕組みと使い方(とソースコード) アドバイス関数の書き方 実例 まとめ アドバイス機能とその用途 最近のAspectJとかってなんだか難しげなんですが、僕が最初にアスペクト指向の原始的な姿に触れたのは、Emacs Lispのアドバイス機能です。これは簡単なものです。特定の関数の実行の前(before)、後(after)、またはその関数を包み込む(around)形で、“アドバイス”(advice; なんで"advice"なのかは知らない)と呼ばれるコード断片の実行を付加できるのです

    JS番外編:これって、アスペクト指向かぁ - 檜山正幸のキマイラ飼育記 (はてなBlog)
  • 最速インターフェース研究会 :: 実践JavaScriptリファクタリング、その2

    連載すんの? リファクタリングとか嘘で実は実践ビルトインオブジェクトハックなんだけど。 例題 配列 a = [3,5,4,2,1] から一番小さな値と、一番大きな値を取り出すにはどうすればいいか。 多分昔はこんな風に書いてたと思うんですよ。 a = [3,5,4,2,1]; for(i=0;i<a.length;i++){ if(i == 0){ min = a[0]; max = a[0]; } if(min > a[i]){min = a[i]} if(max < a[i]){max = a[i]} } 模範解答として、後先考えないやり方を提示しておく。 a = [3,5,4,2,1]; min = a.sort().shift();// 1 max = a.sort().pop(); // 5 短い。ただし、これをやるとaの内容は並べ替えられて最初と最後の要素が取り除かれる。 a /

  • まぐまぐ! - 読みたいメルマガ、きっと見つかる。

    携帯アドレス、Gmail、YahooMailにメルマガが届かない場合 こちらから受信設定をお試しください。 また、購読期間内のメルマガ(有料・無料)はマイページから再送できます。 マイページをお持ちでない方は、新規にご登録ください! →informationページへ

    まぐまぐ! - 読みたいメルマガ、きっと見つかる。
    miya2000
    miya2000 2007/05/24
    Image::Imlib2
  • Static class declarations

    miya2000
    miya2000 2007/05/24
    nested top-level class(static内部有名クラス). 外部から利用可能
  • JavaScriptでカリー化 - 檜山正幸のキマイラ飼育記 (はてなBlog)

    JavaScriptでカリー化。ありがち、つうか実際にあるでしょうね。小ネタと思ってやりはじめたら、意外と混乱した。一種のメタプログラミングのはずだが、実際にはテキスト加工処理。 内容: カリー化ってなに? カリー化を行う関数を作る:準備 カリー化を行う関数を作る:テキストのパッチワーク カリー化を行う関数を作る:組み立て ●カリー化ってなに? 2引数の関数f(x, y)に対して、「gがfのカリー化」だとは、f(x, y) = g(x)(y) が常に成立すること -- ゴチャゴチャ説明するより実例実例: functio sum(x, y) { return x + y; } このsumのカリー化の例: function curried_sum(x) { return function (y) {return sum(x, y);} } curreid_sum関数は1引数で、戻り値として関数

    JavaScriptでカリー化 - 檜山正幸のキマイラ飼育記 (はてなBlog)
  • JavaScript で引数束縛: Days on the Moon

    引数束縛 (カリー化) の話。まずは「JavaScriptでカリー化」(檜山正幸のキマイラ飼育記)。タイトルを見てどこかで聞いたような話だなと思ったら「関数の変形」(Effecttive JavaScript - Dynamic Scripting) だった。だが、前者は文字列に戻してから評価というのが力技っぽくて個人的に好きでないし、後者は汎用的過ぎていささかわかりにくい。そこで今回は先頭の引数から束縛していくというのに的を絞ってみたいと思う。 まず第 1 引数のみを束縛する場合。Function#apply を使えば引数を配列として渡せるので、束縛された値と後から渡された引数とを連結してやればいいのではないか。 function curry(func) { return function (first) { return function () { var args = Array.p

  • APOPのぜい弱性で見えてきたMD5の「ご臨終」

    情報処理機構セキュリティセンターは4月,メール・サーバーの認証プロトコルの一つ「APOP」について注意を喚起した。この注意喚起は,電気通信大学の太田和夫教授のグループが,APOPで使うハッシュ関数「MD5」に新たな欠陥を発見したことに基づくもの。この欠陥は,APOPだけでなく,MD5を使う電子署名などのほかのアプリケーションの欠陥も示唆する。実際にどの程度危険なものか,技術に基づいて考えてみよう。 わからないはずのパスワードが解かれる APOPは,チャレンジ・レスポンスという方式を使って,メール・クライアントとメール・サーバーのやりとりを盗聴してもパスワードが解読できないようにする。パスワードを直接やりとりせずに,まずサーバーからクライアントに「チャレンジ・コード」という文字列を送る。クライアントはチャレンジ・コードとパスワードを連結したうえで,MD5というハッシュ関数を使ってハッシュ値を

    APOPのぜい弱性で見えてきたMD5の「ご臨終」
    miya2000
    miya2000 2007/05/24
  • TAKESAKO @ Yet another Cybozu Labs: Wiiリモコンの値をJavaScriptで取得する方法(Wiiインターネットチャンネル)

    任天堂のQ&Aサイトで、Wiiリモコンの値を取得する方法が公開されていることを知人から教えてもらいました。 インターネットチャンネル向けのウェブページを作りたいのですが…。 : Q&A - Wii インターネットチャンネルの拡張機能について知りたい Wiiインターネットチャンネルでは特別な JavaScript を用いる事でWiiリモコンのひねりや テレビとの距離、複数のコントローラの状態を取得する事ができます。 手元にWii体の実機がないので(Wiiリモコンはある^^)まだ試していませんが、こんな感じでJavaScriptからWiiリモコンの値が取れるっぽいですね。 if (window.opera && window.opera.wiiremote) { var num = 0; // wiiremote number 0,1,2,3 var pad = window.opera.w

  • Student magazine - モバゲーを瞬殺した「顔ちぇき」という怪物

    どもども、ポールです!テレビでも報道された写メ診断の「顔ちぇき」が物凄い人気を呼んでいます。リリースから一ヶ月もしないで累計利用者数は700万人という驚異的な人気ぶり。これは尋常じゃありません。同じく携帯で爆発的な人気で話題の「モバゲータウン」をも一瞬で凌駕する爆発力。(モバゲーは2007.5.11プレスリリースでは500万人突破)(会員数と累計利用者数を比較するというテキトウさも大目に見てあげてください。) ほぼ完成されたビジネスモデルのモバゲーと「顔ちぇき」を比較するのはおかしな話ではありますが、「ユーザーを呼び込む口コミパワー」という一点においては目を見張るものがあります。*1 顔ちぇき 「顔ちぇき!」は、携帯電話向けサービスのジェイマジック(東京・港)が4月26日に始めたサービス。携帯電話のカメラで撮影した顔写真をメールで送ると、その顔がどの有名人に似ているかを判断してくれる。写真

    Student magazine - モバゲーを瞬殺した「顔ちぇき」という怪物
  • 【レポート】FreeBSDにおけるサーバ仮想化の取り組み (1) サーバ仮想化の2つのアプローチ | エンタープライズ | マイコミジャーナル

    サーバの仮想化に対する2つのアプローチ サーバの仮想化には大きく分けて2つの方法がある。1つは最近エンタープライズ分野で注目されている仮想化方法で、仮想化機能をサポートしたプロセッサを通じてOSごとまるまる仮想化するというもの。要するに1つのハードウェアで同時に複数のOSを動作させるというわけだ。OS上で仮想化アプリケーションを動作させるのではなく、もっと軽量なスーパバイザの上に個別にOSをインストールできる。OSに依存することなくスーパバイザレベルでのマイグレーションが可能で、きわめて独立性に優れたモデルだ。 それとは対極にあるのが、OS上で仮想化機能を提供するというもの。プロセッサ資源、ファイルシステム、ネットワークスタックなどを仮想化し、1つのOS上で複数のサーバを構築する。やりかたはいくつかあるが、このモデルの代表的な実装の1つがFreeBSDのJailだ。上記モデルと比較して軽量

  • 2000万個のプロセスを動かすための並列モデル - 最速配信研究会(@yamaz)

    # タイトルは煽りです. 今週末ドリコムさんでCometとその周辺技術(イベント処理、Erlangなどなど)に関する勉強会が行われるので,ここ最近つらつら考えたり調べたりしてたことを外に出します.yamazはErlangの文法とかにはあまり興味がなく,2000万のプロセスが並列実行できるというそのモデルに興味があるので,とりあえずそこについて. なおいつもにも増して適当なこと書いてるので,適宜マユツバでお願いします.ツッコミ大歓迎. Erlangは1マシンで2000万のプロセスを並列実行させることができるらしい. http://www.atmarkit.co.jp/news/200704/27/erlang.html 私は並列言語はVHDLしか使ったことがなく,しかもVHDLはちゃんと 並列実行を行う要素が回路の形で実在するので,Erlangみたいに 1マシンで並列性を実現することに対して

    2000万個のプロセスを動かすための並列モデル - 最速配信研究会(@yamaz)
  • 昨日のエントリ「document.title の罠」の間違いのお詫び & 補足 - IT戦記

    昨日の「document.title の罠」としたエントリですが document.title の罠 - IT戦記 一部間違いがありましたので訂正とお詫びです。 そのエントリでは、例を <div id="title"></div>としていましたが、 div 要素では発生しませんでした。 ちょっと僕が仕様を捉え違えていたようで、 img, applet, object, embed 以外のタグでは発生しないようです。 混乱させた方、申し訳ありませんでした。 nsHTMLDocument のソースにもろに書いてあるようです。 embed, img, object, applet で再現できました。div などでは無理なようです。 http://lxr.mozilla.org/seamonkey/source/content/html/document/src/nsHTMLDocument.cp

    昨日のエントリ「document.title の罠」の間違いのお詫び & 補足 - IT戦記
    miya2000
    miya2000 2007/05/24
    バグじゃないの?
  • マージンの相殺について:CSS | Tech de Go

    miya2000
    miya2000 2007/05/24
    知らなかった/負の時も注意 http://www6.plala.or.jp/go_west/nextcss/ref/article/mgn_clps.htm /Tipsの2番目が良くわからないんだけど…
  • jpace - Overview

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    jpace - Overview