Fork me on GitHub
#meander
<
2023-01-01
>
markaddleman15:01:42

Happy New Year, meanderers! esp @noprompt 🙂 I’m wondering if you’ve given any thought to nested memory variables in zeta ? For example, in honeysql, I need to capture inline views

{:from [[{:select [[!expr !alias] ...]} !inline-view-alias] ...]
and rewrite them as
(m/map-of !inline-view-alias (m/map-of !alias !expr))
epsilon collects all expr and alias together from all of the inline views so the outer map only has a single entry.

markaddleman16:01:42

I’m thinking that a nifty notation for nested memory variables might be !! but I’m not sure if that carries enough information to expand appropriately

noprompt21:01:10

Yes, but not quite this way. This is an example where m/let would be useful on the RHS.

{:from (m/scan [{:select !pairs} !inline-view])}
(m/map-of !inline-view (m/let [[[!expr !alias] ...] !pairs]
                         (m/map-of !alias !expr)))

markaddleman21:01:39

Neat. I'm looking forward to trying it zeta when it's ready!

noprompt23:01:38

@U2845S9KL I’ve been busy at work with a big project and studying ML/AI at home. There hasn’t been a lot of overlap with Meander (yet) but I’m trying to slash through work as quickly (and responsibly) as possible so I can make a time shaped hole for Meander.

noprompt23:01:50

ML/AI I can’t really cut corners on; I just have to put in the time to learn things. But I’m pretty confident that it’s going to become more commonplace in our line of work and it won’t be time wasted.