枕を欹てて聴く

香炉峰の雪は簾を撥げて看る

Function.prototype.bindは何がいいのか

ES5からFunction.prototype.bindが入りました. これに準ずるものは数々のFrameworkで提供され続けてきたので, あまり馴染みの無さはないのではないでしょうか. このFunction.ptototype.bindは実はとても面白いので. 結論から言えば, Function.prototype.bind…

ES5, Property Descriptor解説

JavaScript Advent Calendar 2010 6日目のid:Constellationです.ECMAScript5になって大きく変更されたといえば, strict mode, early error, Object extras, そしてProperty Descriptorの概念です. ということで今回はES5 PropertyDescriptorについてまるっと…

Re-Implement ECMA262 5th Engine@Firefox Developers Conference 2010

LTで話してきました. Constなんとか Constellation です. Firefox Developers Conference, 素晴らしい方々とお会いできて大変楽しかったです. ありがとうございました.Re-Implement ECMA262 5th Engine - Constellation Scorpiusこれが当日のLTの資料です. …

ECMA262 5th specification for Kindle

強烈な物欲によってKindleを購入し, 楽しくて仕方ないです. さっそくいろいろ読んでいます. 青空文庫も読めたり(pdf化), サクサク動いて, とても軽い + 小さい. とっても楽しい.が, 事前に聞いていたように, 確かに字の小さなPDFを見る際にはなかなか厳しい.…

LDRFullFeed update

html_sanitizerは安全なのだけれど, 衝撃的な速度を誇ったので, http://d.hatena.ne.jp/os0x/20080228/1204210085 ベースのwhite listに変更しました. LDRFullFeed 0.0.28 http://userscripts.org/scripts/show/22702 ChromeFullFeed 1.1.2 https://chrome.g…

LDR Full Feed security update

security上非常に問題があるので, 必ずupdateしてください.userscript 0.0.27 http://userscripts.org/scripts/show/22702Chrome extension (こちらは自動でupdateされます) 1.1.1 https://chrome.google.com/extensions/detail/hdcaeobehcekfkhjlkdlipnkmhg…

Math.random

JavaScriptのMath.random()のばらつき具合。 『JavaScript Math.random Test』 URL2010-10-06 17:21:54 via webで気になったので. ばらつきは上記のページで試してみるとして. まず, ES5thのMath.randomはimplementation-dependentです. 15.8.2.14 random ()…

Taberareloo 2.0.0 : context menus

stable channelがversion 6になりました. Chrome Releases: Stable and Beta Channel Updates といっても驚かれないかもしれませんが, context menusが追加できるようになったといえば, 感慨深くなりませんか?というわけでTaberarelooを2.0.0にmajor update…

Eval ContextとかInteractive JS Shellとかもろもろ

オレ標準JavaScript勉強会での発表のSlideです. IJS: Interactive JS Shell - Constellation Scorpius内容はInteractive JS Shellを実装する際に問題になる, Token Streamの問題, そして同一Contextでの評価の継続の問題です. Tumblrがまさかのmaintenanceだ…

LDRFullFeed on Safari

Safari拡張の証明書のsignのところで躓いて, はーどうしようかーとか思っていたのですが, id:os0xさんに Loox Uと初音ミクで行こう!: Safariの証明書作成でハマった。 を教えてもらい, 無事certreqすることができたので, とりあえずChromeFullFeedをSafari…

JavaScript Syntax探訪

