ときどきの雑記帖 倒行逆施編

最新ページへのリンク
目次ページへのリンク

一つ前へ 2015年3月(下旬)
一つ後へ 2015年4月(中旬)

ホームへ

2015年04月10日

■_

今月の日経Linuxまだ読んでなかった

■_

■_

「ハッカーズ大辞典」に日本語訳あったんだよなあ >‘Story of Mel ま。それはさておき最後の最後。 The ‘Story of Mel’ Explained | electric ether

The ‘Story of Mel’ Explained | electric ether

None of us are Real Programmers. We are abstracted away so far from what is really happening in the metal, that arguing about languages is a pointless endeavor.

I suggest being content that modern technology doesn’t require us to hack up machine code in order to keep our software running :)

2015年04月09日

■_

■_

■_

今日の新言語 Picat 1.0 - Is Logic Programming Making A Comeback?

Picat 1.0 - Is Logic Programming Making A Comeback?

Picat is a newish language that has just reached a version 1.0 release. It has some interesting features, but the fact that it supports logic programming is the most important.

■_

1401-FORTRAN-Illustrated.html にあるコードで、たとえば

1401-FORTRAN-Illustrated.html

For a = b * c it would be something like

b arith
dcw @*@
dc b
dc c
dcw @=@
dc a

instead of

b ffmult
dcw b
dcw c
b fstore
dcw a

これは手続き(arith, ffmult) を引数与えて呼び出していると思われるんだけど、 この、手続き呼び出し命令の直後に引数を置くというのは むかーしのBASIC (N88とか)で見たような覚えが。

2015年04月08日

■_

お、これか。 BBC Radio 4 - Codes that Changed the World, Fortran

向こうでは良くでるねえ Clojure本。 The Pragmatic Bookshelf | Clojure Applied: From Practice to Practitioner, now in beta

■_

■_

ど・れ・に・し・よ・う・か・な

■_

How Heartbleed could've been found - Hanno's blog The question has been asked if Heartbleed could've been found by fuzzing. I'm confident to say the answer is yes. ふむ。 あとで読み直そう。

Why people hate PHP, a book from hell | Hacker News Why people hate PHP, a book from hell - Neat Tutorials Blog これもあとで。

2015年04月07日

■_

え、もう? と思ったら

そもそもの入荷数が少なかった模様。

こっちもチェックしておかないとだわ

■_

■_

なんかの秘伝の計算式らしいです。

R version 3.1.1 (2014-07-10) -- "Sock it to Me"
Copyright (C) 2014 The R Foundation for Statistical Computing
Platform: i386-w64-mingw32/i386 (32-bit)

R は、自由なソフトウェアであり、「完全に無保証」です。 
 一定の条件に従えば、自由にこれを再配布することができます。 
 配布条件の詳細に関しては、'license()' あるいは 'licence()' と入力してください。 

R は多くの貢献者による共同プロジェクトです。 
 詳しくは 'contributors()' と入力してください。 
 また、R や R のパッケージを出版物で引用する際の形式については 
 'citation()' と入力してください。 

 'demo()' と入力すればデモをみることができます。 
 'help()' とすればオンラインヘルプが出ます。 
 'help.start()' で HTML ブラウザによるヘルプがみられます。 
 'q()' と入力すれば R を終了します。 

 [以前にセーブされたワークスペースを復帰します] 

> 0:100->d
> d
  [1]   0   1   2   3   4   5   6   7   8   9  10  11  12  13  14  15  16  17  18  19  20  21
 [23]  22  23  24  25  26  27  28  29  30  31  32  33  34  35  36  37  38  39  40  41  42  43
 [45]  44  45  46  47  48  49  50  51  52  53  54  55  56  57  58  59  60  61  62  63  64  65
 [67]  66  67  68  69  70  71  72  73  74  75  76  77  78  79  80  81  82  83  84  85  86  87
 [89]  88  89  90  91  92  93  94  95  96  97  98  99 100
