7:34 AM
Finished parser, still gotta do the whole interpreter...lots of work!

3 hours later…
11:03 AM
@MartinBüttner @PhiNotPi I don't understand the "finding gliders" problem

I think I found the missing piece for mine. Need to fill it out and then implement it all.
@mbomb007 All that sounds very cool. What is the syntax like? (I love syntax)

11:51 AM
Speaking of syntax...I want to make a precedence table for what I have implement so far..
But I'm not sure which operators should be called highest precedence
I just know how they are evaluated

Higher precedence items take precendence over lower-valued items.
eg. 'x*y+z' *>+
Equivalently, lower-precedence items stay "lower" in the tree.

I'm confusing myself since there are not many infix binary operators (only | like regex), but weird groupings and unary operators
I'll just describe the procedure for evaluating it

It was fear of that which kept me mostly away from regex-land.
I tried to start with the cleanest syntax I could think of.
2

From the bibliography of chapter 1 of the 1962 A Programming Language, I found this intriguingly concise description of a forward-Polish (Lukasiewicz) Logic Machine. And I think I'm with it up to this part on the Logic Function F: What does (2a) mean? How is this a function? Here's my implemen...

The mathematical formulation is nice and concise, but as I discovered, it doesn't translate straight into nice and concise programming. At least not if you're too literal.

not sure what's going on there, but lol how their symbols are D, delta, and Delta.

12:07 PM
Yeah. It took me quite a bit of time to crack it. What they were talking about.
But it was good exercise (for me).
More recently, I've actually read Lukasiewicz's book.
But there's some more documents in the early history of polish/reverse-polish syntax that I haven't gotten ahold of yet. Samelson and Brown, I think are their names. I wish I hadn't let my acm expire.
Basically, it's Lisp without parentheses. Because all the operators have a fixed number of parameters.

ah that makes sense

Not sure how I took over the conversation. What were you talking about?

precedence, I think.

I was thinking aloud about how I would describe my syntax

12:14 PM
For grouping there are the pairs `(){}<>[]`

I used 2 of those regex-like ones. I also have a grouping operator with lower precedence than |
`a|bc`*`
^ is equivalent to a|(bc)*

I almost added grouping, but then decided I didn't need it. But I have named pattern matchers so pieces can be manipulated like groups.
For a BNF you start with the lowest precedence operator and describe its statement.
EXPR := EXPR | EXPR
or maybe some different names, if you want to avoid left-recursion.
I'm a little afraid that nobody will like my language because it's so bizarre.
It mixes 2 1/2 different syntaxes together.

I think there is a lot of interest for bizarre languages here

true. good call.
I'm not sure how much math and stuff I'll need in the imperative part (actions performed on successful matching at a specific node).
... which probably means that's not what I should be concerned about now.
:)
yagni, and such
There aren't really numeric variable as such currently, but you can use a pattern machine node to hold a value and that can be named with a macro.

12:37 PM
This recently invented code-golf language might be an example of impure forward Polish syntax

@feersum what's unclear about the glider problem?

is there any requirement of spaces around it?

@feersum no, hence the remark in parentheses

@MartinBüttner that doesn't make sense though, because there is a match in the 'no match' example then

then I should fix that

12:51 PM
left glider, bottom left of grid

hm I don't see it
the 3x3 grid containing the glider does have too contain spaces in the right cells

lol, why did you say there no requirement of spaces?
is this in the description somewhere?

I thought you meant the 5x5 layer surrounding the 3x3 grid
I'll clarify that
@feersum is this better?

good, it actually mentions a 3x3 box
I could already do this one with the first version
oh wait, I need alternation
I implemented that though

yeah this one isn't particularly difficult. this is more about how elegantly it can be solved

1:01 PM

6 hours later…
7:09 PM
@MartinBüttner @PhiNotPi and everybody else - props for coming up with the questions btw, there's a lot of good variety in there

1 hour later…
8:35 PM
17 bytes to count Minecraft chests :)

D: daaaamn
Planning on actually using yours for golf? :P

yes
as well as matching, I plan to use it for ascii art generation

:) I see

1 hour later…
9:45 PM
@Sp3000 thanks :)

1 hour later…
11:00 PM
Hah, my interpreter is far enough along that a bug was caused by my code input, not by the interpreter code! Feels like progress : P

11:13 PM
heh, nice job ;)

11:37 PM
Here's a fun extra thing to try writing in your language - ASCII maze solver.