${randomHeadline()}
Tabloid: The Clickbait Headline Programming Language
What?
Tabloid is a turing-complete programming language for writing programs in the style of clickbait news headlines.
Here are a few things${' '}the Top Five
Most Popular Quirks and Features of the Tabloid
programming language (Number Four Will Shock You!)
-
Print output with the keywords
YOU WON'T WANT TO MISS
followed by an expression. Everything printed by Tabloid is automatically capitalized, and an exclamation point is added. Why would you want anything else? -
Declare a function by writing
DISCOVER HOW TO ... WITH
. Truly, a more gripping way to declare a function can't possibly exist! Similarly, assign to a variable withEXPERTS CLAIM ... TO BE
. On the Internet, anyone can be an expert, and Tabloid gives YOU the power to wield that responsibility and declare anything you'd like! - There are no built-in constructs for looping. The news cycle is moving too fast! Nobody has time for yesterday's loops or last week's break statements. If you must loop, use recursion.
-
To return from a function, simply write
SHOCKING DEVELOPMENT
! You're going to—gasp!—return? How shocking! -
Every program must end with
PLEASE LIKE AND SUBSCRIBE
, because you have to grow your audience! Hashtag hustle.
But why?
Didn't want to do homework for my database systems class, and needed something to do to procrastinate. Will I finish the homework? Did I get enough sleep?
Stay tuned to find out!
Does it actually work?
Yes. Tabloid is a fully functioning, turing complete programming language with an interpreter written in JavaScript. Tabloid currently only supports numbers, strings, and booleans, but with these elements, you can write any program you'd want to write. You can edit and run the program above, or see how it works for yourself.
Before making Tabloid, I also created a more useful and
well-designed${' '}boring and unpopular
programming language, called Ink.
How much is there?
Here's the full list of standard keywords that Tabloid currently uses:
DISCOVER HOW TO...WITH
declare a functionRUMOR HAS IT
begin a block scopeA OF B, C
call function A with arguments B, CWHAT IF...LIES!
an if-else expressionEND OF STORY
end a block scopeEXPERTS CLAIM...TO BE
declare or assign to a variableYOU WON'T WANT TO MISS
print outputTOTALLY RIGHT
trueCOMPLETELY WRONG
falsePLUS / MINUS / TIMES / DIVIDED BY / MODULO
the obvious arithmetic operationsBEATS / SMALLER THAN
greater than / less thanIS ACTUALLY
is equal toBEATS / SMALLER THAN
greater than / less thanSHOCKING DEVELOPMENT
return from a functionPLEASE LIKE AND SUBSCRIBE
end of program