> round((d-32)*5/9,2)
  [1] -17.78 -17.22 -16.67 -16.11 -15.56 -15.00 -14.44 -13.89 -13.33 -12.78 -12.22 -11.67 -11.11
 [14] -10.56 -10.00  -9.44  -8.89  -8.33  -7.78  -7.22  -6.67  -6.11  -5.56  -5.00  -4.44  -3.89
 [27]  -3.33  -2.78  -2.22  -1.67  -1.11  -0.56   0.00   0.56   1.11   1.67   2.22   2.78   3.33
 [40]   3.89   4.44   5.00   5.56   6.11   6.67   7.22   7.78   8.33   8.89   9.44  10.00  10.56
 [53]  11.11  11.67  12.22  12.78  13.33  13.89  14.44  15.00  15.56  16.11  16.67  17.22  17.78
 [66]  18.33  18.89  19.44  20.00  20.56  21.11  21.67  22.22  22.78  23.33  23.89  24.44  25.00
 [79]  25.56  26.11  26.67  27.22  27.78  28.33  28.89  29.44  30.00  30.56  31.11  31.67  32.22
 [92]  32.78  33.33  33.89  34.44  35.00  35.56  36.11  36.67  37.22  37.78
> (d-30)/2 + floor((d-30)/20)
  [1] -17.0 -16.5 -16.0 -15.5 -15.0 -14.5 -14.0 -13.5 -13.0 -12.5 -11.0 -10.5 -10.0  -9.5  -9.0
 [16]  -8.5  -8.0  -7.5  -7.0  -6.5  -6.0  -5.5  -5.0  -4.5  -4.0  -3.5  -3.0  -2.5  -2.0  -1.5
 [31]   0.0   0.5   1.0   1.5   2.0   2.5   3.0   3.5   4.0   4.5   5.0   5.5   6.0   6.5   7.0
 [46]   7.5   8.0   8.5   9.0   9.5  11.0  11.5  12.0  12.5  13.0  13.5  14.0  14.5  15.0  15.5
 [61]  16.0  16.5  17.0  17.5  18.0  18.5  19.0  19.5  20.0  20.5  22.0  22.5  23.0  23.5  24.0
 [76]  24.5  25.0  25.5  26.0  26.5  27.0  27.5  28.0  28.5  29.0  29.5  30.0  30.5  31.0  31.5
 [91]  33.0  33.5  34.0  34.5  35.0  35.5  36.0  36.5  37.0  37.5  38.0
> round((d-32)*5/9,2)-((d-30)/2 + floor((d-30)/20))
  [1] -0.78 -0.72 -0.67 -0.61 -0.56 -0.50 -0.44 -0.39 -0.33 -0.28 -1.22 -1.17 -1.11 -1.06 -1.00
 [16] -0.94 -0.89 -0.83 -0.78 -0.72 -0.67 -0.61 -0.56 -0.50 -0.44 -0.39 -0.33 -0.28 -0.22 -0.17
 [31] -1.11 -1.06 -1.00 -0.94 -0.89 -0.83 -0.78 -0.72 -0.67 -0.61 -0.56 -0.50 -0.44 -0.39 -0.33
 [46] -0.28 -0.22 -0.17 -0.11 -0.06 -1.00 -0.94 -0.89 -0.83 -0.78 -0.72 -0.67 -0.61 -0.56 -0.50
 [61] -0.44 -0.39 -0.33 -0.28 -0.22 -0.17 -0.11 -0.06  0.00  0.06 -0.89 -0.83 -0.78 -0.72 -0.67
 [76] -0.61 -0.56 -0.50 -0.44 -0.39 -0.33 -0.28 -0.22 -0.17 -0.11 -0.06  0.00  0.06  0.11  0.17
 [91] -0.78 -0.72 -0.67 -0.61 -0.56 -0.50 -0.44 -0.39 -0.33 -0.28 -0.22

■_

1401-FORTRAN-Illustrated.html これを

$ curl http://ibm-1401.info/1401-FORTRAN-Illustrated.html | sed -ne "/PRE/,/\/PRE/s/^.\{14\} \([A-Z]\{1,3\}\) .*$/\1/p" | sort | uniq

