A Warrior's Programming Language
BlackNova writes "Var'aq is "a speculative glance at what a programming language on a Klingon computer system would look like." Make sure to read the Preliminary Specification and the Proposed Extensions."
← Back to Stories (view on slashdot.org)
If you're into esoteric languages, the reference page is the Cat's Eyes page.
cat > prog.tgz
Yesterday was the time to do it right. Are we having a REVOLUTION yet?
This page is sort of a speculative glance at what a programming language on a Klingon computer system would look like. The language itself is named var'aq, which happens to be meaningless in standard Klingon but sounds like it might be named after some famous Klingon computer scientist or mathematician. How the hell does this guy know that there isn't a famous Klingon computer scientist or mathematician? I'd like to see some credentials here, buddy! "Damnit Jim, I'm a doctor, not a programmer!" Suffice to say, this guy is a bigger geek than I could ever hope to be.
NerfOnline - Because Nerf Guns aren't just for kids -
google's cache of the site
you're welcome
---
I post links to stuff here
<grumble>
I suppose it would be possible for editors to realise geocities sites don't go well on the front page
</grumble>
When I saw this two or three weeks ago at first I was kind of excited about it... the last link I followed implied that it was a finished language. I thought that was hysterical, a programming language written in Klingon! How nerdy can you get.
But it's not. I found it rather dull, it's just a little mini-essay about what such a programming language might be like, and what it might be called. I found the whole thing very thin at the time. Of course, the guy might have done some work on it since I last saw it, I haven't followed the link yet.
--
RumorsDaily
Here's what part of the page I could get before Geoshitties killed it...
o C: www.geocities.com/connorbd/varaq/+&hl=en
-------
I enjoy playing with "what-ifs" and that sort of thing. I've written a few fanfics for Star Trek and Babylon 5, and I've got my own grand scifi plan perking through my head (though it won't see the light of day for a long time to come). I've created a couple of languages a la Tolkien and I've run a few role-playing game campaigns. The idea of creating a culture from scratch is utterly fascinating to me, and that is where Var'aq came from.
This page is sort of a speculative glance at what a programming language on a Klingon computer system would look like. The language itself is named var'aq, which happens to be meaningless in standard Klingon but sounds like it might be named after some famous Klingon computer scientist or mathematician. It's really something of a Klingon Basic, a simple, loosely-typed programming language designed mostly just to be used for programming things like command displays and high-level control systems. In its eventual final incarnation, we're looking at concurrency, advanced mathematics, and even native support for distributed programs (try finding that in the C++ standard library).
This page is a bit more than that, though. In it I try to imagine what Klingon hacker culture is like based on what's known about Klingon culture in general. For example, it's a man's world on Qo'noS, Chancellor Azetbur's history-making tenure notwithstanding. Most men are warriors at heart, seemingly taking little heed of home life or those things that do not contribute to honor (why do you think Klingon sex is so rough? Klingon women get so little...). One assumes a rough-and-ready, make-do attitude that assumes that bigger-better-faster is at best a waste of time. A Klingon warrior might love to play Quake once in a while (but wouldn't admit it due to a lack of real blood), but would most likely see the 1GHz Athlon in the box being devoted to realtime, near-photorealistic slamming of texture-mapped polygons to be a dishonorable waste of computer resources. Far better, when you need power, to string a bunch of processors together Beowulf-style, yes?
Var'aq and its accompanying information aren't quite here yet, but until they are you're welcome to send whatever you think might be of interest to this page.
-------
There is a Google cache here:
http://www.google.com/search?q=cache:62oDEag2fl
NerfOnline - Because Nerf Guns aren't just for kids -
The premise underlying this project is interesting: will different cultures create different programming languages? It's a popular idea that natural language and culture are very much intertwined. (Think 20 eskimo words for snow here.) However, a natural language is used to actually do things that make up culture. One wonders if the same goes for a programming language: the language will probably not as much influence a culture as the other way around.
Another way to look at a language is as an expression of certain believes. This seems to fit the bill better. Will, for instance, a programmer with anarchistical tendencies prefer a language like Perl?
Being well balanced is overrated. -- John Carmack
Like Perl wasn't confusing enough....
I also like Unlambda, but Brainf*** is my language of choice.
~shiny
WILL HACK FOR $$$
This is an interesting question. What kind of programming languages will a klingon develop. But I think that I want to examine the character of a klingon programmer (from the internet, original attribution lost):
Klingon Programmer
Top 20 things likely to be overheard if you had a Klingon Programmer:
1. Defensive programming? Never! Klingon programs are always on the offense. Yes, offensive programming is what we do best.
2. Specifications are for the weak and timid!
3. This machine is GAGH! I need dual Pentium processors if I am to do battle with this code!
4. You cannot really appreciate Dilbert unless you've read it in the original Klingon.
5. Indentation?! - I will show you how to indent when I indent your skull!
6. What is this talk of 'release'? Klingons do not make software 'releases'. Our software 'escapes' leaving a bloody trail of designers and quality assurance people in its wake.
7. Klingon function calls do not have 'parameters' - they have 'arguments' -- and they ALWAYS WIN THEM.
8. Debugging? Klingons do not debug. Our software does not coddle the weak. Bugs are good for building character in the user.
9. I have challenged the entire ISO-9000 quality assurance team to a Bat-Leth contest on the holodeck. They will not concern us again.
10. A TRUE Klingon Warrior does not comment his code!
11. By filing this bug report you have challenged the honor of my family. Prepare to die!
12. You question the worthiness of my code? I should kill you where you stand!
13. Our users will know fear and cower before our software! Ship it! Ship it and let them flee like the dogs they are!
14. Our competitors are without honor!
15. Python? That is for children. A Klingon Warrior uses only machine code, keyed in on the front panel switches in raw binary.
16. Klingon programs don't do accountancy. For that, you need a Ferengi.
17. Klingon multitasking systems do not support "time-sharing". When a Klingon program wants to run, it challenges the scheduler in hand-to-hand combat and owns the machine.
18. Perhaps it IS a good day to die! I say we ship it!
19. My program has just dumped Stova Core!
20. Behold, the keyboard of Kalis! The greatest Klingon code warrior that ever lived!
-- Never make a general statement.
you are talking about :
"What is this talk of 'release'? Klingons do not make software 'releases'. Our software 'escapes,' leaving a bloody trail of designers and quality assurance people in its wake."
kapla"
Every time I fear I may be in danger of becoming too geeky, someone somewhere demonstrates that I have absolutely nothing to worry about ;-)
Cheers,
Tim
It's official. Most of you are morons.
when I first stumbled on it a year or so ago, I can only assume you didn't actually read very far, and/or were reading in the wrong place.
Chu vi parolas Vikipedion?
You can probably find something like this on the page if you bother to go looking:
"It turns out Klingons have no function to save().
So in adapting the language we simply used:
stop(kill())
which imparts almost the same meaning but remains true to the fundamentals of the beautiful nature of the language which is Klingon. Bj'nrak!!!"
fuckwits.
Never trust any source of programming information that has a high likelihood of close proximity to badly photoshopped vulcan porn.
Just a warning...
...It'll be hard to explain to your boss.
:)
Sure, I could make the well-used comment that as if learning Klingon wasn't quite geeky enough...
But I won't. Instead, I will remind people that those who laugh at, say, a Klingon computer language, and then, go back to work on making Linux work on their Atari 2600, ought to reconsider their opinion.
"What's so random about flipping a coin? Ever heard of the I Ching?"
Lameness filter encountered. Post aborted! Reason: Please use fewer 'junk' characters.
Strange... Maybe I'll send an Unlambda example at least:
It calculates and prints the Fibonacci numbers as lines of asterisks.It's quite challanging to parse that code, once you know the syntax.
~shiny
WILL HACK FOR $$$
Isn't it rather pointless for slashdot to post a geocities link?
They have one of the few "slashdot effect defense systems" that actually works. It goes something like this:
The web site you are trying to access has exceeded its allocated data transfer.
And puhleeese don't try to tell me a link to the Google cache is an acceptable mirror. It's not. Maybe if it altered all of the links to *also* point to the google cache it would amost be acceptable. I have a feeling the nice google people don't do that for exactly that reason -- they don't wanna be a free mirror whore.
"News for Nerds"? Any "nerd" who still uses geocities....
"Stuff that Matters"? If it's hosted on geocities, it probably doesn't matter. If it mattered, it would be hosted somewhere where everybody could see it on a consistent basis!
Well, the operating system would be called 'Klingux' and would incorporate pre-emptive strike multi-tasking.
The hardware would obviously be a box with lots of blinking lights on it.
Geocities doesn't support multiple downloads,
therefore I propose that everyone who wants to
read the links picks a time (GMT) with 5-minute intervals when they want to use the links and puts it in a reply to this post to avoid that multiple slashdot users try to access geocites at once.
I pick 15.00.
The Federation would have had these guys for lunch in a heartbeat.
Dog is my co-pilot.
"Let's create a website on which people can create their homepages and when people come to visit those homepages, we put OUR ads on them and make money that way"
"The web site you are trying to access has exceeded its allocated data transfer."
Anyone else missing something here? Or is it just me?
That thanks to Okuda's refusal to define or use a consistent mapping between Klingon characters and sounds, which makes no sense whatsoever, we're stuck with piqaD for I/O.
16. Klingon programs don't do accountancy. For that, you need a Ferengi. I can only begin to imagine what a Ferengi program would be like:
Note that any Ferengi Computer would feature price negotiated scheduling and routing.
Any other suggestions?
See my journal, I write things there
* I heard something about a "Klingon Forth". Is this it? And why isn't it called loSDIch?
Yes, in a way. It's a stack-based RPN language like Forth or PostScript; the reason for this has nothing to do with an original desire to emulate one of those languages, but simply the unusual object-verb-subject syntax of Klingon. This sort of dictated the required form of the language right up front, ruling out a more traditional ALGOL-like syntax (based on English). Stack-based languages are actually easier to parse anyway, especially in Perl: just chomp and process. It is also an impure functional language in the same vein as Lisp or ML; it supports local variables, but it is really intended to do everything off the stack.
As for calling it loSDIch (Klingon for fourth), that would be an obvious joke title to anyone who actually spoke Klingon; this being at least a semi-serious exercise in artificial culture development, such a title would be noticeably silly at best. var'aq is actually completely meaningless, though it suggests identification with a famous Klingon mathematician or computer scientist in sort of the same way as Pascal recalls Blaise Pascal or Ada recalls Ada Lovelace. In any case, the name var'aq came before the form of the language. (In any case, var'aq is based more directly on PostScript anyway. But they're all part of the same family.)
[...]
In terms of genetics, var'aq is the bastard child of a back-room tryst between PostScript and Lisp after a Star Trek convention.
[...]
* Why doesn't this construct translate to its PostScript/Forth equivalent?
The question is one of verisimilitude. The likelihood of a Klingon concept being an exact translation of its English equivalent isn't always good. Consequently, pure translation of an Earth language might make for a cute joke, but it would sacrifice plausibility. A prime example is the qaw/qawHa' instructions, which perform the same function as PostScript's mark/cleartomark instructions but literally translate to remember/forget; the idea is that the metaphor chosen in Klingon might more reflect the purpose of marking the stack than the actual act. Incidentally, It's quite true that many of the idioms chosen for var'aq are anything but obvious. This is the reason why; though mathematics is considered universal, it's not too likely that everything would be described in the same way. (That said, I did cheat in a few places; for example, the word for logarithm is a direct translation from the Greek logarithmos, meaning roughly "logic-number".)
For a rather thorough and creative discussion on the issues involved in translation, you might wish to look at Le ton beau de Marot by Douglas Hofstadter (the author of the hacker classic Goedel, Escher, Bach: An Eternal Golden Braid), an intricate and well-written look at the pitfalls of translation between languages.
"It is a greater offense to steal men's labor, than their clothes"
Now, if there is a recipe doing de-css in the program language 'Chef'...
... would cooking and serving a meal based on that recipe be illegal?
I think it would be hilarious to refer to a meal as "a collection of food carrying an illegal decryption algoritm"...
Open Materials Database
Any OS they would want would be strictly limited in scope like an I/O executive a file system and a simple CLI.
Any system would run one application only, and extremely well. The GUI would be part of the application and touch screens whould be used for inputs. Mice would be banned due to being thrown across the room and destroyed by bad-tempered users.
Think of the way that our Military use/abuse computers in the field. I guess that is the way Klingons would want to work.
See my journal, I write things there
It is a bit pointless by Geocities to shut down the page due to "exceeded data transfer quota" since the "temporarily unavailable" page in this case is three times bigger...
I didn't look deeply into the language but if Klingons are going to use design patterns when developing code, it must be these. (Detonator, Commando, Visitor from Hell and the like).
When I was in my freshmen year, a colleague emailed me a set of precompiler defines that would turn C++ code into ebonics C.
I have searched in vain for this on the net... that was in '95. Does anyone have information on ebonics C?
:)
The Klingons actually do have a source of technicians and scientists. This is the female of the species. Smaller and weaker than her male counterpart, she is however often more intelligent, and almost always better educated (by our standards.) Roles without sufficient honour for the men, scientific and technical positions in particular, are reserved for them. The advances of Klingon women, supplemented by the technological gains achieved by conquering more advanced, but less canny and battleworthy races, is responsible for their ability to compete.
=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Friends don't let friends enable ecmascript.
do you think it would be possible to post links to google cache in the main story? i'm sure the owners of the web sites would prefer it. what would it take to be a little more responsible and try to avoid squashing the little guys that provide your content? it must be nice to have so much bandwith that you loose perspective and forget that the rest of the world does not.
-- john
Hi,
Need place to put you site and get away from eveil geocities...contact me.
Power Corrupts,Absolute Power Corrupts Absolutely, leaving one person(group)in charge is absolutely corrupt.
Are you talking about CFront, by any chance?
--
Two witches watched two watches.
Which witch watched which watch?
Just one question: how do they make the touchscreen out of 3 inch armor steel so as to stand up to enraged Klingons?
"That's not right. You there... Policeman... Please take me away from this insanity."
spoken by 'Cave Guy' aka 'Royce '
from the cartoon 'Freakazoid'
(quote approximate)
Not only are we making up a language based on a TV show, we're making up a computer programming language based on that.
The living have better things to do than to continue hating the dead.
The guy who made var'aq is this guy I knew in college. He's a fascinating fellow--only he could create something like var'aq.
Anyhow, the interesting thing about var'aq is that because it runs on Perl, it's pretty ubiquitous meaning that if you really hate your job and feel the need for revenge, just go rewrite the production administration scripts in var'aq and then quit.
Klingon Programs are not released, they escape.
Krispy Cream is people
1024. Bugs are bad for business
2048. Bugs are good for business
Oh My God, you killed the site! You Bastards!
The site has exceeded it's data limit, according to GeoCities!
Fascism starts when the efficiency of the government becomes more important than the rights of the people.
They don't; they use transparent aluminum to protect the display, and use SAW (standing acoustic wave) technology to sense touch on the aluminum. We could probably do it with current human technology if we wished.
While the Klingon language is littered with apostrophes, your statement shouldn't be, pitiful pa'taQ.
Virg
P.S. Although the Klingon people are a fictitious entity, the Klingon language is not. It was originally assembled into a partial vocabulary by a fellow whose name escapes me, which has since then grown into a moderately usable language, much in the stripe of J.R.R. Tolkein's Elvish tongue.
Geocities has no honor! We should kill them where they stand!
Fascism starts when the efficiency of the government becomes more important than the rights of the people.
ERROR 404. Your have not met the required funds to view this page.
The HTTP RFC actually specifies such an error code: HTTP/1.1 402 Payment Required
Will I retire or break 10K?
And would eatting the meal be considered illegal as well? Imagine giving it to the judge of the DeCSS case.. having him eat it, and then explain to him what he has just eatten :)
:)
I think he would become very forgiving
They probably don't have something marking the end of statements, either, since a real warrior doesn't mind the discomfort of cramming everything on one line.
There might just be something to those rumors of Guido van Russom's batleff collection...
...or get Slashdot to honour a META tag at the destination of any remote links submitted:
e " CONTENT="1000000 hits">
<META NAME="PleaseDon'tLinkToMeIfYourDailyHitRateIsAbov
=)
(incidentally, banning particular referrers at the server isn't enough, as the incoming connections would be enough to slashdot a server. It'd have to be done in the Slashdot submission script)
Google doesn't cache images, and they're what choke web servers, since they generally consume both more bandwidth and more hits than the pages themselves. If you look at the Google cache of a page with six images, you still generate six hits on the actual server. So basically, this would generate a lot of no-revenue traffic for Google without helping the small sites survive Slashdotting much at all.
Charming idea, though.
This geocities is weak.
It has dishonored itself by crashing after just a few puny connections!
I would like to preface this by saying, yes, I know Klingons are fictional.
Consider, the only contact Terrans have had with Klingons is confrontational. Naturally are perspective of them is scued. The must be technical side of there culture and it has to have less confrontational means of imparting information. Other wise it would look something like this
"The compiler would optimize your code if you did this instead"
"How dare you insult my programming skills, we must battle to the death!"
Not the best way to get ahead.
OTOH it must be nice being able to challenge spammer to the death!
The Kruger Dunning explains most post on
are you sure that isn't MS.NET?
* Winners compare their achievements to their goals, losers compare theirs to that of others.
They just engaged the cloaking device!
Jon Acheson
All opinions expressed herein are my own, and not those of my employers, who are appalled.
I can't believe I'm actually getting into an argument about the feasibility of "Klingons".. *sigh*
Ok, you say that Klingon women who are weaker and therefore not able to do 'honorable' things much are responsible for Klingon advancement? Who builds the ships?
Would a great and honorable warrior lift a finger to implement the specs of a designed they do not see as an equal? Really.. If someone you look down upon told you what to do, how would you react?
Certainly a strong, honorable and enlightenned leader could require warriors to build according to their females design, but this would either:
a) Elevate the status of females to euqlly honorable to males, or
b) end with the death of the leader, probably premature, for the continual humiliation of honorable warriors by forcing them to do work they consider dishonorable.
The only alternative I see to all this, while still maintaining the intellectual role of the Klingon female, is slave labor.
Males fight and rule.. Females design.. Slaves implement the designs under guard of males. That's the only way it could work.. But, with the exception of prison camps (ST-VI) we've not seen Klingons as keeping slaves.
If slaves were used to such a degree as to build cities, space ships, power plants and so forth, they would necessarily be an integral part of the Klingon culture. They are not.
The REAL jabber has the user id: 13196
What you do today will cost you a day of your life
P.S. I am not making this up.
--
"Open source is good." - Steve Jobs
"Open source is evil." - Microsoft
> Geocities has no honor! We should kill them where they stand!
They denied the site its honorable death in battle, fighting against overwhelming page-hits! Death is too good for them!
Chris Mattern
Actually, they'd use something like the Apple Pro Mouse - incredibly sturdy and offers non confusing one button operation.
Lars T.
To the guy who modded me down from perfect to terrible Karma - Apple haters still suck
You haven't looked at much O.S. code have you?
Contrary to popular belief, coding is not all free blow-jobs and beer. Those things cost MONEY!
I did not find a lot of useful responses on the tlhIngan-Hol mailinglist of the Klingon Language Institute, but perhaps this is the right place (and time) to ask.
Please decipher my e-mail address and contact me if you're interested.
If the federal government dares to intrude upon my corporation again, then I Mog, son of Gates, will will give them a taste of my bat'le. Glory to the empire!
___
It's the end of my comment as I know it and I feel fine.
...makes sense really, as 3 is the closest integer base to e. This minimizes the value of (number of different symbols) * (number of symbols required to express n digits).
We should all use Base 3. Maybe....
.
Let's not stir that bag of worms...
Is it just me, or does the idea of a Klingon dressed up in one of those 'bunny suits' to go into a clean room just make you giggle.
JET Program: see Japan, meet intere
plus i imagine the keyboard would have to be reinforced for when the frustrated Klingon programmer bashes his or her head against it.
My favorite esoteric language is also on that site, Piet. It's the only language I can think of, aside from Befunge, that uses a 2-D array - an image, actually, that's supposed to look like abstract art - and direction, movement, etc, for instructions and program control. Someone *ahem* also wrote an interpreter for Piet with Perl and ImageMagick - Piet::Interpreter. Look for it on a CPAN near you.
The esolang culture is actually what inspired me to create var'aq in the first place. Chris Pressey, creator of Befunge and the person most directly responsible for giving me the idea for Var'aq in the first place; the Klingon angle happened to be the most convenient of its kind. I thought of doing an Elvish programming language as well (i.e. Sindarin-based) but Tolkien somehow left out virtually every mention of Elvish hackers in LotR :-)
I've also kicked around the idea of a programming language based on Latin based on Chris' thoughts on using inflection in a programming language, but it's not one of those things that seems to come together easily...
/Brian
Just keep in mind the following: you're talking about a geek (me) whose fastest computer is a Pentium II that I bought for less than $200 last year. Believe me, after getting slashdotted I understand why people pay, but I still can't afford any better.
Sorry folks...
/Brian
Guess the Vulcans can do it, as well...
;) ]):
// Try harder
// fatal error condition
A small http client written in SPOCK (Simple Programming-Oriented Computer Kode [yes, Vulcans use KDE
server=mindmeld(127.0.0.1:80);
if(server.type==Human)
server.send("rm -rf emotions");
if(server.state==illogical)
eyebrow->raise();
think("GET / HTTP/1.1\nHost: 127.0.0.1\n\n");
This message is provided under the terms outlined at http://www.bero.org/terms.html
I've given that a fair amount of thought, actually. Long story short it sort of comes out to Ethernet with busmastering capability (lots of redundancy, you see).
/brian
Illegal or not, it would certainly be disgusting. Did you actually read the "Hello World" recipe? No one in their right mind would eat that.
Hey, I didn't post it; the /. crew found it on their own. As for bandwidth, I got what I can afford. It sucks, but...
/Brian
Modern Klingons don't use base 3; it's mentioned as being old tradition, but base 10 (the higher numbers seem to be derived from musical notes) is the norm in "modern" Klingon society. There is some vestigial base 3 stuff in the spec (there's a log3 function that I designed but never implemented) but for the most part I haven't made much of an effort in the base 3 department, primarily because of notational issues.
/Brian
I think the point people are trying to make is that Mongols, while reliant on technologies like metallurgy, weaving, tanning etc., were not a highly technological civilization which had to use complex, self-contained starships to travel around. Basically, one has to assume that the "warrior class" of Klingons are not entirely representative, but are in fact the only ones who are commonly seen by outsiders. Obviously there must be farmers, technicians, etc. *somewhere* or the warriors starve, and the ships break down, and then where is your precious Empire? And no, they can't just loot everything - you might be able to make a go of waging interstellar war for food, but, as somebody else in this thread says, who would trust slaves to build starships? I would guess that other professions would not be seen as being as "honorable" as warriors, but would have their own place in Klingon society.
Freedom: "I won't!"
Klingons are probably somewhat more rational than some traders that I know! However some traders would love to have a "Launch Photon Torpedoes" button.
See my journal, I write things there