Fork me on GitHub
Lucy Wang06:09:30

Took me really a long time, but still could not figure out the problem


@wxitb2017 It’s perfectly fine to cross post here and on Github. 👍


./github noprompt/meander


(It's on this slack)


@timothypratley I think that issue may be similar to the one you posted. I’m taking a look (finally).


It would be great if the Github desktop app showed issues too.


I think I hit this as well with a few of the approaches I tried when processing parsed xml with meander, e.g. trying to extract an optional attribute from an optional element or nil.

Jimmy Miller19:09:16

I was trying to multi-task and added some confusing comments on the issue. I actually can't get this to stackoverflow, so it may be related to the compiling issue with a smaller stack amount.


@jimmy Yeah, on the @timothypratley issue reducing the stack size produced the SO. I’m getting the SO with Lucys example without any modifications to my stack size.

Jimmy Miller20:09:11

How are you running the code? I don't think I've modified my stack size and I have no problem.


Let me know if you figure anything out, I’m going back and forth between parenting and looking at it. 😐

Jimmy Miller20:09:52

Nevermind if I run it in a fresh clj thing I do get the stackoverflow. Must have increase by stack size in cider.


I just copy/pasted her example and tweaked the pattern to be

(m/scan (m/or (m/and ?b1 ?b2)
               (m/and ?b1 (m/or _ ?b2))))


It seems like has something to do with the new subsequence node.


(_ ... (m/or (?b1 (m/or _))) . _ ...)
This is the smallest example I have so far.


OK… I think it did have something to do with the new subsequence node.


It didn’t implement meander.syntax.epsilon/walk.

Jimmy Miller21:09:42

We have a non-recur tail recursion in meander epsilon compile. Can't play with it right now. But that is some low hanging fruit to fix.


I missed this earlier. Yeah, if you can pick that fruit that’d be great.


Is anyone able to try bin/test on the branch corresponding to this PR?


CI says it passes but my local machine is failing on the cljs tests.