blogめったに書いてない... 2.5年で110件...前々からJSのScannerを読んだりするのが楽しかったのですが, id:miya2000 さんからの「commentを削除するprogram」という話が出たときに, 結局JSのlexerというものは単体では生成できずParserと密着している(主にR…

tech talkの資料

連携周りのLTをさせていただきましたー. 超早口ですごい緊張していた記憶があるので, ustreamを見るのが怖い...拡張間連携とEvent Driven JavaScript - Constellation Scorpius

embed V8

embed V8がちょう楽しいので. 最近JSの処理系のソースコードを見るのが個人的な楽しみだったのだけれど, embed V8が思ってたよりもずっと手軽に処理系を触れると知って...原文 Embedder's Guide - Chrome V8 — Google Developers id:edvakf さんによる邦訳. …

Function#name

知らなかったのだけれど, こんなのできるんですね. 普通にerror stackをparseしてやろうとか思ってしまっていた. function debug(){ var funcname; if(arguments.callee.caller){ funcname = arguments.callee.caller.name; } if(!funcname) funcname = "ano…

NPAPI拡張 iTunes Daemon

iTunesで今なっている曲の情報を取得するAPIを提供するGoogle Chrome拡張, iTunes Daemonを書きました. Windowsでしか動きません. COMを使っているからです... Constellation/iTunesDaemon · GitHubまだまだ実験段階ですが, installしたい方はこちらのlinkか…

Taberarelooのタグ補完について

Taberarelooは基本的にid:ConstellationによるTombloo experimental branch on Chromiumだと思ってもらって結構で, 面白いと思ったことを放り込みます. そのためbugがでて急遽修正というreleaseも多いのですが... また一方で tomblooと違うというところは大…

ChromeFullFeed API

Chrome拡張は連携超楽しい!! という話になったので, ChromeFullFeedの外部APIを作成し, versionを1.1.0にしました.sample var CHROMEFULLFEED = 'hdcaeobehcekfkhjlkdlipnkmhgfcdpb'; chrome.extension.sendRequest(CHROMEFULLFEED, { action: 'fullfeed', u…

Selection内のHTML Textをいい感じに取得する

追記: Rangeを使うと, 86行に及ぶDOM操作がなんと2行に! 勝手に添削: Selection内のHTML Textをいい感じに取得する: Days on the Moon Tomblooの最新版ではEvernoteの取り込み機能がつき, これに伴いHTML Textを取得する周りで大規模な変更がありました. こ…

Chrome Dirty Hacks 01: fc2 image for LDR

続ける予定は未定ですが01と銘打ちました, ChromeのDirtyなHackをお届けするChrome Dirty Hacks.今回のレシピは, LDR上でfc2の画像を表示する です. 注意 Chrome Dirty Hacksはたまーに見つかるあんなのやこんなので, Chromeで実用性皆無のdirtyなhackを! と…

ReBlogできる, Taberareloo ver 1.0.0

Chrome Web Store - Taberareloo Taberareloo の ver 1.0.0を公開しました. ReBlog, Text, Photo, Quote, Videoなどなどに対応し, 一段落したのでmajor version番号を上げ, 1.0.0となります. 以下使い方および追加機能です. QuickPost 使い方 Chromeには標準…

Google Chrome Extensions Gallery

本日(2009/12/09), Google chrome extensions Galleryが一般公開ということで, ChromeFullFeedとTaberarelooをGalleryに公開しました. ChromeFullFeed Chrome Web Store - FullFeed for Chrome™ LDR Full FeedのGoogle Chrome用です. 全機能に関してLDR Full…

crxmakeをGoogle Extensions Galleryに対応

追記 id:os0x さんから, @Constellation ちょうど同じネタで書いてましたね。ちなみに、pemファイルを含める必要があるのは初回のみなので、割と事故率は低いかも。 http://twitter.com/os0x/status/6303238609 と教えてもらいました! Google Extensions Gal…

Ruby Net::GitHub::Upload

GitHubのdownloadsが遅延がひどく, Taberarelooのversionを0.0.2にしても一向に変化しないのと, いちいちdownloadsに入れるのが億劫になったので, Big Sky :: 被はてなブックマーク数を表示するGoogle Chrome拡張書いた。で見たNet::GitHub::Uploadを使おう…

Taberareloo ver 0.0.3にあたって

AutoUpdateについてのお詫び Taberarelooのmanifest.jsonが間違っていたため, AutoUpdate出来なくなってしまっています. すいません. installなさってくださった方は, 拡張機能のページからuninstallして, installしなおしてもらえると幸いです. すいません.…

Yet Another Tombloo on Chromium: Taberarelooを公開しました

Yet Another Tombloo on Chromium, Taberareloo(タベラレルー) を公開します. Constellation/taberareloo · GitHub Taberareloo(タベラレルー)はクロスポストに特化したTombloo互換を目指すChromium Extensionで, 現在, browserActionがscriptableに動作でき…

GoでY Combinatorとか不動点関数とかmemoizeとかできたよー

Y Combinatorとは何かという人は, この記事がわかりやすいです. Y コンビネータって何? - IT戦記 JSでは関数の型とかがいらないので, とてもシンプルにY Combinatorが書けます. var Y = function(f){ return (function(g){ return function(m){ return f(g(…

Goでtree

面白そうなのでGoでとりあえずtree command(色なし版)書いてみた. なぜtreeなのかはちょっとわかりません. channelも使えて満足です. goroutineもとってつけたように使っています. http://gist.github.com/231953 package main import ( "fmt"; "flag"; "pat…

Diff algorithm

id:smoking186 さんの指摘を受け, First Authorの名前などを付加しました. どうもです. 記事内のcodeは最適化などを施しておらず, 冗長に, 定義どおりに書いています. ifがまとめられたりとかしますが, そのあたりはご容赦を...Rubyでlevenshtein距離を見て…

Deferred.bind

これはすごい. JSDeferred に引数束縛の bind, curry を追加 / Google Chrome の JSDeferred のインテグレーションを書いた - #生存戦略 、それは - subtech ChromiumのAPIは非同期+callback必須ばかりで, 「うわー. JSDeferred / Mochikit Deferredがないと…

API Checkについて

id:you999 さんの疑問に. GM ver 0.8.2からGM_openInTabはデフォルト挙動, つまりconfigのbrowser.tabs.loadInBackgroundの値に沿った開き方をするように変更されました.(手前味噌のものでよければこちら参照Greasemonkey ver 0.82解説 - 枕を欹てて聴く) よ…