No Such Blog or Diary

«Prev || 1 | 2 | 3 |...| 1211 | 1212 | 1213 |...| 1332 | 1333 | 1334 || Next»

Jをちょっと

折角APLというものの存在を知ったので,その発展である J を少し使えるようになろうかと考えた.J の実行環境としては JSoftwareからインタプリタがダウンロード可能.JAPLA のシンポジウムの資料を見つつ簡単なところからやってみる.

とりあえず,配列の定義. i. という動詞(関数)で 0 から n-1 の要素を持つ長さ n の配列を作る.代入は =: ないし =. とのことで,値の出力は ] とのこと.

  ] D=: i.8
0 1 2 3 4 5 6 7

すでに分かりにくい.

ついで,reduction に手を出してみる.正確には insertion とか言うらしいが… BMF の reduce と同じで左にオペレータを取って配列をぶっ潰す.和を求めるのも簡単.

  sum =: +/
  ] sum D
28

これはまだ分かりやすい.

次に訳の分からん(気がする)動詞の fork 合成を試す.fork は3つの動詞からなり, f g h という fork に引数 x を適用すると (f x) g (h x) とかになるらしい.こんなのどこに使えばいいか良くわからんが,とりあえず平均がこれで書ける.# は要素数を返す演算子で % は割り算(剰余ではないらしい)の演算子.

  mean =: +/%#
  ] mean D
3.5

うーん,微妙に気持ち悪い気がしなくも無い.Lisp の括弧だらけの式を読むのと APL ないし J の式を読むのとどっちが面倒なんだか…

学んだこと

「Mac でウィンドウを閉じてもアプリケーションは終了しない.」

いや,動いてますよと何処か分かりやすい所に表示しててくださいよ.というか,巨大な MDI な気分なのは肌に合わない.

ところで,MAC MDI でググると MAC MIDI に訂正される.はぁ

死んでるマシンの判定はどうしたら?

クラスタ上で死んでるマシン及び元気の無いマシンを判定するのはどうやるのが一番楽なのか? 実験始める前にマシンの選択をしておかないと mpirun が元気の無いマシンも使っちゃうので結果が変になる.やはり一度こういうことをするプログラムを書いておくべきだな.

PCは復活

一部データと設定を除きほぼ元通り.ただ,Meadow さんを新しくしたら .emacs で文句を言われるようになったり色の設定が見難くなってたり… ついでに .tex を開くと自動的に落ちてくれたり…(自前のスクリプトのせいだったことが判明).ま,そんなことはどうでも良くてリカバリディスク出すために埃をかぶったせいか咽をやられた気配.

環境復旧率55%

意外と細々した設定やらソフトやらが多かったらしい.いまだ復旧できず.cygwin で自前コンパイルしたのとか吹っ飛んでるし,LaTeX のパッケージとかも吹っ飛んでるし,サービスの登録も吹っ飛んでるし,プリンタも吹っ飛んでるし.

HDDが鳴きだした

サルベージしそこなったデータが存在していることに気づき急いで救出に向かったのだが… 救出途中にHDDケース内からまた高周波の鳴き声が聞こえてきて… データ抜き出せん.

結論:とりあえず HDD がぶっ壊れてた.

ソフトケース内で起動しっぱなしになってたから熱で軸受けがやられたか?

«Prev || 1 | 2 | 3 |...| 1211 | 1212 | 1213 |...| 1332 | 1333 | 1334 || Next»
Search
Feeds

Page Top