Post-Unified HQ9+

Post-Unified HQ9+, or alternatively, HQ9+++-*TCIX13BG2DidcoshwNZLEAR7UJ<>_()[]{}0.,&~:#, is a language made by User:Orisphera to extend Unified HQ9+, a language made by User:Cortex to unify all HQ9+ variants. It includes all the commands from Unified HQ9+, which are from "just about every HQ9+ variant I could find, as well as some commands from other languages, and a few new commands unique to Unified HQ9+", and adds some more. Characters that are not commands are ignored.
== Commands ==
Character	What it does 	What _ does after it 	Language it's from
H 	Print "Hello, World!" 	Raise an I/O exception 	HQ9+
Q 	Print the program's source code 	Do what _ after Q does 	HQ9+
9 	Print the lyrics to 99 bottles of beer 	Infinite loop 	HQ9+
+ 	Increment the accumulator 	Divide 1 by 0 	HQ9+
++ 	Create a new object and increment the accumulator twice. 	Raise a virtual exception 	HQ9++
- 	Decrement the accumulator 	Divide 0 by 0 	Unified HQ9+
* 	Double the accumulator 	Raise 0 to the power 0 	Unified HQ9+
T 	Change the instruction set from the Unified HQ9+ instruction set (like INTERCAL's COME FROM) 	Syntax error 	Changed in Post-Unified HQ9+
C 	Copy input to output 	Output EOF 	CHIQRSX9+
I 	Interpret input as Post-Unified HQ9+ code 	Whatever it does after the last processed character of input other than the h (or, if the h is the first one, what's before the I) 	CHIQRSX9+
X 	Make the language Turing-complete 	Undefined 	CHIQRSX9+
1 	Interpret all characters in the rest of the source code as their ROT13 variant. 	Import "this" (whatever it is in the language the interpreter is in) 	CHIQRSX9+
3 	Nop, for convenience. 	Nop 	Unified HQ9+
B 	Interpret input as a brainfuck program 	Retroactively changes the input to []+[] 	HQ9+B
G 	Print the interpreter's source code. (I is already taken, so Cortex used G) 	Changes the output of the G to run the program it's in instead of getting it from file or wherever it does 	HI9+
2 	Increment the accumulator twice (for if you don't want to print ++'s explanation) 	Divide 2 by 0 	Unified HQ9+
D 	Make the language 2D, and add all commands from HQ9+2D 	Do what the command that sets the direction to the current one does when in 1D mode 	Unified HQ9+, but added to support HQ9+2D
i 	Increment the accumulator. If the accumulator is a character, set it the next ASCII character. 	Compute ln(0) 	Deadfish~
d 	Decrement the accumulator 	Compute ln(-1) 	Deadfish~
c 	Make the accumulator a character 	Make it a number again 	Deadfish~
o 	Print the accumulator 	Undefined 	Deadfish~
s 	Square the accumulator 	Compute sqrt(-1) 	Deadfish~
h 	End the program (it's necessary now, because of course it is) 	Solve the halting problem 	Deadfish~
w 	Print "Hello, world!" 	Raise an I/O error 	Deadfish~
N 	Increment the accumulator by 10 	Divide 10 by 0 	New
Z 	Set the accumulator to 0 (or to ASCII character 0 if the accumulator is a character) 	Divide the accumulator by itself 	New
L 	Blink LED (compilers and interpreters need not implement this command if they so choose) 	Form a digraph (L_) that makes a long blink 	Embedded HQ9+
E 	Print a link to this very Esolangs article. 	Print a rickroll link instead 	Hexlr7
A 	Print the name of the programming language the interpreter was written in. 	Print the language the program is written in instead 	Hexlr7
R 	Make the interpreter throw an error. 	Get input and find the shortest program to output it 	Hexlr7
7 	Do the following command 7 times. 77 followed by a command will do it 49 times. 	Increase an internal value that is initially Sunday by 1 day 	Hexlr7
U 	Do whatever the creator of the interpreter wants this command to do 	Do whatever the creator of the interpreter wants this to do 	New
J 	Print the lyrics to 99 jars of jam 	Overcomplicated infinite loop 	Not in Unified HQ9+; (){} are from Deadfish~, and the rest are from an unpublished HQ9+ extension
< 	Push the accumulator onto a stack and try to pop a value from another stack and set the accumulator to the popped value or 0 if the popping failed	Access an out-of-bounds element of a vector or list depending on the language the interpreter is in 	Not in Unified HQ9+; (){} are from Deadfish~, and the rest are from an unpublished HQ9+ extension
> 	Same as < except with the stacks swapped 	Access a non-existent value in a map or dict depending on the language the interpreter is in 	Not in Unified HQ9+; (){} are from Deadfish~, and the rest are from an unpublished HQ9+ extension
_ 	See the third column for the previous command 	Move the instruction pointer left 1 space 	Not in Unified HQ9+; (){} are from Deadfish~, and the rest are from an unpublished HQ9+ extension
(...) 	Only do this if the accumulator isn't 0 	Do whatever the last executed command does because the brackets themselves don't change the last command register; the code inside does.	Not in Unified HQ9+; (){} are from Deadfish~, and the rest are from an unpublished HQ9+ extension
[...] 	Do this while the accumulator isn't 0 	Do whatever the last executed command does because the brackets themselves don't change the last command register; the code inside does.	Not in Unified HQ9+; (){} are from Deadfish~, and the rest are from an unpublished HQ9+ extension
{...} 	Instructions inside are repeated 10 times 	Do whatever the last executed command does because the brackets themselves don't change the last command register; the code inside does.	Not in Unified HQ9+; (){} are from Deadfish~, and the rest are from an unpublished HQ9+ extension
0 	Make the accumulator 0 (or '\0' if it's a character) 	End the program 	Not in Unified HQ9+; (){} are from Deadfish~, and the rest are from an unpublished HQ9+ extension
. 	Output the accumulator as character without newline or space after it 	Output a whitespace 	Not in Unified HQ9+; (){} are from Deadfish~, and the rest are from an unpublished HQ9+ extension
, 	Input the accumulator as character, like cin.get() in C++ 	Skip whitespaces 	Not in Unified HQ9+; (){} are from Deadfish~, and the rest are from an unpublished HQ9+ extension
& 	Output the accumulator as number 	Output a newline 	Not in Unified HQ9+; (){} are from Deadfish~, and the rest are from an unpublished HQ9+ extension
~ 	Input the accumulator as number 	Skip whitespaces 	Not in Unified HQ9+; (){} are from Deadfish~, and the rest are from an unpublished HQ9+ extension
: 	Same as . if the accumulator isn't 0 and , otherwise 	Same as after . or , 	Not in Unified HQ9+; (){} are from Deadfish~, and the rest are from an unpublished HQ9+ extension
# 	Same as & if the accumulator isn't 0 and ~ otherwise 	Same as after & or ~ 	Not in Unified HQ9+; (){} are from Deadfish~, and the rest are from an unpublished HQ9+ extension
 	 	 	Not in Unified HQ9+; (){} are from Deadfish~, and the rest are from an unpublished HQ9+ extension
== Examples ==
=== Hello, World! ===
Hh
 (prints "Hello, World!")
or
wh
 (prints "Hello, world!")
or
NN*NNN2coZNs+oN---oo2+oZ2ss-N2oZ2ss-o-NN2+oN22o2+o------oZNsoZ2ss*+h
 (prints "Hello, World!")
=== 99 bottles of beer ===
9h
=== Quine ===
Qh
=== Cat program ===
Ch
=== Brainfuck interpreter ===
Bh
=== Self-interpreter ===
Ih
=== Hello, World! except it's 2D now for some reason ===
D vh <
 v H <
 > ^
 > ^
=== Hello World 2D, Part 2 ===
Dv
>Hh
^<
=== Output SOS with LED ===
 LLLL_L_L_LLL
Category:Joke languages Category:Unimplemented Category:Languages Category:2023 Category:Turing complete