こうすると

A
B
BAV
BCE
BCV
BE
BEF
BER
BH
BIN
BL
BLC
BM
BSP
BSS
BU
BW
BWZ
C
CC
CCB
CS
CTL
CW
D
DC
DCW
DSA
END
EX
H
JOB
LCA
M
MA
MCM
MCS
MCW
MN
MZ
NOP
ORG
P
R
RT
RTW
RWD
S
SAR
SBR
SKP
SS
SSB
SW
T
W
WP
WR
WTM
WTW
ZA
ZS

こういう結果が得られる。 疑似命令やゴミが入ってるけどとっかかりにはこんなもんでもいいっしょ。

2015年04月06日

■_

そういやちょっと前にZX のブートシーケンスがどうとかいう記事があったと思うけど これ絡みだったんだろか。 往年の名PCが復活か “再製造”版『Sinclair ZX Spectrum』事前予約開始 - 週アスPLUS シンクレアというと、 シンクレア ZX81 - Wikipedia が真っ先に思い浮かぶんだけど(ガキの頃に東急文化会館の五階にあった紀伊國屋書店で売ってるのをみた覚えがある)、 問題のSpectram ってのは ZX81の後継機なのね。 んで、その ZX Spectrum - Wikipedia の次の Sinclair QL - Wikipedia は、 CPU Motorola 68008 @ 7.5 MHz おおっと。68008積んでたマシンなんてあったのかー。 Sinclair QL は、1984年にシンクレア・リサーチが ZX Spectrum の後継として発売したパーソナルコンピュータ。 "QL" は "Quantum Leap"(量子跳躍)の略。ホビーストやスモールビジネス市場をターゲットとしていたが、 商業的には失敗した。 Linuxの作者であるリーナス・トーバルズは少年時代に Sinclair QL を持っていて、これでプログラミングを学んだ。 へー。

■_

■_

3月の終わり頃から、帰りの時間なんかは定期券売り場に結構長い行列ができている。 今日辺りからは通学定期の人も増えてきたよう (新学期始まって生徒手帳とか受け取らないと買えなかったよねたしか>通学定期)。 自分も今月の下旬に期限が切れるのだけど、 結構前から自動券売機でできるようになってるので楽なことこの上ない。 昔は定期券売り場に行かなくちゃいけなくて、しかもその売り場はどの駅にもある訳じゃなかったので 遠回りするとか途中で降りるとかして売り場のある駅に行かなきゃならなかった。

2015年04月05日

■_

なんぞこれ。 "Amazon.co.jp: Pythonエンジニア養成読本[いまどきの開発ノウハウ満載!] (Software Design plus): 鈴木 たかのり, 清原 弘貴, 嶋田 健志, 池内 孝啓, 関根 裕紀, 若山 史郎: 本"

■_

2015年04月04日

■_

倒れゆく巨象――IBMはなぜ凋落したのか
倒れゆく巨象――IBMはなぜ凋落したのか

読了。 なんかこう、某社でもやっているようなことがいくつかあってですねえ 背筋に冷たいものが……w そういえば、ちょっと前に流れたIBMの人員整理は「数千人規模」、報道否定 - NewsPicks この話はその後どうなったんでしょうかね。

「The Imitation Game」の話の続き。 「改変」の中で最も印象に残ったものの元のエピソードがこれなんですが (どう変えたのかには触れません)、 コヴェントリー - Wikipedia 第二次世界大戦中の1940年11月14日にはナチス・ドイツによる爆撃「Coventry Blitz」の標的となり、 コヴェントリー大聖堂 (Coventry Cathedral) を含む市の中心の大部分が破壊された。 この空襲について、イギリス政府は事前にドイツ軍のエニグマ暗号を解読し察知しながら、 その後の迎撃戦を有利に運ぶため、コヴェントリー爆撃隊を見逃したとする陰謀論があり、 「小の虫を殺し大の虫を生かす」類の説話としてしばしば語られる。 しかしBBCによれば、真相はイギリスはエニグマ暗号自体の解読には成功したが電文中で標的は「Korn」 とコードネームで書かれていたために、それがすなわちコヴェントリーであるということまではわからなかったとされる。 これをあのようにしてストーリーに組み込んだのはどうなのかなあ。と思うのだけど、 暗号解読の話(具体的な手法や手順はさておき)が映画の軸にあるので仕方がないのかなあ。

