Also you can add missing annotations via ann. (ann ^:no-check clojure.core/+ ....)
Core vars observe the same rules as all vars: they must be annotated. Thanks, Ambrose On Thu, Aug 29, 2013 at 3:44 PM, Ambrose Bonnaire-Sergeant < abonnaireserge...@gmail.com> wrote: > Hi, > > Roughly 1/3 of clojure.core is annotated and comes included with > core.typed. They are unchecked annotations. > > > https://github.com/clojure/core.typed/blob/master/src/main/clojure/clojure/core/typed/base_env.clj#L658 > > You can lookup types via cf at the REPL. > > (clojure.core.typed/cf +) > ;=> (Fn [clojure.core.typed/AnyInteger * -> clojure.core.typed/AnyInteger] > [Number * -> Number]) > > Thanks, > Ambrose > > > On Thu, Aug 29, 2013 at 3:40 PM, Jozef Wagner <jozef.wag...@gmail.com>wrote: > >> How about annotating clojure.core API. Is it needed, provided, optional? >> >> >> On Thursday, August 29, 2013 12:28:35 AM UTC+2, Ambrose Bonnaire-Sergeant >> wrote: >>> >>> Hi, >>> >>> After 10 months and 26 0.1.x releases of transitioning core.typed from >>> an ambitious student project, I am finally comfortable recommending >>> core.typed for production use. >>> >>> Production Ready >>> >>> My interpretation of "production ready" in this context is: >>> - core.typed can *find bugs* in real code >>> - core.typed will *not slow down* your existing code by loading >>> a large library at production. (core.typed does introduce an extra >>> "identity-like" >>> function call at type annotations, I assume this is a candidate for >>> optimisation via >>> HotSpot) >>> - A basic *tutorial*, API docs and example project exist >>> - core.typed is *currently used in production* with success (at >>> CircleCI for several months) >>> - The core type checking API is mostly *stable*, with only very >>> minor removals/breaking changes in the last few months. >>> >>> There are several outstanding issues, but I am satisfied that core.typed >>> can bring real utility to real programs *today* and with *no >>> production-time drawbacks*, thus this release. >>> >>> How to get started >>> >>> Leiningen dep: >>> >>> [org.clojure/core.typed "0.2.0"] >>> ...; for very recent releases:repositories {"sonatype-oss-public" >>> "https://oss.sonatype.org/**content/groups/public/ >>> <https://oss.sonatype.org/content/groups/public/>"} >>> >>> If you like following tutorials try the user/types guide. If you just >>> want to get your hands on some typed code, see the Example project. >>> >>> core.typed User Guide<https://github.com/clojure/core.typed/wiki/User-Guide> >>> core.typed Types Guide<https://github.com/clojure/core.typed/wiki/Types> >>> Example project <https://github.com/frenchy64/core.typed-example> >>> API Reference <http://clojure.github.io/core.typed/> >>> >>> core.typed Github Home <https://github.com/clojure/core.typed> >>> core.typed Wiki <https://github.com/clojure/core.typed/wiki> >>> >>> Please report bugs, ask questions or discuss things on the mailing >>> list<https://groups.google.com/forum/?fromgroups#!forum/clojure-core-typed> >>> . >>> >>> (FWIW I'm ambrosebs on #clojure.) >>> >>> Thanks, >>> Ambrose >>> >> > -- -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups "Clojure" group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.