2013-02-01から1ヶ月間の記事一覧
GitHub - naoya/perl-Text-LTSV: Text::LTSV - Labeled Tab Separated Value manipulatorのnode.jsでの実装を書いてみました。 機能的にはほぼ同じ(JSONでの出力とか、タグの出力ないけど)です。 微妙に違うのは、-f, --fileでファイルを指定したり、-s, -…
ちょっとはまった。 function Aaa() { this.list = []; } Aaa.prototype.test = function() { var aaa = this.list; this.list = this.list.concat([1,2,3]); console.dir(this.list); console.dir(aaa); }; (new Aaa).test(); [ 1, 2, 3 ] []this.listはcon…
ltsv-streamから遅れること約2週間、やっとltsvにcreateLtsvToJsonStream関数を追加しました。 Stream手強かったです。まる。 index.js var ltsv = require('ltsv'), ltjs = ltsv.createLtsvToJsonStream(); process.stdin.pipe(ltjs).pipe(process.stdout);…
split-stream - npmがやっとできた…… ltsv - npmが出来てから2週間…… もっと精進せねば。ぐぬぬ。
以前作成したCountStreamを再度書き直してみた。 今度のやつはprocess.nextTickで一行ずつdataを発行するようになってます。 counter_stream.js var stream = require('stream'), util = require('util'); function CounterStream() { stream.Stream.call(th…
pipeしたときのpipeイベントをごにょごにょしなくても、いい感じにやってくれるみたい。 以下はソースコード。 wstream.js var stream = require('stream'), util = require('util'); function WStream() { var that = this; stream.Stream.call(this); this…
引き続きStreamのお勉強をしております。今日はWritableStreamを。 wstream.js var stream = require('stream'), util = require('util'); function WStream() { var that = this; stream.Stream.call(this); this.writable = true; this.buffer = ''; proce…
とりあえず { "name": "name", "version": "0.0.0", "dependencies": { "chai": "~1.5" }, "peerDependencies": { "chai": "~1.4" } } って書いて $ npm install ってやると怒られるっていうのはわかった。
node.jsで普通に起動したプロセスを後からデバッガを有効にしてデバッグする方法があるのは知ってたのですが、実際にやったことが無かったので試してみました。 普通に起動させる とりあえずHTTPサーバを書きます。 index.js require('http').createServer(f…
読み込んだStreamを行ごとに分けて、先頭に行番号を出力するStreamを書いてみた。 count_stream.js var stream = require('stream'), util = require('util'); function CountStream() { stream.Stream.call(this); this.readable = true; this.writable = t…
昨日に引き続き、Streamを書いてました。ReadableもしくはWritable単体だと理解してるつもりなんだけど、両方を扱うStreamを書いてると、途端に???って感じになる…… そしてWritable Streamのソースコードをなくしたw Readable/Writable Stream line_stre…
そろそろstream2が出る(というか開発版はもうstream2使えるけど)のにstream1すら全然理解してないので、いろいろ調べつつ書いてみたのです。 いろんなものを読んでも読んでもさっぱりわからない……状態だったのですが、とりあえず実装してみて若干わかった…
02/08にLTSVについてのことを知って、http://ltsv.org/を見てみたらPerlとRubyの実装しかなかったのでnode.jsでの実装を書いてみました。 コードを書きつつ、他のPerlとかRubyの実装どうなってるんだろーと思ってページをリロードしたら、なんか別言語での実…
httpsアクセスを前面に立てたnginxで受け取って、node.jsに渡すというのをやってみました。 かなり面倒そうだなーと思っていたのですが、それほどでもなかったです。 環境:OS X 10.8.2 / node.js 0.8.17 / nginx 1.3.12 証明書の作成 httpsサーバを実行して…
redisでレプリケーションをやったことがなかったのでやってみました。 ちょっと試したいだけならとっても簡単。 環境:OS X 10.7.5 / redis 2.6.9 インストール 適当な場所にインストールします。 $ wget http://redis.googlecode.com/files/redis-2.6.9.tar…
2013年明けたと思ったら、もう1ヶ月経つとか早いねえ…… この調子でどんどん歳を取っていくのかと思うと、のんびりしてられないような気がする。 やったこと hatena.vimを試した zを試した 白MacBookをSnow LeopardからMountain Lionに Server-Sent Eventsを…
trap 'echo exit' EXIT とか書けばいいみたい。 trap 'eval `/usr/bin/ssh-agent -k`' EXIT とか書いたらtmuxでC-d押すたびに発動するから逆に困る事態に…… bash_logoutに書きなおしたけど。