New Whitespace-Only Programming Language
foobarbazquux writes "Introducing whitespace, a
language designed to compensate for the "white-space doesn't count" culture of
contemporary programming languages. Amaze your friends by hiding programs in
your web-pages! Astound colleagues by putting a virus in your text file!" (And for those who prefer obfuscation to invisibility, Koshatul writes "This article in the Sydney Morning Herald, tells of a new programming language which 'makes it impossible to express a security vulnerability in a program's source code.'")
This has been done. Damian Conway implemented it as a Perl module, Acme::Bleach, quite some time ago.
Hit your nearest CPAN mirror and 'use Acme::Bleach' for great justice.
Actually it's quite possibly a "legitimate" language along the lines of "brainfuck" which actually could be modified to use space and tab combinations instead of slashes and whatnot.
If you wanted to get technical it would be very easy to use tab and space as 0s and 1s to do low level coding and then write a simple script to convert it to real hex representing x86 (or whatever) assembly. This language appears to do basically that while reducing the number of commands supported and therefore the number of combinations needed.
I think the real question isn't "is this for real?" but rather "why, God why?"
And the inevitable geek proudly raises his hand and defiantly states "because I CAN!"
Ben
Work Safe Porn
What's with all the comments, "This is total bullsh*t! April Fools! Complete crap!" ?
Did anyone actually read the link to the whitespace language? Anyone? Hello? I mean, I know, I know, nobody on /. reads the articles, but this is ridiculous.
It's real! The description of the syntax is a masterwork of stunning proportions!
This is exactly what April Fools is supposed to be about! It's real! It's just... silly.
Joking asside, but if you've ever programed in RPG, Whitespace MATTERS.... Every command/Argument/Result HAS to be positioned in a certain column ...Somthing like this
C NUM1 ADD NUM2 RESULT
C MOVE 'HELLO' STR 10
C DSPLY STR
.. etc etc.
wow... I tried it too and you are right.
/. does not allow deletions. /. with authentic story on april fools? but that can't ... [head explodes]
I am willing to take back everything I said (and maybe put it in another post) but it's a shame
p.s. (pretent this was written before the exploding head) programing in this is a pain in the butt and a half, even with a hex editor.
My life in the land of the rising sun.
Not that you care, but there's a bit of history behind Matt's Script Archive (MSA). You could say MSA was one of the first Perl script archives, and certainly one of the most popular. Unfortunately you could say that many of the scripts were sort of half assed. Many of the scripts were bug prone, such as the guest book that wrote to a single text file WITHOUT file locking (thus waiting for the impending doom of 2 simultaneous writes). Others where just exploitable.
The most notorious of them all is by FAR 'formail.pl'. This is a pathetically easy script to use for evil purposes since it basically allows you to directly send crap through sendmail (ie spam) on the server - and even a basic understanding of HTML would allow a person to figure out how to do it. If you have logs on a webserver you can STILL find a lot of hits probing for formail.pl in your cgi-bin. Probably the saddest thing about MSA is the fact that it's been around forever and has thus been cataloged by every search engine out there, and as soon as someone searches for "free perl/cgi-scripts" MSA is almost always at the top of the list.
On the lighter side, if you're new to cgi and want to understand more about CGI/perl security - find a friendly Perl guru and have him/her tell you about how NOT to write CGI scripts by using the ones at MSA as an example. The humor in it is probably best known to Perl programmers as MSA is somewhat infamous in the perl world, and probably the cgi world in general.