clojure-numerics / expresso

Clojure library for symbolic computation
312 stars 20 forks source link

No such var: mat/normalise-probabilities #17

Closed Hendekagon closed 9 years ago

Hendekagon commented 9 years ago

I get the following exception when requiring expresso:

(require '[numeric.expresso.core :as x]) WARNING: record? already refers to: #'clojure.core/record? in namespace: clojure.core.logic, being replaced by: #'clojure.core.logic/record? WARNING: record? already refers to: #'clojure.core/record? in namespace: numeric.expresso.properties, being replaced by: #'clojure.core.logic/record? WARNING: record? already refers to: #'clojure.core/record? in namespace: numeric.expresso.types, being replaced by: #'clojure.core.logic/record? WARNING: record? already refers to: #'clojure.core/record? in namespace: numeric.expresso.impl.pimplementation, being replaced by: #'clojure.core.logic/record? WARNING: record? already refers to: #'clojure.core/record? in namespace: numeric.expresso.impl.matcher, being replaced by: #'clojure.core.logic/record? WARNING: record? already refers to: #'clojure.core/record? in namespace: numeric.expresso.utils, being replaced by: #'clojure.core.logic/record? WARNING: record? already refers to: #'clojure.core/record? in namespace: clojure.core.logic.fd, being replaced by: #'clojure.core.logic/record? WARNING: record? already refers to: #'clojure.core/record? in namespace: clojure.core.logic.unifier, being replaced by: #'clojure.core.logic/record? CompilerException java.lang.RuntimeException: No such var: mat/normalise-probabilities, compiling:(numeric/expresso/properties.clj:56:1)

mschuene commented 9 years ago

what version of clojure and expresso are you using? I couldn't reproduce this with 1.6.0 and latest expresso snapshot. I wrapped the test in a small clojure project https://github.com/mschuene/expresso-starter Hope it helps :)

Hendekagon commented 9 years ago

[org.clojure/clojure "1.7.0-RC2"] [net.mikera/core.matrix "0.36.1"] [expresso "0.2.0"]

I just tried with 0.2.1-SNAPSHOT and with that I get the following:

WARNING: cat already refers to: #'clojure.core/cat in namespace: instaparse.combinators-source, being replaced by: #'instaparse.combinators-source/cat WARNING: cat already refers to: #'clojure.core/cat in namespace: instaparse.cfg, being replaced by: #'instaparse.combinators-source/cat WARNING: cat already refers to: #'clojure.core/cat in namespace: instaparse.abnf, being replaced by: #'instaparse.combinators-source/cat CompilerException clojure.lang.ArityException: Wrong number of args (2) passed to: StringReader, compiling:(abnf.clj:188:28)

mschuene commented 9 years ago

seems like a bug in instaparse with clojure 1.7.0-RC2. expresso works with 1.6.0

On Fri, Jun 19, 2015 at 12:20 PM, Matthew Chadwick <notifications@github.com

wrote:

[org.clojure/clojure "1.7.0-RC2"] [net.mikera/core.matrix "0.36.1"] [expresso "0.2.0"]

I just tried with 0.2.1-SNAPSHOT and with that I get the following:

WARNING: cat already refers to: #'clojure.core/cat in namespace: instaparse.combinators-source, being replaced by:

'instaparse.combinators-source/cat

WARNING: cat already refers to: #'clojure.core/cat in namespace: instaparse.cfg, being replaced by: #'instaparse.combinators-source/cat WARNING: cat already refers to: #'clojure.core/cat in namespace: instaparse.abnf, being replaced by: #'instaparse.combinators-source/cat CompilerException clojure.lang.ArityException: Wrong number of args (2) passed to: StringReader, compiling:(abnf.clj:188:28)

— Reply to this email directly or view it on GitHub https://github.com/clojure-numerics/expresso/issues/17#issuecomment-113461310 .

mschuene commented 9 years ago

just pushed expresso 0.2.2-SNAPSHOT to clojars with updated dependencies and clojure 1.7.0-RC2 support should work with this version, my expresso-test project works.

On Fri, Jun 19, 2015 at 12:41 PM, Maik Schünemann <maikschuenemann@gmail.com

wrote:

seems like a bug in instaparse with clojure 1.7.0-RC2. expresso works with 1.6.0

On Fri, Jun 19, 2015 at 12:20 PM, Matthew Chadwick < notifications@github.com> wrote:

[org.clojure/clojure "1.7.0-RC2"] [net.mikera/core.matrix "0.36.1"] [expresso "0.2.0"]

I just tried with 0.2.1-SNAPSHOT and with that I get the following:

WARNING: cat already refers to: #'clojure.core/cat in namespace: instaparse.combinators-source, being replaced by:

'instaparse.combinators-source/cat

WARNING: cat already refers to: #'clojure.core/cat in namespace: instaparse.cfg, being replaced by: #'instaparse.combinators-source/cat WARNING: cat already refers to: #'clojure.core/cat in namespace: instaparse.abnf, being replaced by: #'instaparse.combinators-source/cat CompilerException clojure.lang.ArityException: Wrong number of args (2) passed to: StringReader, compiling:(abnf.clj:188:28)

— Reply to this email directly or view it on GitHub https://github.com/clojure-numerics/expresso/issues/17#issuecomment-113461310 .

Hendekagon commented 9 years ago

nearly - now there are no errors on requiring numeric.expresso.core, and simple things like (ex (* (+ a b) c)) work, but I get:

(multiply-out (ex (* (+ a b) c))) StackOverflowError clojure.lang.KeywordLookupSite$1.get (KeywordLookupSite.java:45)

mschuene commented 9 years ago

jep, that was a hard to track down issue of core.logic with clojure 1.7, see http://dev.clojure.org/jira/browse/LOGIC-169 I uploaded a fork of core.logic with the fix to clojars and use this as dependency to expresso, which solved the issue. expresso is working now with clojure 1.7 in version 0.2.2-SNAPSHOT

Hendekagon commented 9 years ago

champion!! it works - nice one :-)