Looks like “Bad number” is a different kind of error than other syntax errors. If, say, lone ¯ is evaluated in ⎕EC¨ last then it seems to abort the whole line ⎕EC¨ appears in. I'm at r712.
⎕EC¨'1¯' ⍝ no result at all ⎕FX'f x' '⊣ ⎕EC¨x' f f'1¯' ⍝ unexpected output 1 0 0 1 0 2 2 SYNTAX ERROR When it comes first, the interpreter does a double free somewhere and gets aborted: ⎕EC¨'¯1' *** Error in `/usr/bin/apl': free(): invalid pointer: 0x00007ffd734c2b50 *** ======= Backtrace: ========= /lib/x86_64-linux-gnu/libc.so.6(+0x71ff5)[0x7f968e09cff5] /lib/x86_64-linux-gnu/libc.so.6(+0x77946)[0x7f968e0a2946] /lib/x86_64-linux-gnu/libc.so.6(+0x7812e)[0x7f968e0a312e] /usr/bin/apl(_ZN14Bif_OPER1_EACH14finish_eval_LBER7EOC_arg+0x33c)[0x464c9c] /usr/bin/apl(_ZN14Bif_OPER1_EACH7eval_LBER5Token7Value_P+0x197)[0x4658e7] /usr/bin/apl(_ZN15DerivedFunction6eval_BE7Value_P+0x257)[0x49fc77] /usr/bin/apl(_ZN6Prefix16reduce_MISC_F_B_Ev+0x8e)[0x4cc54e] /usr/bin/apl(_ZN6Prefix17reduce_statementsEv+0x228)[0x4cd268] /usr/bin/apl(_ZN14StateIndicator3runEv+0x10)[0x526e90] /usr/bin/apl(_ZNK10Executable12execute_bodyEv+0x15)[0x497a85] /usr/bin/apl(_ZN7Command17do_APL_expressionER10UCS_string+0x5a)[0x48cbda] /usr/bin/apl(_ZN7Command12process_lineEv+0xba)[0x48cb1a] /usr/bin/apl(_ZN9Workspace19immediate_executionEb+0x2d)[0x57b8bd] /usr/bin/apl(main+0x25)[0x444195] /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf0)[0x7f968e04b610] /usr/bin/apl(_start+0x29)[0x448f99] ======= Memory map: ======== (...) -k