シャーロックの謎を求めて-コヴェントリーの悲劇 の謎- BBC News - The Coventry Blitz 'conspiracy' コンピュータ史のウソと本当

考える人 2015年 05月号
特集に惹かれて買ったw 今まで知らなかった雑誌なので、どの辺りの棚にあるのかさっぱりわからなくてかなり迷ったw 検索システムも雑誌には対応なかったりするしね。

文庫化。アレとかアレとか。

■_

■_

Anti-GNU License Source Code under the Anti-GNU license

■_

なんだこの本、気になるぞw

2015年04月03日

■_

「The Imitation Game」観てきた。 それが良いか悪いかは脇に置いて、実際にあったことや「あったとされている」こととの違いが気になった。 どこで読んだのか忘れたけど、監督(だったと思う)がこの作品について質問に答えていたことを 考えればそうすることに意味があったのだろう。 だから、そういった「改変」についてどうこう言うつもりはないけれど、 実際との違いは認識しておいた方が良いと思う。 Why you should watch The Imitation Game and why you might want to skip it - TechRepublic 映画を観ての(大雑把な)感想はまさにこのまんまだったw

あ、観に行って良かったと思ってますよ? 念のため。

ACE (コンピュータ) - Wikipedia

原作本。になるのかな。 翻訳本は上下巻だけど、下巻は7月予定らしい。 エニグマ アラン・チューリング伝 上
エニグマ アラン・チューリング伝 上 Alan Turing: The Enigma: The Book That Inspired the Film The Imitation Game
Alan Turing: The Enigma: The Book That Inspired the Film The Imitation Game

伝記的にはこっちの方がよい? チューリング
チューリング

ん、なにこれ。 マンガ エニグマに挑んだ天才数学者 チューリング
マンガ エニグマに挑んだ天才数学者 チューリング

んで、The Imitation Game 本編前の予告編観ていて思ったのだけど、 最近の邦画って前後編になってるの結構ありますね。 直近だと「寄生獣」とか。

ありゃりゃん。 ン年前はあの辺り良く行ってたんだよなあ。

infraの意味 - 英和辞典 Weblio辞書 英語でも、infrastructure の省略形として infra を使ったりする? Shortened form of infrastructure infra (複数形 infras) (civil 工学, informal) Infrastructure.

■_

■_

全部読むのは結構大変そうだ。 アセンブリ言語のニーモニックも良くわからんしw 1401-FORTRAN-Illustrated.html

1401-FORTRAN-Illustrated.html

Goal: a web page that combines
    - the "known" FORTRAN phase descriptions from 1401-IBM-Systems-Journal-FORTRAN.html 
    - with the disassembled and commented "phases" from Van Snyder, up through rev. v3m4.

    Zeroth - Surprise!! - the floating point operations were "interpreted".
    from http://en.wikipedia.org/wiki/Fortran

    IBM 1401 FORTRAN

FORTRAN was provided for the IBM 1401 by an innovative 63-pass compiler that ran in only 8k of core. It kept the program in memory and loaded overlays that gradually transformed it, in place, into executable form, as described by Haines et al. The executable form was not machine language; rather it was interpreted, anticipating UCSD Pascal P-code by two decades.

一番最初のFORTRANコンパイラーはどんなもんだったんだろうか。

■_

The 68000 Wars, Part 1: Lorraine | Hacker News

■_

How "Roslyn" Finally Unshackled Visual Basic From The Tyranny of the Pretty-Lister - The Visual Basic Team - Site Home - MSDN Blogs これ。

