Talk:Witeal
Jump to navigation
Jump to search
Issues
- The number of cells is limited to 1000, is this an interpreter limitation? If not it breaks TC.
- The descriptions of the '<' and '>' commands are not clear, however, I assume that the commands "<>+-" are identical to BF.
- The size of a cell is not specified; this is more important than normal because based on the examples it does not appear to use ASCII.
- It does not use the ASCII character set, the set needs to be defined; especially digits.
- The "@","|" and "_" commands are used in the examples. Do they do anything?
- The "[", "]", "&", "/" and "." commands appear to be interrelated. The "/" may be loading a value into some sort of register that the other commands use. The "." would appear to be a "break" style label with the "[" and "]" commands being just labels, not part of a while loop. If so the TC claim is unproven.
- I don't see how "/" and "&" trigger a character print.
- There appears to be something odd about the sequence of instructions; is the "[something]" construct like the looping constructs in the unix DC command? --(this comment by Rdebath at 07:09, 20 June 2014 UTC; please sign your comments with ~~~~)
- I looked examples, and it seems that:
- The program must be surrounded by "@" and "_".
- "[" and "]" loop while a condition is true. If the code inside the loop raises an error (cell pointer outside the range 0-999), program jumps to the next "."-label.
- At the end of a loop, there is a condition: "&co" or "&/". "c" is a number represented by a sequence of "+" or "-" characters. "o" is an operator "<" (less than), ">" (greater than) or "_" (equals). "&/" means "if the current cell is not 0". It is not clear to me what "&" does when not inside a loop.
- "/" inputs a value if cell is "empty" (0) and outputs it otherwise.
- Characters 1-26 are A-Z, -1 is newline.
- GermanyBoy (talk) 21:15, 20 June 2014 (UTC)
- Or maybe the program can be enclosed in "@" and "|", just a mistake or something esoteric?
- And the "compares two strings" example has embedded "_" characters, what's with that?
- It looks like "[]" without a condition is an unconditional loop, but "[+]." isn't; it seems that "adding" past the maximum is an error but "subtracting" past zero is not. Would the "add" happen even if it is an error, giving zero as a space; otherwise -1 is both space and newline.
- There are no examples of "&" outside loops ==> not allowed.
- But inside a loop I think it has to be evaluated at the start of a loop, even though lexically it's at the end...
- Except sometimes, it needs to be evaluated in the middle of the loop (where it appears lexically).
- And the hello world printing loop seems to be conditioned on the cell offset, not the cell contents.
- Basically, I could write some sort of interpreter; but it ain't gonna run the examples, not even approximately.
- Rdebath (talk) 07:44, 21 June 2014 (UTC)
- The string comparison program has "&" commands outside a loop, for example "&++++++++_", "is equal to H". I think that the condition command "&" raises an error if it evaluates to false and jumps to the next "."-label. GermanyBoy (talk) 14:15, 21 June 2014 (UTC)
- Okaaay, I miscounted brackets. But that does fit the exception processing ... oh ... The *next* dot, I suppose that means it'll jump into loops too. And some people wonder why "ON ERROR GOTO" is a bad idea! Anyway thanks for the help, but I think I'll skip this one. I'd have to re-invent it and it's starting to look ugly. Rdebath (talk) 17:08, 21 June 2014 (UTC)