「POST‐OFFICE—ワークスペース改造計画」を読んだ

新しいワークスタイル、ツール、スペースについてのアイデア。絵と写真が多くて眺めて楽しい。間に挿入されているコラムも面白かった。

なんで、こんな本読んでいるかっていうと、頭使って深く考えたり、新しいことの勉強してんのがほとんど家なんだよね、会社じゃなくて。

というわけで、家やそれ以外をオフィスとして快適にすごすためにはどうすべきかとかそんなことに興味があるのだ。家のなかだったら、無線LANで常にmacbook持ち歩けるんでいいんだけど、たまに外でコード書きたい気分の時にemobileが欲しかったりするんだけど、週に一度使うか使わないかの頻度でemobile契約しておくメリットってあんのかなーと悩み中。

たまにチャリにのってmacbookとともにカフェに遠征するってのも気分転換にいいと思うんだよなぁ。

ProductName POST‐OFFICE―ワークスペース改造計画
岸本 章弘,中西 泰人,仲 隆介,馬場 正尊,みかんぐみ
TOTO出版 / ¥ 1,890 ()
通常24時間以内に発送

  • 円環時間と直線時間
  • ワークデザイン
    • interaction
    • visualization
    • inspiration trigger
    • tracking
  • マイマグ
    • 在席状況をカップが教えてくれる
  • スマート名刺
    • 短いコミュニケーションで大きなデータ交換
  • 可変落としぶた拡大版
    • ミーティングのサイズを変える
  • 足湯ミーティング
  • プロジェクトクロック
    • プロジェクトの全体像を常に意識する
  • scale loop
    • 都市的なスケールはもう一度個人に還元されていく

実践Common Lisp 10-15章

数、文字、文字列、コレクション(ベクタ)、リスト、連想リスト、属性リスト、ファイルIOに関して一通りやって、パスネーム可搬ライブラリを実装してみる。

ProductName 実践Common Lisp
Peter Seibel
オーム社 / ¥ 4,410 ()
通常24時間以内に発送

ここらへんの内容はxyzzy Lisp Programmingのほうが丁寧に書いてあると思う。

次はlispでオブジェクト指向に入っていく。ちょっと楽しみ。

実践Common Lisp 7-9章

マクロに関して。

ProductName 実践Common Lisp
Peter Seibel
オーム社 / ¥ 4,410 ()
通常24時間以内に発送

9章でマクロを使ってユニットテストを書いていくんだけど、抽象化の過程がやたらと面白かった。

「外資で働くためのキャリアアップ英語術」を読んだ

Business English Podみたいな感じの会話がつらつらと、というよりは「履歴書書いて入社までの会話を時系列で」みたいな内容。

ProductName 外資で働くためのキャリアアップ英語術
河口 鴻三
日本経済新聞社 / ¥ 1,260 ()
通常24時間以内に発送

英語の勉強というよりは、会話を通したマインドセットの違いのほうが勉強になった。

実践Common Lisp 4-6章

シンタックス、セマンティクス、変数、関数あたりの説明。

ProductName 実践Common Lisp
Peter Seibel
オーム社 / ¥ 4,410 ()
通常24時間以内に発送

ダイナミック変数ってのは要するにperlでいうグローバル変数のようなものか?そしてletがlocalに似た挙動を示すっぽいな。

実践Common Lispが来た

来た。

ProductName 実践Common Lisp
Peter Seibel
オーム社 / ¥ 4,410 ()
通常24時間以内に発送

Common Lisp 入門を読んでおいたので、さくっと3章くらいまで読んだ。

3章でいきなり属性リストを使ったデータベースを作り始めたが、ストレスなく読み進められそうで良書の予感はする。

カウンターのクロージャ

common lispだと

(let ((count 0))
  (list
  #'(lambda () (incf count))
  #'(lambda () (decf count))
  #'(lambda () (count)))

同じことをperlでもlispっぽくかける。

#!/usr/bin/env perl

use Perl6::Say;

sub make_counter {
  my $c = 0;
  return (
      sub {$c++},
      sub {$c--},
      sub {$c}
     );
}

my ($inc,$dec,$counter) = make_counter();

say $counter->(); # 0
$inc->();
$inc->();
$inc->();
say $counter->(); # 3
$dec->();
say $counter->(); # 2

ProductName 実践Common Lisp
Peter Seibel
オーム社 / ¥ 4,410 ()
通常24時間以内に発送

tar.bz2の展開

いままで

bzip2 -dc file.tar.bz2 | tar xvf -

とかやってたけど、

tar xvfj file.tar.bz2

でいいのね。

CTMCP chapter5 終了

メッセージ伝達並列性

ProductName コンピュータプログラミングの概念・技法・モデル(IT Architect' Archiveクラシックモダン・コンピューティング6) (IT Architects’Archive CLASSIC MODER)
セイフ・ハリディ,ピーター・ヴァン・ロイ,Peter Van-Roy,Seif Haridi
翔泳社 / ¥ 8,610 ()
通常24時間以内に発送

  • メッセージ伝達並列モデルは宣言的並列モデルに非同期通信チャンネルという概念を付加したもので、このモデルは非決定性である

最後のほうにerlangの簡単な説明の節があったが、erlangは触ったことないのでとりあえず

sudo port install erlang

してみた。後で時間があったら触ってみたいところ。

あまり並列処理をガンガンまわすということはやってないので、いまいち興味が、、、、というわけだったので、少し読み飛ばした。

CTMCP chapter4 終了

宣言的並列性に関して

ProductName コンピュータプログラミングの概念・技法・モデル(IT Architect' Archiveクラシックモダン・コンピューティング6) (IT Architects’Archive CLASSIC MODER)
セイフ・ハリディ,ピーター・ヴァン・ロイ,Peter Van-Roy,Seif Haridi
翔泳社 / ¥ 8,610 ()
通常24時間以内に発送

  • エラトステネスの篩をthreadを使って
  • 性急実行も遅延実行も有界バッファの極端な場合にすぎない。バッファの大きさを無限大にすれば性急実行でゼロにすれば遅延実行
  • ラッチ回路
  • 順序決定並列性
    • データフロー実行
  • 現実世界は宣言的ではない
  • 典型的なErlang抽象として関数が他言語で書かれた宣言的プログラムを、状態あり、並列でフォールトトレラントのプログラムにするものがある。

データフロー変数ってのがなんだか面白そうだったのでググったらみずぴー日記の方がOCamlでやってた。さらにコメント欄が参考になった。

perlだとthreads::sharedとかで変数を共有しといてundefじゃなくなるのを監視してれば未束縛の変数っぽい振る舞いをさせることができんのかな。pythonは全然わからん。