Of course, this led to total chaos across the project. Older developers on the team would still type the first letting in uppercase in some places. Newer developers who didn't have the muscle memory would type in lowercase in other places. Some would use sentence casing and only capitalize the first keyword on a line. It turns out that some developers had been leaving the caps lock on for years and just hadn't noticed. And no one could remember how to deal with compound keywords. Should it be AddHandler, addHandler, Addhandler, or addhandler? The code was a mess! Still recovering from the dreaded Type Inference War of the Summer of 2011, the Brace Style Lunchroom Battles of the Winter of 2012, the Single-Line Ifs Skirmish of May 2013, and the Great Field Naming Convention Civil Wars of 2014-2015 no one was prepared to go through another team wide debate on style. So we decided to re-institute tyranny (to thunderous applause).

この辺りでちょっと受けた。

2015年04月02日

■_

何日か前、京王線に乗っているときに明大前辺りで (京王線の)「高架化反対」といった幟やら看板やらを見かけた。 「開かずの踏切」を解消するには高架にするか地下に潜らせるかしないとならないんだろうけど 地下化の方が高くつくだろうしなあ。どーすんだろ。

そういえば小田急線は沿線住民の反対で下北沢の辺りを高架にできなくて (地下化にも反対してたような…)、 おかげで経堂-豪徳寺-梅ヶ丘と高架になっているのに世田谷代田で潜り、 東北沢を過ぎて地上に出ると代々木上原でまた高架というしちめんどくさいことに。

小田急線は複々線化もやってた(る?)けど、京王線はその辺どうなんだろか。 確か複々線化事業のために運賃上乗せしてたんだよね小田急は。

■_

■_

なぞのコード

q1 = DATA.gets.split(',').map(&:to_i)
q2 = DATA.gets.split(',').map(&:to_i).reverse
while (!q1.empty? && !q2.empty?)
   sum = q1[0]+q2[0]
   if sum == 21
      p [ q1.shift, q2.shift ]
   elsif sum > 21
      q2.shift
   else #sum < 21
      q1.shift
   end
end
__END__
1,2,8,12,20
3,6,9,14,19

■_

一日遅れで The C languages merge : Standard C++

Bjarne Stroustrup and Dennis Ritchie declined to comment, but were seen shaking their heads and muttering, “they’re nuts!”

おいおいw > dmr

The C languages merge : programming

2015年04月01日

■_

もし、アイザック・アジモフがまだ存命で科学エッセイを書き続けていたとして、 機械学習や人工知性(not 人工知能)、IoT なんかを題材にしたら どんなことを書いていただろうか。ということをつらつら考えた。

会社で、航空会社の整備にまつわる講演を聴いた。 なんというか、ペアプログラミングやコードレビューのときの プログラマー(やプロジェクトリーダー等)としての行動や態度に 関しても参考になるなあと思う部分が色々とあったのだけど面倒なので書かない。 興味のある人は直接会ったときにでも話を振ってください (twitter ではスルーしますので悪しからず)。

■_

■_

恒例のflashプレイヤーのぜーじゃくせーですが Adobe Flash Player の PCRE エンジンにおける任意のコードが実行される脆弱性(Scan Tech Report) | ScanNetSecurity (脅威、エクスプロイトのニュース)

PCRE は様々なファイルの正規表現をサポートしていますが、当該脆弱性を含む Adobe Flash Player の PCRE エンジンでは、Flash ファイルの正規表現のコンパイル処理の際に、マルチバイト文字がエスケープシーケンス \c に続いているとバグが発生し、PCRE 内部のバイトコードの実行を許容してしまいます。脆弱性を利用することで、 メモリの破壊、DoS 攻撃などを行うことが可能となります。このため、遠隔の攻撃者は、 本脆弱性を利用することで対象のシステムにログインしているユーザ権限で任意のコード実行が可能です。

ふむ? PCRE2(3) Library Functions Manual には見あたらないけど、 perlre - perldoc.perl.org\cK control char (example: VT) だよねえ。たぶん。後ろにマルチバイト文字が続いたらってので危なそうな気配するし。


一つ前へ 2015年3月(下旬)
一つ後へ 2015年4月(中旬)

ホームへ


リンクはご自由にどうぞ

メールの宛先はこちらkbk AT kt DOT rim DOT or DOT jp