6macros: discussing the finer points of Perl 6 macros, Qtrees, and how to stay sane | irclog: irclog.perlgeek.de/6macros/today
Set by moderator on 28 July 2015.
02:48 ilbot3 joined 17:37 Ven joined 18:18 FROGGS joined 18:38 Ven joined 20:09 Ven joined 20:24 vendethiel joined
vendethiel masak: do we have a github issue about what we discussed irclog.perlgeek.de/6macros/2017-02-27 + the next day? 20:56
I realized I was very wrong then :-)
cognominal salut vendethiel 20:58
vendethiel hello
21:17 Ven joined
vendethiel Okay, done writing the setf-related thingie. Good. now... 21:25
21:25 Ven joined
vendethiel I just started reading Common Lisp Recipes (only 5 months after getting it! woo!) and I realize how wrong I was at first (2017-02-27, 28 - as I linked previously). 21:26
(I guess what happened on the '27 is mostly inconsequential, mostly about quasis nesting/scoping) 21:27
this message in particular shows a misunderstanding: irclog.perlgeek.de/6macros/2017-02...i_14177763
it's not interesting at all in this case 21:33
and mostly - it's not codewalking 21:51
what's actually interesting is **injecting symbols** 21:52
so we're back to the "hygiene makes it hard to write a lot of macros" point.
I realized that when looking at something tangential - clhs.lisp.se/Body/m_defi_1.htm define-symbol-macro 21:54
can we, in 007 nowadays, write `macro term:<v> { ... }; v`
21:55 Ven joined
vendethiel I need to check, and I only have my windows computer here. 21:55
I'm not sure why defun and defmacro have short names, but define-symbol-macro doesn't.. :) 21:56
anyway, there's a clear duality between define-symbol-macro <=> symbol-macrolet and defmacro <=> macrolet
However we're still stuck at the "help me have these identifiers make their way into the user code" 21:58
I was thinking of adding a trait to a macro
macro foo($node) is injecting(<< &infix:<+> $a >>) { $node }
foo({ 3 + 4 }) # this would use the macro's +
I'm just throwing this idea I had. It's not very good (dynamic identifiers, how do you set the values, etc), but I don't think we have a solution yet, so I'll throw stuff around :) 21:59