Discussion:
[ANN] Automatic specs + core.typed release
Ambrose Bonnaire-Sergeant
2016-08-31 09:16:46 UTC
Permalink
Hi,

The latest core.typed release has support for generating
clojure.spec specs from unit tests.

[org.clojure/core.typed "0.3.25"]

...; for very recent releases
:repositories {"sonatype-oss-public"
"https://oss.sonatype.org/content/groups/public/"}


Here's an example
<https://gist.github.com/frenchy64/85c1c812daf81d07a55dd3ff82e3b0fe> of the
kind of specs it can generate
from even minimal tests.

There is a demo <https://github.com/typedclojure/auto-annotation> repository
if you want to test this feature out.

We now use a modified version of Compiler.java as an
analyzer, so there are nice noticeable speedups for
compilation.

Feedback welcome!

README <https://github.com/clojure/core.typed>
CHANGELOG
<https://github.com/clojure/core.typed/blob/master/CHANGELOG.md#0325---31-august-2016>

Thanks,
Ambrose
Jeroen van Dijk
2016-08-31 11:31:54 UTC
Permalink
Great work! Thank you!

Jeroen

On Wed, Aug 31, 2016 at 11:16 AM, Ambrose Bonnaire-Sergeant <
Post by Ambrose Bonnaire-Sergeant
Hi,
The latest core.typed release has support for generating
clojure.spec specs from unit tests.
[org.clojure/core.typed "0.3.25"]
...; for very recent releases
:repositories {"sonatype-oss-public" "https://oss.sonatype.org/content/groups/public/"}
Here's an example
<https://gist.github.com/frenchy64/85c1c812daf81d07a55dd3ff82e3b0fe> of
the kind of specs it can generate
from even minimal tests.
There is a demo <https://github.com/typedclojure/auto-annotation> repository
if you want to test this feature out.
We now use a modified version of Compiler.java as an
analyzer, so there are nice noticeable speedups for
compilation.
Feedback welcome!
README <https://github.com/clojure/core.typed>
CHANGELOG
<https://github.com/clojure/core.typed/blob/master/CHANGELOG.md#0325---31-august-2016>
Thanks,
Ambrose
Eelke van Foeken
2016-08-31 12:33:33 UTC
Permalink
Hi,

Great feature! I am trying the demo project. I am following the steps from
the first example, but when I get to (t/runtime-infer) I get the following
error:
AssertionError Assert failed: No namespace form found
ns-form clojure.core.typed.runtime-infer/ns-end-line
(runtime_infer.clj:2566)

Am I overlooking something?

Best regards,
Eelke van Foeken


Op woensdag 31 augustus 2016 11:17:09 UTC+2 schreef Ambrose
Post by Ambrose Bonnaire-Sergeant
Hi,
The latest core.typed release has support for generating
clojure.spec specs from unit tests.
[org.clojure/core.typed "0.3.25"]
...; for very recent releases
:repositories {"sonatype-oss-public" "https://oss.sonatype.org/content/groups/public/"}
Here's an example
<https://gist.github.com/frenchy64/85c1c812daf81d07a55dd3ff82e3b0fe> of
the kind of specs it can generate
from even minimal tests.
There is a demo <https://github.com/typedclojure/auto-annotation> repository
if you want to test this feature out.
We now use a modified version of Compiler.java as an
analyzer, so there are nice noticeable speedups for
compilation.
Feedback welcome!
README <https://github.com/clojure/core.typed>
CHANGELOG
<https://github.com/clojure/core.typed/blob/master/CHANGELOG.md#0325---31-august-2016>
Thanks,
Ambrose
Ambrose Bonnaire-Sergeant
2016-08-31 12:56:56 UTC
Permalink
Hi Eelke,

I can't reproduce, did you just clone the project and run the steps?

Can you post your REPL session?

Thanks,
Ambrose
Post by Eelke van Foeken
Hi,
Great feature! I am trying the demo project. I am following the steps from
the first example, but when I get to (t/runtime-infer) I get the following
AssertionError Assert failed: No namespace form found
ns-form clojure.core.typed.runtime-infer/ns-end-line
(runtime_infer.clj:2566)
Am I overlooking something?
Best regards,
Eelke van Foeken
Op woensdag 31 augustus 2016 11:17:09 UTC+2 schreef Ambrose
Post by Ambrose Bonnaire-Sergeant
Hi,
The latest core.typed release has support for generating
clojure.spec specs from unit tests.
[org.clojure/core.typed "0.3.25"]
...; for very recent releases
:repositories {"sonatype-oss-public" "https://oss.sonatype.org/content/groups/public/"}
Here's an example
<https://gist.github.com/frenchy64/85c1c812daf81d07a55dd3ff82e3b0fe> of
the kind of specs it can generate
from even minimal tests.
There is a demo <https://github.com/typedclojure/auto-annotation> repository
if you want to test this feature out.
We now use a modified version of Compiler.java as an
analyzer, so there are nice noticeable speedups for
compilation.
Feedback welcome!
README <https://github.com/clojure/core.typed>
CHANGELOG
<https://github.com/clojure/core.typed/blob/master/CHANGELOG.md#0325---31-august-2016>
Thanks,
Ambrose
Eelke van Foeken
2016-08-31 13:09:14 UTC
Permalink
Hi,

Yes I did exactly that. clone the repo. lein repl and then int the repl:

$ lein repl
Initializing core.typed ...
WARNING: boolean? already refers to: #'clojure.core/boolean? in namespace:
clojure.tools.analyzer.utils, being replaced by:
#'clojure.tools.analyzer.utils/boolean?
WARNING: boolean? already refers to: #'clojure.core/boolean? in namespace:
clojure.tools.analyzer, being replaced by:
#'clojure.tools.analyzer.utils/boolean?
Building core.typed base environments ...
Finished building base environments
"Elapsed time: 14919.589655 msecs"
core.typed initialized.
nREPL server started on port 57873 on host 127.0.0.1 - nrepl://
127.0.0.1:57873
REPL-y 0.3.7, nREPL 0.2.12
Clojure 1.9.0-alpha11
Java HotSpot(TM) 64-Bit Server VM 1.8.0_102-b14
Docs: (doc function-name-here)
(find-doc "part-of-name-here")
Source: (source function-name-here)
Javadoc: (javadoc java-object-or-class-here)
Exit: Control+D or (exit) or (quit)
Results: Stored in vars *1, *2, *3, an exception in *e

