タグ

関連タグで絞り込む (0)

  • 関連タグはありません

タグの絞り込みを解除

Programmingとblogとocamlに関するjjzakのブックマーク (5)

  • osiire’s blog

    唐突にlock-freeをAlloyで書いてみたくなったので書いた。 what is lock-free 冬のLock free祭り safe from Kumazaki Hiroki www.slideshare.net kumagiさんの資料によると、lock-free stackはリンクリストみたいなもので、先頭へのポインタをCAS(Compare and Swap)で切り替えるらしい。 素直にAlloy化するとこうなる。 sig Data {} // linked elements of stack. sig StackElem { data:Data , next:lone StackElem // edge dosen't have next element. } { no next & this // prevent self pointing. } sig HeadPoin

    osiire’s blog
  • kamonama@Blogger

    defclass の slot には、:type オプションを指定することができる。 期待としては、:type オプションを指定した場合、指定した型を満たさない値を代入しようとすると、エラーとなって欲しい。ところが、SBCL ではそのようにならない。 (defclass foo () ((x :accessor foo-x :initarg :x :type integer))) (let ((x (make-instance 'foo :x 1))) (setf (foo-x x) :foo) (foo-x x)) ; => :foo defclass と slot へのアクセスを optimize safety で評価すると、期待する挙動となる。 (locally (declare (optimize safety)) (defclass foo () ((x :accessor fo

  • 浜村拓夫の世界 - FC2 BLOG パスワード認証

    ブログ パスワード認証 閲覧するには管理人が設定した パスワードの入力が必要です。 管理人からのメッセージ Website under construction 閲覧パスワード Copyright © since 1999 FC2 inc. All Rights Reserved.

    jjzak
    jjzak 2010/08/24
    もし今日が自分の人生最後の日だとしたら、今日やる予定のことを私は本当にやりたいだろうか? (スティーブ・ジョブズ = Apple創業者)
  • Rainy Day Codings:So-net blog

    「プログラミング言語の基礎概念」(五十嵐2011)をAgdaでやっていた途中だが、 ここで "Types and Programming Language" (Pierce 2002) の第8章 "Typed Arithmetic Expressions" をAgdaでやることにする。 open import Relation.Binary.PropositionalEquality using (_≡_; refl) open import Data.Product using (_×_; proj₁; proj₂; ∃; ∃-syntax) renaming (_,_ to ⟨_,_⟩) open import Data.Sum using (_⊎_; inj₁; inj₂) infix 10 succ_ infix 10 pred_ infix 9 iszero_ infix 8 i

  • にわとり小屋でのプログラミング日記

    どんなあみだくじでも答えにたどり着くことを証明した。 ここでいうあみだくじとは 有限のくじ(縦棒)がある 縦棒上の点と点を結ぶ横道が有限ある 横道は水平線だけじゃなく、遠くのくじへ行ったり自身を上に行ったりできる ダメなこと 「ふりだしへもどる」はない 同じ点と点を結ぶことはできない 一方通行はない 一度通ると崩れるマリオのブロックみたいな道はない どちらに行くか選べる分岐みたいなのはない なぜ証明したか PPLで話題になって証明しようかなと思った。 ざっくりとしたアイディア あみだくじを形式的に定義するアイディア くじ(縦棒)の集合があったとき、横道の集まりで一つのあみだくじのデータを表現した。 例えばこのあみだくじは A0--B2, A1--B0, B1--C0 という3の横道として表現する。横道は端点のペアであり、端点の添字は点の高さで上から順に一つづつ大きい数字になる。各くじ

    にわとり小屋でのプログラミング日記
    jjzak
    jjzak 2007/06/29
    ocamlでつくったCoqという定理証明機の解説
  • 1