egison 0.3.0.1 → 0.3.0.2
raw patch · 4 files changed
+69/−69 lines, 4 files
Files
- Egison.hs +1/−1
- egison.cabal +2/−2
- etc/lib/base.egi +66/−0
- etc/lib/basic.egi +0/−66
Egison.hs view
@@ -9,7 +9,7 @@ import IO hiding (try) welcomeMsg :: String-welcomeMsg = "Egison, version 0.3.0.1 : http://hagi.is.s.u-tokyo.ac.jp/~egi/egison/\nWelcome to Egison Interpreter!\n"+welcomeMsg = "Egison, version 0.3.0.2 : http://hagi.is.s.u-tokyo.ac.jp/~egi/egison/\nWelcome to Egison Interpreter!\n" byebyeMsg :: String byebyeMsg = "\nLeaving Egison.\nByebye. See you again! (^^)/\n"
egison.cabal view
@@ -7,7 +7,7 @@ -- The package version. See the Haskell package versioning policy -- (http://www.haskell.org/haskellwiki/Package_versioning_policy) for -- standards guiding when and how versions should be incremented.-Version: 0.3.0.1+Version: 0.3.0.2 -- A short (one-line) description of the package. Synopsis: An Interpreter for the Programming Language Egison@@ -45,7 +45,7 @@ Data-Dir: etc/ -Data-files: lib/basic.egi lib/number.egi lib/collection.egi sample/number-test.egi sample/collection-test.egi sample/io-test.egi elisp/egison-mode.el+Data-files: lib/base.egi lib/number.egi lib/collection.egi sample/number-test.egi sample/collection-test.egi sample/io-test.egi elisp/egison-mode.el -- Extra files to be distributed with the package, such as examples or -- a README.
+ etc/lib/base.egi view
@@ -0,0 +1,66 @@+(define $Something+ (type+ {[$var-match (lambda [$tgt] {tgt})]+ }))++(define $Bool+ (type+ {[$var-match (lambda [$tgt] {tgt})]+ [$inductive-match+ (deconstructor+ {[true []+ {[<true> {[]}]+ [_ {}]}]+ [false []+ {[<false> {[]}]+ [_ {}]}]+ })]+ [$equal?+ (lambda [$val $tgt]+ (match [val tgt] [Bool Bool]+ {[[<true> <true>] <true>]+ [[<false> <false>] <true>]+ [[_ _] <false>]}))]+ }))++(define $or+ (lambda [$b1 $b2]+ (match b1 Bool+ {[<true> <true>]+ [<false> b2]})))++(define $and+ (lambda [$b1 $b2]+ (match b1 Bool+ {[<true> b2]+ [<false> <false>]})))++(define $not+ (lambda [$b]+ (match b Bool+ {[<true> <false>]+ [<false> <true>]})))++(define $Order+ (type+ {[$var-match (lambda [$tgt] {tgt})]+ [$inductive-match+ (deconstructor+ {[less []+ {[<equal> {[]}]+ [_ {}]}]+ [equal []+ {[<equal> {[]}]+ [_ {}]}]+ [greater []+ {[<greater> {[]}]+ [_ {}]}]+ })]+ [$equal?+ (lambda [$val $tgt]+ (match [val tgt] [Order Order]+ {[[<less> <less>] <true>]+ [[<equal> <equal>] <true>]+ [[<greater> <greater>] <true>]+ [[_ _] <false>]}))]+ }))
− etc/lib/basic.egi
@@ -1,66 +0,0 @@-(define $Something- (type- {[$var-match (lambda [$tgt] {tgt})]- }))--(define $Bool- (type- {[$var-match (lambda [$tgt] {tgt})]- [$inductive-match- (deconstructor- {[true []- {[<true> {[]}]- [_ {}]}]- [false []- {[<false> {[]}]- [_ {}]}]- })]- [$equal?- (lambda [$val $tgt]- (match [val tgt] [Bool Bool]- {[[<true> <true>] <true>]- [[<false> <false>] <true>]- [[_ _] <false>]}))]- }))--(define $or- (lambda [$b1 $b2]- (match b1 Bool- {[<true> <true>]- [<false> b2]})))--(define $and- (lambda [$b1 $b2]- (match b1 Bool- {[<true> b2]- [<false> <false>]})))--(define $not- (lambda [$b]- (match b Bool- {[<true> <false>]- [<false> <true>]})))--(define $Order- (type- {[$var-match (lambda [$tgt] {tgt})]- [$inductive-match- (deconstructor- {[less []- {[<equal> {[]}]- [_ {}]}]- [equal []- {[<equal> {[]}]- [_ {}]}]- [greater []- {[<greater> {[]}]- [_ {}]}]- })]- [$equal?- (lambda [$val $tgt]- (match [val tgt] [Order Order]- {[[<less> <less>] <true>]- [[<equal> <equal>] <true>]- [[<greater> <greater>] <true>]- [[_ _] <false>]}))]- }))