Ah, of course, that's automatically aliased - thanks!
On 15 June 2014 00:58, David Nolen <dnolen.li...@gmail.com> wrote: > Those should be cljs.core/Foo > > David > > On Sat, Jun 14, 2014 at 6:27 AM, Colin Fleming > <colin.mailingl...@gmail.com> wrote: > > One more question, I've seen things like this a couple of times: > > > > (instance? cljs.core.Delay x) > > > > and > > > > (set! cljs.core.ExceptionInfo.prototype (js/Error.)) > > > > Here the JS FQN doesn't use the js/ alias. Is that because instance? and > > set! are considered interop forms, or can fully qualified JS objects be > > referred to anywhere without the alias? > > > > > > On 10 June 2014 01:37, Colin Fleming <colin.mailingl...@gmail.com> > wrote: > >> > >> Great, thanks. > >> > >> > >> On 10 June 2014 01:33, David Nolen <dnolen.li...@gmail.com> wrote: > >>> > >>> That is correct. > >>> > >>> On Mon, Jun 9, 2014 at 9:31 AM, Colin Fleming > >>> <colin.mailingl...@gmail.com> wrote: > >>> > Oh, one other question - does :refer-clojure in CLJS refer both > macros > >>> > and > >>> > functions in the same declaration? i.e. I could do something like: > >>> > > >>> > (ns foo > >>> > (:refer-clojure :only [defn reduce])) > >>> > > >>> > > >>> > On 10 June 2014 01:27, Colin Fleming <colin.mailingl...@gmail.com> > >>> > wrote: > >>> >> > >>> >> Thanks David. I think I'll implement this the way it should work > then, > >>> >> and > >>> >> users will see an unresolved symbol warning if they use the > incorrect > >>> >> forms. > >>> >> As things get fancier I can provide some explanation and an > intention > >>> >> to > >>> >> migrate the incorrect forms to the correct ones. > >>> >> > >>> >> Hopefully this should be done sometime this week. It's looking > pretty > >>> >> nice > >>> >> :-) > >>> >> > >>> >> > >>> >> On 10 June 2014 00:21, David Nolen <dnolen.li...@gmail.com> wrote: > >>> >>> > >>> >>> On Sun, Jun 8, 2014 at 5:55 AM, Colin Fleming > >>> >>> <colin.mailingl...@gmail.com> wrote: > >>> >>> > > >>> >>> > Hi all, > >>> >>> > > >>> >>> > I'm working on CLJS symbol resolution for Cursive. There are a > lot > >>> >>> > of > >>> >>> > corners where it's hard to figure out from the doc how they > should > >>> >>> > work - > >>> >>> > I've looked through the code but I'm not sure I've got it all > >>> >>> > right. > >>> >>> > > >>> >>> > I've seen several times in the group here that / should only be > >>> >>> > used > >>> >>> > for CLJS namespaces, never for JS properties. So (Array/isArray > >>> >>> > ...) should > >>> >>> > be (js/Array.isArray ...) instead. Is this correct? > ClojureScript: > >>> >>> > Up and > >>> >>> > running states that / can be used for JS module objects, which I > >>> >>> > take to > >>> >>> > mean root-level objects - their example is (Raphael/color....) > from > >>> >>> > the > >>> >>> > Raphael JS library. Their discussion of the differences in > >>> >>> > this-binding is > >>> >>> > confusing since it seems that / should be used for JS but only in > >>> >>> > the case > >>> >>> > of top-level objects. > >>> >>> > >>> >>> This is correct. / in ClojureScript should only be used for > >>> >>> namespaces. Any place this isn't the case that isn't one of the > >>> >>> exceptional cases in ClojureScript should be considered an > oversight. > >>> >>> > >>> >>> > confirm-ns in analyzer.clj contains a list of namespaces which > >>> >>> > should > >>> >>> > not warn, i.e. which are implicitly required, as I understand it > >>> >>> > (cljs.core, > >>> >>> > goog, Math, goog.string). CLJS itself contains examples like > >>> >>> > (Math/floor...) > >>> >>> > - does this mean that JS module objects are considered > namespaces? > >>> >>> > Is this > >>> >>> > true of provide'd Google Closure namespaces (e.g. goog.string, > >>> >>> > which is also > >>> >>> > used like this in the CLJS source)? > >>> >>> > >>> >>> It's probably worth making an exception for Math for code > portability > >>> >>> reasons. The others are proper namespaces. ClojureScript doesn't > know > >>> >>> anything about "JS Modules". If a JS library is not required as a > >>> >>> namespace then it should be accessed in the standard way, no /. > >>> >>> > >>> >>> > Using e.g. :include-macros, it's possible to have the same alias > >>> >>> > refer > >>> >>> > both to a CLJS and CLJ namespace simultaneously. I'm assuming > that > >>> >>> > in this > >>> >>> > case, if a symbol name were to conflict, that the macro form > would > >>> >>> > take > >>> >>> > precedence in the head of a list (since macroexpansion happens > >>> >>> > before > >>> >>> > evaluation) but the CLJS form would take precedence everywhere > >>> >>> > else. Is this > >>> >>> > correct? > >>> >>> > >>> >>> That's correct and it's actually something we take advantage of to > do > >>> >>> inlining arithmetic functions etc. > >>> >>> > >>> >>> > I'm assuming that my-namespace.cljs does not implicitly refer > >>> >>> > macros > >>> >>> > from my-namespace.clj - is this correct? > >>> >>> > >>> >>> That is correct. > >>> >>> > >>> >>> David > >>> >>> > >>> >>> -- > >>> >>> Note that posts from new members are moderated - please be patient > >>> >>> with > >>> >>> your first post. > >>> >>> --- > >>> >>> You received this message because you are subscribed to the Google > >>> >>> Groups > >>> >>> "ClojureScript" group. > >>> >>> To unsubscribe from this group and stop receiving emails from it, > >>> >>> send an > >>> >>> email to clojurescript+unsubscr...@googlegroups.com. > >>> >>> To post to this group, send email to > clojurescript@googlegroups.com. > >>> >>> Visit this group at http://groups.google.com/group/clojurescript. > >>> >> > >>> >> > >>> > > >>> > -- > >>> > Note that posts from new members are moderated - please be patient > with > >>> > your > >>> > first post. > >>> > --- > >>> > You received this message because you are subscribed to the Google > >>> > Groups > >>> > "ClojureScript" group. > >>> > To unsubscribe from this group and stop receiving emails from it, > send > >>> > an > >>> > email to clojurescript+unsubscr...@googlegroups.com. > >>> > To post to this group, send email to clojurescript@googlegroups.com. > >>> > Visit this group at http://groups.google.com/group/clojurescript. > >>> > >>> -- > >>> Note that posts from new members are moderated - please be patient with > >>> your first post. > >>> --- > >>> You received this message because you are subscribed to the Google > Groups > >>> "ClojureScript" group. > >>> To unsubscribe from this group and stop receiving emails from it, send > an > >>> email to clojurescript+unsubscr...@googlegroups.com. > >>> To post to this group, send email to clojurescript@googlegroups.com. > >>> Visit this group at http://groups.google.com/group/clojurescript. > >> > >> > > > > -- > > Note that posts from new members are moderated - please be patient with > your > > first post. > > --- > > You received this message because you are subscribed to the Google Groups > > "ClojureScript" group. > > To unsubscribe from this group and stop receiving emails from it, send an > > email to clojurescript+unsubscr...@googlegroups.com. > > To post to this group, send email to clojurescript@googlegroups.com. > > Visit this group at http://groups.google.com/group/clojurescript. > > -- > Note that posts from new members are moderated - please be patient with > your first post. > --- > You received this message because you are subscribed to the Google Groups > "ClojureScript" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to clojurescript+unsubscr...@googlegroups.com. > To post to this group, send email to clojurescript@googlegroups.com. > Visit this group at http://groups.google.com/group/clojurescript. > -- Note that posts from new members are moderated - please be patient with your first post. --- You received this message because you are subscribed to the Google Groups "ClojureScript" group. To unsubscribe from this group and stop receiving emails from it, send an email to clojurescript+unsubscr...@googlegroups.com. To post to this group, send email to clojurescript@googlegroups.com. Visit this group at http://groups.google.com/group/clojurescript.