Excellent explanation.

Thank you everybody.

Plínio


On Thu, Mar 13, 2014 at 12:54 PM, Andy Fingerhut
<andy.finger...@gmail.com>wrote:

> The Clojure lint tool Eastwood (https://github.com/jonase/eastwood) uses
> this {:declared true} metadata to distinguish between a declare followed
> later by a def on the same var (no warning) from a def followed later by
> another def on the same var (when it issues a warning).
>
> declare is also an explicit signal to the human reader that you do not
> intend to give this var a value now, but you plan to later, either because
> of mutual recursion in definitions, or for a preferred order of definitions
> in the file that you believe is clearer.
>
> Andy
>
>
> On Thu, Mar 13, 2014 at 7:14 AM, Gal Dolber <g...@dolber.com> wrote:
>
>> #'declare adds extra meta to the var {:declared true}
>>
>> I don't think it's being used right now, but it can be specially handled
>> by the compiler, for example, to ignore the #'declare stataments from the
>> emitted bytecode, I'm experimenting with this here:
>>
>>
>> https://github.com/galdolber/clojurefast/commit/649672baede3e0f1cc8b3e9e42b6e899927a9c09
>>
>>
>> On Thu, Mar 13, 2014 at 10:57 AM, Ambrose Bonnaire-Sergeant <
>> abonnaireserge...@gmail.com> wrote:
>>
>>> No difference, but declare can take multiple vars as arguments.
>>>
>>> Thanks,
>>> Ambrose
>>>
>>>
>>> On Thu, Mar 13, 2014 at 9:51 PM, Plínio Balduino <pbaldu...@gmail.com>wrote:
>>>
>>>> Hi there
>>>>
>>>> Is there any difference between declare and def when I'm making a
>>>> forward declaration?
>>>>
>>>> Thanks
>>>>
>>>> Plínio
>>>>
>>>> --
>>>> 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/d/optout.
>>>>
>>>
>>>  --
>>> 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/d/optout.
>>>
>>
>>  --
>> 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/d/optout.
>>
>
>  --
> 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/d/optout.
>

-- 
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/d/optout.

Reply via email to