JoeStrout/miniscript

"got EOL(end-of-line) where Comma or RCurly is required" when RCurly is in another line

Closed this issue · 3 comments

a = {"p": 40,
	"q": 55
}

gives error:

Compiler Error: got EOL(end-of-line) where Comma or RCurly is required [line 1]

Below is fine.

a = {"p": 40,
	"q": 55}

This is normal.
If you really want to let the RCurly be in another line alone, try:

a = {"p": 40,
        "q": 55,
}

Add a comma at the end of the last key-value pair.

First of all, happy new year of 2024 to you both.

This is normal.

@Withered-Flower-0422 I don't think so. Here are support from the three languages that "influenced the design of MiniScript", pitifully I don't find a way to try out REALbasic easily:

Python:

>>> a = {
... "p":4,
... "q":5
... }

Lua:

t = {
  a=4, 
  b=5
}

C#:

		var p = new Person() {
			FirstName = "O",
			LastName = "K"
		};

@JoeStrout Frankly, I'm not complaining here. Just thought it could be a common error that many programmers may experience when they pick up MiniScript (Solid work and neat design, BTW). The problem itself is not that painful, as @Withered-Flower-0422 pointed out the workaround is fine. Besides, I totally understand if it's just not worth changing the parser for this.

But again, it's not normal IMHO.

"Normal" as in "correct, intended, documented behavior." Not a bug.

For documentation on how line continuation works in MiniScript, see: https://miniscript.org/wiki/Line_continuation