top | item 37971318

(no title)

drewtato | 2 years ago

The syntax definitions on github are 1. not on the site, and 2. not very good, so here's some better ones:

F (fill/forward): draw a pixel and move forward

C (color): change the color

R (rotate): rotate the direction of F by 45 degrees

[ ... ] (loop): anything inside this is executed twice

discuss

order

susam|2 years ago

> The syntax definitions on github are ...

Are you referring to the short list at the top of the README on GitHub? That list does not provide "syntax definitions". That's just a quick introduction about what is about to come.

The commands are explained in detail in the section "Commands" later here: https://github.com/susam/cfr#commands

> F (fill/forward): draw a pixel and move forward

The command "F" does not draw a pixel and move forward. Instead "F" moves forward first and then draws a cell.

> [ ... ] (loop): anything inside this is executed twice

The control flow command "[" can be written without a corresponding "]". For example "[", "[F", "[[F", etc. are valid CFR[] inputs. Again, the section of the README I have linked to above defines what "[" and what "]" are.

drewtato|2 years ago

Barely anyone is going to go to the github, especially outside of HN, and only some of those people are going to read past the first image, so it's important that you get the most important information out there immediately. I glanced at the extended explanation and decided it would be faster to figure it out by putting stuff in the website. The instant visual feedback means you don't need to tell users every nuance of every command, but you do need to pick the specific details that users can use to learn everything else.

kaoD|2 years ago

> For example "[", "[F", "[[F", etc. are valid CFR[] inputs.

Are those different from just "F"?

If not, even if those are technically valid syntax, op's explanation seems clearer. I was confused by the README definition too and came to op's conclusion after experimenting for a while.

If they are not equivalent to just "F" I still don't get the distinction so the README definition is not very good considering it confused at least both op and me.

(This is meant as constructive criticism, I'm having a lot of fun playing with this.)

hipadev23|2 years ago

[deleted]