Talk:Sigil

From Esolang
Jump to navigation Jump to search

This page could really use some examples. While I think I am able to understand the basic syntax from the EBNF and other info on the page, there are still a few things that are not clear to me. The most uncertain thing for me is how Sigil distinguishes between commands and numbers with the same representation as a command. E.g. Does %($#) pop an element from the stack and then push it back on, or does it push 4 on the stack?  Is %%(n) necessary to include any literal number in a program or is it only needed to distinguish some numbers from commands? Some other things that I think could be more clear:

  • Is zero made with an empty pair of parentheses () or %%()?  (And #=1, $=2, %=3, $#=4, etc.?)
  • Which values are true and which are false for the if and while commands?
  • Does the chain command just allow sequences of expressions to be evaluated in order?
  • Do I understand correctly that an empty expression can be a NOP? Does %() push anything on the stack or is it an invalid command?

Thanks. — Anthonykozar (talk) 20:23, 31 March 2025 (UTC)