user=> (require 'runtime-infer-demo.core-test)
nil
user=> (in-ns 'runtime-infer-demo.core-test)
#object[clojure.lang.Namespace 0x139b884e "runtime-infer-demo.core-test"]
runtime-infer-demo.core-test=> (run-tests)

Testing runtime-infer-demo.core-test

Ran 1 tests containing 2 assertions.
0 failures, 0 errors.
{:test 1, :pass 2, :fail 0, :error 0, :type :summary}
runtime-infer-demo.core-test=> (in-ns 'runtime-infer-demo.core)
#object[clojure.lang.Namespace 0x5aee3dae "runtime-infer-demo.core"]
runtime-infer-demo.core=> (t/runtime-infer)

AssertionError Assert failed: No namespace form found
ns-form clojure.core.typed.runtime-infer/ns-end-line
(runtime_infer.clj:2566)
runtime-infer-demo.core=>

Thanks for helping out,
Eelke

Op wo 31 aug. 2016 om 14:57 schreef Ambrose Bonnaire-Sergeant <
Post by Ambrose Bonnaire-Sergeant
Hi Eelke,
I can't reproduce, did you just clone the project and run the steps?
Can you post your REPL session?
Thanks,
Ambrose
Post by Eelke van Foeken
Hi,
Great feature! I am trying the demo project. I am following the steps
from the first example, but when I get to (t/runtime-infer) I get the
AssertionError Assert failed: No namespace form found
ns-form clojure.core.typed.runtime-infer/ns-end-line
(runtime_infer.clj:2566)
Am I overlooking something?
Best regards,
Eelke van Foeken
Op woensdag 31 augustus 2016 11:17:09 UTC+2 schreef Ambrose
Post by Ambrose Bonnaire-Sergeant
Hi,
The latest core.typed release has support for generating
clojure.spec specs from unit tests.
[org.clojure/core.typed "0.3.25"]
...; for very recent releases
:repositories {"sonatype-oss-public" "https://oss.sonatype.org/content/groups/public/"}
Here's an example
<https://gist.github.com/frenchy64/85c1c812daf81d07a55dd3ff82e3b0fe> of
the kind of specs it can generate
from even minimal tests.
There is a demo <https://github.com/typedclojure/auto-annotation> repository
if you want to test this feature out.
We now use a modified version of Compiler.java as an
analyzer, so there are nice noticeable speedups for
compilation.
Feedback welcome!
README <https://github.com/clojure/core.typed>
CHANGELOG
<https://github.com/clojure/core.typed/blob/master/CHANGELOG.md#0325---31-august-2016>
Thanks,
Ambrose
Eelke van Foeken
2016-08-31 13:13:54 UTC
Permalink
Hi,

Yes I did exactly that. clone the repo. lein repl and then int the repl:

$ lein repl
Initializing core.typed ...
WARNING: boolean? already refers to: #'clojure.core/boolean? in namespace:
clojure.tools.analyzer.utils, being replaced by:
#'clojure.tools.analyzer.utils/boolean?
WARNING: boolean? already refers to: #'clojure.core/boolean? in namespace:
clojure.tools.analyzer, being replaced by:
#'clojure.tools.analyzer.utils/boolean?
Building core.typed base environments ...
Finished building base environments
"Elapsed time: 14919.589655 msecs"
core.typed initialized.
nREPL server started on port 57873 on host 127.0.0.1 - nrepl://
127.0.0.1:57873
REPL-y 0.3.7, nREPL 0.2.12
Clojure 1.9.0-alpha11
Java HotSpot(TM) 64-Bit Server VM 1.8.0_102-b14
Docs: (doc function-name-here)
(find-doc "part-of-name-here")
Source: (source function-name-here)
Javadoc: (javadoc java-object-or-class-here)
Exit: Control+D or (exit) or (quit)
Results: Stored in vars *1, *2, *3, an exception in *e


user=> (require 'runtime-infer-demo.core-test)
nil
user=> (in-ns 'runtime-infer-demo.core-test)
#object[clojure.lang.Namespace 0x139b884e "runtime-infer-demo.core-test"]
runtime-infer-demo.core-test=> (run-tests)


Testing runtime-infer-demo.core-test


Ran 1 tests containing 2 assertions.
0 failures, 0 errors.
{:test 1, :pass 2, :fail 0, :error 0, :type :summary}
runtime-infer-demo.core-test=> (in-ns 'runtime-infer-demo.core)
#object[clojure.lang.Namespace 0x5aee3dae "runtime-infer-demo.core"]
runtime-infer-demo.core=> (t/runtime-infer)

AssertionError Assert failed: No namespace form found
ns-form clojure.core.typed.runtime-infer/ns-end-line
(runtime_infer.clj:2566)
runtime-infer-demo.core=>

Thanks for helping out,
Eelke

Op woensdag 31 augustus 2016 14:57:17 UTC+2 schreef Ambrose
Post by Ambrose Bonnaire-Sergeant
Hi Eelke,
I can't reproduce, did you just clone the project and run the steps?
Can you post your REPL session?
Thanks,
Ambrose
Post by Eelke van Foeken
Hi,
Great feature! I am trying the demo project. I am following the steps
from the first example, but when I get to (t/runtime-infer) I get the
AssertionError Assert failed: No namespace form found
ns-form clojure.core.typed.runtime-infer/ns-end-line
(runtime_infer.clj:2566)
Am I overlooking something?
Best regards,
Eelke van Foeken
Op woensdag 31 augustus 2016 11:17:09 UTC+2 schreef Ambrose
Post by Ambrose Bonnaire-Sergeant
Hi,
The latest core.typed release has support for generating
clojure.spec specs from unit tests.
[org.clojure/core.typed "0.3.25"]
...; for very recent releases
:repositories {"sonatype-oss-public" "https://oss.sonatype.org/content/groups/public/"}
Here's an example
<https://gist.github.com/frenchy64/85c1c812daf81d07a55dd3ff82e3b0fe> of
the kind of specs it can generate
from even minimal tests.
There is a demo <https://github.com/typedclojure/auto-annotation> repository
if you want to test this feature out.
We now use a modified version of Compiler.java as an
analyzer, so there are nice noticeable speedups for
compilation.
Feedback welcome!
README <https://github.com/clojure/core.typed>
CHANGELOG
<https://github.com/clojure/core.typed/blob/master/CHANGELOG.md#0325---31-august-2016>
Thanks,
Ambrose
Ambrose Bonnaire-Sergeant
2016-08-31 14:08:54 UTC
Permalink
I'm out of ideas.

Can you send your `lein version` and `lein deps :tree`
from the repo directory?

Thanks,
Ambrose
Post by Eelke van Foeken
Hi,
$ lein repl
Initializing core.typed ...
clojure.tools.analyzer.utils, being replaced by: #'clojure.tools.analyzer.
utils/boolean?
clojure.tools.analyzer, being replaced by: #'clojure.tools.analyzer.
utils/boolean?
Building core.typed base environments ...
Finished building base environments
"Elapsed time: 14919.589655 msecs"
core.typed initialized.
nREPL server started on port 57873 on host 127.0.0.1 - nrepl://
127.0.0.1:57873
REPL-y 0.3.7, nREPL 0.2.12
Clojure 1.9.0-alpha11
Java HotSpot(TM) 64-Bit Server VM 1.8.0_102-b14
Docs: (doc function-name-here)
(find-doc "part-of-name-here")
Source: (source function-name-here)
Javadoc: (javadoc java-object-or-class-here)
Exit: Control+D or (exit) or (quit)
Results: Stored in vars *1, *2, *3, an exception in *e
user=> (require 'runtime-infer-demo.core-test)
nil
user=> (in-ns 'runtime-infer-demo.core-test)
#object[clojure.lang.Namespace 0x139b884e "runtime-infer-demo.core-test"]
runtime-infer-demo.core-test=> (run-tests)
Testing runtime-infer-demo.core-test
Ran 1 tests containing 2 assertions.
0 failures, 0 errors.
{:test 1, :pass 2, :fail 0, :error 0, :type :summary}
runtime-infer-demo.core-test=> (in-ns 'runtime-infer-demo.core)
#object[clojure.lang.Namespace 0x5aee3dae "runtime-infer-demo.core"]
runtime-infer-demo.core=> (t/runtime-infer)
AssertionError Assert failed: No namespace form found
ns-form clojure.core.typed.runtime-infer/ns-end-line
(runtime_infer.clj:2566)
runtime-infer-demo.core=>
Thanks for helping out,
Eelke
Op woensdag 31 augustus 2016 14:57:17 UTC+2 schreef Ambrose
Post by Ambrose Bonnaire-Sergeant
Hi Eelke,
I can't reproduce, did you just clone the project and run the steps?
Can you post your REPL session?
Thanks,
Ambrose
Post by Eelke van Foeken
Hi,
Great feature! I am trying the demo project. I am following the steps
from the first example, but when I get to (t/runtime-infer) I get the
AssertionError Assert failed: No namespace form found
ns-form clojure.core.typed.runtime-infer/ns-end-line
(runtime_infer.clj:2566)
Am I overlooking something?
Best regards,
Eelke van Foeken
Op woensdag 31 augustus 2016 11:17:09 UTC+2 schreef Ambrose
Post by Ambrose Bonnaire-Sergeant
Hi,
The latest core.typed release has support for generating
clojure.spec specs from unit tests.
[org.clojure/core.typed "0.3.25"]
...; for very recent releases
:repositories {"sonatype-oss-public" "https://oss.sonatype.org/content/groups/public/"}
Here's an example
<https://gist.github.com/frenchy64/85c1c812daf81d07a55dd3ff82e3b0fe>
of the kind of specs it can generate
from even minimal tests.
There is a demo <https://github.com/typedclojure/auto-annotation> repository
if you want to test this feature out.
We now use a modified version of Compiler.java as an
analyzer, so there are nice noticeable speedups for
compilation.
Feedback welcome!
README <https://github.com/clojure/core.typed>
CHANGELOG
<https://github.com/clojure/core.typed/blob/master/CHANGELOG.md#0325---31-august-2016>
Thanks,
Ambrose
Eelke van Foeken
2016-08-31 14:16:16 UTC
Permalink
Hey,

Apologies if I am wasting your time, I am just a beginner in Clojure, so I
might be overlooking some basic things.

Hereby

$lein version
Leiningen 2.6.1 on Java 1.8.0_102 Java HotSpot(TM) 64-Bit Server VM
$ lein deps :tree
Possibly confusing dependencies found:
[cider/cider-nrepl "0.8.1"] -> [org.clojure/java.classpath "0.2.0"
:exclusions [org.clojure/clojure]]
overrides
[org.clojure/core.typed "0.3.25"] -> [org.clojure/tools.namespace
"0.3.0-alpha3"] -> [org.clojure/java.classpath "0.2.3"]

Consider using these exclusions:
[org.clojure/core.typed "0.3.25" :exclusions [org.clojure/java.classpath]]

[cider/cider-nrepl "0.8.1"] -> [org.clojure/tools.namespace "0.2.5"
:exclusions [org.clojure/clojure]]
overrides
[org.clojure/core.typed "0.3.25"] -> [org.clojure/tools.namespace
"0.3.0-alpha3"]

Consider using these exclusions:
[org.clojure/core.typed "0.3.25" :exclusions [org.clojure/tools.namespace]]

[cider/cider-nrepl "0.8.1"]
[cljs-tooling "0.1.3" :exclusions [[org.clojure/clojure]]]
[compliment "0.2.0" :exclusions [[org.clojure/clojure]]]
[org.clojure/java.classpath "0.2.0" :exclusions [[org.clojure/clojure]]]
[org.clojure/tools.namespace "0.2.5" :exclusions [[org.clojure/clojure]]]
[org.clojure/tools.trace "0.7.8" :exclusions [[org.clojure/clojure]]]
[org.tcrawley/dynapath "0.2.3" :exclusions [[org.clojure/clojure]]]
[clojure-complete "0.2.4" :exclusions [[org.clojure/clojure]]]
[org.clojure/clojure "1.9.0-alpha11"]
[org.clojure/core.typed "0.3.25"]
[org.clojure/core.cache "0.6.4"]
[org.clojure/data.priority-map "0.0.4"]
[org.clojure/core.contracts "0.0.6" :exclusions [[org.clojure/clojure]]]
[org.clojure/core.unify "0.5.7"]
[org.clojure/core.typed.rt "0.3.25"]
[org.clojure/math.combinatorics "0.1.3" :exclusions
[[org.clojure/clojure]]]
[org.clojure/tools.analyzer.jvm "0.6.8"]
[org.clojure/core.memoize "0.5.7"]
[org.clojure/tools.analyzer "0.6.7"]
[org.ow2.asm/asm-all "4.2"]
[org.clojure/tools.reader "1.0.0-beta3"]
[org.clojure/test.check "0.9.0"]
[org.clojure/tools.nrepl "0.2.12" :exclusions [[org.clojure/clojure]]]


Op wo 31 aug. 2016 om 16:09 schreef Ambrose Bonnaire-Sergeant <
Post by Ambrose Bonnaire-Sergeant
I'm out of ideas.
Can you send your `lein version` and `lein deps :tree`
from the repo directory?
Thanks,
Ambrose
Post by Eelke van Foeken
Hi,
$ lein repl
Initializing core.typed ...
WARNING: boolean? already refers to: #'clojure.core/boolean? in
#'clojure.tools.analyzer.utils/boolean?
WARNING: boolean? already refers to: #'clojure.core/boolean? in
#'clojure.tools.analyzer.utils/boolean?
Building core.typed base environments ...
Finished building base environments
"Elapsed time: 14919.589655 msecs"
core.typed initialized.
nREPL server started on port 57873 on host 127.0.0.1 - nrepl://
127.0.0.1:57873
REPL-y 0.3.7, nREPL 0.2.12
Clojure 1.9.0-alpha11
Java HotSpot(TM) 64-Bit Server VM 1.8.0_102-b14
Docs: (doc function-name-here)
(find-doc "part-of-name-here")
Source: (source function-name-here)
Javadoc: (javadoc java-object-or-class-here)
Exit: Control+D or (exit) or (quit)
Results: Stored in vars *1, *2, *3, an exception in *e
user=> (require 'runtime-infer-demo.core-test)
nil
user=> (in-ns 'runtime-infer-demo.core-test)
#object[clojure.lang.Namespace 0x139b884e "runtime-infer-demo.core-test"]
runtime-infer-demo.core-test=> (run-tests)
Testing runtime-infer-demo.core-test
Ran 1 tests containing 2 assertions.
0 failures, 0 errors.
{:test 1, :pass 2, :fail 0, :error 0, :type :summary}
runtime-infer-demo.core-test=> (in-ns 'runtime-infer-demo.core)
#object[clojure.lang.Namespace 0x5aee3dae "runtime-infer-demo.core"]
runtime-infer-demo.core=> (t/runtime-infer)
AssertionError Assert failed: No namespace form found
ns-form clojure.core.typed.runtime-infer/ns-end-line
(runtime_infer.clj:2566)
runtime-infer-demo.core=>
Thanks for helping out,
Eelke
Op woensdag 31 augustus 2016 14:57:17 UTC+2 schreef Ambrose
Post by Ambrose Bonnaire-Sergeant
Hi Eelke,
I can't reproduce, did you just clone the project and run the steps?
Can you post your REPL session?
Thanks,
Ambrose
Post by Eelke van Foeken
Hi,
Great feature! I am trying the demo project. I am following the steps
from the first example, but when I get to (t/runtime-infer) I get the
AssertionError Assert failed: No namespace form found
ns-form clojure.core.typed.runtime-infer/ns-end-line
(runtime_infer.clj:2566)
Am I overlooking something?
Best regards,
Eelke van Foeken
Op woensdag 31 augustus 2016 11:17:09 UTC+2 schreef Ambrose
Post by Ambrose Bonnaire-Sergeant
Hi,
The latest core.typed release has support for generating
clojure.spec specs from unit tests.
[org.clojure/core.typed "0.3.25"]
...; for very recent releases
:repositories {"sonatype-oss-public" "https://oss.sonatype.org/content/groups/public/"}
Here's an example
<https://gist.github.com/frenchy64/85c1c812daf81d07a55dd3ff82e3b0fe>
of the kind of specs it can generate
from even minimal tests.
There is a demo <https://github.com/typedclojure/auto-annotation> repository
if you want to test this feature out.
We now use a modified version of Compiler.java as an
analyzer, so there are nice noticeable speedups for
compilation.
Feedback welcome!
README <https://github.com/clojure/core.typed>
CHANGELOG
<https://github.com/clojure/core.typed/blob/master/CHANGELOG.md#0325---31-august-2016>
Thanks,
Ambrose
Ambrose Bonnaire-Sergeant
2016-08-31 14:22:35 UTC
Permalink
Try using cidre-nrepl "0.13.0". It might be in your ~/.lein/profiles.clj
file.

Thanks,
Ambrose
Post by Eelke van Foeken
Hey,
Apologies if I am wasting your time, I am just a beginner in Clojure, so I
might be overlooking some basic things.
Hereby
$lein version
Leiningen 2.6.1 on Java 1.8.0_102 Java HotSpot(TM) 64-Bit Server VM
$ lein deps :tree
[cider/cider-nrepl "0.8.1"] -> [org.clojure/java.classpath "0.2.0"
:exclusions [org.clojure/clojure]]
overrides
[org.clojure/core.typed "0.3.25"] -> [org.clojure/tools.namespace
"0.3.0-alpha3"] -> [org.clojure/java.classpath "0.2.3"]
[org.clojure/core.typed "0.3.25" :exclusions [org.clojure/java.classpath]]
[cider/cider-nrepl "0.8.1"] -> [org.clojure/tools.namespace "0.2.5"
:exclusions [org.clojure/clojure]]
overrides
[org.clojure/core.typed "0.3.25"] -> [org.clojure/tools.namespace
"0.3.0-alpha3"]
[org.clojure/core.typed "0.3.25" :exclusions [org.clojure/tools.namespace]]
[cider/cider-nrepl "0.8.1"]
[cljs-tooling "0.1.3" :exclusions [[org.clojure/clojure]]]
[compliment "0.2.0" :exclusions [[org.clojure/clojure]]]
[org.clojure/java.classpath "0.2.0" :exclusions [[org.clojure/clojure]]]
[org.clojure/tools.namespace "0.2.5" :exclusions
[[org.clojure/clojure]]]
[org.clojure/tools.trace "0.7.8" :exclusions [[org.clojure/clojure]]]
[org.tcrawley/dynapath "0.2.3" :exclusions [[org.clojure/clojure]]]
[clojure-complete "0.2.4" :exclusions [[org.clojure/clojure]]]
[org.clojure/clojure "1.9.0-alpha11"]
[org.clojure/core.typed "0.3.25"]
[org.clojure/core.cache "0.6.4"]
[org.clojure/data.priority-map "0.0.4"]
[org.clojure/core.contracts "0.0.6" :exclusions [[org.clojure/clojure]]]
[org.clojure/core.unify "0.5.7"]
[org.clojure/core.typed.rt "0.3.25"]
[org.clojure/math.combinatorics "0.1.3" :exclusions
[[org.clojure/clojure]]]
[org.clojure/tools.analyzer.jvm "0.6.8"]
[org.clojure/core.memoize "0.5.7"]
[org.clojure/tools.analyzer "0.6.7"]
[org.ow2.asm/asm-all "4.2"]
[org.clojure/tools.reader "1.0.0-beta3"]
[org.clojure/test.check "0.9.0"]
[org.clojure/tools.nrepl "0.2.12" :exclusions [[org.clojure/clojure]]]
Op wo 31 aug. 2016 om 16:09 schreef Ambrose Bonnaire-Sergeant <
Post by Ambrose Bonnaire-Sergeant
I'm out of ideas.
Can you send your `lein version` and `lein deps :tree`
from the repo directory?
Thanks,
Ambrose
Post by Eelke van Foeken
Hi,
$ lein repl
Initializing core.typed ...
WARNING: boolean? already refers to: #'clojure.core/boolean? in
#'clojure.tools.analyzer.utils/boolean?
WARNING: boolean? already refers to: #'clojure.core/boolean? in
#'clojure.tools.analyzer.utils/boolean?
Building core.typed base environments ...
Finished building base environments
"Elapsed time: 14919.589655 msecs"
core.typed initialized.
nREPL server started on port 57873 on host 127.0.0.1 - nrepl://
127.0.0.1:57873
REPL-y 0.3.7, nREPL 0.2.12
Clojure 1.9.0-alpha11
Java HotSpot(TM) 64-Bit Server VM 1.8.0_102-b14
Docs: (doc function-name-here)
(find-doc "part-of-name-here")
Source: (source function-name-here)
Javadoc: (javadoc java-object-or-class-here)
Exit: Control+D or (exit) or (quit)
Results: Stored in vars *1, *2, *3, an exception in *e
user=> (require 'runtime-infer-demo.core-test)
nil
user=> (in-ns 'runtime-infer-demo.core-test)
#object[clojure.lang.Namespace 0x139b884e "runtime-infer-demo.core-test"
]
runtime-infer-demo.core-test=> (run-tests)
Testing runtime-infer-demo.core-test
Ran 1 tests containing 2 assertions.
0 failures, 0 errors.
{:test 1, :pass 2, :fail 0, :error 0, :type :summary}
runtime-infer-demo.core-test=> (in-ns 'runtime-infer-demo.core)
#object[clojure.lang.Namespace 0x5aee3dae "runtime-infer-demo.core"]
runtime-infer-demo.core=> (t/runtime-infer)
AssertionError Assert failed: No namespace form found
ns-form clojure.core.typed.runtime-infer/ns-end-line
(runtime_infer.clj:2566)
runtime-infer-demo.core=>
Thanks for helping out,
Eelke
Op woensdag 31 augustus 2016 14:57:17 UTC+2 schreef Ambrose
Post by Ambrose Bonnaire-Sergeant
Hi Eelke,
I can't reproduce, did you just clone the project and run the steps?
Can you post your REPL session?
Thanks,
Ambrose
Post by Eelke van Foeken
Hi,
Great feature! I am trying the demo project. I am following the steps
from the first example, but when I get to (t/runtime-infer) I get the
AssertionError Assert failed: No namespace form found
ns-form clojure.core.typed.runtime-infer/ns-end-line
(runtime_infer.clj:2566)
Am I overlooking something?
Best regards,
Eelke van Foeken
Op woensdag 31 augustus 2016 11:17:09 UTC+2 schreef Ambrose
Post by Ambrose Bonnaire-Sergeant
Hi,
The latest core.typed release has support for generating
clojure.spec specs from unit tests.
[org.clojure/core.typed "0.3.25"]
...; for very recent releases
:repositories {"sonatype-oss-public" "https://oss.sonatype.org/content/groups/public/"}
Here's an example
<https://gist.github.com/frenchy64/85c1c812daf81d07a55dd3ff82e3b0fe>
of the kind of specs it can generate
from even minimal tests.
There is a demo <https://github.com/typedclojure/auto-annotation> repository
if you want to test this feature out.
We now use a modified version of Compiler.java as an
analyzer, so there are nice noticeable speedups for
compilation.
Feedback welcome!
README <https://github.com/clojure/core.typed>
CHANGELOG
<https://github.com/clojure/core.typed/blob/master/CHANGELOG.md#0325---31-august-2016>
Thanks,
Ambrose
Eelke van Foeken
2016-08-31 14:33:54 UTC
Permalink
That was it!

Thank you.

Op woensdag 31 augustus 2016 16:22:57 UTC+2 schreef Ambrose
Post by Ambrose Bonnaire-Sergeant
Try using cidre-nrepl "0.13.0". It might be in your ~/.lein/profiles.clj
file.
Thanks,
Ambrose
Post by Eelke van Foeken
Hey,
Apologies if I am wasting your time, I am just a beginner in Clojure, so
I might be overlooking some basic things.
Hereby
$lein version
Leiningen 2.6.1 on Java 1.8.0_102 Java HotSpot(TM) 64-Bit Server VM
$ lein deps :tree
[cider/cider-nrepl "0.8.1"] -> [org.clojure/java.classpath "0.2.0"
:exclusions [org.clojure/clojure]]
overrides
[org.clojure/core.typed "0.3.25"] -> [org.clojure/tools.namespace
"0.3.0-alpha3"] -> [org.clojure/java.classpath "0.2.3"]
[org.clojure/core.typed "0.3.25" :exclusions [org.clojure/java.classpath]]
[cider/cider-nrepl "0.8.1"] -> [org.clojure/tools.namespace "0.2.5"
:exclusions [org.clojure/clojure]]
overrides
[org.clojure/core.typed "0.3.25"] -> [org.clojure/tools.namespace
"0.3.0-alpha3"]
[org.clojure/core.typed "0.3.25" :exclusions
[org.clojure/tools.namespace]]
[cider/cider-nrepl "0.8.1"]
[cljs-tooling "0.1.3" :exclusions [[org.clojure/clojure]]]
[compliment "0.2.0" :exclusions [[org.clojure/clojure]]]
[org.clojure/java.classpath "0.2.0" :exclusions
[[org.clojure/clojure]]]
[org.clojure/tools.namespace "0.2.5" :exclusions
[[org.clojure/clojure]]]
[org.clojure/tools.trace "0.7.8" :exclusions [[org.clojure/clojure]]]
[org.tcrawley/dynapath "0.2.3" :exclusions [[org.clojure/clojure]]]
[clojure-complete "0.2.4" :exclusions [[org.clojure/clojure]]]
[org.clojure/clojure "1.9.0-alpha11"]
[org.clojure/core.typed "0.3.25"]
[org.clojure/core.cache "0.6.4"]
[org.clojure/data.priority-map "0.0.4"]
[org.clojure/core.contracts "0.0.6" :exclusions
[[org.clojure/clojure]]]
[org.clojure/core.unify "0.5.7"]
[org.clojure/core.typed.rt "0.3.25"]
[org.clojure/math.combinatorics "0.1.3" :exclusions
[[org.clojure/clojure]]]
[org.clojure/tools.analyzer.jvm "0.6.8"]
[org.clojure/core.memoize "0.5.7"]
[org.clojure/tools.analyzer "0.6.7"]
[org.ow2.asm/asm-all "4.2"]
[org.clojure/tools.reader "1.0.0-beta3"]
[org.clojure/test.check "0.9.0"]
[org.clojure/tools.nrepl "0.2.12" :exclusions [[org.clojure/clojure]]]
Op wo 31 aug. 2016 om 16:09 schreef Ambrose Bonnaire-Sergeant <
Post by Ambrose Bonnaire-Sergeant
I'm out of ideas.
Can you send your `lein version` and `lein deps :tree`
from the repo directory?
Thanks,
Ambrose
Post by Eelke van Foeken
Hi,
$ lein repl
Initializing core.typed ...
WARNING: boolean? already refers to: #'clojure.core/boolean? in
#'clojure.tools.analyzer.utils/boolean?
WARNING: boolean? already refers to: #'clojure.core/boolean? in
#'clojure.tools.analyzer.utils/boolean?
Building core.typed base environments ...
Finished building base environments
"Elapsed time: 14919.589655 msecs"
core.typed initialized.
nREPL server started on port 57873 on host 127.0.0.1 - nrepl://
127.0.0.1:57873
REPL-y 0.3.7, nREPL 0.2.12
Clojure 1.9.0-alpha11
Java HotSpot(TM) 64-Bit Server VM 1.8.0_102-b14
Docs: (doc function-name-here)
(find-doc "part-of-name-here")
Source: (source function-name-here)
Javadoc: (javadoc java-object-or-class-here)
Exit: Control+D or (exit) or (quit)
Results: Stored in vars *1, *2, *3, an exception in *e
user=> (require 'runtime-infer-demo.core-test)
nil
user=> (in-ns 'runtime-infer-demo.core-test)
#object[clojure.lang.Namespace 0x139b884e
"runtime-infer-demo.core-test"]
runtime-infer-demo.core-test=> (run-tests)
Testing runtime-infer-demo.core-test
Ran 1 tests containing 2 assertions.
0 failures, 0 errors.
{:test 1, :pass 2, :fail 0, :error 0, :type :summary}
runtime-infer-demo.core-test=> (in-ns 'runtime-infer-demo.core)
#object[clojure.lang.Namespace 0x5aee3dae "runtime-infer-demo.core"]
runtime-infer-demo.core=> (t/runtime-infer)
AssertionError Assert failed: No namespace form found
ns-form clojure.core.typed.runtime-infer/ns-end-line
(runtime_infer.clj:2566)
runtime-infer-demo.core=>
Thanks for helping out,
Eelke
Op woensdag 31 augustus 2016 14:57:17 UTC+2 schreef Ambrose
Post by Ambrose Bonnaire-Sergeant
Hi Eelke,
I can't reproduce, did you just clone the project and run the steps?
Can you post your REPL session?
Thanks,
Ambrose
Post by Eelke van Foeken
Hi,
Great feature! I am trying the demo project. I am following the steps
from the first example, but when I get to (t/runtime-infer) I get the
AssertionError Assert failed: No namespace form found
ns-form clojure.core.typed.runtime-infer/ns-end-line
(runtime_infer.clj:2566)
Am I overlooking something?
Best regards,
Eelke van Foeken
Op woensdag 31 augustus 2016 11:17:09 UTC+2 schreef Ambrose
Post by Ambrose Bonnaire-Sergeant
Hi,
The latest core.typed release has support for generating
clojure.spec specs from unit tests.
[org.clojure/core.typed "0.3.25"]
...; for very recent releases
:repositories {"sonatype-oss-public" "https://oss.sonatype.org/content/groups/public/"}
Here's an example
<https://gist.github.com/frenchy64/85c1c812daf81d07a55dd3ff82e3b0fe>
of the kind of specs it can generate
from even minimal tests.
There is a demo <https://github.com/typedclojure/auto-annotation> repository
if you want to test this feature out.
We now use a modified version of Compiler.java as an
analyzer, so there are nice noticeable speedups for
compilation.
Feedback welcome!
README <https://github.com/clojure/core.typed>
CHANGELOG
<https://github.com/clojure/core.typed/blob/master/CHANGELOG.md#0325---31-august-2016>
Thanks,
Ambrose
Ambrose Bonnaire-Sergeant
2016-08-31 14:34:23 UTC
Permalink
Glad to help!

Ambrose
Post by Eelke van Foeken
That was it!
Thank you.
Op woensdag 31 augustus 2016 16:22:57 UTC+2 schreef Ambrose
Post by Ambrose Bonnaire-Sergeant
Try using cidre-nrepl "0.13.0". It might be in your ~/.lein/profiles.clj
file.
Thanks,
Ambrose
Post by Eelke van Foeken
Hey,
Apologies if I am wasting your time, I am just a beginner in Clojure, so
I might be overlooking some basic things.
Hereby
$lein version
Leiningen 2.6.1 on Java 1.8.0_102 Java HotSpot(TM) 64-Bit Server VM
$ lein deps :tree
[cider/cider-nrepl "0.8.1"] -> [org.clojure/java.classpath "0.2.0"
:exclusions [org.clojure/clojure]]
overrides
[org.clojure/core.typed "0.3.25"] -> [org.clojure/tools.namespace
"0.3.0-alpha3"] -> [org.clojure/java.classpath "0.2.3"]
[org.clojure/core.typed "0.3.25" :exclusions
[org.clojure/java.classpath]]
[cider/cider-nrepl "0.8.1"] -> [org.clojure/tools.namespace "0.2.5"
:exclusions [org.clojure/clojure]]
overrides
[org.clojure/core.typed "0.3.25"] -> [org.clojure/tools.namespace
"0.3.0-alpha3"]
[org.clojure/core.typed "0.3.25" :exclusions
[org.clojure/tools.namespace]]
[cider/cider-nrepl "0.8.1"]
[cljs-tooling "0.1.3" :exclusions [[org.clojure/clojure]]]
[compliment "0.2.0" :exclusions [[org.clojure/clojure]]]
[org.clojure/java.classpath "0.2.0" :exclusions
[[org.clojure/clojure]]]
[org.clojure/tools.namespace "0.2.5" :exclusions
[[org.clojure/clojure]]]
[org.clojure/tools.trace "0.7.8" :exclusions [[org.clojure/clojure]]]
[org.tcrawley/dynapath "0.2.3" :exclusions [[org.clojure/clojure]]]
[clojure-complete "0.2.4" :exclusions [[org.clojure/clojure]]]
[org.clojure/clojure "1.9.0-alpha11"]
[org.clojure/core.typed "0.3.25"]
[org.clojure/core.cache "0.6.4"]
[org.clojure/data.priority-map "0.0.4"]
[org.clojure/core.contracts "0.0.6" :exclusions
[[org.clojure/clojure]]]
[org.clojure/core.unify "0.5.7"]
[org.clojure/core.typed.rt "0.3.25"]
[org.clojure/math.combinatorics "0.1.3" :exclusions
[[org.clojure/clojure]]]
[org.clojure/tools.analyzer.jvm "0.6.8"]
[org.clojure/core.memoize "0.5.7"]
[org.clojure/tools.analyzer "0.6.7"]
[org.ow2.asm/asm-all "4.2"]
[org.clojure/tools.reader "1.0.0-beta3"]
[org.clojure/test.check "0.9.0"]
[org.clojure/tools.nrepl "0.2.12" :exclusions [[org.clojure/clojure]]]
Op wo 31 aug. 2016 om 16:09 schreef Ambrose Bonnaire-Sergeant <
Post by Ambrose Bonnaire-Sergeant
I'm out of ideas.
Can you send your `lein version` and `lein deps :tree`
from the repo directory?
Thanks,
Ambrose
Post by Eelke van Foeken
Hi,
$ lein repl
Initializing core.typed ...
WARNING: boolean? already refers to: #'clojure.core/boolean? in
#'clojure.tools.analyzer.utils/boolean?
WARNING: boolean? already refers to: #'clojure.core/boolean? in
#'clojure.tools.analyzer.utils/boolean?
Building core.typed base environments ...
Finished building base environments
"Elapsed time: 14919.589655 msecs"
core.typed initialized.
nREPL server started on port 57873 on host 127.0.0.1 - nrepl://
127.0.0.1:57873
REPL-y 0.3.7, nREPL 0.2.12
Clojure 1.9.0-alpha11
Java HotSpot(TM) 64-Bit Server VM 1.8.0_102-b14
Docs: (doc function-name-here)
(find-doc "part-of-name-here")
Source: (source function-name-here)
Javadoc: (javadoc java-object-or-class-here)
Exit: Control+D or (exit) or (quit)
Results: Stored in vars *1, *2, *3, an exception in *e
user=> (require 'runtime-infer-demo.core-test)
nil
user=> (in-ns 'runtime-infer-demo.core-test)
#object[clojure.lang.Namespace 0x139b884e
"runtime-infer-demo.core-test"]
runtime-infer-demo.core-test=> (run-tests)
Testing runtime-infer-demo.core-test
Ran 1 tests containing 2 assertions.
0 failures, 0 errors.
{:test 1, :pass 2, :fail 0, :error 0, :type :summary}
runtime-infer-demo.core-test=> (in-ns 'runtime-infer-demo.core)
#object[clojure.lang.Namespace 0x5aee3dae "runtime-infer-demo.core"]
runtime-infer-demo.core=> (t/runtime-infer)
AssertionError Assert failed: No namespace form found
ns-form clojure.core.typed.runtime-infer/ns-end-line
(runtime_infer.clj:2566)
runtime-infer-demo.core=>
Thanks for helping out,
Eelke
Op woensdag 31 augustus 2016 14:57:17 UTC+2 schreef Ambrose
Post by Ambrose Bonnaire-Sergeant
Hi Eelke,
I can't reproduce, did you just clone the project and run the steps?
Can you post your REPL session?
Thanks,
Ambrose
Post by Eelke van Foeken
Hi,
Great feature! I am trying the demo project. I am following the
steps from the first example, but when I get to (t/runtime-infer) I get the
AssertionError Assert failed: No namespace form found
ns-form clojure.core.typed.runtime-infer/ns-end-line
(runtime_infer.clj:2566)
Am I overlooking something?
Best regards,
Eelke van Foeken
Op woensdag 31 augustus 2016 11:17:09 UTC+2 schreef Ambrose
Post by Ambrose Bonnaire-Sergeant
Hi,
The latest core.typed release has support for generating
clojure.spec specs from unit tests.
[org.clojure/core.typed "0.3.25"]
...; for very recent releases
:repositories {"sonatype-oss-public" "https://oss.sonatype.org/content/groups/public/"}
Here's an example
<https://gist.github.com/frenchy64/85c1c812daf81d07a55dd3ff82e3b0fe>
of the kind of specs it can generate
from even minimal tests.
There is a demo <https://github.com/typedclojure/auto-annotation> repository
if you want to test this feature out.
We now use a modified version of Compiler.java as an
analyzer, so there are nice noticeable speedups for
compilation.
Feedback welcome!
README <https://github.com/clojure/core.typed>
CHANGELOG
<https://github.com/clojure/core.typed/blob/master/CHANGELOG.md#0325---31-august-2016>
Thanks,
Ambrose
Ambrose Bonnaire-Sergeant
2016-09-01 00:46:03 UTC
Permalink
I just release core.typed 0.3.26, which includes AOT files and should
load much quicker.

Thanks,
Ambrose

On Wed, Aug 31, 2016 at 10:34 AM, Ambrose Bonnaire-Sergeant <
Post by Ambrose Bonnaire-Sergeant
Glad to help!
Ambrose
Post by Eelke van Foeken
That was it!
Thank you.
Op woensdag 31 augustus 2016 16:22:57 UTC+2 schreef Ambrose
Post by Ambrose Bonnaire-Sergeant
Try using cidre-nrepl "0.13.0". It might be in your ~/.lein/profiles.clj
file.
Thanks,
Ambrose
Post by Eelke van Foeken
Hey,
Apologies if I am wasting your time, I am just a beginner in Clojure,
so I might be overlooking some basic things.
Hereby
$lein version
Leiningen 2.6.1 on Java 1.8.0_102 Java HotSpot(TM) 64-Bit Server VM
$ lein deps :tree
[cider/cider-nrepl "0.8.1"] -> [org.clojure/java.classpath "0.2.0"
:exclusions [org.clojure/clojure]]
overrides
[org.clojure/core.typed "0.3.25"] -> [org.clojure/tools.namespace
"0.3.0-alpha3"] -> [org.clojure/java.classpath "0.2.3"]
[org.clojure/core.typed "0.3.25" :exclusions
[org.clojure/java.classpath]]
[cider/cider-nrepl "0.8.1"] -> [org.clojure/tools.namespace "0.2.5"
:exclusions [org.clojure/clojure]]
overrides
[org.clojure/core.typed "0.3.25"] -> [org.clojure/tools.namespace
"0.3.0-alpha3"]
[org.clojure/core.typed "0.3.25" :exclusions
[org.clojure/tools.namespace]]
[cider/cider-nrepl "0.8.1"]
[cljs-tooling "0.1.3" :exclusions [[org.clojure/clojure]]]
[compliment "0.2.0" :exclusions [[org.clojure/clojure]]]
[org.clojure/java.classpath "0.2.0" :exclusions
[[org.clojure/clojure]]]
[org.clojure/tools.namespace "0.2.5" :exclusions
[[org.clojure/clojure]]]
[org.clojure/tools.trace "0.7.8" :exclusions [[org.clojure/clojure]]]
[org.tcrawley/dynapath "0.2.3" :exclusions [[org.clojure/clojure]]]
[clojure-complete "0.2.4" :exclusions [[org.clojure/clojure]]]
[org.clojure/clojure "1.9.0-alpha11"]
[org.clojure/core.typed "0.3.25"]
[org.clojure/core.cache "0.6.4"]
[org.clojure/data.priority-map "0.0.4"]
[org.clojure/core.contracts "0.0.6" :exclusions
[[org.clojure/clojure]]]
[org.clojure/core.unify "0.5.7"]
[org.clojure/core.typed.rt "0.3.25"]
[org.clojure/math.combinatorics "0.1.3" :exclusions
[[org.clojure/clojure]]]
[org.clojure/tools.analyzer.jvm "0.6.8"]
[org.clojure/core.memoize "0.5.7"]
[org.clojure/tools.analyzer "0.6.7"]
[org.ow2.asm/asm-all "4.2"]
[org.clojure/tools.reader "1.0.0-beta3"]
[org.clojure/test.check "0.9.0"]
[org.clojure/tools.nrepl "0.2.12" :exclusions [[org.clojure/clojure]]]
Op wo 31 aug. 2016 om 16:09 schreef Ambrose Bonnaire-Sergeant <
Post by Ambrose Bonnaire-Sergeant
I'm out of ideas.
Can you send your `lein version` and `lein deps :tree`
from the repo directory?
Thanks,
Ambrose
Post by Eelke van Foeken
Hi,
$ lein repl
Initializing core.typed ...
WARNING: boolean? already refers to: #'clojure.core/boolean? in
#'clojure.tools.analyzer.utils/boolean?
WARNING: boolean? already refers to: #'clojure.core/boolean? in
#'clojure.tools.analyzer.utils/boolean?
Building core.typed base environments ...
Finished building base environments
"Elapsed time: 14919.589655 msecs"
core.typed initialized.
nREPL server started on port 57873 on host 127.0.0.1 - nrepl://
127.0.0.1:57873
REPL-y 0.3.7, nREPL 0.2.12
Clojure 1.9.0-alpha11
Java HotSpot(TM) 64-Bit Server VM 1.8.0_102-b14
Docs: (doc function-name-here)
(find-doc "part-of-name-here")
Source: (source function-name-here)
Javadoc: (javadoc java-object-or-class-here)
Exit: Control+D or (exit) or (quit)
Results: Stored in vars *1, *2, *3, an exception in *e
user=> (require 'runtime-infer-demo.core-test)
nil
user=> (in-ns 'runtime-infer-demo.core-test)
#object[clojure.lang.Namespace 0x139b884e
"runtime-infer-demo.core-test"]
runtime-infer-demo.core-test=> (run-tests)
Testing runtime-infer-demo.core-test
Ran 1 tests containing 2 assertions.
0 failures, 0 errors.
{:test 1, :pass 2, :fail 0, :error 0, :type :summary}
runtime-infer-demo.core-test=> (in-ns 'runtime-infer-demo.core)
#object[clojure.lang.Namespace 0x5aee3dae "runtime-infer-demo.core"]
runtime-infer-demo.core=> (t/runtime-infer)
AssertionError Assert failed: No namespace form found
ns-form clojure.core.typed.runtime-infer/ns-end-line
(runtime_infer.clj:2566)
runtime-infer-demo.core=>
Thanks for helping out,
Eelke
Op woensdag 31 augustus 2016 14:57:17 UTC+2 schreef Ambrose
Post by Ambrose Bonnaire-Sergeant
Hi Eelke,
I can't reproduce, did you just clone the project and run the steps?
Can you post your REPL session?
Thanks,
Ambrose
Post by Eelke van Foeken
Hi,
Great feature! I am trying the demo project. I am following the
steps from the first example, but when I get to (t/runtime-infer) I get the
AssertionError Assert failed: No namespace form found
ns-form clojure.core.typed.runtime-infer/ns-end-line
(runtime_infer.clj:2566)
Am I overlooking something?
Best regards,
Eelke van Foeken
Op woensdag 31 augustus 2016 11:17:09 UTC+2 schreef Ambrose
Post by Ambrose Bonnaire-Sergeant
Hi,
The latest core.typed release has support for generating
clojure.spec specs from unit tests.
[org.clojure/core.typed "0.3.25"]
...; for very recent releases
:repositories {"sonatype-oss-public" "https://oss.sonatype.org/content/groups/public/"}
Here's an example
<https://gist.github.com/frenchy64/85c1c812daf81d07a55dd3ff82e3b0fe>
of the kind of specs it can generate
from even minimal tests.
There is a demo <https://github.com/typedclojure/auto-annotation> repository
if you want to test this feature out.
We now use a modified version of Compiler.java as an
analyzer, so there are nice noticeable speedups for
compilation.
Feedback welcome!
README <https://github.com/clojure/core.typed>
CHANGELOG
<https://github.com/clojure/core.typed/blob/master/CHANGELOG.md#0325---31-august-2016>
Thanks,
Ambrose
Loading...