タグ

2012年3月8日のブックマーク (3件)

  • The 'U.N.Owen' is her? - FC2 BLOG パスワード認証

  • 契約プログラミング - プログラミング言語 D (日本語訳)

    "契約" は、大きなプロジェクトのプログラミングの手間を減らす、 画期的な技術です。契約は、事前条件・事後条件・エラー・不変条件、 からなる概念です。 C++でも言語の変更無しに契約は実現できますが、 扱いにくく、 一貫性のないものになります。 言語レベルで契約のサポートを組み込むことには、こんな利点があります: 契約の記述の一貫性 ツールのサポート 契約の記述に基づく、 コンパイラによるよりよいコード生成 契約の管理や強制の簡単化 契約の継承 "契約"は、考え方は簡単で、常にtrueにならなくてはいけない式、のことです。 trueでなければ契約が破られていて、つまり定義から、プログラムにバグがあることがわかります。 契約はプログラムの仕様の一部分で、それをドキュメントではなくコード自身に書くようにした、 とも言えます。プログラマの皆さんはご存じのように、ドキュメントというのは不完全で、

    eiji8pou
    eiji8pou 2012/03/08
    全ての関数の入口と出口に関所を設けて吟味するとな!?
  • Clojureの作者が作ったデータベースDatomicが凄い

    プログラミング言語Clojureの作者Rich Hickey氏率いるClojure HackerのチームがDatomic(デートミックと発音するらしい)というデータベースをリリースしました。これが何やらとてつもないです。10年先を行ってる技術じゃないでしょうか。 まだ番サービスは始まっていませんが開発環境用のライブラリが配布されています。 Datomicは斬新なアーキテクチャなので一言で説明するのはとても難しいです。 私が理解できたことを簡単に説明します。 2014/1/20追記 ライセンスモデル、サポートストレージ、サービスとしてではなく独立して使用する形になるなど記事作成時の内容から色々変更が合った部分を更新しました。 変更不可なAppend-onlyデータベース 従来のデータベースで、あるレコードを変更するというのはそのレコードに対応した場所があり、そこのデータを書き換えるというこ

    eiji8pou
    eiji8pou 2012/03/08
    これは一体なんなんだ。