Semicolon: A language of semicolons(pksunkara.github.com)
pksunkara.github.com
Semicolon: A language of semicolons
http://pksunkara.github.com/semicolon
53 comments
Additionally, I've created a linter that I've named ColonCleaner. I think it'll be a real hit. Just relax and let it do its thing.
[deleted]
[deleted]
This is the perfect opportunity to share Acme::Bleach. From the docs;
The first time you run a program under use Acme::Bleach, the module removes all the unsightly printable characters from your source file. The code continues to work exactly as it did before, but now it looks like this:
The first time you run a program under use Acme::Bleach, the module removes all the unsightly printable characters from your source file. The code continues to work exactly as it did before, but now it looks like this:
use Acme::Bleach;
http://search.cpan.org/~dconway/Acme-Bleach-1.13/lib/Acme/Bl...Depressingly, I've been told of this being used in production.
Thanks for this! One question -- is " " still global by default or do I still have to declare " " to make " " local?
But can it get the mindshare of Whitespace (https://en.wikipedia.org/wiki/Whitespace_%28programming_lang...) or Acme::Bleach (http://search.cpan.org/~dconway/Acme-Bleach/lib/Acme/Bleach....)?
I prefer staying closer to the metal, but nice work anyway.
FYI: I tried writing a minifier for it, but briefly caused a small quantum singularity to the left of my monitor. CCMin considered harmful.
Fraud! You just took http://en.wikipedia.org/wiki/Whitespace_(programming_languag... and renamed it.
Elegant? Maybe, but how many semicolons is it compiled?
I always get coffee colon the morning after a night of drinking. Hiyo!
See Ellipsis: http://listrophy.github.com/ellipsis/
wow, programming directly in gödel numbers... in brainfuck... in base one... in unicode! i think you win some kind of esolang prize for this one....
[deleted]
Yeah, but how in the world can you debug it?
This used to be a big problem, but now there is this brand new feature called semicolon maps. You should check it out.
Chrome supports source-mapping in 19, as long as the compiler supports it... and it transpiles to JS. ;)
I'm disappointed that the designer of this language has limited himself to just the semicolon (";", U+003B) and the reversed semicolon ("⁏", U+204F). What about the Arabic semicolon ("؛", U+061B) and the Greek question mark (";", U+037E)? They're both perfectly valid options.
(I can understand avoiding the turned semicolon ("⸵", U+2E35), given that it doesn't seem to display properly. Can't be having unrenderable codes in one's language; it could severely reduce readability!)
To remedy this lack, I present to you my own semicolon-derived metalanguage, Hemidemisemicolon. A sample Hello World program follows:
An implementation note: the final semicolons on each line are optional. I was wondering if that was a good idea or not, but I'm sure it won't cause any trouble down the track.
(I can understand avoiding the turned semicolon ("⸵", U+2E35), given that it doesn't seem to display properly. Can't be having unrenderable codes in one's language; it could severely reduce readability!)
To remedy this lack, I present to you my own semicolon-derived metalanguage, Hemidemisemicolon. A sample Hello World program follows:
⁏
؛;⁏⁏;;؛; ؛;⁏;
⁏;;;
As you can see, the dramatically increased lexical vocabulary leads to conciseness of expression. This program code compares favourably with the original Semicolon code, and as an added bonus it is also a quine and prints out "FizzBuzz" every three or five years on Douglas Crockford's birthday.An implementation note: the final semicolons on each line are optional. I was wondering if that was a good idea or not, but I'm sure it won't cause any trouble down the track.
@fat and @douglascrockford, the HN community is now satirizing both of you. It's time for you both to do the right thing; add the semicolon to the bootstrap-dropdown.js code and change JSMin to support the original edge case.
bootstrap was changed to avoid jsmin's bug before the ticket was even filed, and crockford added the missing operator cases in jsmin several days ago.
Surely, that should be add all the semicolons to bootstrap-dropdown.js?
No. Twitter has every right to implement their Bootstrap code as they see fit.
But it is just common courtesy to make small accommodations for people who are having difficulty using the code that Twitter has so generously released as open source.
But it is just common courtesy to make small accommodations for people who are having difficulty using the code that Twitter has so generously released as open source.
Now the reversed semicolon renders with perfect reversion of normal semicolon.
http://pksunkara.github.com/semicolon
http://pksunkara.github.com/semicolon
[deleted]
would be a joy to code with this drunk
now i'll wait for the logging evaluator.
ps: does it compatible with uterus.js?
you'd think a program consisting of "only semicolons" would be easier to type. (no pun intended). reverse semicolon? Not only does my keyboard not have one, but Google doesn't even know what it is (other than a unicode character). apparently it was invented by the unicode group.
next time go back to the definition of semicolon, and you will see why it is made of the glyphs , and .
Then you can make a true semicolon language, by mixing ; and ., (horizontal, if you will).
the first line given as an example program would go from ;;;;⁏;;⁏;;; (which doesnt even render in this browser text box for me atm) to ;;;;.,;;.,;;;
next time go back to the definition of semicolon, and you will see why it is made of the glyphs , and .
Then you can make a true semicolon language, by mixing ; and ., (horizontal, if you will).
the first line given as an example program would go from ;;;;⁏;;⁏;;; (which doesnt even render in this browser text box for me atm) to ;;;;.,;;.,;;;
I <3 you so hard, Internet.
I feel like it's April Fools day but only in this comment thread.
;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;!
;;;;;;;;;;;;;;.
;;;? ;;;;;;;;!?
So when do you plan on implementing ASI?
While mildly amusing, this whole semicolon obsession that's sprung to the fore this past week is ridiculous. It was silly and inconsequential when it started and it's even sillier now.
Which makes this idea rather snarky in my opinion. All the hating on Crockford who takes the time to sit on the committee rubs me a bit the wrong way. I've been where he is and seen the weird constraints/politics/effort it takes to do standards work, and so I respect that.
In any other context, building what is essentially a Turing machine with a few symbols, might qualify as a clever hack which helps folks step outside their ISO-latin1 mindset, but coming as it does on the heels of this controversy it just feels mean.
In any other context, building what is essentially a Turing machine with a few symbols, might qualify as a clever hack which helps folks step outside their ISO-latin1 mindset, but coming as it does on the heels of this controversy it just feels mean.
Was there that much hating on Crockford? Most of the posts I saw were in support of his position, if not his (probably justified) grouchy attitude.
I find it hard to disagree with him. Eichs has admitted ASI was a mistake, every half-decent JS tutorial states unequivocally "use semicolons"... if you don't want semi-colons, don't use JS.
I find semicolon hilarious. We need to lighten up!
I find it hard to disagree with him. Eichs has admitted ASI was a mistake, every half-decent JS tutorial states unequivocally "use semicolons"... if you don't want semi-colons, don't use JS.
I find semicolon hilarious. We need to lighten up!
I think we can give the creator the benefit of the doubt and assume that this language was created as a parody of these debates.
most of these debates consists of parody. trolls trolling trolls.
It's trolls all the way down.
Sometimes the only way to escape is to go down into the crevasse.
This is an official announcement.
Please will everybody stop being silly.
We all have serious businesses to run, enabling people to find video of cats wearing mittens, making photographs square, all important stuff. So stop having fun and get back to work, those augmented media experiences wont write themselves you know.
Please will everybody stop being silly.
We all have serious businesses to run, enabling people to find video of cats wearing mittens, making photographs square, all important stuff. So stop having fun and get back to work, those augmented media experiences wont write themselves you know.
Seems like a nice companion to Whitespace:
http://en.wikipedia.org/wiki/Whitespace_(programming_languag...
http://en.wikipedia.org/wiki/Whitespace_(programming_languag...
And I thought Reddit had a problem with tired memes..
hey guys! I think I'm going to start on a semicolon meta-language using this new semicolon IDE I'm writing. ;
I like Brainfuck better: http://www.muppetlabs.com/~breadbox/bf/
I don't know if anyone has made a DCPU-16 interpreter for it yet!
I don't know if anyone has made a DCPU-16 interpreter for it yet!
The reversed semicolon appears as a square here (Windows/Chrome).
It depends on your font to support the character.
I hear the author is adding support for rectangular boxes using SVG.
Surely someone will implement an asynchronous framework on top of this and we'll have next year's Node.js :P
Shouldn't this language be white-space insensitive in order to be truly pure as a semicolon language?
Like this kind of thing? The rabbit hole is frighteningly deep. Try the esoteric programming language wiki[1] or Chris Pressey’s site[2]. That ought to get you started.
[1] http://esolangs.org/wiki/Main_Page
[2] http://catseye.tc/cpressey/
[1] http://esolangs.org/wiki/Main_Page
[2] http://catseye.tc/cpressey/
Now you can take all the semi-colons from your javascript and re-use them elsewhere! Genius!
I believe this will revitalize the semicolon industry. There were serious sales shortages in the last few years with the rise of languages like ruby, python and even haskell, not needing this resource. In fact several major semicolon foundries were mothballed since the housing crash - the legalese markets were just not there any more, and lack of derivative generation really hurt the suppliers. The latest round of ASI abuse in javascript was hailed by some pundits as the nail in the coffin for the flagging industry, sending it to a niche role for legacy code and industrial/embedded systems support. With the release of this language, some analysts are suggesting a surge in semicolon production, and the commodities markets show q4 semicolon futures at the best they've been in 14 months. Expect to see a large push from advertisers in the form of articles like "why I like semicolon" and "can your language do this with only 5 characters?". Pessimists however are speculating that it is too little to late, and are advising shorts on semicolons in 6-10 hours, after the initial news leaves the front page. One pessimist says "This is just a pathetic showboat effort from a dying industry". Other suggest rumors of lobbyists pushing hard for the DoD to adopt this as the new standard language. More on this story as it develops.
I'm somewhat disappointed - I expected the implementation to be written using ASI keeping semicolons to a minimum.
This community is generally fairly dry and to the point, which is a great way to maintain high quality discussions, but I'm enjoying all these fun comments! :)
An astonishingly comprehensible comment from a regular expression.
A remarkably sincere comment from a politician.
So a politician and a RegEx walk into a bar...
Yes, I think this is the first HN thread I've seen where jokes aren't being downvoted into oblivion. (And I don't think it's terrible! Fingers crossed that nobody tells me to go back to reddit)
Does this mean; that when I context switch mind sentence; using semi-colons; I'm also programming? Sweet!
This Semicolon language bears more than a passing resemblance to POP-11, the famous AI programming language for popping things on/off a stack!
To this day POP-11 holds the unsurpassed distinction of being the language for writing the most useless programs in the most intriquing way (after machine code, of course).
To this day POP-11 holds the unsurpassed distinction of being the language for writing the most useless programs in the most intriquing way (after machine code, of course).
I don't even know how to type an inversed semicolon.
In vim just do (copy and paste it if you don't know how to get the initial ⁏):
some people like to map j to ⁏ and k to ;, other like to map f to ⁏ and j to ;, but this is all just homerow keeping. I'm a purist, i like to keep the mappings minimal.
:imap <buffer> l ⁏
and whenever you want an inverted semi, type l. For best effects put that line in your ftplugin directory, in semi.vim (or whatever your autodetect filetype name for semicolon is).some people like to map j to ⁏ and k to ;, other like to map f to ⁏ and j to ;, but this is all just homerow keeping. I'm a purist, i like to keep the mappings minimal.
[deleted]
and I'm expecting there should be a post about how this is still better than PHP in 5... 4... 3... 2...
:)
:)
My right pinky is gonna get so huge.
There are lots of joke languages that are simply isomorphic to Brainfuck - Ook, Fuckfuck and so on - so congratulations on not just taking the easy way out (changing their eight keywords instantly gives you an interpreter, compiler, sample code, ...)
brainfuck itself is simply a minor variation of P", created back in 1964.
So when will Objective-Semicolon and Semicolon.NET be available?
that's just too much like Python to be funny
Now we just need an LLVM backend.
It'd be better if this were just semicolons and reverse semicolons.
Gives new meaning to "insanely stupid code."
This is the PERFECT place to give a link to my poem, <b><a href=http://www.tonynoland.com/2009/09/ode-to-semicolon.htm>O... to the Semicolon"</b</a>. The semicolon is my favorite punctuation mark.
At that page, you can hear me read the poem, too; be sure to stop by and comment!
At that page, you can hear me read the poem, too; be sure to stop by and comment!
better link, http://www.tonynoland.com/2009/09/ode-to-semicolon.html no need for the html and it's .html apparently not .htm
My first reaction was fear of death: http://nethack.wikia.com/wiki/Electric_eel
I'm already way ahead of the curve. I've started writing my scripts without semicolons and I'm getting 100% code compression using even the most rudimentary minifiers. Get with the times, already!
A path exists from the Semicolon language to Robert Klein's aphorism that "a sigmoidoscopy is just a semicolonoscopy". Someone please do that.
Does it have a working minimizer?
My first thought when I saw the site was 'Someone has way too much free time on their hands.'
Cool, why interpret it? Right a compiler for it now :-)
This certainly takes things further than my simple SemicolonScript idea, nicely done.
http://rodhowarth.com/semicolonscript/
Can you please make this configurable? Instead of ;, we can use : @ * etc or something like language of smiley's :)
I had this exact thought when the semicolon drama started days ago.
I'm a fan of removing ambiguity in code. I parenthesize when not necessary so that intent is clear (someone in the future will hire a complete newbie to read and "fix" this code.) I want the statement to end here --> ";" and anything else is an error - now the compiler can inform me when a mistake is made. I ask what appear to be the most asinine questions because when you say "smooth ass ride" there's a difference between a "smooth-ass ride" and a "smooth ass-ride."
And as I type all this, I begin to create a connection between all those txtspk hooligans and semicolon haters. Anyway, I'm happy that Semicolon now exists.
I'm a fan of removing ambiguity in code. I parenthesize when not necessary so that intent is clear (someone in the future will hire a complete newbie to read and "fix" this code.) I want the statement to end here --> ";" and anything else is an error - now the compiler can inform me when a mistake is made. I ask what appear to be the most asinine questions because when you say "smooth ass ride" there's a difference between a "smooth-ass ride" and a "smooth ass-ride."
And as I type all this, I begin to create a connection between all those txtspk hooligans and semicolon haters. Anyway, I'm happy that Semicolon now exists.
DCPU-16 port anyone?
Don't forget in vim to
:set list
:set lischars=eol:;
.. Now all newlines will be semicolon'dlooking forward to node;
Can't wait for the Light Table IDE to support this language :P Debugging will be so much easier.
I'd like to point out that it's theoretically possible to define a program without semicolons. Which major Semicolon library will be the first to ditch semicolons?
Upvoted because there is no such thing as too many semicolon-related threads :sigh:
" "
^ Pretty elegant, right?
let's try something a little more complex:
" "
^ As you can see, the goal of this new language is to take the best of Semicolon and just make it more succinct, and to round out some of the minor historical abnormalities that have been dragged along in the language spec for a while now.
So my hope is that you all enjoy CoffeeColon as much as I do. It's just like Semicolon, maintaining it's expressiveness and dynamic nature, with just a little bit of smoothing out of the kinks.
Thanks!