ときどきの雑記帖 2012

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

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

ホームへ

2012年12月31日

■_

みっかめ。 燃え尽きました。 本日の戦果

朝の待機列で後ろにいた二人組が「新日本プロレス」を「日本プロレス」といってて おいおいそれは違うだろうと注意したかったw 日本プロレス - Wikipedia 新日本プロレス - Wikipedia 新日本プロレスがコミケ83に連続参戦!!

■_

ではまた来年。

2012年12月30日

■_

二日目は天候があれだったのでパス(チェックしてたの一箇所だけだったし)。

わたしの大好きな InfoQ (英語版) の右カラムにある記事群なんですが、 数日くらい前から記事を一つ開いただけでFirefoxのメモリ使用量が跳ね上がり (だいたい1GB 弱)、まともに動かないようになってしまう現象に悩まされています。 この現象が発生するのは今のところFlash使っているページだけなので Flashプレイヤーの問題かなあとも思ったのですが (アップデートあったし)、プラグインを無効にしてもそのページを開くとやっぱりダメ。 とすると JavaScript 辺りの問題なんだろうか? 17.0.1 にようやく挙げた頃とタイミングが一致するような気もするし… JavaScript 切るのもできんだろうしさてどうしたものか。

■_ CFD

オブリガート ~感謝されるテストエンジニアになる~: 「WACATE 2012 冬」参加レポート(その1)――大海原に船を出した蛙、三浦半島へCFD(Cause Flow Diagram)とは、今回のクロージングセッションの講師を担当される松尾谷 徹さんが開発したテスト技法です。 「原因流れ図」ともいって、ソフトウェアの処理の流れを、原因と結果(インプットとアウトプット)の流れ図にすることによって、 そのソフトウェアに対してどのようなテストが必要かを整理することができる技法です。 というのがあったのですが、CFD って他にもなかったけか と思いつつ検索 状態遷移のAction設計してます?: SHIKOU-SAKUGO リアルタイム構造化分析を、再勉強したときに、「あ~、CFD(制御フローダイアグラム)の分析って、こういうときに有効なのね」と、後から理解しました。 今になっては、CFD というと、松尾谷さんの提唱する 原因流れ図(CFD:cause flow diagram) の方が有名かもしれません。 これとは、まったく別物ですので、ご注意ください。 Control flow diagram - Wikipedia, the free encyclopedia なにも被るような名前つけなくても… まあ後ろ二つは変えようがないか。 あと、 【松尾谷徹が語る】現場力を高めるテスト(3) - ソフトウエア - Tech-On! では 筆者が勧めるのは「原因流れ図(CFD:case flow diagram)」である。 とか。 おーい、どっちなのかはっきりしてくれーw (時間差があるので変わったのかもしれないけど)。

