Hi Elena,

I thinks the Lisp convention says something about how to think about
Lisp programs.  Well-written macros shouldn't require you to think
about the fact that they are macros.

Instead of thinking about functions calls vs. macro calls, try to
think of "forms".  A form can be a function call (+ x y), a macro (and
x y), or a special form (if x y z).  The choice of function/macro is
really just an implementation detail.  What matters is what the form
does, and what it returns.

-Stuart Sierra


On Mar 4, 8:03 pm, Elena <egarr...@gmail.com> wrote:
> I wonder if Clojure does employ the same syntax either for macros and
> functions by design or it's just a remainder of Lisp. I think that a
> shared syntax for both macros and functions calls is a flaw in the
> syntax of Lisps, because you can't tell, just by looking at a form,
> which expressions get evaluated and which don't, at least when you are
> dealing with side effects.
>
> Someone says that when you are reading code you are expected to know
> the documentation of each form you encounter, but I don't agree.
> Usually when I read code I rely heavily on good naming, so I don't
> usually need to reach for the documentation.
>
> Since I'm a C/C++ programmer, my convention is that macros and only
> macros are all uppercase, so I can easily spot them and be aware that
> they behave differently.
>
> What do you think?
> Thanks
--~--~---------~--~----~------------~-------~--~----~
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
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
-~----------~----~----~----~------~----~------~--~---

Reply via email to