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

Rustでグローバルに影響するような状態を持ったプログラムを作る時はどうするか

具体的にはメインループを回して、ユーザーからの入力を受け付ける必要があって、且つ状態をいくつか持ちたい場合、Rust(0.8相当)ではどうするのが得策かという話。割とテキトー。 便宜上、グローバルと呼んでいるけど、「メインループに類するもので変更…

Gecko勉強会 2で話した内容の補足です

この記事はFirefox Advent Calender 2013の24日目の投稿です。 先日開催されたGecko勉強会 2で「Geckoは何者か Geckoはどこへ行くのか 非同期編」という題で、ブラウザがページを処理するにあたってどのような処理をしているのか、および、ここ数年で直面し…

冬コミ(C85)三日目にRustの同人誌を出します

表題の通り、冬コミ(C85、コミックマーケット85)の三日目に、Rust Samurai名義で、Rustについての同人誌「Rust Dojo」を頒布します。 内容および執筆者は以下の通りです。 次元(@dim7th)「Rust 入門」 makoto_kato(@makoto_kato)「RustでのTCP/IPネッ…

ブラウザの空間ナビゲーション

この記事はWeb Accessibility Advent Calendar 2013のゲリラ投稿です。何か書いてみようかなーと色々思案し、ネタを思いついたところで投稿しようとしてアドベントカレンダーのページを開いたら全部枠が埋まっていたので何日目とか関係なく仕方なくゲリラ投…

ES6 Promiseの何が美しいのか

この記事は某JavaScript Advent Calendar 2013の2日目ではありませんし、ECMAScript Advent Calendar 2013のn日目でもありません(そんなものは本稿執筆時点で存在していない事を確認しています)。単に締め切りのある原稿を書いていて、疲れてしまって好き…

システムプログラミング言語

第7回くらいのServo Readingで話したことをざっくりまとめた。誰がどれを話したかはmangleしてあるので御容赦を。 個人的にざっくりとTwitterなどなどをクロールして得た感想だけど、GoはCompiled Pythonともいうべき立ち位置な気がする。PythonとかPerlとか…

Servo Architecture vol.1: ConstellationとPipeline

第三回Servo Readingの成果として、最初はServoのCompositorの話を書くつもりだったんだけど、いきなりCompositorの話を出してもややこしいので、まずはConstellationとPipelineの話をしようと思う。 ブラウザエンジンと一口に言っても、よく知られている通…

Servo Reading part2: ざっくり全体構成編

初回はRust復習会だったんで、実質的な初回なんだけど。 とりあえず a4baa7fc でコードリーディング ざっくり全体構成を知るのに終止 獣道すら存在しない前人未踏のコードの繁みに分け入る楽しさ servo.rc (/components/servo.rc) 素直なことしか書いてない …

Rustの並列タスクモデルのメモ

「メモリ安全性と並列実行性に注目した言語」と語られる割に、メモリ安全性はともかく、どのようにRustの並列実行モデルが成り立っているのかについて語られる事が殆どない気がしたので、Rust Tasks and Communication Tutorial を大雑把ながら読み解いてい…

Servoコードリーディングに必要なもの

さすがにいつまでもServoへの一方的な愛を語るだけではいかんだろうと思い、腰を据えてServoを読むべくServoのコードリーディング会をやってみたのですが、とりあえず初回の結論だけ報告しますと Servo読むならRustのチュートリアルくらい全部目を通しておか…

Servoの現況概説的なおはなし

ゆるふわ系Rust勉強会で話した内容のスライドを公開していなかったので今更ながら話した事について簡単にまとめます。 About Servo Mozillaが行っているRustで書かれたブラウザエンジン実験プロジェクト Rustのセールスポイントである並列性・安全性にフォー…

GeckoView 計画

Firefox for Androidに関連して、ごく一部でにわかに注目を集めているバグがある。これね。 867517 – Gecko-based WebView for Android 概要 バグでは完全に実装に関連する話しかされてないので、イマイチ何を目的としているのかわかりにくい。なので、MLにM…

Firefoxでのフルスクリーン時のwindow.openの挙動

かなり今更感があるんだけど、Firefox 21にて、フルスクリーンモード時にwindow.openが開かれた場合の挙動に変更を入れたのでそれについての解説。 まず、Firefox でのフルスクリーンモードは3種類ある。 Windows, Linux, (あとは10.6までのOSXの)、アプリ…

asm.jsについてこれさえ知っておけば超絶ライフハックで明日から収入が三倍になって身長が伸びて血圧が下がって寿命が10年伸びて彼女が出来て合コンでモテて子供が神童と呼ばれ東大首席入学で末は博士か大臣かコースまっしぐらで老後も安泰で人類も平和になるだいたい10個くらいの何か

色んなニュースで取り上げられているけど、結局肝心のところが捨て置かれたままに数字とかアプローチの是非が巷で語られてるので補足します。 asm.js の js とは何か JavaScript の言語コア部分、ECMAScript のこと。DOM は入ってない。Mozilla が JavaScrip…

XUL アドオンの JS コードモジュール とロジックの関係

Firefox 拡張の作り方 (2013 年版) - ひだまりソケットは壊れない という、とっても素敵な記事が出ていたので、個人的な感想と勝手な補足をする次第です。 最近のアドオン開発はそんなに詳しくないんですが、XUL オーバーレイなアドオンに関しては何本か自分…

Firefox OS (b2g) のデバッガの現在

Firefox OS(b2g)はそんなに詳しいわけじゃないんだけど、概要だけ述べると、Firefox for Android と同様に Firefox の Remote Debugger を使うことになる。このリモートデバッグ用のプロトコルは Firefox/Gecko 独自のものなので、Chrome Developer Tools …