■_

  • ~ History of ~ - ympbycと自転車とジュース
    コンピュータサイエンスのThe History of ○○系の論文とかビデオとかが面白い。 オススメがあれば教えてください。
  • 機を見て商品をぶちこむ - 24時間残念営業
    なんとなく来るってのがなくなれば、それこそ家にいてアマゾンで買えばいいよって話になっちゃうし。
  • ツイートID生成とツイッターリアルタイム検索システムの話
  • 一冊の本を全力でつくっているうちは、まだ編集者じゃない:柿内芳文 | 考えた | ジレンマ+
    いくら企画が通らなくても、「俺のこの企画すげえ。このアイデアをわからない老害どもめ!」なんて態度じゃ、孤立していくだけです。 ただ、全部にイエスマンだと可愛げはない。たまに反発するくらいが、ちょうどいいんですよ。
  • Twitter / kataoka_k: 文系にはまったく意味不明な時計が売っていた。 htt ...
  • Shibu's Diary: 何のために勉強会をするのか?
  • 下から目線のコードレビュー - steps to phantasien
    そういえば前にコードレビューの話を書いた気がして, 見なおしたところ かきかけ だった. せっかくなので続きを書いてみることにします. といっても何書くつもりだったか覚えてないのでだらだらと.
    あー、まだ買ってなかったー> WEB+DB PRESS Vol.72
  • 凝ったコードは凝っているように見えない - 日々常々
  • 今年買ったり、いただいたりした本 - きしだのはてな
  • うさみみエンジニアが2012年に買った技術書 - うさぎ組
  • 今年の一冊(Multiple View Geometry in Computer Vision): なつたん
  • めざまし占いを集計してみた - にっき(2012-12-29)
    サンプル数分からんけど(ざっくり 50weeks × 5days くらい?)、気にするほどの揺れではないような気もする
  • 森田崇「アバンチュリエ」は(講談社で)全5巻完結を逆手に取り「公立図書館に購入」」させるべきである(提言) - 見えない道場本舗
  • Parallel Programmability and the Chapel Language - tomykaira makes love with codes
    Chapel is a new programming language for parallel programming.
  • xyzzy 0.2.2.246 リリースノート
  • 技術の変化と技術者のキャリアパス: 組み込み技術者の単身赴任日記
    不要になることはないが、そんなに人数は必要としなくなることはある。 社会全体から見れば、今まで1000人必要としていた技術分野は0になることはない。 でも100人でいいことは十分にあり得る話だ。900人は失業するのである。 サラリーマンとしてはこれは大問題である。生き残り戦略とともに、新しい技術分野への転換能力も必要とするのかもしれない。
  • Building High Performing Agile Teams
  • Akka Eye for the Spring Guy or Gal
  • ■_ post-mortem

    ノキアの没落で若者のワークスタイルが変わったフィンランド - (page3) - ZDNet Japan を見て思いだしたんですが、 ちょっと前に投稿されてたこの記事面白かったです (途中までは訳していたような気がする…) Symbian, a post-mortem | Hacker News Symbian - a post mortem - Google Drive

    ■_ 重箱の隅

    浮動小数点、その中身とは « demoscene.jp

    浮動小数点、その中身とは « demoscene.jp
    
    この構造体では、C++言語でビットフィールドを使えば、floatの3つの部分は簡単にアクセスできます:
    
    union ieee754
    {
        struct
        {
            unsigned int mantissa : 23;
            unsigned int exponent : 8;
            unsigned int sign     : 1;
        };
     
        float            _f32;
        unsigned int     _u32;
    };
    

    C (とC++)では規格上、ビットフィールドがどう並ぶかは決まってなかったような? (要出典) あと、ビッグエンディアンとリトルエンディアンでのバイト並びも考慮されてないので ちと引っかかる(まあイマドキはそんなに気にしないでも良いのかもしれないけど)。 さらにいうと、union をこういう使い方しても期待通りにビットパターンが取れるのは 保証の限りではなかったような (これもイマドキは余計な心配かな)

    浮動小数点、その中身とは « demoscene.jp
    
    仮数部に1が足されていることに注目してください。これはfloatの「隠しビット」と言われており、
    仮数部が0の場合でも正常に計算ができるために必要です。しかし、このビットが必ず1のため、
    実際は仮数部には保存されていません。
    

    「仮数部が0の場合でも正常に計算できるため」ってのは違うような。

    浮動小数点、その中身とは « demoscene.jp
    
    特別なfloat以外は「正規化数」と呼ばれます。これは正の数と負の数を関係なく、正確なfloatまたは
    normalized floatという意味です。
    

    「正規化された」は「正確な」とは違うかと (リンク先の筆者のリンクをさらに辿ると日本語が第二言語(以降)の方のようなので 勘違いが入っているのかも)。

    そういや昨日辺りにこういうのが紹介されてました IEEE-754 Analysis

    ■_

    以下amazonリンクが大量にありますが、アフィリエイトはくっつけていません :)

    とりあえずカートに放り込んでおいて放置(様子見)というのが結構あるんですが (さっき見たら80個超えてたw)、 洋書に関しては買えるものは買ってしまおうかという気分になりまして。 ざっと目についたのを抜き出すとこんな感じになりました。

    いくつかは Kindle版もあるんですねえ。とはいえ元が大型本で図が多用されてるものだと、 ちょっと安くはなってるとは言っても5000円オーバーだったりすると えいやで買うにはまだハードルが高いですねえ。

    って、「冒頭部分を試し読み」てのがあるのか。 ちょっと試してみよ。 まあ試し読み後に買っても「ぎゃっ」となっちゃう可能性は大いにありそうですが…

    Tiger book も Kindle版あったのね。でもJava版だけっぽい? Amazon.co.jp: Modern Compiler Implementation in Java eBook: Andrew W. Appel, Jens Palsberg: Kindleストア

    Amazon.co.jp: Modern Compiler Implementation in C: Andrew W. Appel: 洋書 Amazon.co.jp: Modern Compiler Implementation in Java: Andrew W. Appel: 洋書 あれ、表紙の虎がいないぞ…?

    ↑見てたらちょっと気になって、コンパイラー本をざっと見てみたんだけど ここ1、2年でも結構なタイトルが出てるのねえ。 Amazon.co.jp: Compiler Construction Using Java, JavaCC, and Yacc: Anthony J. Dos Reis: 洋書 Amazon.co.jp: Introduction to Compiler Construction in a Java World: Bill Campbell, Swami Iyer, Bahar Akbal-Delibas: 洋書 Amazon.co.jp: Principles of Compilers: A New Approach to Compilers Including the Algebraic Method: Yunlin Su, Song Y. Yan: 洋書 参考価格: ¥ 14,063 価格: ¥ 12,722 うは、高えー Amazon.co.jp: Syntax-Directed Semantics: Formal Models Based on Tree Transducers (Monographs in Theoretical Computer Science. An Eatcs Series): Zoltan Fulop, Heiko Vogler: 洋書 Amazon.co.jp: Modern Compiler Design: Dick Grune, Kees Van Reeuwijk, Henri E. Bal, Ceriel J. H. Jacobs, Koen Langendoen: 洋書 Amazon.co.jp: Compiler Design: Analysis and Transformation: Helmut Seidl, Reinhard Wilhelm, Sebastian Hack: 洋書 springer 多い(そして高い)なあ

    Amazon.co.jp: Compiler Design: Syntactic and Semantic Analysis: Reinhard Wilhelm, Helmut Seidl, Sebastian Hack: 洋書 Amazon.co.jp: Compiler Design: Code Generation and Machine-level Optimization: Sebastian Hack, Reinhard Wilhelm, Helmut Seidl: 洋書 Amazon.co.jp: Software Build Systems: Principles and Experience: Peter Smith, Peter Smith: 洋書 これは分割されて出版されてるのかな

    ■_ sortby

    _ をメソッド名含めるかどうかの議論。 わたしもあまり好きじゃあないんだけど、これという解決策はないですよねえ。 Lisp みたいに - が使えれば… (COBOL もできるか) rename: sort_by => sortby ? · Issue #1850 · JuliaLang/julia Rename groupby to group_by · Issue #139 · HarlanH/DataFrames.jl

    ■_ デバッグ

    面白かった。 いやまあ原因を突き止められずに追いかけてるときは神経すり減りますけどね(^^; Android 2.x でActivity起動時に謎の強制終了が発生する件について - 某ソフト作者の開発日記 1週間以上悩み続けた謎の強制終了バグの原因がついに分かった! せっかくなのでコトの顛末を記録しておく。

    ということでここでアサマシ
    デバッグの理論と実践 ―なぜプログラムはうまく動かないのか
    デバッグの理論と実践 ―なぜプログラムはうまく動かないのか

    2012年12月29日

    ■_

    1日目。 国際展示場に11時前後に到着というパターンで。 目当てのサークル三つくらいと、あとはメカ・ミリタリーあたりを流したり。 企業ブースのマイクロソフトでも見ていこうかと思ったんですが、 午後になっても待機の列が尋常じゃなかったぽいので断念。

    今年の購入はこれが最後かな。 高速文字列解析の世界――データ圧縮・全文検索・テキストマイニング (確率と情報の科学) 「高速文字列解析の世界」サポートページ - daisuke.okanohara というかですね、最初秋葉原の書泉ブックタワーに行ったんですけど見あたらなくて 店員さんに尋ねたら「ここでは扱っていません」とかいわれてびっくり。 紀伊國屋書店でも数学のところにあったので、そういうことだったんだろうか (グランデに行けばあったのかもしれない)。

    ■_

    泳ぐやる夫シアター やる夫で学ぶ第一次世界大戦  第三十夜「第二次マルヌ会戦」

    ■_

    ■_

    ああもうなんかダメだw

    2012年12月28日

    ■_

    明日からアレですが、チェックしたのは三日目(大晦日)に集中してるのでそれは外せないとして、 一日目と二日目をさてどうしたものか。 一応気になるサークルはあるんだけど、三日皆勤は流石に辛いものが。

    ■_ めも

    美術・歴史|NHK BSオンライン BSプレミアム  1月4日(金)午後9:00~10:29 古代中国 よみがえる英雄伝説  「始皇帝と乱世の名臣たち~春秋戦国 天下統一への道~」 1月10日(木)午後8:00~9:29 古代中国 よみがえる英雄伝説「紂王と太公望 王朝交代・古代最大の決戦」

    ■_ Zen of なんとか

    Python のアレみたいの他の言語でもないのかという問い Do equivalents of "The Zen of Python" exist for other languages? : programming

    Do equivalents of "The Zen of Python" exist for other languages? : programming
    
    Perl has the "three great virtues".
    
        Laziness tl;dr efficiency
        Impatience tl;dr flexibility
        Hubris tl;dr quality
    
    Notice how one of them isn't readability.
    
    I kid, I kid! I'd dislike a comment like that if I wasn't a Perl programmer myself.
    
    
    Zen of Haskell
    
        Nested is better than flat.
        Dense is better than sparse.
        Readability is calibrated to postdocs.
        Special cases everywhere to make it faster.
        Purity trumphs practicality.
        Errors shouldn't exist but they do in impossible-to-fix form.
        You may rewrite your program.
        But, blog about it first.
        Always thrive to find other ways to do things.
        And, blog about them.
        Possibly, write a paper.
        Later is better than now.
        Never means you saved computation.
        Implementation must be followed by a series of journal publications.
        If implementation is obvious, it's probably wrong.
        Who needs name spaces when you use one character for names?
    
    
    Zen of PHP
    
        Magic is better than explicit.
        Built-in is better than built-out.
        Throwaway code is wasteful.
        Case sensitivity is for pansies.
        Sorting is hard.
        All datatypes are created equal.
        SQL injection is a myth.
        Naming conventions are irrelevant.
        Version numbers are irrelevant.
        Backwards compatibility is futile.
    
    
    Well, its not quite put down in words anywhere (maybe it is, but i dont know where), but ruby has
    something like this very deep down. Its called idiomatic ruby:
    
        Keep it simple stupid
        Convention over configuration
        Implicit is better than explicit
        Principle of Least Astonishment
        There is more than one way to do something
        Monkeypatching, if used right, is an excellent tool
        It's better to monkeypatch in object-oriented code than it is to use functional style
        And, almost a complete opposite of python's GIDSWAD, ruby has MINSWAN: Matz is nice so we are nice
    
    There are a ton more, and they apply to all sorts of things, some incredibly focused, such as
    using ||= to define a variable only if it doesn't exist.
    

    ふむ。

    ■_

    2012年12月27日

    ■_

    今年の本の三冊目、MAKERS よりこっちだったかも。 それをお金で買いますか――市場主義の限界

    次の機会には買おう View Updating and Relational Theory - O'Reilly Media

    会社の金で JaSST Tokyoに行く目論見は潰えた模様○| ̄|_ デブサミもなあ…

    ■_

    ■_ 第二版

    途中までで放置している気が…>黒ニャー本(と勝手に呼んでいる) というか、原著第2版も電書で買ってきんどるさんに入っているのでは…

    ■_ 5冊

    DHH がこーゆーblogエントリを The five programming books that meant most to me by David of 37signals

    The five programming books that meant most to me by David of 37signals
    
    There are so many programming books out there, but most focus on specific technologies and their
    half-life is incredibly short. Others focus on process or culture. Very few focus on the timeless
    principles of writing good code, period. The following five books had the biggest influence on my
    programming style and development:
    
    
    

    で、その内訳は

    それぞれの翻訳書をアサマシつきで貼り付けるべきなんだろうか?w

    でまあ、Hacker News でいろいろ

    The Programming Books That Meant The Most To Me | Hacker News
    
    I'd say software is becoming more 'specialized'.
    
    My alma-mater (UBC.ca), the CS Dept touches a few subjects:
    
    - Design Patterns (still using GoF, which is probably not the right fit for 3rd year students)
    
    - Refactoring (we do refer to Martin Fowler's book albeit we don't dig that deep)
    
    - Barbara Liskov book (touches a few thing regarding type-systems and its relation with OOP, IN-OUT
      contract/verification, a bit more academic/formal but most of us saw her work in C# contracts,
      the L in SOLID principles, some of the OOP best practices probably).
    
    
    
    I wouldn't even recommend the first couple from my list, today -- e.g. there are surely better
    intros to algorithms now. But here's an approximate top 5 for changing my programming when I
    read them.
    
    Brodie, Thinking Forth
    
    Sedgewick, Algorithms
    
    Abelson & Sussman, SICP
    
    Liskov & Guttag, Abstraction and Specification in Program Development
    
    Norvig, PAIP
    
    It's hard to stick to 5!
    
    
    8 Books---All by D. Knuth, The 4 on algorithms and the 4 on Typesetting. Not to forget the article
    on DDJ long ago that started it all for me.
    
    

    Knuth センセ、Typesetting で4冊も書いてたっけ?

    reddit ではそれほどでも

    The five programming books that meant most to me : programming
    
    At this stage of my programming life, I'm really interested in this one:
    
        Are Your Lights On?: How to Figure Out What the Problem Really Is
    
    These days, I tend to read books that help me putting programming into perspective rather than
    purely books about code.
    
    With that said, I did enjoy Michael Abrash's Black Book because it taught me, among other things,
    that it's okay to scrap a whole page of code to start afresh. Never fear changing angle.
    
    Other books that made a lasting impression on me:
    
        The Code Book. The fascinating story of encryption. Easy to read too.
    
        Secret and Lies where I realised security isn't about hiding behind layers after layers.
    
        GEB. Well, this one is one of a kind, that's all I can say.
    
        AI. Another fascinating story book.
    
        Bridging the Communication Gap This one is a down to earth explanation as to why we keep failing
        at delivering software with value most of the time.
    
        Introduction to Algorithms. I still refer to it.
    
    

    ■_ あじゃいる

    なんでこんなにいっぺんに Are your Software Development Projects using Agile? Dear Agilist.... Demand For Agile Skills Outstripping Supply

    ■_

    ジュンク堂書店 池袋本店トークセッション情報

    2012年12月26日

    ■_

    寒い。

    ■_

    記者の眼 - あなたはなぜITエンジニアなんですか?:ITpro

    ■_ Julia

    ちょっとソースを眺めてみた。

    total 105
    -rwx------+ 1 kbk None  4542 Dec 23 20:40 CONTRIBUTING.md
    -rwx------+ 1 kbk None  3466 Dec 23 20:40 LICENSE.md
    -rwx------+ 1 kbk None  8218 Dec 23 20:40 Make.inc
    -rwx------+ 1 kbk None  4274 Dec 23 20:40 Makefile
    -rwx------+ 1 kbk None 14901 Dec 23 20:40 README.md
    -rwx------+ 1 kbk None     2 Dec 23 20:40 VERSION
    drwx------+ 1 kbk None     0 Dec 26 22:27 base
    drwx------+ 1 kbk None     0 Dec 26 22:27 contrib
    drwx------+ 1 kbk None     0 Dec 26 22:28 deps
    drwx------+ 1 kbk None     0 Dec 26 22:28 doc
    drwx------+ 1 kbk None     0 Dec 26 22:28 examples
    drwx------+ 1 kbk None     0 Dec 26 22:28 extras
    drwx------+ 1 kbk None     0 Dec 26 22:28 src
    drwx------+ 1 kbk None     0 Dec 26 22:28 test
    drwx------+ 1 kbk None     0 Dec 26 22:28 ui
    
    

    src の下に

    total 840
    -rwx------+ 1 kbk None   3927 Dec 23 20:40 Makefile
    -rwx------+ 1 kbk None   2884 Dec 23 20:40 Makefile.debug
    -rwx------+ 1 kbk None  25982 Dec 23 20:40 alloc.c
    -rwx------+ 1 kbk None  16303 Dec 23 20:40 array.c
    -rwx------+ 1 kbk None  22809 Dec 23 20:40 ast.c
    -rwx------+ 1 kbk None    339 Dec 23 20:40 bin2hex.scm
    -rwx------+ 1 kbk None   1176 Dec 23 20:40 builtin_proto.h
    -rwx------+ 1 kbk None  28676 Dec 23 20:40 builtins.c
    -rwx------+ 1 kbk None  18298 Dec 23 20:40 ccall.cpp
    -rwx------+ 1 kbk None  22665 Dec 23 20:40 cgutils.cpp
    -rwx------+ 1 kbk None 105230 Dec 23 20:40 codegen.cpp
    -rwx------+ 1 kbk None   2902 Dec 23 20:40 debuginfo.cpp
    -rwx------+ 1 kbk None   3020 Dec 23 20:40 dlload.c
    -rwx------+ 1 kbk None  40356 Dec 23 20:40 dump.c
    drwx------+ 1 kbk None      0 Dec 26 22:28 flisp
    -rwx------+ 1 kbk None  24013 Dec 23 20:40 gc.c
    -rwx------+ 1 kbk None  56958 Dec 23 20:40 gf.c
    -rwx------+ 1 kbk None   2762 Dec 23 20:40 h2j.cpp
    -rwx------+ 1 kbk None  10436 Dec 23 20:40 init.c
    -rwx------+ 1 kbk None  13198 Dec 23 20:40 interpreter.c
    -rwx------+ 1 kbk None  41399 Dec 23 20:40 intrinsics.cpp
    -rwx------+ 1 kbk None   5983 Dec 23 20:40 jlfrontend.scm
    -rwx------+ 1 kbk None  96125 Dec 23 20:40 jltypes.c
    -rwx------+ 1 kbk None    236 Dec 23 20:40 jltypes_internal.h
    -rwx------+ 1 kbk None  48177 Dec 23 20:40 julia-parser.scm
    -rwx------+ 1 kbk None  70182 Dec 23 20:40 julia-syntax.scm
    -rwx------+ 1 kbk None   4965 Dec 23 20:40 julia.expmap
    -rwx------+ 1 kbk None  39339 Dec 23 20:40 julia.h
    -rwx------+ 1 kbk None   8301 Dec 23 20:40 match.scm
    -rwx------+ 1 kbk None     63 Dec 23 20:40 mk_julia_flisp_boot.scm
    -rwx------+ 1 kbk None   9671 Dec 23 20:40 module.c
    -rwx------+ 1 kbk None    567 Dec 23 20:40 newobj_internal.h
    -rwx------+ 1 kbk None   2189 Dec 23 20:40 os_detect.h
    drwx------+ 1 kbk None      0 Dec 26 22:28 support
    -rwx------+ 1 kbk None  14114 Dec 23 20:40 sys.c
    -rwx------+ 1 kbk None   3676 Dec 23 20:40 table.c
    -rwx------+ 1 kbk None  19011 Dec 23 20:40 task.c
    -rwx------+ 1 kbk None  15057 Dec 23 20:40 toplevel.c
    -rwx------+ 1 kbk None   1407 Dec 23 20:40 utils.scm
    
    

    なにやら .scm という拡張子のファイルが幾つか。 そのうちの mk_julia_flisp_boot.scm

    (load "jlfrontend.scm")
    (make-system-image "julia_flisp.boot")
    
    

    さらに jlfrontend.scm

    (load "./flisp/aliases.scm")
    (load "utils.scm")
    (load "match.scm")
    (load "julia-parser.scm")
    (load "julia-syntax.scm")
    
    ;; exception handler for parser. turns known errors into special expressions,
    ;; and prevents throwing an exception past a C caller.
    (define (parser-wrap thk)
      (with-exception-catcher
       (lambda (e)
         (if (and (pair? e) (eq? (car e) 'error))
    	 (let ((msg (cadr e))
    	       (pfx "incomplete:"))
    	   (if (and (string? msg) (>= (string-length msg) (string-length pfx))
    		    (equal? pfx
    			    (substring msg 0 (string-length pfx))))
    	       `(continue ,msg)
    	       e))
    	 (begin
    	   (newline)
    	   (display "unexpected error: ")
    	   (prn e)
    	   (print-stack-trace (stacktrace))
    	   #f)))
       thk))
    
    ;; assigned variables except those marked local or inside inner functions
    (define (find-possible-globals e)
    (略)
    ; run whole frontend on a string. useful for testing.
    (define (fe str)
      (expand-toplevel-expr (julia-parse str)))
    
    

    いかにも Scheme っぽい。 んじゃあこれをどうやって実行するのか。 makefile にこんなエントリが

    julia_flisp.boot.inc: julia_flisp.boot flisp/libflisp.a
    	$(QUIET_FLISP) flisp/flisp ./bin2hex.scm < $< > $@
    
    julia_flisp.boot: julia-parser.scm julia-syntax.scm \
    	match.scm utils.scm jlfrontend.scm mk_julia_flisp_boot.scm flisp/libflisp.a
    	$(QUIET_FLISP) flisp/flisp ./mk_julia_flisp_boot.scm
    
    

    さきほどの src の下に flisp というディレクトリがあったので潜る

    total 373
    -rwx------+ 1 kbk None  1824 Dec 23 20:40 Makefile
    -rwx------+ 1 kbk None  2039 Dec 23 20:40 aliases.scm
    -rwx------+ 1 kbk None   352 Dec 23 20:40 bootstrap.sh
    -rwx------+ 1 kbk None 10455 Dec 23 20:40 builtins.c
    -rwx------+ 1 kbk None  2835 Dec 23 20:40 color.lsp
    -rwx------+ 1 kbk None 22293 Dec 23 20:40 compiler.lsp
    -rwx------+ 1 kbk None 41573 Dec 23 20:40 cvalues.c
    -rwx------+ 1 kbk None 11357 Dec 23 20:40 equal.c
    -rwx------+ 1 kbk None   314 Dec 23 20:40 equalhash.c
    -rwx------+ 1 kbk None    91 Dec 23 20:40 equalhash.h
    -rwx------+ 1 kbk None 36023 Dec 23 20:40 flisp.boot
    -rwx------+ 1 kbk None 69295 Dec 23 20:40 flisp.c
    -rwx------+ 1 kbk None 12015 Dec 23 20:40 flisp.h
    -rwx------+ 1 kbk None  1464 Dec 23 20:40 flmain.c
    -rwx------+ 1 kbk None 12795 Dec 23 20:40 iostream.c
    -rwx------+ 1 kbk None  2269 Dec 23 20:40 julia_extensions.c
    -rwx------+ 1 kbk None   542 Dec 23 20:40 mkboot0.lsp
    -rwx------+ 1 kbk None    93 Dec 23 20:40 mkboot1.lsp
    -rwx------+ 1 kbk None  5323 Dec 23 20:40 opcodes.h
    -rwx------+ 1 kbk None 22266 Dec 23 20:40 print.c
    -rwx------+ 1 kbk None 20806 Dec 23 20:40 read.c
    -rwx------+ 1 kbk None 13016 Dec 23 20:40 string.c
    -rwx------+ 1 kbk None 29178 Dec 23 20:40 system.lsp
    -rwx------+ 1 kbk None  5694 Dec 23 20:40 table.c
    -rwx------+ 1 kbk None  2319 Dec 23 20:40 types.c
    -rwx------+ 1 kbk None  7984 Dec 23 20:40 unittest.lsp
    
    

    自前でインタープリター抱えてるっぽい? flisp/flip.c

    /*
      femtoLisp
    
      a compact interpreter for a minimal lisp/scheme dialect
    
      characteristics:
      * lexical scope, lisp-1
      * unrestricted macros
      * data types: 30-bit integer, symbol, pair, vector, char, string, table
          iostream, procedure, low-level data types
      * case-sensitive
      * simple compacting copying garbage collector
      * Scheme-style varargs (dotted formal argument lists)
      * "human-readable" bytecode with self-hosted compiler
    
      extra features:
      * circular structure can be printed and read
      * #. read macro for eval-when-read and readably printing builtins
      * read macros for backquote
      * symbol character-escaping printer
      * exceptions
      * gensyms (can be usefully read back in, too)
      * #| multiline comments |#, lots of other lexical syntax
      * generic compare function, cyclic equal
      * cvalues system providing C data types and a C FFI
      * constructor notation for nicely printing arbitrary values
    
      by Jeff Bezanson (C) 2009
      Distributed under the BSD License
    */
    

    femto。そりゃあいかにも小さそうだ フェムト - Wikipedia

    ■_

    2012年12月25日

    ■_

    LINK
    を買ったのですが、「サブマリン707」が良かったけどこれは聴いた覚えがなかった。 過去OVAでリリースされたときに使われたものかと思ったけど 曲リスト見ると CR って頭についてるからパチンコ? CRサブマリン707R(高尾):パチンコ図鑑:777@nifty) とくに、アニソンの帝王・串田アキラ氏によるオリジナルテーマソングが2曲搭載されている。 おー。

    LINK
    そしてこっちは買い損なった○| ̄|_ まさにこれ→ 「ガールズ&パンツァー」オリジナルサウンドトラック発売 → やっぱり即日完売アキバ全滅 - アキバBlog ま、買いに行ったのはアキバじゃなかったんですが。 にしたって本来の発売日前日に瞬殺とは。

    このニュース → “健診受けないとボーナス減額” NHKニュース 良い悪いはとりあえずおいといて、 飴と鞭の話を思い出しました。これね。 LINK

    ■_

    【キーマン列伝】「初」づくしのコンピュータ発明者 ~コンラート・ツーゼ氏 | エンタープライズ | マイナビニュース 今回はツーゼですか。 「Brains」でも取りあげられてますが、 新・栄光なき天才たちでも取りあげられてます。 新・栄光なき天才たち - Wikipedia

    ■_

    あとは /. くらい? 「GNU sed 4.2.2」リリース――メンテナはFSFへの異議を唱えて辞任 - SourceForge.JP Magazine : オープンソースの話題満載

    ■_

    2012年12月24日

    ■_

    ま、いろいろと。

    ■_ ふと思い出したこと

    文字描画関連その4 - mirichiの日記

    文字描画関連その4 - mirichiの日記
    
        ZeroMemory( &logfont, sizeof(logfont) );
        logfont.lfHeight          = NUM2INT( size );
        logfont.lfWidth           = 0;
        logfont.lfWeight          = weight;
        logfont.lfItalic          = italic;
        logfont.lfCharSet         = DEFAULT_CHARSET;
        logfont.lfQuality         = ANTIALIASED_QUALITY;
    

    まんなかあたりの構造体の設定がD3DXとWin32用それぞれのフォント情報構造体となっている。 何を設定したらどうなるというのはヘルプを見てもらえばわかる。キャラセットの指定が DEFAULT_CHARSETとなっているのはシステムのキャラセットを使うという意味で、外国語版の Windowsになると選択されるキャラセットが変わるからマイクロソフト的には推奨していない。 なぜこうしているのかというと、SJISを指定すると外国の人が母国語を使えなくなるからだ。 エラーメッセージやマニュアルが日本語のライブラリを外国人が使うのか、というと、 これが一度そういうことが実際にあって、最初SJISだったから「タイ語が表示できません」 みたいな問い合わせがきて対応するために変えたのだ。世界は広いので色んなことが起こる。

    自分はこの逆のパターンを経験したことがあったりする。 過去に Mark Hammond 氏が、Windows 用のPythonの拡張を公開したときにそれを試したのだけど、 一箇所、 まさに同じ部分の記述が原因で日本語文字セットが選択できなかったということがあったのね。 メールでこれこれこういう理由でこの書き方には問題があって、 こう修正してくれれば漢字も表示できるようになっておいらハッピーなんだけど とかお願いしたらそうしてくれた。ような覚えがある。 Mark Hammond's Python Extensions

    ■_

    2012年12月23日

    ■_

    積ん読がー

    とある本を読んでたんですけどね。 ええ、いわゆる「自己啓発本」の類のものです。 でまあうなずいたり首をかしげたりしながら読んでたんですが、 こういうのに当たってしまい中断。 書名とか出した方が良いのかねえ「引用」のためには。

    プログラミングに興味があれば、オブジェクト指向の技術を習得することはオススメだ。 ITエンジニアと言えば高度な数学が必須と考えてしまうが、 数学ができなくても一流のITエンジニアになれる。もちろん、3Dのゲーム屋 機械制御には数学が必要だが、現在のウェブを中心としたITは、 コンピューター特有の二進数の世界から離れようとしている。 そのカギを握っているのが、すでにソフトウェア開発において主流となっているオブジェクト指向という技術。 これは数理的思考から極力離れて、概念と概念を組み合わせるようにしてソフトウェアを開発する技術のことだ。 いわゆるプログラム言語もその流れの中にある。 オブジェクト指向言語の代表格はJava。 Android(アンドロイド)のアプリはJavaで書かれており、 iPhoneのアプリもObjective-Cという、Javaに近縁の言語で書かれている。

    オブジェクト指向の技術を基礎からしっかりと学ぶ機会は実は少ない。 名門大学の理科系でも体系的に基礎から学ぶことはできない。 この教育法の構築に取り組んできた××××氏、および ××氏の下、実際に授業で学生を育ててきた○○○○氏 から学ぶことをオススメする。

    プログラミングの本じゃない、全体でも触れているのはここくらいのようなので なんともコメントのしようがないんですが、 …でもなんか違いますよねえ?

    ■_ 今年の三冊

    なんか新聞の書評欄が評者連の選ぶ今年の三冊みたいな内容になっていたので、 それじゃあ自分もなんか考えようとして、えいやでこの三冊にしました (リーダブルコードなんかはほっといてもそこら中で挙げられるだろう)。
    チューリングを読む コンピュータサイエンスの金字塔を楽しもう 素数夜曲: 女王陛下のLISP MAKERS―21世紀の産業革命が始まる

    つーても後ろ二つを挙げる人は少なくないだろうなあ…

    ■_ すきゃな

    面白そう スタンドスキャナー(USB書画カメラ・A3対応・500万画素・LEDライト付) 400-CMS013【サンワサプライ直営 | サンワダイレクト】

    ■_

    すでに訳やら解説やらついてますがそんなことはお構いなしに。 本の虫: 自由ソフトウェア財団が技術的な指導力を失いつつある

    GNU sed 4.2.2 released, maintainer resigns | Hacker News に長文のコメントがあったのでまずはそれから。

    For a time I too was the maintainer for GNU sed. Part of that time I was paid ... | Hacker News
    
    For a time I too was the maintainer for GNU sed. Part of that time I was paid by the FSF for that
    work (this was a long time ago, when the FSF had a small staff working directly on the Hurd and GNU).
    When I started, GNU sed was very incompatible with the relatively new Posix standard for sed. When I
    finished, it was less incompatible. It was during this same time that I started work on a new regexp
    engine for sed but that was not done by the time I stopped work on sed.
    
    わたしもまた、一時期 GNU sed の maintainer であり、FSF からその作業に対して金銭を受け取っていました。
    わたしが作業を始めたとき、GNU sed には新しい POSIX 標準の sed とは非互換な部分がたくさんありました。
    わたしが maintainer を辞したとき、その非互換はずっと少ないものになっていました。
    同時期にわたしは sed のための新しい正規表現エンジンの作業を始めたのですが、
    それはわたしが sed に対する作業を止めてしまったので完了することはありませんでした。
    
    From that position I was able to observe fairly closely how the GNU project was being led,
    technically, in the days before the Linux kernel had had any real impact.
    
    そういったポジションから Linux カーネルが any real impact を持つに到る以前の時期に、
    GNU プロジェクトが技術的にどのように指導されていたのか
    わたしは fairly closely に意見を述べることができました。
    
    
    RMS's technical leadership was, I think, not very skilled. Let me explain what I mean:
    
    わたしの見るところ、RMS の技術的なリーダーシップというものは非常に優れたものではありません。
    それについて詳しく説明します:
    
    If you were working on a program and sought his advice, he was very good at zeroing in on the issues
    and giving excellent advice. And sometimes if you were working on a program and he noticed something
    he didn't like about your approach, his criticisms were very good. People used to tell stories about
    how good a programmer he was and those stories were basically all true. He was sharp and I assume
    that, in spite of his age, he still is.
    
    もしあなたが何かのプログラムの作業をしていて彼 (RMS) にアドバイスを求めたなら、彼は問題に対して良い
    位置に立ってすばらしいアドバイスをくれるでしょう。
    #at zeroing ~がちと
    そしてもしあなたがあるプログラムの作業しているときに彼があなたのアプローチに対してなにか(彼にとって)
    好ましくないものに気づいたときには、彼の criticisms がとても良いものであったこともありました。
    人々は彼がいかにすばらしいプログラマーであったのかを語っていましたし、その内容は基本的にすべて真実で
    した。彼は sharp であったし、彼はその年齢の割には今でもそうであるとわたしは思っています。
    
    
    The problem was that he showed no effective capacity to really lead the larger meta project of
    pulling together a complete OS. He tried -- with projects like autoconf and documents like the GNU
    coding standards. And he kept a list of programs that, once we had those (he reckoned) along with a
    kernel -- GNU would be "done". That was about the extent of his "big picture" for
    project management.
    
    問題だったのは、一緒になって完全な OS を目指すより大きなメタプロジェクトを本当に指導するための
    effective capacity を彼が一切を見せなかったということです。autoconf のようなプロジェクトや GNU
    conding standad のようなドキュメントでもって彼はそれを試みはしました。
    そして彼は
    kept a list of programs that, once we had those (he reckoned) along with a kernel
    -- GNU would be "done". 
    それはつまり、彼の考えるところのプロジェクトマネージメントのための「big picture」(全体像、概観)
    の extent (大きさ、範囲)であったのです。
    
    
    Mainly, he concentrated on advocating for the idea of software freedom. I think the gambit was that
    if enough people demand their freedom, the project of organizing a GNU project would become easier.
    I don't think this gambit worked.
    
    主として彼は、ソフトウェアの自由という考え (the idea of software freedom) の advocate (主張する、
    喧伝する) に集中していました。bもし十分な人数の人たちが自分たちの自由を要求したのであれば、GNU
    プロジェクトを organize するためのプロジェクトはもっと簡単な gambit であったろうとわたしは確信
    しています。わたしはこの gambit がうまくいったとは思えません。
    
    
    That was never a clear enough, coherent enough, or informed enough vision of the complete GNU
    project and, consequently, GNU has never really successfully gelled. You can grab some "100% libre"
    distributions, these days, but only barely. There is no sustainable culture and technical
    organization there ("yet", I hope).
    
    GNU プロジェクトの完全なビジョン (vision of the complete GNU project) は明確さが不十分であり、十分
    coherent (筋の通った、首尾一貫した) なものでもなく、inform (周知) も不十分なものでした。そしてその
    結果として、GNU は決して really successfully に gelled しなかったのです。
    今日あなたは、いくつかの「100% libre」な distribution をいくつか grab できますが、
    それだけです。そこには sustainable な culture もなければ techical organization もありません
    (まだ存在しない。であることを望みますが)。
    
    
    The RMS failure I see is a failure at being a community organizer of GNU programmers. A lot of
    people got the vague idea of a GNU project. Many of us were happily recruited to the goal. But
    everyone I worked with at the FSF, including me, kind of went off in various incoherent directions
    -- doing what we guessed would help and that seemed interesting to us. We never "pulled together
    as a team" and, in the GNU project, that still doesn't happen.
    
    わたしの考える RMS の失敗とは、GNU プログラマーの community organizer であることに失敗したことです。
    多くの人が GNU プロジェクトの漠然とした考え (vague idea) に引きつけられました。
    わたしたちの多くはその目標のために幸運にも recruit されました。
    しかしわたしと一緒に FSF で働いた人たちは皆、わたし自身も含めて、
    さまざまの一貫性のない direction の中で去っていったのです。
    -- doing what we guessed would help and that seemed interesting to us.
    わたしたちは GNUプロジェクトに「チームとしてまとめて採用されたこと」は決してありませんでしたし、
    今までにそのようなことはなかったのです。
    
    The GNU project gradually accumulated a heck of a lot of very good "parts" but could
    never gel. The first three world-changing releases (GDB, GCC, and Emacs) really startled people. The
    various shell/text utilities in those early days spread because they were often usefully a little
    bit better than the proprietary "native" equivalents shipped by Sun, Dec, AT&T, etc.
    People sat up and took notice but behind the scenes the project of setting up a lasting "complete OS"
    project that would promote software freedom for all users ... never quite came together.
    
    GNU プロジェクトはたくさんの非常に優れた「パーツ」を徐々に集めていきましたが、
    それを gel することはできませんでした。
    最初の三つの world-changing releases (GDBとGCC、Emacs) は本当に人々をびっくりさせました。
    数多くのシェルユーティリティやテキストユーティリティが初期には広まりましたが、それは
    Sun や Dec、AT&T などが出荷していた proprietary "native" equivalents よりも
    格段に便利で、すぐれているのがしばしばあったからです。
    人々は GNU の存在に気づき注目しましたが、
    その背後にあったユーザー全てのためのソフトウェアの自由を促進する
    「完全なOS」を作りあげるプロジェクトだということは忘れられてしまっていたのです
    #超訳モード全開
    
    
    The "open source" people -- who I also later worked for, because I made a mistake in
    trusting them at their personal word to me -- seemed at first like they might help bring resources
    to the problem. In fact, what they mostly concentrated on was creating proprietary products using
    the free software "parts" from the incomplete GNU project. In the early days they sought
    to monopolize some of the key labor for the GNU project (and they succeeded, because they paid much
    better than RMS and many of those particular hackers didn't really give a shit about the freedom of 
    users). As the "open source" industry matured it perfected its model of a perpetually
    incomplete / inadequate free software OS as a source of inspiration to enthusiastic youngsters,
    realized in practioce as a perpetually freedom-denying set of proprietary OS products. Companies
    like Red Hat and Canonical realized that they could exploit the deficit of community organizing to
    charge high rents for libre software, so long as they don't care seriously about the freedom of
    users. That's what they did and what they do.
    
    
    So in my view, RMS was not good (and still is not good) at leading the GNU project -- 
    but the real tragedy is brought on by the glad-handing, deep-pocketed, "open source"
    rentiers who place concern for their own profit above the freedom of the community.
    
    

    ダメだ眠くて訳をつけてられない

    で問題のメール。 Paolo さんって何回かメールのやり取りしたことあるはずだなあ(sed の件で)。 こんなにたくさんのものに関わってたのか。

    GNU sed 4.2.2 released, and a rant from the maintainer
    
    From: Paolo Bonzini 
    Subject: GNU sed 4.2.2 released, and a rant from the maintainer
    Newsgroups: gmane.comp.lang.smalltalk.gnu.general, gmane.comp.gnu.utils.bugs
    Date: 2012-12-22 16:10:19 GMT (9 hours and 3 minutes ago)
    
    (略)
    
    I am less pleased to announce that I am resigning from maintenance of GNU sed (after 8 years) as
    well as GNU grep (after 3).  I have also given up commit access to Autoconf, Automake, Libtool,
    gnulib, libsigsegv and Bison.
    
    For fellow GNU maintainers and to some external observers, the relation between this announcement
    and Nikos Mavrogiannopoulos's note ("gnutls is moving", http://lwn.net/Articles/529558/ )
    will not be a surprise.  Like Nikos, I do support the ideas behind the FSF as strongly as ever;
    and I am grateful to the FSF staff for the support I have had since I joined the GNU project in
    1999.  However, like him I am in major disagreement with some decisions of the FSF and of Richard
    Stallman.
    
    This boils down to these three points:
    
    1) To put it somewhat bluntly, the only way for a GNU project to be a leader in its field is to
    _ignore_ whatever recommendations come from the FSF.  I don't think Stallman was involved when the
    GNU Compiler Collection switched from C to C++, or when GNOME chose JavaScript as the extension
    language for gnome-shell.
    (略)
    
    2) GNU is doing too little for the FSF, and the FSF is doing too little for GNU.
       (GNU が FSF のために行っていることはあまりに少なく、FSF が GNU のために行っていることもあまりに少ない)
    (略)
    
    3) Attaching the GNU label to one's program has absolutely no attractiveness anymore.
       (誰かのプログラムに GNU の名を冠することはもはやなんの魅力ももたらさない)
    (略)
    
    Barring any large change in policy and momentum from GNU, these three reasons are bound to be the
    first step towards the irrelevance of GNU.  And barring any such policy change, I have no reason to
    be part of GNU anymore.
    
    I didn't resign commit access for two projects only: GCC and GNU Smalltalk.  I still have not
    decided what to do about GNU Smalltalk. Work and family obligations forced me away from the project
    that introduced me to free software back in 1996.  I would like to move it within the GNOME umbrella,
    but again that is not possible without devoting serious development effort to it.  Suggestions are
    welcome.
    
    
    For more information about the vicissitudes of gnutls, you could read the good summary at Linux
    Weekly News.  Non-subscribers can access it at http://lwn.net/SubscriberLink/529522/854aed3fb6398b79/
    (and are urged to support LWN, of course!).
    
    Thanks for reading this.
    
    Paolo
    

    うおっ、redditでも伸びてる (これを書いている時点で400くらい)

    ■_ Better Python APIs

    REPL にやさしいAPIで。 なかなか面白かった。

    Better Python APIs | Eventual Consistency
    
    Better Python APIs
    Sun 09 December 2012
    
    Python comes with a large number of built-in functions, operators and keywords. They make working
    with data structures and built-in types very easy, but usually when we define our own data types
    (classes) we also tend to come up with our own ways to manipulate and consume our data.
    
    One of the nice things in python, is that we don't have to. We can use "underscore methods"
    to make our classes compatible with the built-in functions and operators.
    
    This makes our code easier to use and does a better job of hiding our nasty, complex implementation
    from the user. More importantly, it makes our code more intuitive. This means that in many cases
    our API will just do what the user expected it to do. I call this Code UX, and we should be working
    on constantly improving it.
    
    Here are a few practical examples for doing that:
    
    Make your code REPL friendly
    
    Python has an awesome REPL shell, which I use all the time to introspect code and to 
    play around with implementations before finally adding them to my code base. I use 
    BPython or IPython instead of the regular Python shell since they offer many niceties 
    such as auto-completion, syntax highlighting, history, and in-line documentation. Many 
    of the Python developers I know use these tools daily.
    
    So how can we make our code easier to use in such an environment?
    
    以下略
    
    
    © 2012 Oz Katz. Subscribe to this blog
    
    

    ■_

    Isaac Asimov - The Foundation Trilogy | Hacker News Isaac Asimov - The Foundation Trilogy : Isaac Asimov : Free Download & Streaming : Internet Archive

    ■_

    お約束ネタ Is ruby Call by Reference or Call by Value? : ruby

    ■_

    2012年12月22日

    ■_

    2012 年ももうすぐ終わりということで、このページのサブタイトル? も考えないとだわw

    買った
    はじめてのOSコードリーディング ~UNIX V6で学ぶカーネルのしくみ (Software Design plus) デバッグの理論と実践 ―なぜプログラムはうまく動かないのか

    2013年の抱負/目標
    どうすっかねー。 立てても以下略な気がするし、 といってなにもしないというのもねえ。

    ■_ ATDD

    なんか面白そうな本が。 でもこの表紙の感じだとすぐに訳されそうな気がしないでもない :) Book Review: ATDD By Example

    Book Review: ATDD By Example
    
    The purpose of ''ATDD By Example'' was to be an introductory hands-on guide to implementing and
    successfully applying Acceptance Test Driven Development (ATDD) from zero.
    
    After the first couple of pages the reader will be immersed in a specification workshop and in
    the next chapter facing cucumber scenarios and test automation code in Ruby. The author
    illustrates with a small web app example how to go about promoting shared understanding with
    examples and automating tests in a collaborative manner between testers and developers. Other
    good practices exemplified in this part of the book include the business focus when defining
    examples (thus avoiding detailing of the user interface interaction in the specifications) and
    applying the Test-Driven-Development (TDD) mantra (fail/pass/refactor) to evolve the test 
    automation code.
    
    以下略
    
    

    これか(とここぞとばかりにアサマシ貼り付け)。Kindle 版もあるのね
    ATDD by Example: A Practical Guide to Acceptance Test-Driven Development (Addison-Wesley Signature Series (Beck)) ATDD by Example: A Practical Guide to Acceptance Test-Driven Development (Addison-Wesley Signature Series (Beck))

    ■_ うりさばく

    「Kindle Paperwhite 3Gを3日で売りさばいた理由」 - カレーなる辛口Javaな転職日記 経由 Kindle Paperwhite 3Gを3日で売りさばいた理由 - bizmash!:@nifty

    「売りさばく」の使い方がおかしいような? うりさばく【売り捌く】の意味 - 国語辞書 - goo辞書 [動カ五(四)]商品を広い範囲に上手に売る。「在庫品を―・く」

    ■_ ATM

    変わったATM端末のUI - Nothing ventured, nothing gained. 昨日のATM端末のUIを勝手に添削してみた - Nothing ventured, nothing gained.

    そういや、みずほは全部のATM端末ではないけど、 暗証番号入力時のテンキー配置をランダムにするのがあったような。 指が番号を覚えているので、最初に遭遇したときにえらくとまどった覚えが。 三菱東京 UFJ は「(キー配置を)シャッフルする」とかいうボタンが表示されてた。 こっちも全部がそうかは知らない。

    ■_ ご長寿スレ

    ム板にもこんなご長寿スレが。でももうすぐ完走しそう。 機械語なら俺に質問しろ!

    1 デフォルトの名無しさん [] 02/10/22 21:04 ID: Be:
    
    977 931 [sage] 2012/12/22(土) 13:08:23.06 ID: Be:
    

    最近の話題がなんか面白そう。

    ■_

    ■_

    wishlist に載せても誰もくれないから自分で買った ○| ̄|_ >もれすきん

    プログラミングセミナーは明倫館のワゴンセールで :)

    2012年12月21日

    ■_

    冬至。ゆず湯入った。

    ■_ JaSST

    JaSSTソフトウェアテストシンポジウム-JaSST'13 Tokyo タイムテーブル 来年1月の東京開催のプログラムを見ていましたらば興味をひかれるものがいくつか

    たとえばこれ。

    JaSSTソフトウェアテストシンポジウム-JaSST'13 Tokyo タイムテーブル
    
    セッション C5-3 (30分)概要
    「なぜバグ曲線は収束するのか
    ~Microsoft Excelを使って考えてみる~」
    
        丹羽 岳雄 (日本総合研究所)
    
    

    JaSSTソフトウェアテストシンポジウム-JaSST'13 Tokyo セッション概要 もうひとつ挙げるとこれ

    JaSSTソフトウェアテストシンポジウム-JaSST'13 Tokyo セッション概要
    
    「ソフトウェア・テスティングについて -無形労働の視点から-」
    
        岸田 孝一 (SRA)
    
        セッションの内容
    
        これまで、ソフトウェア・テスティングは、もっぱら与えられた仕様との整合性を中心に議論されてきた。
        いいかえれば、モノとしてのソフトウェアの品質を向上させるという「プロダクト指向」のアプローチで
        あった。しかし、ソフトウェアの価値は、プロダクトのカタチではなく、そこに内包されたカタチのない
        情報や文化がどれだけ豊富であるかによって評価される。その意味で、ソフトウェア開発という仕事は、
        ファッション産業や映像・音楽製作と同じような無形労働(Immaterial Labor)の一種である。
    
        われわれが扱うほとんどのソフトウェアは、現実世界におけるアプリケーションのプロセスを支援する道
        具として作られるが、現実はたえず変化し続けるので、それにどう適応できるかという「プロセス指向」
        の考え方が重要になってくる。現実世界は無限の要素から構成されているが、仕様はどんなに精密に記述
        したとしても有限のページ数しかない。つまり、与えられた仕様は最初から不完全なのであり、それとの
        整合性だけを考えるだけでは十分とはいえないのである。
    

    岸田さんの話は聞きたい。 この本の影響もあるかな
    ソフトウェア・グラフィティ

    ↑の本文中に出てきた昔岸田さんが書いたって本も読んでみたいのよねえ。 Amazon.co.jp: 岸田孝一

    にしても、 (会社の金で)行きてー >JaSST (有給休暇使わなくて済むしなw)

    ■_ Tcl/Tk

    忘れた頃のバージョンアップ Tcl/Tk 8.6

    Tcl/Tk 8.6
    
    Highlights of Tcl 8.6
    
        Object Oriented Programming: The commands of the TclOO package are now part of Tcl itself.
        This gives Tcl a built-in object system that is fully dynamic, class-based, and includes
        advanced features such as meta-classes, filters, and mixins.
    
        New version 4 of the popular package Itcl (aka incr Tcl) is also included, now built on a
        TclOO foundation, granting support for some traditional OO Tcl programming out of the box as well.
    
        Stackless Evaluation: The evaluation of many levels of nested proc calls are no longer
        implemented as a stack of nested C routine calls. This revision in the internal implementation
        of Tcl evaluation makes deep recursion in Tcl scripts safe to do. But there's more...
    
        This new implementation enables a collection of new commands, coroutine, tailcall, yield, and
        yieldto that provide profound new capabilities and models of concurrency to Tcl scripts.
    
        Enhanced Exceptions: New commands try and throw and a wealth of new -errorcode values enable far
        more precise trapping and handling of exceptions using a familiar construct.
    
        Batteries Included: Tcl delivers in the pkgs subdirectory a bundled collection of third-party
        packages built and installed along with Tcl.
    
        Thread-enabled Operations: A thread-enabled default build, a bundled Thread package, and new
        command interp cancel make Tcl 8.6 ready for your multi-threaded programming tasks.
    
        SQL Database Powered: The bundled Tcl DataBase Connectivity (tdbc) interface package makes it
        possible to write your SQL database-powered scripts decoupled from any particular database
        engine. The bundled sqlite3 and tdbc::sqlite3 packages supply a powerful and popular SQL
        database engine ready to use.
    
        IPv6 Networking: Both client and server sockets support IPv6 where platform support exists.
    
        Built-in Zlib Compression: New command zlib provides utilities to handle compression of data
        and streams.
    
        List Processing: New commands lmap and dict map enable the elegant expression of transformations
        over Tcl containers.
    
        Stacked Channels by Script: New commands chan push and chan pop expose the power of stacked
        channels without the need to write C code.
    
        Additional New Features: Temporary file creation, enhancements to list sorting and setting,
        dict filtering, half-close of bidirectional channels, encoding and decoding of binary
        sequences, finer control over load, and many many more. 
    
    Highlights of Tk 8.6
    
    以下略
    

    yield とかあるぞ。

    ■_ >Erik Meijer discusses programming language design, effects and some web programming problems

    InfoQ から。 Erik Meijer discusses programming language design, effects and some web programming problems

    Erik Meijer discusses programming language design, effects and some web programming problems
    
    Summary
    
    Erik Meijer distinguishes between two kinds of programming languages, pure functional and all the
    others. He emphasizes some issues regarding mixing higher order programming with effects. Erik then
    talks about the nature of Javascript, and true problems we need to solve in web programming. 
    
    Erik Meijer discusses programming language design, effects and some web programming problems
    
    So is it like as bad as the difference between dynamic scope and lexical scope in a way, if we can
    see it in some way?
    
    That's a very good point, in some sense what you get is, the difference between dynamic and lexical
    scope is that I can see which variable was captured because that is lexical scope but you still get
    the dynamic effect that when you call the closure it happens in a dynamically very different spot.
    Maybe you could argue that dynamic scope is better because at that point it finds the kind of
    variable binding as late as possible. But I don't know, now I am working up ten eyes, people will
    be saying “oh, Eric Meijer likes dynamic scope”, I don't know, I do like dynamic scope actually 
    because in Haskell we added this thing implicit parameters which is really what dynamic scoping
    gives you. When you have a dynamically scope variable it is like an implicit parameter and then
    when you use it, it will go and find where the binding is. Scala has something similar with
    implicits; in Haskell you have that, so I think there is usage for that as well.
    
    Sadek: So is it like in a way dynamic scoping is back? also Clojure has something like 
    implicit parameters, like sort of type classes.
    
    

    お、なんか面白そう?

    ■_


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

    ホームへ


    リンクはご自由にどうぞ

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