Talk:FukYorBrane

From Esolang
Jump to navigation Jump to search

There's no comment in the spec on whether, within each tick, the active threads' current instructions are supposed to be executed at once or in sequence. The reference implementation executes them in sequence in the order that the threads were created. Assuming this is intended, it should be written into the spec.

That said, I've also found a bug in the ref imp: the thread is created, and then its first instruction is executed in the same tick, meaning that A:B;C runs not as

A:B;B;B;B;B;B...
  C...

per spec, though it probably should be actually written

A:C...
  B;B;B;B;B;B...

but as

A:C...
 B;B;B;B;B;B...

I've just been translating the ref imp into D and refactoring it in places. In doing so, I've fixed this bug - I'll see what it does to the league table.

There's also a detail that's in the imp but not in the spec at all: when you defect, the data pointer is set to the same position as the program pointer. -- Smjg 16:25, 6 June 2010 (UTC)

I've found a program that lose with runbomber.fyb but win against rungluebomber.fyb. I call it CE (I named it previously ThreadExiter because it convert any instruction before ; become *). --(this comment by Christian Irwan at 03:34, 10 December 2013‎ UTC; please sign your comments with ~~~~)