PostScriptum

==Syntax==
In the Syntax column, \n represents line feeds.
Tokens are case insensitive.
Token 	Meaning in English (If you wonder) 	Syntax	What it does
lol 	laughing out loud 	 	1
lmao 	laughing my ass off 	 	10
P.S. 	post scriptum (after) 	 	Single line comment
e.g. 	exempli gratia (for example) 	 	Sum up all the values and return the sum
Q.E.D.	quod erat demonstrandum (used at end of math proofs)	or 	Return (halt if not in a function)
wtf 	what the fuck (swear word) 	or 	If
btw 	by the way 	 	Else
thx 	thanks 	 	End if statements or while loops or function definitions
ASAP 	as soon as possible 	or 	Print a value or a string followed by nothing, escape sequences \n and \t are allowed
i.e. 	id est (that is) 	 	Variable assignment, make a's value the same as b's value
a.k.a 	also known as 	 	Reference assignment, make a a reference to b
AFAIK 	as far as i know 	 	Import library, may be implementation dependent
OMG 	oh my god 	 	While loop
\w 	with 	 	Function definition (can't be nested, arguments are passed as references)
pls 	please 	 	create a variable with initial value 0, variables cannot be assigned if not created
Note: PostScriptum has only one type, int (or two if reference counts), As such, conditions use integers as well, nonzero is truthy and vice versa.
==Standard library==
Libraries may be implementation dependent, but User:None1 plans to add these functions in the standard library in the coming implementation.
===Math===
opposite x: Opposite number
mul x y: Multipication
div x y: Floor division
mod x y: Division
pow x y: Power
powmod x y m: Power mod m
fact x: Factorial
===Comp===
eq x y: Return 1 if x==y, else 0
neq x y: Return 1 if x!=y, else 0
lt x y: Return 1 if x<y, else 0
ge x y: Return 1 if x>=y, else 0
le x y: Return 1 if x<=y, else 0
gt x y: Return 1 if x>y, else 0
===Rand===
rand: Return random number from 0 to 2147483647 inclusive
===IO===
read x: Read x as integer, returns nothing, EOF results in 0
readascii x: Read x as ASCII (or Unicode), returns nothing, EOF results in 0
printascii x: Print x as ASCII
==Examples==
Since this is unimplemented, these programs are untested.
===Hello, World!===
 ASAP "Hello, World!"
===Cat program but accepts numbers only===
 AFAIK, IO
 pls x
 read x
 ASAP x
===Cat program===
 AFAIK, IO
 pls x
 OMG x
 readascii x
 printascii x
 thx
===Truth Machine===
 AFAIK, IO
 pls x
 read x
 wtf x
 OMG lol
 ASAP lol
 thx
 btw
 ASAP (e.g.:) P.S.: Yes, e.g.'s argument list can be empty
 thx
===Fibonacci (recursion)===
 AFAIK, Comp
 AFAIK, Math
 \w fib x
 wtf eq x lol
 Q.E.D. lol
 wtf eq x (e.g.:lol,lol)
 Q.E.D. x
 Q.E.D. (e.g.: fib (e.g.:x,opposite lol), fib (e.g.:x,opposite (e.g.: lol lol)))
 thx
 ASAP fib (e.g.:lmao,lol) P.S.: prints 144 (F_11)
===A+B===
 AFAIK, IO
 pls a
 pls b
 read a
 read b
 ASAP (e.g.:a,b)
===Reference example===
 pls x
 pls y
 pls z
 y (i.e.: x)
 z, a.k.a x
 x (i.e.: lol)
 ASAP y P.S. 0
 ASAP z P.S. 1
This program creates a variable x, copies value of x to y, and then creates a reference z to x. Then, x becomes 1, since the value of variable x does not affect the value of variable y, y remains 0, but since z is a reference, z becomes 1 as well.
Category:Languages
Category:Pseudonatural
Category:2024