ときどきの雑記帖 2012

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

一つ前へ 2012年11月(中旬)
一つ後へ 2012年12月(上旬)

ホームへ

2012年11月30日

■_

極月。

皇帝陛下が戴冠。 ドリフターズはお休み。

■_

気になる本が

■_

まだまだスピードが足りんなあ。 かなりおおざっぱにやったんだけど。 抜けているところは後で埋めるかもしれないししないかもしれません

もうちょっと翻訳部分を足した(り、ちょっと見直しをした)ものを 12/1 分に移動。

2012年11月29日

■_

今日、会社からの帰り道にある書店でこれを見かけた Amazon.co.jp: ローマ史(上) 共和政の成立と地中海諸民族の闘争: 著者:テオドール・モムゼン 訳者:杉山 吉朗: 本 Amazon.co.jp: ローマ史(下) 共和政の権力闘争と君主政への動向: 著者:テオドール・モムゼン 訳者:杉山 吉朗: 本 早売りはしない店だと思うんだけど、なんであったんだろ。 まあそれはともかく、 Amazon.co.jp: モムゼン・ローマの歴史〈1〉ローマの成立: モムゼン, Theodor Mommsen, 長谷川 博隆: 本 Amazon.co.jp: モムゼン・ローマの歴史〈2〉地中海世界の覇者へ: モムゼン, Theodor Mommsen, 長谷川 博隆: 本 Amazon.co.jp: モムゼン ローマの歴史〈3〉革新と復古: モムゼン, Theodor Mommsen, 長谷川 博隆: 本 Amazon.co.jp: モムゼン・ローマの歴史〈4〉カエサルの時代: モムゼン, Theodor Mommsen, 長谷川 博隆: 本 を買うよりはよっぽど安く上がりそうな (いやまあ読むだけなら図書館使うという選択肢もあるけど)

■_

和田先生のこのツイートで知ったのだけど こういう番組があったのか。とりあえずこのアンティキテラの回の再放送は観よう コズミック フロント | NHK宇宙チャンネル

■_ もしも

新しいプログラミング言語を設計するのなら

If i were to design a new programming language … « metaprogramming and politics

metaprogramming and politics

Decentralize. Take the red pill.
If i were to design a new programming language …

I'd see to base syntax and semantics on Python3, but strip and rebase it:

    no C: implement the interpreter in RPython, get a JIT for free and implementation bits from
    PyPy's Python interpreter (parsing, IO, etc.)
    C を使わない
    RPython を使ってインタープリターを実装する。

    no drags-you-down batteries: lean interpreter core and a standard battery distro which is
    tested against the last N interpreter versions + current

    no yield: use greenlets to implement all of what yield provides and more

    no underlying blocking on IO: base it all on event loop, yet provide synchronous programming
    model through greenlets
    IO のブロッキングに依存しない
    

    no c-level API nor ctypes: use cffi to interface with c-libraries
    c-level API も ctypes も使わない
    C のライブラリとのインターフェースには cffi を使う

    no global state: just support state bound to execution context/stack
    大域的な状態を持たない
    実行コンテキストやスタックに束縛された状態だけをサポートする

    no GIL: support free threading and Automatic Mutual Exclusion for dealing with shared state
    free threading と shared state を扱うための Automatic Mutal Exclusion をサポートする

    no setup.py: have a thought-through story and tools from the start for packaging, installation,
    depending/interfacing between packages

    no import, no sys.modules: provide an object with which you can access other packages's
    objects and introspect/interact with one's own package
    import も sys.modules もない
    ほかのパッケージのオブジェクトにアクセスできるオブジェクトを提供して
    誰かの所有するパッケージに対する introspect/interact を行う

    no testing as an afterthought: everything needs to be easily testable, empowered assert
    statement and branch-coverage supported from the core.
    簡単にテストできるようになっていること、empower された assert 文、
    コアからサポートされている branch-ocverage のサポートが要求される

    no extensibility as an afterthought: support plugins and loose coupling through builtin 1:N
    calling mechanism (event notification on steroids)
    後付の拡張性を持たせない
    プラグインをサポートし、1:N 呼び出し機構を通じた loose couping を行う

    no unsafe code: support IO/CPU/RAM sandboxing as a core feature
    安全でないコードを使わない
    コア機能として IO/CPU/RAM sandboxing をサポートする

    no NIH syndrome: provide a bridge to a virtualenv'ed Python interpreter allowing to leverage
    existing good crap
    自前主義の否定
    既存の good crap を levarage するのを可能にするための virtualenv'ed Python インタープリター
    へのブリッジを提供する

■_ C

試験でこういうのを出すのはないよなあ。

■_

2012年11月28日

■_

観た

■_ 対偶

つい先日「『池の中の魚』モデル」で一部で話題沸騰のあの先生の昔のエントリにこういうものが (別に粗探しを目的にバックナンバーを見ていたのではなくて、 ソフトウェアの品質管理とか信頼性とかで調べると良く引っかかるのですよ)。 山浦恒央の“くみこみ”な話(24):人類初のソフトウェア・メトリクスをめぐる熱い論争 - MONOist(モノイスト)

山浦恒央の“くみこみ”な話(24):人類初のソフトウェア・メトリクスをめぐる熱い論争 - MONOist(モノイスト)

「ソフトウェアは工業的生産物なのに、こんな作り方をしていてはダメだ。『計器飛行』をしたい……」。
そんな思いが、ソフトウェア技術者の間で高まりました。「ソフトウェア開発プロジェクトを制御したい」
と考えた技術者たちは、ある言葉に注目しました。それは、イギリスの高名な物理学者にして計測の大家、
ケルビン卿(注1)がいった「計測できないものは制御できない」という言葉です。

 当時のソフトウェア技術者は考えました。「確かに、ケルビン卿のいうとおり、計測できなければ制御で
きない。……ということは、計測できれば制御できるんだ!」。一見、この考えは、正しいようにみえます
が、集合論的には間違っています。「鳥ならば、動物である」を「鳥でないならば、動物でない」と変形さ
せたのと同じで、変形後の論理は明らかに正しくありません(正しいのは、集合論における「対偶」であり、
具体的には「動物でないなら、鳥でない」「制御できるのであれば、計測できる」です)。でも、当時の技
術者には、そんな集合論の細かいことなど、どうでもよかったのです。「とにかく、何かを計らなければな
らない」という燃えるような情熱と強迫観念が生まれました。

…「集合論」における? 対偶 - Wikipedia 対偶 (論理学) - Wikipedia

■_ Redline

資金援助求むなのかな Redline Smalltalk V1.0 | Indiegogo

Redline Smalltalk V1.0 | Indiegogo

I'm James Ladd. I've worked as a software developer for 30 years in over 10 languages, and still
haven't found a language more expressive, beautiful, or productive than Smalltalk.

わたしは James Ladd です。わたしは software developer として30年以上働いていて、
10を越える数のプログラミング言語を仕事で使ってきました。
しかし Smalltalk よりも expressive であったり、美しかったり、あるいは productive であるような
プログラミング言語はまだ見たことがありません。

But sadly, a couple of major barriers keep Smalltalk out of reach for many developers. I want
to bring Smalltalk to everyone, so I created Redline, a thoroughly modern version of Smalltalk
that runs on the Java Virtual Machine.

ところが残念なことに、二つの major barriers が Smalltalk を多くの developers の手の届かない
ところに遠ざけてしまっているのです。
わたしはすべての人の元に Smalltalk を届けたいと願って Redline を作りました。
この Redline は Java Virtual Machine 上で動作するまったく新しい Smalltalk です。


I believe that if we can bring Smalltalk to developers today, using their familiar tools, on a
platform as stable and performant as the JVM, that we could be at the beginning of a renaissance
in Smalltalk development. (Which, I hope you'll agree, would be a very good thing for software in
general.)

もしわたしたちが今日の developer たちのところへ、彼らの慣れ親しんだツールを使った
JVM と同じくらい安定していて性能もよい Smalltalk を届けることができたなら、
わたしたちは Smalltalk development におけるルネサンス (renaissance) を迎えられるだろうと
わたしは信じているのです (Which, I hope you'll agree, would be a very good thing for software in
general.)。


Redline Smalltalk is mostly complete, but I need your help to finish it and share it with the world.

Redline Smalltalk はほぼ完成していますが、これを最後までやり遂げ、世界中で共有できるようにするには
あなたの助けが必要なのです


