Skip to content

Instantly share code, notes, and snippets.

@siritori
siritori / binaty_tree.als
Created February 19, 2012 16:19
二分探索木をAlloyで定義してみた
open util/ordering[Node]
sig Node {
lhs : lone Node,
rhs : lone Node
}
fact {
// 葉をたどればすべての要素が取得できるrootがただひとつ存在する
one root : Node | Node = root.*(lhs+rhs)
// 任意の節において成り立つ
@kyonmm
kyonmm / build.groovy
Created June 5, 2012 06:14
Gradle + Mercurial + Windowsな環境で保存->ビルド->コミットまでこなします。 基本的には「トピックブランチに移動->本スクリプトを起動->開発->本スクリプトを終了->コミットを整理->ブランチをマージ」とします。gradleのタスク実行はdefaultTaskが実行されるようになっているので、build.gradleのdefaultTasksを設定するか、def p = "cmd /c gradle"のあとに起動したいタスクを指定します。基本的にはUnit Testなタスク
def root = new File("./src/")
println root.absolutePath
lastmodified = [:]
current = [:]
while(true){
current.clear()
root.eachFileRecurse {
current << ["${it.absolutePath}":it.lastModified()]
}
if(!current.equals(lastmodified)){
//Pict.groovyがClassPathにある前提で次のスクリプトを実行する
//pict.exeはPict.pictPathに設定する
//エラーが起きたときについて検知していない。
//水準に「,」が入っているときは@escapeComma@でエスケープしている。@escapeComma@が水準にあるときは、escapeComma の値を変えてください。
//水準に「\n」が入っているときは@escapeLineSeparator@でエスケープしている。@escapeLineSeparator@が水準にあるときは、escapeLineSeparator の値を変えてください。
class Pict{
def static pictPath = $/D:\Apps\PICT\pict.exe/$