Skip to content

Instantly share code, notes, and snippets.

Ricardo Honorato-Zimmer rhz

  • Santiago, Chile
Block or report user

Report or block rhz

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
View multi-pred.clj
(defmacro multi-pred [& preds]
`(fn [& args]
(and ~@(for [pred preds]
`(apply ~pred args)))))
View gist:641036
(defrecord Agent [id name states bindings])
(defn a1 [bs ba]
(Agent. 1 :a1 {"x" ""} {"x" [bs (delay (ba "x" a1))]}))
(defn a2 [bs ba]
(Agent. 2 :a2 {"z" ""} {"z" [bs (delay (ba "z" a2))]}))
;; user> (a1 "z" a2) ; why stack overflow?
View gist:661549
(add-to-list 'load-path (expand-file-name "~/emacs/lisp/auto-complete-1.2/"))
(require 'auto-complete-config)
(add-to-list 'ac-dictionary-directories "~/emacs/lisp/auto-complete-1.2/dict/")
View gist:668294
(defn get-complexes
"Returns a seq with the ids of the complexes in expr (which is a
map from id (Integer) to Kappa agent)."
(if (:complexes (meta expr)) (:complexes (meta expr))
(let [get-complex (partial complex expr)]
(loop [remaining expr
last-complex #{}
groups (transient [])]
(let [remaining (remove (comp last-complex key) remaining)]
View gist:668678
No message.
[Thrown class java.lang.IndexOutOfBoundsException]
0: [QUIT] Quit to the SLIME top level
1: [ABORT] ABORT to SLIME level 0
0: clojure.lang.PersistentVector.arrayFor(
1: clojure.lang.PersistentVector.nth(
rhz / gist:671969
Created Nov 11, 2010
pak -Ss QUERY
View gist:671969
diff --git a/main.lisp b/main.lisp
index 0dfaf15..ec5730e 100644
--- a/main.lisp
+++ b/main.lisp
@@ -270,6 +270,17 @@ Returns T upon successful installation, NIL otherwise."
(get-pkgbuild pkg-name)
+(defun search-packages (query)
+ (maybe-refresh-cache)
View empty-counted-sorted-set-disj-get.patch
diff --git a/src/main/clojure/clojure/data/finger_tree.clj b/src/main/clojure/clojure/data/finger_tree.clj
index bc00343..557aaaf 100644
--- a/src/main/clojure/clojure/data/finger_tree.clj
+++ b/src/main/clojure/clojure/data/finger_tree.clj
@@ -537,13 +537,17 @@
(count [_] (:len (measured tree)))
(disjoin [this k]
- (let [[l x r] (split-tree tree #(>= 0 (cmpr k (:right %))))]
- (if (= x k)
View gist:834802
(defn prob-n [pred tol in n] ;; in is a csv's filename
(let [as (for [[_ _ p m] (map #(.split % ";") (rest (.split (slurp in) "\n"))) :when p]
(if (empty? m) [p] [p m])) ;; take the third and fourth (if possible) column of each row
conteo (for [as (c/combinations as n)]
(if (apply pred tol as) 1 0))]
(/ (reduce + conteo) (count conteo))))
(defn ningun-apellido-en-comun [tol & as]
(let [distinct-as (distinct (apply concat as))
conteo (for [a distinct-as]
View bienes-raices.clj
(require '[clojure.string :as s]
'[incanter.stats :as stats]
'[clojure.contrib.generic.math-functions :as m]
'[clojure.contrib.combinatorics :as c])
;;;; Conversion
(defn get-rows [s]
(let [[sep & ss] (.split s "\n")]
(take-nth 2 (partition-by #{sep} ss))))
View gist:842663
(defprotocol AKappaExpression
"Kappa expression"
(agents [e] "get all agents in this expression")
(complexes [e] "get all complexes in this expression")
(subexpr [e ids] "get a subexpression for the given agent ids")
(merge [e1 e2] "merge two expressions")
(count-automorphisms [e] "count the number of automorphisms")
(expression? [e] "predicate for AKappaExpression")
(match [e1 e2] "returns a map from agent ids in e1 to their matching agent ids in e2")
;; should this methods be part of AKappaAgent?
You can’t perform that action at this time.