What we need and what you get
わたしたちが必要としているものとあなたが得るもの

We need $20K to bring Redline to initial release. The money will be used to fund full-time
development by me, James Ladd, on Redline to bring it to its 1.0 release.

Redline の initial release には二万ドルが必要です。
この金額はわたしが Redline 1.0 をリリースするまでフルタイムで開発を行う資金として使います。


On my ramen-and-rent survival plan, I estimate I can survive, focused full-time on Redline, for
4 - 6 months. This will allow me to bring Redline to a production-grade 1.0 release. The money
will go purely to covering expenses during that time, as well as rewards for you, our supporters.

わたしの ramen-and-rent survival plan では、四ヶ月から六ヶ月の間は survive して
フルタイムで Redline に focus できることが見込めます。
これはわたしが production-grade の Redline 1.0 をリリースするのを可能にするでしょう。
The money will go purely to covering expenses during that time,
as well as rewards for you, our supporters.


If we don't reach our full goal of $20K, I will focus my efforts on Smalltalk as long as funds
allow, but my efforts will drop back to part-time and it will take (much) longer to get Redline to
a 1.0 release.

目標の二万ドルに届かなかった場合でも、わたしは自分の労力を funds の許す限り Smalltalk に注ぎますが、
わたしの労力は part-time に drop back して Redline 1.0 をリリースするにはもっと時間がかかることに
なるでしょう。


I've run many software projects successfully to completion, and know what it takes to release
a project of this size. It's time-consuming and can be difficult at times, but I hope you'll
agree that the software world will be better by bringing Smalltalk to the developer masses.

わたしは多くのソフトウェアプロジェクトを成功裏に完了し、
この規模のプロジェクトをリリースするのにどのくらいかかるのかを理解しています。
それは時間のかかるものであり、難しいものになる可能性がありますが、
わたしはあなたが、Smalltalk を developer masses に bring することによって
この software world がより良いものになるであろうことに同意してくれるだろうと
期待しています。


More about Redline
さらに Redline について

Redline has a simple goal: To combine the elegance, simplicity, and productivity of the Smalltalk
language with the performance and familiar toolset that comes from running on the Java Virtual
Machine (JVM).

Redline には simple な目標があります。Smalltalk の elegance、simplicity、productivity を、
性能とJava Virtual Machine (JVM) 上で 動作することによる familiar tools set とに結びつける
というものです。

Almost every developer who has used Smalltalk still views it as one of the most advanced
programming languages available. However, it has been out of reach for many developers because
of its special, sometimes unfamiliar, tools. Redline opens Smalltalk up for wider mainstream
adoption by allowing developers to bring and use their favorite tools, built on the world's
most widely adopted and advanced virtual machine.

Smalltalk を使っている developer のほぼすべては、それが available な
most advanced programming langage (のひとつ) であると見ています。
しかしながら、Smalltalk は(ときとして unfamiliar な)その特別さゆえに
多くの developer たちには届いていないのです。
Redline はそういった developer たちを近寄らせ、
彼らの favarite tools を使うことを可能にし、
最も広く普及していて進んでいる virtual machine 上に構築することによって
Smalltalk を wider mainstream に押し上げようというものです。


Every Object-Oriented language in popular use today can trace its roots back to Smalltalk, which
is still considered by many to be the canonical Object-Oriented language. So rather than try and
reinvent the wheel with another JVM-based language, Redline's goal is to break down the barriers
that stand in the way of getting started with Smalltalk. Developers can bring their favorite
tools, quickly become familiar with Smalltalk's simple rules and syntax, and immediately become
productive.

今日広く使われているオブジェクト指向言語のすべてはそのルーツを、今でも多くの人から canonical な
オブジェクト指向言語とみなされている Smalltalk に求めることができます。
So rather than try and reinvent the wheel with another JVM-based language,
ですから、もうひとつ JVM-based な言語を車輪の再発明をするように作ってしまおうとするのではなく
Redline の目標は、Smalltalk を始めるのに障害となるような barriers を break down することです。
Dveloper は自分たちの好みのツールを持ち込めますし、Smalltalk のsimple な rule や syntax には
すぐ慣れるし、即座に productive になれるでしょう。

In addition, we've assembled a suite of tools to make working in Smalltalk one of the most fun
and productive programming environments out there: build tools, package managers, even a
lightweight Web framework, all of which are complete or near completion.

加えて、suite of tools をわたしたちは Smalltalk という、存在する中で最も楽しく最も productive な
プログラミング環境で作成しました。ビルドツール、パッケージマネージャ、さらには lightweight な
Web framework まで。そのどれもが compelete かそうでなくても near completion でした。

In short, Redline is real Smalltalk for modern software developers. With your help, it can put
a dent in the software industry and make the development world a better place to be.

一言で言えば、Redline は modern software developer たちのための本物の (real) Smalltalk です。
あなたの助けがあれば、それを software industry に送り込むことができるし、
development world をより良い場所にできるのです。

What you can do to help
あなたができること

If you can, donate! If not, you can help the cause and spread the word using the IndieGoGo share tools.
可能なら寄付を! それができなくても、IndieGoGo Share tool を使ったりそれを広めたりすることが
援助になります!

■_ フェア

これだと12月に入ってからになってたと思うんだけどもう始まってるのか O'Reilly Japan for Bookstores

■_

で、12月の予定に面白そうなものが → デバッグの理論と実践 978-4-87311-593-1 \3,360 2012年12月 O'Reilly Japan - Books :: New and Upcoming よく似たタイトルの本が過去に出てるけど関係ないよね。 Amazon.co.jp: デバッガの理論と実装 (ASCII SOFTWARE SCIENCE Language): ジョナサン・B. ローゼンバーグ, Jonathan B. Rosenberg, 吉川 邦夫: 本 で、原著はどんなのだろうと思って検索してみたけどそれっぽいのは見つからず。 O'Reilly Search: debug

ここで、メールマガジンの情報を利用

●デバッグの理論と実践
なぜプログラムはうまく動かないのか

Andreas Zeller 著
中田 秀基 監訳
今田 昌宏、大岩 尚宏、竹田 香苗、宮原 久美子、宗形 紗織 訳
定価3,360円(税込)
ISBN978-4-87311-593-1
  

この著者の名前で検索してみると、デバッグ手法でいろいろ書いている人らしい。 Andreas Zeller - Lehrstuhl für Softwaretechnik (Prof. Zeller) - Universität des Saarlandes ということでこれなのかなあ Why programs fail: A guide to systematic debugging - Andreas Zeller - debugging book

Why programs fail: A guide to systematic debugging - Andreas Zeller - debugging book

WHY PROGRAMS FAIL: A Guide to Systematic Debugging

  "Today every computer program written is also debugged, but debugging is not a widely
  studied or taught skill. Few books, beyond this one, present a systematic approach to finding
  and fixing programming errors."

                                           —from the foreword by JAMES LARUS, Microsoft Research

WHY PROGRAMS FAIL is a book about bugs in computer programs, how to reproduce them, how to find
them, and how to fix them such that they do not occur anymore. This book teaches a number of
techniques that allow you to debug any program in a systematic, and sometimes even elegant way.
Moreover, the techniques can widely be automated, which allows you to let your computer do most of
the debugging. 

ふむ。 ついでに見つかった面白そうなもの Delta Debugging - Lehrstuhl für Softwaretechnik (Prof. Zeller) - Universität des Saarlandes

■_ 9

〓 Mathematica 伍 〓

356 132人目の素数さん [] 2012/11/18(日) 20:50:38.30 ID: Be:
    Ver.9
    が来るぞ 

359 132人目の素数さん [sage] 2012/11/27(火) 15:56:08.95 ID: Be:
    ドキュメンテーションセンターが「Mathematica 9」になってる!

    新バージョン来るのか! 

360 132人目の素数さん [] 2012/11/27(火) 17:46:13.60 ID: Be:
    12月に来る

    Ver.9はいろいろらしいよ 

欲しいなあ

■_ difference → analitical

あとで読む。 差分法の説明は面白いっすよ。うん。 Tables » Hummus and Magnets Difference » Hummus and Magnets Analytical Programming » Hummus and Magnets Punched Cards » Hummus and Magnets

■_

2012年11月27日

■_

