ヤルキデナイズド

Unclassified Articles on Software and IT

プログラミング

AFNetworking-ReactiveCocoa を deprecated にした

AFNetworking-ReactiveCocoa の開発を中止し、より高機能な AFNetworking-RACExtensions に統合した。

AFNetworking とかのメモ

AFNetworking が投げるエラー(NSError#domain == AFNetworkingErrorDomain のもの)の NSError#code の値は NSURLError.h かここを見る Core Data エンティティの NSDate 型プロパティには nil を入れてもいい

AFNetworking-ReactiveCocoa を作った

AFNetworking を ReactiveCocoa に対応させるやつを作った。 Podfile に pod 'AFNetworking-ReactiveCocoa' と書けばインストールできる。使い方はこんな感じ: #import <AFNetworking/AFNetworking.h> #import <AFNetworking-ReactiveCocoa/AFNetworking-ReactiveCocoa.h> #import <ReactiveCocoa/ReactiveCocoa.h> - (void)requestAndSubscribe { AFHTTPClient *c…</reactivecocoa/reactivecocoa.h></afnetworking-reactivecocoa/afnetworking-reactivecocoa.h></afnetworking/afnetworking.h>

Pixiv gem を作った

Ruby から pixiv にアクセスする Pixiv gem を作った。 gem install pixiv でインストールできる。 使い方 require 'pixiv' pixiv = Pixiv.client('pixiv_id', 'password') illust_id = 1 illust = pixiv.illust(illust_id) puts illust.title member_id = 1…

“[0,1]” は不正な YAML だった

発端はこの発言。 YAMLの文法、謎が多い URL2012-06-27 13:22:42 via YoruFukurouいわく、 # ruby YAML.load('[0, 1]') == [0, 1] YAML.load('[0,1]') == [1] になるというもの。カンマの後ろにスペースがあるかないかでパース結果が異なる。馬鹿な。調べた…

Mission Control の仮想デスクトップ番号が取得できない

デスクトップの番号を表示するだけの他愛ないアプリを作ろうとしたのだが。(Snow Leopard までの)Spaces で現在の仮想デスクトップ番号を取得する方法はある:objective c - Detecting when a space changes in Spaces in Mac OS X - Stack Overflowが、 L…

mixi の Scrap Challenge 2012 に当選した

株式会社ミクシィ 学生向けエンジニアイベント "Scrap Challenge 2012"。2、3人でチームを組み、仮想環境のセキュリティホールをつつきまくる会らしい。志の高い人が集まるんでしょうね。こわい。

Rust 言語のモジュールシステム

追記:以下の記述は古くなっており、現在(バージョン0.12)のモジュールシステムとは異なる。Rust 言語のモジュールシステム、なかなかイケてる。 概略 1ソースファイルが1モジュール(=1つの名前空間)になる。ライブラリや実行ファイルは1つ以上のモジュ…

Rust 言語の組み込みテスト機構

Rust 言語はコードにテストを埋め込める。test 属性つきの関数がテストケースとなり、 関数が fail するかどうかチェックされる。 fail を期待するときは should_fail 属性を追加する。 // test.rs use std; #[test] fn test_equality() { assert 42 == 42; …

Rust 言語のインターフェース

追記:以下の記述は古くなっている。インターフェースはすでに言語から取り除かれた。Rust 言語のインターフェースは、ある型の値に適用できる関数のセットを定義するもの。 iface prettifier { fn to_pretty_str() -> str; }ある型についてインターフェース…

Rust 言語の事前条件制約

追記:以下の記述は古くなっている。事前条件制約はすでに言語から取り除かれた。Rust 言語では関数に事前条件を指定することができる。 use std; // predicate pure fn is_even(x: int) -> bool { ret x % 2 == 0; } fn print_even_number(x: int) : is_eve…

Io を Native Client で動かそうとした

動かそうとしたがうまくいかなかったので途中経過を記録しておく。まず Io の所定のビルド手順を踏み、 make io2c して、できた io2c をパスの通った場所にコピーする。これは、 NaCl のツールチェインを使うと io2c のビルドでコケるため。対処が面倒なので…

JavaApplet の動かし方

JavaApplet の動かし方を知らなかったのでメモ。たぶんもう一生使わないけど。class MyApplet extends Applet なクラスがあるとするとき、 <applet code="MyApplet.class" width=... height=...></applet> こういう HTML を用意して appletviewer hoge.html。