Execute HQ9+/E: Difference between revisions

Content added Content deleted
(Created page with '{{implementation|HQ9+}}{{collection|RCHQ9+}}Category:E The original author of this example would like to note the following deficiencies in [http://www.cl…')
 
m (Categorization now in master page)
Line 1: Line 1:
{{implementation|HQ9+}}{{collection|RCHQ9+}}[[Category:E]]
{{implementation|HQ9+}}{{collection|RCHQ9+}}
[[User:Kevin Reid|The original author of this example]] would like to note the following deficiencies in [http://www.cliff.biffle.org/esoterica/hq9plus.html the HQ9+ specification]:
[[User:Kevin Reid|The original author of this example]] (written in [[E]]) would like to note the following deficiencies in [http://www.cliff.biffle.org/esoterica/hq9plus.html the HQ9+ specification]:


* The treatment of unrecognized characters other than whitespace is unspecified. However, the only implementation provided, in Ocaml, rejects them, so this implementation also does. Additionally, rejecting unknown characters ensures that the compiler will not incorrectly compile HQ9+ programs using future extensions.
* The treatment of unrecognized characters other than whitespace is unspecified. However, the only implementation provided, in [[OCaml]], rejects them, so this implementation also does. Additionally, rejecting unknown characters ensures that the compiler will not incorrectly compile [[HQ9+]] programs using future extensions.
* While the given "qqqq" example implies that whitespace (specifically, trailing newlines) is permissible and that operation codes are case-insensitive, neither of these are explicitly stated.
* While the given "qqqq" example implies that whitespace (specifically, trailing newlines) is permissible and that operation codes are case-insensitive, neither of these are explicitly stated.
* The initial value of the accumulator is unspecified. This implementation has chosen 11472, which is of course the value such that executing the HQ9+ program "HQ9+" will result in the accumulator having a value equal to the length of the program's output.
* The initial value of the accumulator is unspecified. This implementation has chosen 11472, which is of course the value such that executing the HQ9+ program "HQ9+" will result in the accumulator having a value equal to the length of the program's output.