どーーーーーしても読みたくなったので、 ヤフオクで三冊セットを落札 >「東周英雄伝」 東周英雄伝 (1) (講談社漫画文庫) 東周英雄伝 (2) (講談社漫画文庫) 東周英雄伝 (3) (講談社漫画文庫)
実際には文庫版じゃなくてB5サイズの方なんだけど、「画像がありません」なので。

■_

Ruby でクイックソート - C++でゲームプログラミング

Ruby でクイックソート - C++でゲームプログラミング

  def quick_sort(seq)
     if seq == []
        return []
     end
     x = seq.first
     xs = seq[1..seq.size]
     quick_sort(xs.select { |a| a < x }) + [x] + quick_sort(xs.select { |a| a >= x })
  end 

とりあえず、select 2回せんでも分割できるよね と思ったらコメント欄で指摘されてた pivot になる要素はあらかじめ取り除かないといけない気はするけど Ruby でクイックソート - C++でゲームプログラミング

■_ import

Apple が提案しているという、C(++) (そう書かれてんだもんよー) の #include を置き換える import についてのスライド http://llvm.org/devmtg/2012-11/Gregor-Modules.pdf

reddit で大盛り上がり Apple's proposal for modules in C(++) [PDF slides] : programming

■_

What's Your Next JVM Language? Community-Driven Research: What's Your Next JVM Language?

■_

Analytical Programming » Hummus and Magnets

Analytical Programming » Hummus and Magnets

This is my third post about Babbage's calculating engines. The first two were about the difference
engine: why it was important at the time and how it worked. This post is about the analytical
engine. The analytical engine is famously the first programmable computing machine, and there was
much programming involved both in designing and operating it. In this post I'll take a look at the
various ways you could program the engine and the way programs were used to control the engine
internally.

お、なんか面白そう

■_

■_

明日観に行く(たぶん)

2012年11月26日

■_

CyberMonday でこれも安くならないかなあと期待してたんですが… (日本語版間近でも) Land of Lisp | No Starch Press

InfoQ で公開されてる Data Structures: The Code That Isn't There Integrating GPUs in Application Development - From Concept to Deployment とか Strange Loop Content on InfoQ が結構面白いです。 ユーザー登録しないと、音声やらスライドやらが見られないかもしれませんが是非。 どれだったか忘れたけど、Makers のラストの方に出てきた企業のプレゼンらしきものもありました。

■_

以前新聞記事になって、/.Jでもとりあげられたあれですかね 【コラム】鉄道とIT (5) 移動閉塞システムとATACS - 無線を使った列車制御が実用段階に | エンタープライズ | マイナビニュース

■_

そういやこの本も中途半端に読み散らかしてんだよなー。 新刊・近刊 - データ指向のソフトウェア品質マネジメント:ITpro

■_

で。gawk (4.0.17 だったかな)のソースをちと見てみたんですが、 外部 DLL (とかシェアドオブジェクト) を呼び出すあたりが結構綺麗にまとまった感がありますね。 以前のは拡張ライブラリ側でいろいろ面倒があったのですが、 それなりに解消されているのではないかと思います。 が、実際やってみたら違うかもしれない。

■_

■_

CyberMonday で結構買った。

2012年11月25日

■_

flash playerのアップデートチェック、PCの起動時以外に起動させる方法無いんでしょうか?

・MAKERS 「MAKERS」の意味するところ - 人と技術のマッシュアップ わたしも読み終わったんですが、さてどう書こう。
MAKERS―21世紀の産業革命が始まる ソフトウェア・グラフィティ
「ソフトウェア・グラフィティ」も面白かった。 が、「昔話」が嫌いな人には向かないかも。 岸田さんが書いた章の他に、岸田さんと青木淳さんとの対談、 SRA の方々が書かれた章が4つあります。 中央公論事業出版から書籍『ソフトウェア・グラフィティ』を発行 ソフトウェア・グラフィティについてのakiyama924さんのレビュー - ブクログ

そいや、都知事選用のポスター掲示板がもう設置されていた。

■_ gawkextlib

そろそろなにかせんとなあ、でチェック。 gawk libraries for XML, PostgreSQL,... - Browse Files at SourceForge.net

gawk libraries for XML, PostgreSQL,... - Browse Files at SourceForge.net


With the new upcoming release of gawk, it will no longer be necessary to have a separate xgawk binary.
The main features of xgawk have been absorbed into a development version of gawk, and the libraries
provided with xgawk can now work as regular extension libraries with new gawk.

In this directory, you can find the old xgawk distribution from 2008 here:
    xgawk-3.1.6-20080101.tar.gz
The new gawkextlib packages are still changing as the new gawk library API changes. Please see the
git repository for the most current version. You can find here a gawk and gawkextlib snapshot if
you prefer to avoid using git.

This is gawkextlib. It contains several shared library extension packages for gawk, as well as
libgawkextlib containing some APIs that are useful for extension packages.

