packages feed

egison 3.0.7 → 3.0.8

raw patch · 4 files changed

+44/−13 lines, 4 filesPVP ok

version bump matches the API change (PVP)

API changes (from Hackage documentation)

Files

egison.cabal view
@@ -1,5 +1,5 @@ Name:                egison-Version:             3.0.7+Version:             3.0.8 Synopsis:            An Interpreter for the Programming Language Egison Description:         An interpreter for the programming language Egison.                      A feature of Egison is the strong pattern match facility.
elisp/egison-mode.el view
@@ -14,22 +14,28 @@      "\\<define\\>"      "\\<test\\>"      "\\<execute\\>"-     +     "\\<load\\>"+     "\\<load-file\\>"+      "\\<lambda\\>"-     "\\<macro\\>"-     "\\<do\\>"-     "\\<if\\>"      "\\<let\\>"      "\\<letrec\\>"-     "\\<matcher\\>"-     "\\<algebraic-data-matcher\\>"+     "\\<if\\>"+     "\\<apply\\>"+     "\\<generate-array\\>"+     "\\<array-size\\>"+     "\\<array-ref\\>"+      "\\<loop\\>"-     "\\<match-lambda\\>"      "\\<match\\>"      "\\<match-all\\>"+     "\\<matcher\\>"+     "\\<algebraic-data-matcher\\>"+     "\\<match-lambda\\>"      "\\<pattern-function\\>"-     "\\<generate-array\\>" +     "\\<do\\>"+      "\\<undefined\\>"      "\\<something\\>"      @@ -115,18 +121,26 @@  (defun keyword-indent-point (name)   (cond ((equal "define" name) 2)+        ((equal "test" name) 2)+        ((equal "load" name) 2)+        ((equal "load-file" name) 2)+        ((equal "execute" name) 2)         ((equal "lambda" name) 2)-        ((equal "match-lambda" name) 2)-        ((equal "macro" name) 2)         ((equal "let" name) 2)         ((equal "letrec" name) 2)-        ((equal "do" name) 2)+        ((equal "if" name) 2)+        ((equal "apply" name) 2)+        ((equal "generate-array" name) 2)+        ((equal "array-size" name) 2)+        ((equal "array-ref" name) 2)+        ((equal "loop" name) 2)         ((equal "match" name) 2)         ((equal "match-all" name) 2)         ((equal "matcher" name) 2)         ((equal "algebraic-data-matcher" name) 2)-        ((equal "generate-array" name) 2)+        ((equal "match-lambda" name) 2)         ((equal "pattern-function" name) 2)+        ((equal "do" name) 2)         ))  (defun egison-indent-line ()
lib/core/collection.egi view
@@ -158,6 +158,15 @@            ((occurrence a) xs)))) |# +(define $one-of+  (lambda [$pred $xs]+    (match xs (list something)+      {[<nil> #f]+       [<cons $x $rs>+        (if (pred x)+            #t+            (one-of pred rs))]})))+ (define $size   (lambda [$xs]     (match xs (list something)
lib/core/number.egi view
@@ -135,3 +135,11 @@        [$ [something]         {[$tgt {(modulo tgt m)}]}]        })))++(define $primes+  (letrec {[$next-primes+            (lambda [$primes1 $n]+              (if (one-of (lambda [$p] (eq-n? (remainder n p) 0)) primes1)+                  (next-primes primes1 (+ n 1))+                  {n @(next-primes {@primes1 n} (+ n 1))}))]}+    {2 @(next-primes {2} 3)}))