こんな時、どう書くの? (CoffeeScript 編)

http_request.request( request_option, function (response) {
    var buffer = "";
    response.setEncoding( "utf-8" );
    response.on( "data", function (chunk) {
        buffer += chunk;
    } );
    response.on( "end", function (chunk) {
        callback( buffer );
    } );
} );

この様に、関数の引数として何らかのオブジェクトと、関数を渡す時はどう書けばいいだろうか?

関数の呼び出し時、括弧を付けない書き方もあるらしいので、こう書いたら関数オブジェクトも引数として収まった:

response.on "end", (chunk) ->
    callback( buffer );

ということで、一番上の JavaScript のコードは CoffeeScript のコードに直すとこのようになる:

http_request.request request_option, (response) ->
    buffer = ""
    response.setEncoding( "utf-8" )
    response.on "data", (chunk) ->
        buffer += chunk
    response.on "end", (chunk) ->
        callback( buffer );