On Sat, May 02, 2015 at 07:13:55PM -0700, Dan Leslie wrote: > First off, thank-you for the aid!
You're welcome! > Peter Bex <[email protected]> writes: > > I'm sorry to say it, but this egg contains a lot of strange mistakes and > > weird things; for example, the setup-file tries to emit a module named > > "funky", which does not exist. Also, the renaming procedure from > > explicit renaming macro transformers is referred to as "inject", which > > is extremely misleading: that's the _opposite_ of what it does! > > Heh, the `funky` was a copy-paste mistake; oops. ;) It's also a bit of a problem that csc doesn't give an error when trying to emit an import file that doesn't exist. I've created a ticket so we don't forget: https://bugs.call-cc.org/ticket/1188 > The opposite of inject would be extract; can you explain this a little > more? I'll admit, I'm quite confused by Chicken's syntax extensions. The opposite of "inject" in macros is "rename". Injection causes the specified identifier to be used as-is, unhygienically. Renaming causes the identifier to be renamed so it won't shadow (or be shadowed by) any locally available identifiers at the macro expansion site. There are a few tutorials about how this works, see http://wiki.call-cc.org/tutorials > I liked the separation between compilation scope for the 'core' > and the ecosystem of methods that build upon it. I agree, it's somewhat > confusing at first glance, but it made catching the problems faster when > I had yet to write any tests. ;) Yeah, it may just work. > Thank-you again! This egg was my first real foray into playing with > Chicken's lower level syntax extensions; and I must say it's been rather > confusing, which seems to have been due to gross misunderstandings on my part. No problem. If you have further questions, just ask :) Cheers, Peter
signature.asc
Description: Digital signature
_______________________________________________ Chicken-users mailing list [email protected] https://lists.nongnu.org/mailman/listinfo/chicken-users
