I have read LOL previously, but I thought I missed something so I looked
at it again, and I still don't understand what you mean. Is there
something in LOL that is helpful in understanding Julia macros (beyond
general Lisp macrology stuff)?
What motivated the choices in Julia such as
1. not having an equivalent of MACROLET
2. not having symbol macros (which can be quite powerful in avoiding a
code walker), and of course SYMBOL-MACROLET
3. the specific macro hygenie scheme chosen by Julia?
Sorry for asking so many questions, I just want to understand these
things better.
Best,
Tamas
On Mon, May 04 2015, Jake Bolewski <
jakebo...@gmail.com> wrote:
> Let over lambda
>
> On Monday, May 4, 2015 at 5:59:27 AM UTC-4, Tamas Papp wrote:
>>
>> Thanks, this is useful.
>>
>> I am wondering if there are any sources/discussions I could read on the
>> design choices of the syntax and semantics of Julia macros.
>>
>> Papers at
http://julialang.org/publications/ say very little about
>> macros. I found
>>
>>
https://github.com/stevengj/Julia-EuroSciPy14/blob/master/Metaprogramming.ipynb
>> but even that has only very simple code.
>>
>> Before I suggest anything, I would like to see what is possible with
>> more complicated examples and try to write a few of my own: can someone
>> recommend papers, or packages to study for more complex macros?
>>
>> Best,
>>
>> Tamas
>>
>> On Sun, May 03 2015, Mauro <
maur...@runbox.com <javascript:>> wrote:
>>
>> > You're probably much further than I am with this... Anyway, the way
>> > I've scanned for available syntax to be used in a macro is just wrap the
>> > syntax in :( ) and see whether it gives a parser error or not. If not
>> > take the thing it returns apart and do what you want with it. For
>> > instance I use
>> >
>> > @traitfn tf1{X, Y; Tr1{X}, Tr1{Y}}(a::X, b::Y) = fun1(a) + fun1(b)
>> >
>> > On Sun, 2015-05-03 at 20:01, Tamas Papp <
tkp...@gmail.com <javascript:>>
>> wrote:
>> >> On Sun, May 03 2015, Toivo Henningsson <
toiv...@gmail.com <javascript:>>