On Aug 13, 2009, at 4:59 PM, Daniel Lyons wrote:
> On Aug 13, 2009, at 2:30 PM, Brian Hurt wrote:
>
>> I'm just wondering what people's response would be to allow user-
>> generated reader macros. I'm not sure, but I think the only change
>> to the clojure core that would be necessary in order to do this
>> would be that in clojure/src/jvm/clojure/lang,
>> LispReader.dispatchMacros would have to be made public. This would
>> allow user code to update this array and add new macro functions.
>>
>> Now, I can certainly see a lot of potiential downsides to this.
>> Redefining what #{} or #() means is just the start. But it'd make
>> it a lot easier to do things with DSLs.
>>
>> So, what are people's thoughts?
>
> Trying to use them in Common Lisp has frustrated the crap out of me.
> The only library I know of that promulgates them seriously is CL-SQL
> and the gymnastics you have to do to install the reader macros are
> frustrating. Another library I tried to use I couldn't get to work
> at all (units, I think).
>
> In general I don't think they're worth the trouble. Reducing code
> compatibility is also a problem. Perhaps with namespaces there could
> be a better way to do it than CL does but I'm very wary of them. I
> don't think Scheme lets you have them at all.
Indeed, Rich has said that he's strongly disinclined to add them:
http://groups.google.com/group/clojure/browse_frm/thread/f1148b3569e8d275
For my part, I would like to have them available, simply because I
like concise, purpose-built languages (xpath-esque tree traversal
stuff lately). But then, I can see the damage they've caused in other
environments. Power and responsibility aren't always well-managed.
- Chas
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to [email protected]
Note that posts from new members are moderated - please be patient with your
first post.
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
-~----------~----~----~----~------~----~------~--~---