This package contains the following gawk shared libraries:
   xml
   pgsql
   gd
   mpfr (but please compare to using gawk's new -M flag)

The libgawkextlib library contains the strhash API used by pgsql and gd, and the gawk_varinit API
to make it easy to initialize variables (used by XML and MPFR).

To use this library, you must first build the new version of gawk containing shared extension
library support. Here is a recipe:
   git clone git://git.savannah.gnu.org/gawk.git
   cd gawk
   ./bootstrap.sh ./configure --prefix=/tmp/newgawk
   make && make check &&
   make install

After you build and install that in /tmp/newgawk, you can then build libgawk like so:

Using git:
   git clone git://git.code.sf.net/p/gawkextlib/code gawkextlib
   cd gawkextlib
   ./update-autotools

Or it may be easier from a tarball if you do not have current autotools installed:
   tar xf gawkextlib-<version>.tar.gz
   cd gawkextlib-<version>

Either way, the steps to build are the same:
   ./configure --with-gawk=/tmp/newgawk --prefix=/tmp/newgawk
   make && make check &&
   make install

N.B. On an rpm-based system, if gawk and gawk-devel rpms have been installed (which is unlikely,
since they don't really exist yet), you can simply say:
   rpmbuild -tb gawkextlib-<version>.tar.gz

Source: README, updated 2012-09-15

mpfr のビルドをどうにかしないといけないんだよなあ。 使えるバイナリパッケージあるだろか (cygwin は候補外)。

■_ へいたん

168 に

【大砲とスタンプ】 速水螺旋人 4 【靴ずれ戦線】

165 名無しんぼ@お腹いっぱい [sage] 2012/11/25(日) 01:34:35.34 ID:1mJEIcIG0 Be:
    兵站軍で出世するのって、佐官以上は難しいんじゃないか?
    他の兵科なら敵を倒せば出世できるけど。 

166 名無しんぼ@お腹いっぱい [sage] 2012/11/25(日) 02:16:39.41 ID:bWUxTA+J0 Be:
    上がヘマやって空席ができれば出世できるでしょ 

167 名無しんぼ@お腹いっぱい [sage] 2012/11/25(日) 02:19:09.38 ID:Lm8GNhx10 Be:
    >>165
    とりあえずこれ読んで兵站という仕事がどれだけ重要で大変か理解してくれ。
    ttp://ja.wikipedia.org/wiki/%E5%85%B5%E7%AB%99

    あと兵站軍が独立した組織である以上管理する人間は多量に必要だし、命令系統を明確にするために階級でそれを分けることは必要。
    それに他の陸軍や海軍と交渉したり調整したりするのにも階級に差があったらやりにくいだろ。 

168 名無しんぼ@お腹いっぱい [sage] 2012/11/25(日) 02:22:50.26 ID:bWUxTA+J0 Be:
    兵站だけに平坦な仕事じゃないのよねー 

169 名無しんぼ@お腹いっぱい [sage] 2012/11/25(日) 07:48:17.67 ID:FBaCHrbT0 Be:
    >>168の発言は極めて重大な責任問題ですよっ! 

170 名無しんぼ@お腹いっぱい [sage] 2012/11/25(日) 08:37:45.96 ID:nsZk7Fvd0 Be:
    >>167
    クレフェルトの『補給戦』には、そういう例が山ほど出て来るな。
    前線部隊に補給部隊が追い付けず、敵の補給倉庫を接収して何とか凌いだとか、
    徹底的に考え抜いた補給計画を立てたのに、結局20%の物資はどこへ行ったか
    分らず終いとか。 

171 名無しんぼ@お腹いっぱい [sage] 2012/11/25(日) 11:16:49.56 ID:KpO+jiUj0 Be:
    「軍隊は胃袋で行軍する」(ナポレオン) 

172 名無しんぼ@お腹いっぱい [sage] 2012/11/25(日) 12:07:57.49 ID:bWUxTA+J0 Be:
    指令は伝言ゲームのごとく
    物資は掌中の氷のように右から左へと渡っていく 

「大砲とスタンプ」面白いです。結構オススメ。 大砲とスタンプ(1) (モーニング KC)

二巻も来月発売予定。 大砲とスタンプ(2) (モーニングKC)
大砲とスタンプ(2) (モーニングKC)

■_ もやもや

TaPL の21章では、lfp (least fixed point 最小不動点) とか gfp (greatest fixed point 最大不動点) というのが登場してきて、この章でのかなり重要なポイントっぽいのですが こいつらがよくわからない。特に最大不動点の方。 いや、なんとなーくはイメージできなくはないのですが (特に図にしたりすれば)、なんかこうもやもやしたものが抜けないというかなんというか。 まあこういうことばかりなんですけどね、数学 ○| ̄|_

不動点意味論メモ - ラシウラ ホワット・ア・ワンダフル・ワールド いろいろ困った ヒビルテ(09-05[長年日記]) 最小不動点 - Wikipedia Least fixed point - Wikipedia, the free encyclopedia

で、うぃきぺ。

Least fixed point - Wikipedia, the free encyclopedia

Greatest fixed points

Greatest fixed points can also be determined, but they are less commonly used than least fixed points.

…いやそう云われましても

Least fixed point - Wikipedia, the free encyclopedia

In mathematical logic and computer science, the least fixed point is related to making recursive
definitions (see domain theory and/or denotational semantics for details).

「再帰的な構造(定義)」に関係深いということはまあ納得なんですが、 ここでリンクがついている domain theory とか denotational semantics って ナニモノすか ○| ̄|_

Domain theory - Wikipedia, the free encyclopedia

Domain theory is a branch of mathematics that studies special kinds of partially ordered sets
(posets) commonly called domains. Consequently, domain theory can be considered as a branch of
order theory. The field has major applications in computer science, where it is used to specify
denotational semantics, especially for functional programming languages. Domain theory
formalizes the intuitive ideas of approximation and convergence in a very general way and has
close relations to topology. An alternative important approach to denotational semantics in
computer science is that of metric spaces.
Denotational semantics - Wikipedia, the free encyclopedia

In computer science, denotational semantics (initially known as mathematical semantics or
Scott–Strachey semantics) is an approach to formalizing the meanings of programming languages by
constructing mathematical objects (called denotations) which describe the meanings of expressions
from the languages. Other approaches to providing a formal semantics of programming languages
include axiomatic semantics and operational semantics.

Broadly speaking, denotational semantics is concerned with finding mathematical objects called
domains that represent what programs do. For example, programs (or program phrases) might be
represented by partial functions, or by Actor event diagram scenarios, or by games between the
environment and the system: these are all general examples of domains.

An important tenet of denotational semantics is that semantics should be compositional: the
denotation of a program phrase should be built out of the denotations of its subphrases.

■_

L'eclat des jours(2012-11-25) Kindleで一冊読み終わったが touch でない kindle だと、左右にそれぞれ進むボタンと戻るボタンがあるので 片手操作はやりやすいですね。軽いし。 その代わり、ページ指定してのジャンプだとか、読む電書の選択などがちとやりづらかったりします。 下の方に申し訳程度についている□のボタンであれこれするのですが、 押しづらいというかなんというか。

■_

An Interview with Yukihiro "Matz" Matsumoto | Fred Wu's Blog | Freelance Ruby on Rails, PHP, Front-end, UI Web Developer in Melbourne, Australia

■_

2012年11月24日

■_

アフタ 今月が最終回だったのか>爆音列島

ビッグコミック(無印) 「未来からのホットライン」連載開始ということでまた買うことに。

・black friday
ということで pragprog で三冊ばかり購入。 $24.00+$24.00+$27.00 だったのが 40% off で $45 に。 内訳はこう。二番目のはすぐに翻訳本出そうだけどw The Pragmatic Bookshelf | The Definitive ANTLR 4 Reference The Pragmatic Bookshelf | The ThoughtWorks Anthology, Volume 2 The Pragmatic Bookshelf | Working with Unix Processes

・おらいり
この辺がちょっと気になってる。 Statistics in a Nutshell, 2nd Edition - O'Reilly Media SciPy and NumPy - O'Reilly Media Interactive Data Visualization for the Web - O'Reilly Media Bad Data Handbook - O'Reilly Media

・12/1のイベント 思い出したこれだ → 朝日新聞デジタル:世界で唯一 飛べる零戦展示-マイタウン埼玉 太平洋戦争で旧日本軍の主力戦闘機だった零戦が12月から所沢市の航空発祥記念館で特別展示される。 (略)  12月1日から来年3月31日まで展示され、初日と2日にはエンジン始動イベントも予定している(雨天中止)。 これが Maker Faire Tokyo 2012 と被ってると。 まあどちらも二日間あるし、土日で両方いけばいいのか。

■_ Tiger

ドイツ語読みについて。

ガールズ&パンツァーを軍事板的に語れ part3

727 名無し三等兵 [sage] 2012/11/24(土) 09:44:00.18 ID:??? Be:
    ティーガーと書いてる奴は
    BMWをベーエンベーと呼んだりメルセデスをメルツェデスと呼んでいるいる人種? 

729 名無し三等兵 [sage] 2012/11/24(土) 10:00:04.85 ID:??? Be:
    >>727
    ドイツ語読みならティーゲルだろ? 

730 名無し三等兵 [sage] 2012/11/24(土) 10:32:30.32 ID:??? Be:
    >>729
    どっちもドイツ語
    「ティーガー」の方が現代の発音に近いそうだが、1943年のドイツ人はどっちで発音していたのだろうか? 

731 名無し三等兵 [sage] 2012/11/24(土) 10:33:17.35 ID:??? Be:
    >>727
    タイガーと呼ぶのはサンダースみたいなアメリカかぶれだけな気が 

732 名無し三等兵 [sage] 2012/11/24(土) 11:04:28.94 ID:??? Be:
    Rを巻き舌で発音するのはドイツの古語だった気がする
    ドイツ週間ニュースでティーガー出る時しっかり聴いとけばわかるかも 

733 名無し三等兵 [sage] 2012/11/24(土) 11:14:27.87 ID:??? Be:
    ドイツのドキュメンタリーでティーガーって言ってるんだから
    ティーガーでいいじゃない
    http://www.youtube.com/watch?v=rMAZD-x-yAM 

735 名無し三等兵 [sage] 2012/11/24(土) 11:32:18.45 ID:??? Be:
    大分昔にティーゲル、パンテル⇔ティーガー、パンターで論争になったが
    今はティーガー、パンターで統一された感がある 

736 名無し三等兵 [sage] 2012/11/24(土) 11:37:18.49 ID:??? Be:
    >>732
    古い発音なのか、ひとつ勉強になったよ 

737 名無し三等兵 [sage] 2012/11/24(土) 12:02:55.18 ID:??? Be:
    どっちでもいいけど「キングティーガー」とか「ティーガー・ワン」みたいな英独ちゃんぽんはやめて欲しい
    「BMW」を「ベーエムベー」と読むなら「GT」も「ゲーテー」と読めよ 

738 名無し三等兵 [sage] 2012/11/24(土) 12:10:11.77 ID:??? Be:
    キングティーガー?w 

739 名無し三等兵 [sage] 2012/11/24(土) 12:15:26.00 ID:??? Be:
    ティーガーワンと言う奴はいてもキングティーガーなんていう奴はいない
    ただの妄想だろ 

740 名無し三等兵 [sage] 2012/11/24(土) 12:29:00.15 ID:??? Be:
    けーにひすてぃーがーとか発音は
    小林マンガで覚えましたw 

論争なんてあったんだ。知らなかった。

■_ 続刊とか帯とか

どうなっちゃったんでしょうねえ >現代魔法

【なれる!SE】夏海公司スレ15【葉桜が来た夏】

526 522 [sage] 2012/11/20(火) 22:30:17.56 ID:tN3rHH7V Be:
    >>522

    ポインタ間違えた
    >>512じゃなくて>>520
    あと単刊じゃなくて単巻

    >>524
    ラノベの実写化は、知っている限りだと、
    「嘘つきみーくんと壊れたまーちゃん」(電撃)
    「ライトノベルの楽しい書き方」(GA文庫)
    とか、
    ttp://ja.wikipedia.org/wiki/%E3%83%A9%E3%82%A4%E3%83%88%E3%83%8E%E3%83%99%E3%83%AB%E3%81%AE%E5%AE%9F%E5%86%99%E5%8C%96%E4%BD%9C%E5%93%81%E4%B8%80%E8%A6%A7
    ttp://ja.wikipedia.org/wiki/ライトノベルの実写化作品一覧
    この辺にまとまってる
    結構ある

    ハリウッドが映画化するというので最近話題になったのが、

    桜坂洋「All You Need Is Kill」スーパーダッシュ文庫

    IT業界的には、RubyのMatzが読んでた「よくわかる現代魔法」スーパーダッシュ文庫
    (アニメ化してる)の作者だ
    完結してない(多分しない)

    TMAのコスプレAVを含めるならもっとありそう 

533 イラストに騙された名無しさん [sage] 2012/11/21(水) 06:46:44.19 ID:2t6M2iIJ Be:
    >>526
    完結しないとか言わないでください
    ずっと待ってるんです 

535 イラストに騙された名無しさん [sage] 2012/11/21(水) 13:32:03.31 ID:mGDi6UEZ Be:
    WEBカタログ見てたらSEで冬のスペース取ってるサークルがあって驚いた
    梢さんの薄い本とか胸が熱くなるな 

563 イラストに騙された名無しさん [sage] 2012/11/23(金) 09:49:11.32 ID:h1TOV9TO Be:
    ソフトな一般向け表紙バージョンを一般文庫棚に置いたらもっと売れるのだろうか 

567 イラストに騙された名無しさん [sage] 2012/11/23(金) 13:29:29.73 ID:24RCQhn2 Be:
    >>563
    カバーから女の子を消すだけでも違うと思うなw 

568 イラストに騙された名無しさん [sage] 2012/11/23(金) 17:51:59.19 ID:eDD7ZT8b Be:
    バカ売れのビブリアは栞子さん表紙じゃん 

569 イラストに騙された名無しさん [sage] 2012/11/23(金) 18:02:37.45 ID:BRSBqRSM Be:
    あれは一応レーベルがラノベじゃないから一般人も買う 

570 イラストに騙された名無しさん [sage] 2012/11/23(金) 18:28:09.02 ID:YkF3Va9Q Be:
    ビブリア古書堂は人物なしの表紙もあったね。
    あと1巻の表紙は栞子さんじゃないかも。 

572 イラストに騙された名無しさん [sage] 2012/11/23(金) 20:27:53.89 ID:mPr7js1I Be:
    一昔前と違って美少女絵への抵抗感も減って一般文庫売り場にも
    可愛い女の子の表紙結構あったりするし、売り場変わるだけでも
    別の層が食いつくことはあるんじゃないかな

    >>570
    読んだこと無いけど女の人(栞子さん?)のしかなくね? 

573 イラストに騙された名無しさん [] 2012/11/23(金) 20:41:49.23 ID:ag501seP Be:
    >>572
    表紙は一種類しかないね。>>570はなんか勘違いしている。 

574 イラストに騙された名無しさん [sage] 2012/11/23(金) 20:44:42.09 ID:unm6047j Be:
    GOSICKみたいにラノベ版と一般版の2バージョン売りますか? 

575 イラストに騙された名無しさん [sage] 2012/11/23(金) 20:57:05.98 ID:OPLQ4+oD Be:
    氷菓とか帯と称して二重になってなかたっけ。

    もしドラとかもあったしなー。 

576 イラストに騙された名無しさん [sage] 2012/11/23(金) 21:13:11.68 ID:YkF3Va9Q Be:
    >>573
    >>572
    俺が見たのはこれ。
    http://page8.auctions.yahoo.co.jp/jp/auction/h170397921 

577 イラストに騙された名無しさん [sage] 2012/11/23(金) 21:14:33.85 ID:t8ZkWWaz Be:
    これも特大帯かな? 

578 イラストに騙された名無しさん [] 2012/11/23(金) 21:24:54.09 ID:ag501seP Be:
    >>576
    ホントだ。これは帯ではなくてもはやカバーだ。
    氷菓はアニメ化でアニメ帯になったのに。 

ほかの作品で「特大帯」を最近見た覚えがあるんだけど、 肝心の作品名を覚えていなかったw なんだっけかなあ。

■_ リハビリ

ふと気になって調べてみた リハビリテーション - Wikipedia リハビリテーションとは - はてなキーワード リハビリテーション【rehabilitation】の意味 - 国語辞書 - goo辞書 リハビリてテーションって?

■_ プログラミング言語を学ぶには

こういうのも「chart」つーですか。よくわからん。 Chart for Learning a Programming Langauge | Zappable Learn Programming in Java, Python, Ruby or Javascript : programming

■_ Scala の学び方

Graham's Guide to Learning Scala | Evolvable Me

Graham's Guide to Learning Scala | Evolvable Me
(略)

Step 1: Lay the Foundation

Read ‘Introduction to the Scala Language' on scala-lang.org

This single page is a succinct but dense description of Scala and will let you know 
what you're in for, and why you should keep going.

このページは簡潔ではあるものの密度の高い Scala の説明があり、
Scala であなたが知るであろうこと、なぜ Scala を学ぶべきなのかが書かれています。

Step 2: Get the Tools

Download and install the latest Scala release
最新リリースの Scala をダウンロードしてインストールします

Download and install the latest IntelliJ IDEA *Community Edition* release
最新リリースの IntelliJ IDEA の「コミュニティエディション」をダウンロードしてインストールします

Open IDEA and install the ‘Scala' plugin
IDEA を開き、Scala プラグインをインストールします

Step 3: Hello, World!

Create a new IDEA project with a Scala module.
Scala モジュールを使って新しい IDEA プロジェクトを作成します

Create a new file called HelloWorld.scala and paste in the following code:
HelloWorld.scala という名前のファイルを新規作成し、以下のコードを貼り付けます

  object HelloWorld {
    def main(args: Array[String]) {
      println("Hello, world!")
    }
  }

Hit Ctrl-Shift-F10 to run it.
Ctrl-Shift-F10 を押下してコードを実行します

Congratulations! First Scala program done and dusted!

Step 4: Commute your Java skills to Scala

Read Daniel Spiewak's ‘Scala for Java Refugees' series.
Daniel Spiewak の‘Scala for Java Refugees' シリーズを読みましょう

This should give you enough knowledge and experience with Scala syntax to be able to write Scala
that does most of the things you can do in Java.

このシリーズはあなたが Java で行うことのできるほとんどを Scala で書くのに十分な
Scala 構文についての知識と経験とを与えてくれます

Make sure you enter the code examples into IDEA and try them out as you go. I suggest typing them
out instead of copy-paste, because that's likely to give you exposure to common syntax mistakes
and compiler errors.

コード例を確実に IDEA に入力し、試してみましょう。
コードはコピーアンドペーストするのではなく自分でタイプすることをお勧めします。
なぜなら、そうすることでありがちな構文ミスやコンパイルエラーを経験することになるからです。

Step 5: Open Your Eyes

Read through the ‘Tour of Scala' on scala-lang.org
scala-lang.org にある ‘Tour of Scala' を読みましょう

These short pages will give you some exposure to some of the more advanced features of Scala.
Don't worry if you don't understand everything – just keep reading. You're not trying to learn
how to use all these things, just to know that they're around.

それらの短いページの集まりには Scala のより高度な機能のいくつかがあります。
書かれていることのすべてを理解できなくても心配することはありません。
そのまま読み続けましょう。
書かれていることすべての使い方を学ぼうとするのではなく、
それらの周りにあることを知ることに努めましょう。

Step 6: Learn the Basics, the Ins & the Outs

Read chapters 1 to 8 of Dean Wampler & Alex Payne's ‘Programming Scala' (O'Reilly)
Dean Wampler と Alex Payne による ‘Programming Scala' (O'Reilly) の第1章から8章までを読みましょう

This is where the learning gets heavy. We're talking about more than half a book here. You'll
learn everything from basic syntax (some of which you'll already know from the Refugees series) to
Scala's more advanced patterns for object-oriented programming, an introduction to Scala's
functional programming capabilities and some of the curly edges of Scala's type system.

Again, make sure you try out running the code samples in IDEA. I suggest you also have a play
around with some of the concepts in your own little test classes. Any time you find yourself
thinking “I wonder if I can use this feature to do this?”, grab a keyboard and find out for
yourself.

Step 7: Open the Dragon Scroll and Release your Scala Fu

Take a break from learning and do some hacking!

Think of a simple idea that you'd like to implement in Scala, then code it! (Seriously, I
recommend keeping it REALLY simple.) If you can't think of something yourself, you can steal my
idea of writing a function to perform word-wrapping.

あなたが Scala を使って実装したいと思うような簡単なアイデアを考え出して、
それをコーディングしましょう! (Seriously, I recommend keeping it REALLY simple.)
もし適当なものを思いつけないのなら、
writing a function to perform word-wrapping というわたしのアイデアを使ってもかまいません。


Step 8: Take a Walk around the Grounds

Read the rest of ‘Programming Scala' (chapters 9 to 14)
「Programming Scala」の残り (9章から14章)を読みます

The rest of the book covers some of the peripheral libraries and concepts in Scala that contribute
to making it a great language, like Actors for multi-threaded programming, “herding” XML input
and output and building blocks for creating domain-specific languages, as well as reviewing some
of the tools that have sprung up in the Scala ecosystem.

この本の残りの部分では、マルチスレッドプログラミングに対する Actor のような
Scala を great language にするのに一役買っている peripheral libraries や concepts のいくつかや、
XML の入出力の "herding"、ドメイン特化言語を作成するためのブロックの構築をカバーしています。
as well as reviewing some of the tools that have sprung up in the Scala ecosystem.


Step 9: Join a Scala Community (Scala コミュニティに参加する)

All the steps so far have been leading you towards getting a good grounding in the language and
some of the ecosystem that surrounds it. There's much, much more to be learnt though, both about
Scala itself and also about functional programming techniques that can help you make the most of it.

I think joining a community of like-minded Scala hackers is probably one of the best ways to
extend the limits of your programming experience. Meetup.com has a list of 87 Scala meetup groups
across the world. If your city doesn't have one, why not start one? All you need to do is find a
few local Scala people by searching Twitter and ask them if they want to start meeting just to
chat. From personal experience I can tell you that sometimes meetups like this will introduce you
to ideas that are more complex than any code you've ever seen, but part of the point of having
these communities is to challenge each other to grow beyond what we already know.

Go Forth and Hack!

This is where the directed part of the journey ends, but hopefully it's only the first step.

What you do with Scala next is up to you, but by this point you know more than enough 
about Scala to start using it seriously at home or even at work, for fun, or for 
making some serious cash! If you do make some serious cash by hacking Scala, please 
remember how it all started and send a little monetary “Thank you” my way. ; )

Addendum: Getting Help

Perhaps it was a little presumptuous of me to effectively say “go away now and code”. 
Chances are, you'll need some help as you keep experimenting, learning and doing more 
and more cool stuff with Scala.

The two best places that I've found to connect with other Scala users are the 
scala-user mailing list run by scala-lang.org and, for curly technical problems that 
you just can't figure out yourself, stackoverflow.com. Reading through other people's 
Scala questions on Stack Overflow can also be a great way to pick up new ideas, and 
you should also check out this great list of nifty features in Scala.

[Update] Alternative: A Scala Course by the Creator

The learning tools I've outlined above are aimed chiefly at people who like to learn 
by reading and experimenting. If you're more of a watcher/listener, you might enjoy 
this online Scala course on Coursera that someone on Hacker News pointed me to, in 
which Martin Odersky, the creator of Scala, teaches functional programming and Scala 
across 7 weeks worth of lecture videos, quiz questions and “homeworks”.


■_ コーディング標準

大変盛り上がっております。 Why I Have Given Up on Coding Standards : programming Why I Have Given Up on Coding Standards | Richard Rodger"

この話もいろいろ書きたいことがあるのだけど以下略

■_

2012年11月23日

■_

・というわけで申し込んだ → Types and Programming Languages 日本語版 レビュワー募集 - まめめも Types and Programming Language 日本語版 レビュワー募集

・ふむ “やる気が出ない”原因、睡眠不足4つのサイン (オズモール) - Yahoo!ニュース

・フィギュアスケート(の TV中継)
解説者がいちいち技の名前を声に出すのが気になるんですが (たぶん親切でやってんだろうけど)…

・Firefox どうなるんだろかこの先… Mozilla Firefox Thunderbird の拡張あれこれ-MEMO(2012年11月-7)Tab Mix Plus の不具合 Mozilla Firefox Thunderbird の拡張あれこれ-MEMO(2012年11月-7)64-bit 版開発中止か? 北森瓦版 - Windows向けの64-bit版FireFoxの開発が中止される

・買ってみた Why programmers work… by Swizec Teller [PDF/iPad/Kindle] v0.1 of "Why programmers work at night" unleashed. Feedback very welcome. : programming

■_ fish in the pond

「池の中の魚」モデルはまあいいんですけど、 Fish-in-the-Pond Model で検索してもろくな結果がでてこないんですが… 第1回となる今回は、「キャプチャー・リキャプチャー・モデル」、別名、ソフトウェア版「『池の中の魚』モデル(Fish-in-the-Pond Model)」を取り上げます。 "fish-in-the-pond model - Google 検索

IEEE Xplore - Capture-Recapture Sampling for Estimating Software Error Content Mills capture-recapture sampling method allows the estimation of the number of errors in a program by randomly inserting known errors and then testing the program for both inserted and indigenous errors. stopping rules and estimation for recapture debugging unequal failure rates (pdf) capture-recapture in software inspection after 10 years research - theory, evaluation and aplication (pdf)

んでこれに限らず疑問なのが、 推測した値を絶対視(とまではいかないまでも)しちゃう人が少なからずいるらしい ということ。

コメント#2277602 | 人為的にバグを挿入することでバグの総数を予測する「池の中の魚」モデル | スラッシュドット・ジャパン

これくらいバグが出てこないとオカシイ!
頭の変な(一流w)会社が上流にいたせいで、理論式よりも少ないせいで怒られる・・・
結局、本末転倒なバグ埋め込みマッチポンプをせざるを得なくなりましたよ(7年程前の実話)
山浦恒央の“くみこみ”な話(48):バグの数は予測できるのか? 発想は斬新だけど評判の悪い「池の中の魚」モデル - MONOist(モノイスト)

きちんとした開発プロジェクトでは、コーディング工程が完了し、デバッグ工程に入る際、ただ漠然とバグを
見つけ出すのではなく、プロジェクトマネジャーが各プログラマーに対し、「何件のバグを見つけなさい」と
具体的な数値目標を提示します。そして、実際に摘出したバグ件数と目標数との比率で、デバッグ工程の進捗
を表現します。例えば、あるプログラマーが開発したソフトウェアの残存バグ総数を60件と推測した場合、そ
のうち15件摘出していれば、デバッグ工程の進捗率は25%となります。こうすることで、目標スケジュールに
対し、「3日遅れ」のような具体的な進捗制御が可能になります。この目的で使用する場合、プログラマーの
尻をたたく意味で、「実際よりも少し多めに推定できる方式」が望ましいといえます。

「数値目標」… (「プログラマー」に対してそれをいうのもよくわからんけど)

■_ predicate the numbers of defect

でこっちの方

コメント#2277380 | 人為的にバグを挿入することでバグの総数を予測する「池の中の魚」モデル | スラッシュドット・ジャパン

こんな古いものを…
父さん、酸素欠乏症にかかって…

と思ったら、連載講座か。
「池の中の魚」なんて名前がついているのは知らなかった。

ちなみに次回予定の2チーム手法ってのは、
最初の一定期間2つのチームA,Bで同時にテストして、
共通して発見されたバグと、Aだけ、Bだけに発見されたバグの比から、全体を見積もる手法の事。
これならわざわざバグを仕込む必要がない。
ちょっと、次回のネタバレをしないで下さい(笑)。

まあ、バグを統計的に扱って何とかしようというこの手のネタは、実用になった物から身も蓋も無い物まで
幅広いですし。 特に実用にならなかった物に関しては、プログラミングで飯を食ってる人でもまず目にする
ことは無いので、 そんなアイデアが有ったのか! タレコまなきゃ! ってなるのもしょうがないかと。

裏を返せば、その手の人の集まる飲み会なんかでネタにするには最適な話題だったりするんじゃないかと。

この辺かな。 A Tool for Better Reviews with Capture-Recapture | Lean Software Engineering The capture-recapture code inspection | Lean Software Engineering Mark and recapture - Wikipedia, the free encyclopedia Fixing a Bug is Like Catching a Fish | Javalobby

それで思い出したのだけど、 こいつは翻訳されていないのだっけ? → The Pragmatic Bookshelf | Debug It! バグ数の予測云々の話は関係ないけど、「デバッグ」に関する本としていいと思います。 まあページ数も多くないし、細大漏らさず網羅しているという本ではありませんけど。

Debug It!: Find, Repair, and Prevent Bugs in Your Code (Pragmatic Programmers)

■_ ASPEN

ASPEN 使ったなあ。大学で。

C++相談室 part98

441 デフォルトの名無しさん [sage] 2012/11/19(月) 23:19:51.63 ID: Be:
    凄い奴は自分でC++コンパイラーを作ってるんだろうが
    お前らはどこのC++コンパイラー使ってる? 

442 デフォルトの名無しさん [sage] 2012/11/20(火) 00:26:42.01 ID: Be:
    何?
    VC++2010とか言ったら情弱扱いされる流れ? 

443 デフォルトの名無しさん [] 2012/11/20(火) 01:35:39.64 ID: Be:
    VC 作ってる… 孫請けだけどね ja じゃなくコアのとこ… なんて言うと、ネタ扱いしかされないだろ 

444 デフォルトの名無しさん [sage] 2012/11/20(火) 23:13:54.70 ID: Be:
    さすがにC++のコンパイラ作れるとはウソでも言えない 

445 デフォルトの名無しさん [sage] 2012/11/20(火) 23:48:28.13 ID: Be:
    いまのC++コンパイラを実際に開発しているのは日本の下下請け企業なんだろ 

446 デフォルトの名無しさん [sage] 2012/11/21(水) 00:32:07.38 ID: Be:
    パフォーマンス度外視ならなんとかなるんじゃね? 

447 デフォルトの名無しさん [sage] 2012/11/21(水) 00:36:51.17 ID: Be:
    京のC++コンパイラは酷すぎるとか聞いた 

448 デフォルトの名無しさん [sage] 2012/11/21(水) 00:43:07.48 ID: Be:
    と言っても使えるレベルのスパコン用のコンパイラ作れるのは日本企業だけなんだろ
    このスレ住人にはCray、IBM、京...どれかのコンパイラ開発に参加しした奴意外といるんじゃないか 

449 デフォルトの名無しさん [sage] 2012/11/21(水) 01:04:55.66 ID: Be:
    C++パースする段階でくじける
    C++コンパイラ作ってる企業はパーサーの部分はよそから買ってきたりしてるんだっけ? 

450 デフォルトの名無しさん [sage] 2012/11/21(水) 01:05:20.39 ID: Be:
    日立でIDE作ってたやつはさされてもおかしくないレベル 

451 デフォルトの名無しさん [sage] 2012/11/21(水) 01:15:07.47 ID: Be:
    ASPEN最高じゃん 

452 デフォルトの名無しさん [sage] 2012/11/21(水) 07:15:39.79 ID: Be:
    g++改造すりゃええねん 

453 デフォルトの名無しさん [sage] 2012/11/21(水) 07:33:26.49 ID: Be:
    パーサを毎回一から作るのか? 

454 デフォルトの名無しさん [sage] 2012/11/21(水) 08:27:07.74 ID: Be:
    再発明は文化の極みだよ 

455 デフォルトの名無しさん [sage] 2012/11/21(水) 08:28:23.15 ID: Be:
    今は書くことだけを考えて 

456 デフォルトの名無しさん [sage] 2012/11/21(水) 09:08:05.95 ID: Be:
    ASPEN懐かしい 

■_ 実行可能なテキストファイル

TIL you can encode MSDOS binaries in pure ASCII compatible with Batch scripts : programming Converting Binary to Batch

実際はこんな感じ

Converting Binary to Batch

Here is a batch containing the decoder which I call "DecBin" and used to decode the encoder I call "EncBin"...

@echo off
set dec=decbin.com
set enc=encbin.com
set tf=encbin.tmp
::---------------------
:: CM3-encoded DecBin decoder...
ECHO:`h}aXP5y`P]4nP_XW(F4(F6(F=(FF)FH(FL(Fe(FR0FTs*}`A?+,>%dec%
ECHO:fkOU):G*@Crv,*t$HU[rlf~#IubfRfXf(V#fj}fX4{PY$@fPfZsZ$:NvN$>>%dec%
ECHO:9AyroNB-)dOKwK0rRkfTbi)ws_~[[q9wE'sqlu1sY*Bsfe=@ziNS1a)88e>>%dec%
ECHO:f9RTL)9Z{3INBD?o6@MDLO{Zz4Q23E-'09NX9@Vz(42A7c8zMS:u$w6k5Q>>%dec%
ECHO:N,h:le)~gF?tutTyxoe5UiIdtn';0rJ1q:{7;lAl']y:yTjZBbOo?QRIdN>>%dec%
ECHO:$Bp@P/nAp_r0*4f'XcF4q3o?$_t5lx$Q-OxSfUNQ__Gd~$Q-Oxgkx=LGHU>>%dec%
ECHO:S)$C6P8#>>%dec%
::---------------------
:: the EncBin encoder, encodes stdin to stdout, encoded by itself...
ECHO:AALIxnCmeRf0\Uf0pWjXYBlxr0MyG02u022nc1Z5Z0r4G2ldMAj[8F34dd>%tf%
ECHO:Z1Z0r4G2ld6Aj[8F34Ed3EmbG02lJpNl0jjjCt9v0407ZvjtS3I0j7rvLv>>%tf%
ECHO:G203l0wUDv20F42eD3ZujTS6fmprbD2e4uwp39gwYdfDfAdng0f1f0ZF2t>>%tf%
ECHO:04bemDCXj0C0LHtA2701ZsG0SFdfW]6630Jf36S6W1f0rJ2fMfQYW1YAoO>>%tf%
ECHO:EAt0y[36S6W1[8LRi3}>>%tf%
::---------------------
:: decode encoder...
%dec% < %tf% > %enc%
if errorlevel 1 echo error decoding binary
if not errorlevel 1 echo Created encoder in %enc%
echo Created decoder in %dec%
del %tf%

こういうの他にもあったよなあなんだっけと思い出したのがこれ → com2txtの詳細情報 : Vector ソフトを探す!

■_ Technology Radar

Technology Radar | www.thoughtworks.com 最近気がついたんですが、メニューに「中文」ってあるんですね。 日本語版も欲しいけど難しいかなあ。 日本語の翻訳が(ぴー)でも困るし…でも広く読んでもらいたい内容ではあると思います。

■_ 訳語

すごい Haskell(ry なんですが、 successor を「後者」と翻訳しているのがちょっと気になった。 そんだけ。

■_ Model

信頼度成長~ででてくる「モデル」について簡潔明瞭な解説を見つけたので紹介 バグ - Security Akademeia

バグ - Security Akademeia

バグの現れ方を統計的に捉える

 バグ発見数のモデル(フォールト発見数モデル)は次のように分類される。

マルコフ過程モデル

    ソフトウェアの内部状態を任意の時刻における残存バグ数により定義する。
    ソフトウェア故障の発生数を現す計数過程がマルコフ過程であるという前提を利用する。

非同次ポアソン過程モデル

    バグの発見個数に関する時間的挙動を非同次ポアソン過程によって表現する。

統計的データ解析モデル 

    発見したバグ数に経済成長や人口増加などの予想に使うロジティクス曲線やゴンペルツ曲線を当てはめて統計解析を行う。

■_ コーディング標準

Perl のもあるんですね。CERT のやつ。 CERT Perl Secure Coding Standard : perl CERT Perl Secure Coding Standard - Perl - CERT Secure Coding Standards

00. Introduction - Perl - CERT Secure Coding Standards

An essential element of secure coding in the Perl programming language is well-documented and
enforceable coding standards. Coding standards encourage programmers to follow a uniform set of
rules and guidelines determined by the requirements of the project and organization, rather than
by the programmer's familiarity or preference. Once established, these standards can be used as
a metric to evaluate source code (using manual or automated processes).

The CERT Perl Secure Coding Standard provides rules and recommendations for secure coding in the
Perl programming language. The goal of these rules and recommendations is to eliminate insecure
coding practices and undefined behaviors that can lead to exploitable vulnerabilities. The
application of the secure coding standard will lead to higher-quality systems that are robust and
more resistant to attack.

C/C++

■_ gz bz2

月例リリースがありましたよ。で、 Parrot 4.10.0 "Red-eared Parakeet" Released - nntp.perl.org

ftp://ftp.parrot.org/pub/parrot/releases/devel/4.10.0/ の一覧 アーカイブのファイルサイズを見ると、gz より bz2 の方が大きいんですが こんなケースあるんだ?

ftp://ftp.parrot.org/pub/parrot/releases/devel/4.10.0/ の一覧

ftp://ftp.parrot.org/pub/parrot/releases/devel/4.10.0/ の一覧

上位のディレクトリへ移動
名前 	サイズ 	最終更新日時
ファイル:parrot-4.10.0.tar.bz2 	5222 KB 	2012/11/21 	21:55:00
ファイル:parrot-4.10.0.tar.bz2.sha256 	1 KB 	2012/11/21 	21:55:00
ファイル:parrot-4.10.0.tar.gz 	4461 KB 	2012/11/21 	21:55:00
ファイル:parrot-4.10.0.tar.gz.sha256 	1 KB 	2012/11/21 	21:55:00

本来なら画像で貼り付けるべきなんだろうけど、めんどうなので

■_

■_

Brief History of Spreadsheets, v. 3.6 を、あらかた訳したんだけど (結構「ルー語」になってる部分はある)、さてどうしたものか

2012年11月22日

■_

なんのかんの言っても「Makers」面白いです。 まだもうちょっと(数十ページ)残っているので、なんか書くのは読み切ってから。

■_ kickstarter.com

んで、その Makers 読んでて思い出したのがこれ。 The D Programming Language Conference 2013 by Walter Bright — Kickstarter この kickstarter.com について書かれている下りがあるんですよ (分量はそれほどではない)。 それで kickstarter.com がどういうことをやっているサイトなのかを知って感心している次第。

他にも幾つか紹介しているところがあって、それぞれ面白いことしているなあと。

■_ 今日の信頼度成長曲線

とあるツールのページから SRATSの背景と要件

SRATSの背景と要件

背景と目的

ゴンペルツ曲線や S 字曲線で代表されるソフトウェア信頼度成長モデルはソフトウェアのテスト進捗を視覚
的に表現するツールとして知られています.日本では,ゴンペルツ曲線や S 字曲線が特に有名ですが,世界
的には非同次ポアソン過程(NHPP: Non-Homogeneous Poisson Process)と呼ばれる確率過程で表現されるこ
とが多く,数多くの NHPP モデルが提案されています.

実際,NHPP モデルに代表されるソフトウェア信頼性モデルは 1970 年代に初期のモデルが提案されて以来,
多くのソフトウェアフォールトデータへの適合性が検証されています.しかし,実務レベルにおいてソフト
ウェア信頼性評価に積極的に利用されていない現状があります.この理由として,次にあげる 4 つの要因が
考えられます.

1 つ目の要因は,実際に記録するデータと確率モデルで使用するデータがかけ離れていることです.実際の
ソフトウェア開発工程では,テストを実施した日時やテストによって発見された障害をすべてを記録してい
ます.しかし,NHPPモデルをとりまく学術的な分野では抽象的な議論が行われており,使用するデータは
フォールトが発見された時間(単位を示さない)とする場合が多く見受けられます.すなわち,現場では
2003/5/5 のような年月日で管理されている記録を,ある基準日時からの累積日時へ変換する作業が必要とな
ります.

2 つ目の要因は,実際のデータに適合させるための推定手続きの煩雑さであると考えられます.確率・統計
理論に基づいたソフトウェア信頼性評価では,記録したフォールトデータをもとに,モデルパラメータを推
定する必要があります.これには最尤法と呼ばれる統計的な推定手法を用います.しかしながら,この作業
は数学的には制約のある非線形計画問題を解くことと等価であり,数理に関する専門技術者においても,
フォールトデータの種類によっては多くの労力を必要とする厄介な作業です.

3 つ目の要因は,いくつかの確率モデルから適切なモデルを矛盾なく選択することが困難な点にあります.
過去 30 年間に発表されたソフトウェア信頼性モデルだけでその数は 250 以上にも及びます.開発現場では,
多くのモデルを比較した上で最も適合するものを選択することが理想的ですが,この作業はかなりの専門的
な知識を必要とします.

最後の要因は,ソフトウェア信頼性モデル用いてどのようにして信頼性評価を行うかという点です.NHPP
モデルでは,最終的にソフトウェア信頼度を通じてソフトウェアの品質を定量的に評価します.この物理的
な意味は「規定の時刻までに次のフォールトが発見されない確率」ですが,開発者とってはイメージのつか
みにくい尺度となっているため,信頼性尺度を出してみたもののどのような管理を行うべきかと言った問題
が生じます.

これらの問題を解決し,現場で手軽に利用できる評価技術として発展するためにはツールによる支援が欠か
せません.SRATS はそのような背景のもとで開発が開始されました.

以下略

大まかに云って、曲線を描く手法は三種類くらいに分類できます。 NHPP ってのはそのうちの一つですね。

「信頼度成長曲線」と「信頼度成長モデル」というのは似て非なるものだという印象があるのですが、 なぜそうなったのかというのには興味があります。 ただ今のところは手がかりなしです。 西島カーブが影響しているのか否か。

■_ バグ数予測

なんかタイミングいいな(西亭新九郎さんの暗躍?) 人為的にバグを挿入することでバグの総数を予測する「池の中の魚」モデル | スラッシュドット・ジャパン デベロッパー 山浦恒央の“くみこみ”な話(48):バグの数は予測できるのか? 発想は斬新だけど評判の悪い「池の中の魚」モデル - MONOist(モノイスト)

山浦恒央の“くみこみ”な話(48):バグの数は予測できるのか- 発想は斬新だけど評判の悪い「池の中の魚」モデル - MONOist(モノイスト)

プログラマーの永遠の課題「プログラム中の残存バグ数の推定」に迫るシリーズ。今回は、エンジニアの
基本姿勢から逸脱した、一種のトンデモ推定法である「キャプチャー・リキャプチャー・モデル(別名、
ソフトウェア版『池の中の魚』モデル」を取り上げます。

「プログラマーの課題」じゃなくて、マネージャ辺りが必要としている (ほしがっている)ものじゃないですかね。>残存バグ数の推定

まあそれはいいや。 このアイデア(手法)の話も、次回取りあげるであろうアイデアの話も見ましたよ。ええ。 リンクさがすの面倒なんで提示できませんが(^^;

■_

2012年11月21日

■_

来ました >きんどる以下略

Black Lagoon のDVD BOX が再発売と聞いたはいいが 早速絶賛品切れ中かい ○| ̄|_

BLACK LAGOON DVD_SET1 BLACK LAGOON DVD_SET2 BLACK LAGOON The Second Barrage DVD_SET1 BLACK LAGOON The Second Barrage DVD_SET2

■_

Google、Android 4.2の恥ずかしいバグを認める―「近く12月を戻します」 "Issue 39692 - android - December month missing in calendar - Android - An Open Handset Alliance Project - Google Project Hosting" https://code.google.com/p/android/issues/detail?id=39692#c47

■_ こ、これは

Xボンバー REMASTER DVD-BOX
Xボンバー REMASTER DVD-BOX

キンゲもあるしなやましい オーバーマン キングゲイナー BDメモリアルBOX [Blu-ray]

■_ 読み方

TaPL でよく使われているこいつの読みは? Unicode Character 'RIGHTWARDS ARROW FROM BAR' (U+21A6)

つーかUnicode に収録されてたのかこいつ

追記 mapsto らしいです

■_ 待ってました

The Pragmatic Bookshelf | Black Friday/Cyber Monday 40% off Sale

The coupon is valid Friday, November 23th, 2012 through Monday, November 26, 2012, PST. (That's 8 hours behind GMT.) 23日からね。おし。 これを狙ってたのだった The Pragmatic Bookshelf | Working with Unix Processes

■_


一つ前へ 2012年11月(中旬)
一つ後へ 2012年12月(上旬)

ホームへ


リンクはご自由にどうぞ

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