Talk:Black

From Esolang
Jump to navigation Jump to search

Another way to do output is whenever any non-space is moved, that character is output, and you could do input by setting a parameter which character(s) are replaced by the input, and it changes to spaces or non-spaces depending on if the input bit is zero or one. --Zzo38 20:56, 30 May 2006 (UTC)

Any non-space? If you do that, backspace will become quite a common character in the average Black program! --ais523 14:22, 1 Jun 2006 (UTC)
No, only ASCII 33 to 126. This isn't supposed to be a normal output or input at all, it is more like debugging input and output. For many program you still can use the 0-9 and N format of output. Maybe one command-line switch to replace them with the corresponding ASCII characters, for example 33N32N33N corresponds to "! !". --Zzo38 16:57, 1 Jun 2006 (UTC)
That's how the Hello World program works. --ais523 07:20, 5 Jun 2006 (UTC)

Trying to make an interpreter

I'm trying to make a visual interpreter in Javascript, but there is something wrong with it and I can't figure out what. This is how it executes:

  • See if there is non-space behind and to the left or right of the pointer. If one (but not both), perform turn direction to left or right.
  • Move forward to whatever the direction is. If new position in non-space cell, move that cell forward to direction and replace with space. Turn to opposite direction.

To my understanding, this is all it should do (not including the program termination, it's there but I didn't mention it above). The smaller examples work, but the example program for printing 1s makes the interpreter go crazy. The interpreter (not entirely finished) can be found here: http://yiap.nfshost.com/esoteric/black/black.html It'd be great if the problem could be solved. --Keymaker (talk) 11:04, 8 August 2016 (UTC)

Sorry for the late answer. I think the problem may be that Black allows moving non-spaces out of the playfield in any direction, including up or left – the interpreter may be expanding the field only downwards and rightwards. --ais523 17:39, 28 June 2024 (UTC)