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.

Reply via email to