4 ms·
The page says, "Objects may be created using indentation instead of explicit braces, similar to YAML. " Similar to YAML? What exactly does that mean? Is ther
by jamesbritt 16y ago
The page says, "Objects may be created using indentation instead of explicit braces, similar to YAML. "
Similar to YAML? What exactly does that mean? Is there someplace that explains the specific indentation rules?
The indentation rules of YAML are massively borked; it's not enough that something be indented, it has to be indented a very specific number of spaces. As opposed to, say, Haskell's more sane off-side rules.
- jashkenas 16y agoCoffeeScript isn't particular about the specific number of spaces, as long as you're consistent. For example: book.save title: "The Book of the Thousand Nights and One Night" length: 45 chapters: "The Fisherman and the Jinni": 1 "The Tale Of The Ensorceled Prince": 13 "The First Kalandar's Tale": 27 Compiles into this JavaScript: book.save({ title: "The Book of the Thousand Nights and One Night", length: 45, chapters: { "The Fisherman and the Jinni": 1, "The Tale Of The Ensorceled Prince": 13, "The First Kalandar's Tale": 27 } });
- TomasSedovic 16y agoI'm afraid that's not correct. You can use arbitrary number of spaces to indent a block in YAML[1]. It does't matter if it's 2 of 4 or 17. The only limitations are that it must be greater than the indentation of the parent node (obviously), that all siblings must have the same indentation and that tabs are not allowed. Are you sure you're not mistaking this with HAML? It's a bit stricter with the indentation requirements. [1]: http://www.yaml.org/spec/1.2/spec.html#id2777534 http://www.yaml.org/spec/1.2/spec.html#id2777534
- jamesbritt 16y ago"I'm afraid that's not correct. You can use arbitrary number of spaces to indent a block in YAML[1]." Well, shit. Thanks; how did I miss that? "Are you sure you're not mistaking this with HAML? It's a bit stricter with the indentation requirements." Oh, that I know. One reason I avoid it.