logoalt Hacker News

Purrtran – ᓚᘏᗢ – A Programming Language for Cat People

252 pointsby simonpurelast Saturday at 6:02 PM36 commentsview on HN

Comments

iglerialast Tuesday at 3:36 PM

> PURRTRAN allocates all variables to an arena called the "Litterbox". The Litterbox must be manually emptied at least once a day by the user, or Hex's cleanliness and love will decrease. The Litterbox can overflow, which will cause Hex to become very displeased and may lead to unexpected program behavior, as Hex will begin storing variables in your source code text buffer instead of the Litterbox until it's cleaned.

I'm cackling like a madman, thank you for this op.

show 2 replies
jeberlelast Tuesday at 4:17 PM

Cat constructed from block: Unified Canadian Aboriginal Syllabics, U+1400 to U+167F

  U+14DA  ᓚ CANADIAN SYLLABICS LA
  U+160F  ᘏ CANADIAN SYLLABICS CARRIER YO
  U+15E2  ᗢ CANADIAN SYLLABICS CARRIER TTU
https://unicode.scarfboy.com/?s=%E1%93%9A%E1%98%8F%E1%97%A2
show 1 reply
MisterTealast Tuesday at 4:49 PM

> Hex will let you know when he is bored by interrupting your work with a note in your terminal

Cats routinely initiate attention grabbing denial of service attacks by blocking access to hardware so this needs proper emulation to increase the realism. I have a few recommendations:

Mouse trapping - when cat pops up the mouse cursor should be limited in motion as if you turned the sensitivity down to near 0. This emulates a cat who lies directly on top of your mousing hand while using said mouse.

Keyboard injection - after cat pops up all further typing results in cat-on-a-keyboard output. This emulates a cat sitting or walking across your keyboard.

Screen jacking - The screen has a cat shaped blank spot that obscures most of your working environment. This can also be paired with cat-on-a-keyboard typing. Emulates cat sitting in front of monitor, likely on top of keyboard.

Once hardware denial fails they move on to destroying your personal items:

destruction of personal items - USB solenoids strategically placed behind any object that you either a. cherish or b. do not want spilled. "That nice book you were just admiring - now it has coffee all over it because I am need something."

I could go on but these are a good starting point.

show 2 replies
zahlmanlast Tuesday at 6:26 PM

I assume all variables are mewtable by default?

show 1 reply
agrocraglast Tuesday at 4:35 PM

Also, language for the youth, CURSED, https://github.com/ghuntley/cursed

cmontellalast Tuesday at 9:18 PM

Thanks for the kind words and keeping the joke going, I laughed at many of these responses. I think they'll make it in to v2.0 which should be out by 4/1

It makes sense that the first thing I'd get to the front page of HN is what amounts to a bad joke :P

bfleschlast Tuesday at 6:07 PM

Interesting and creative project. But I wonder if the author suffers from toxoplasmosis / toxoplasma gondii.

show 1 reply
tempodoxlast Tuesday at 3:36 PM

The ASCII art cats are great. I wonder whether a canonical purrtran compiler would emit those upon request?

postitlast Tuesday at 7:48 PM

ᘛ⁐̤ᕐᐷ

fractaliclast Tuesday at 6:40 PM

>The rabbit would still be alive if you were a better programmer.

I think that's a brand new sentence

thegingerlast Tuesday at 10:12 PM

Seems more of a productivity killer rather than an aid but cats are great marketing. I see no reason not to submit this for YC funding in the next round

modderationlast Tuesday at 11:03 PM

Can this be generalized into a higher-level metalanguage? Notably, one called FURTRAN with broader support for other fuzzy creatures?

show 1 reply
marwannlast Tuesday at 6:31 PM

Very impurrtant work

v-yadlilast Tuesday at 7:29 PM

I read and giggle to the end with great interest, and now I'm told it's just a joke.

Nyawww!

hiducklast Tuesday at 4:18 PM

Finally, a good programming language

pca006132yesterday at 12:19 AM

I thought this means for category theory people

anyway, quite cute :)

swatson741last Tuesday at 11:13 PM

this is really quite interesting to read through after nearly going catatonic thinking about catamorphisms in the Tiger language.

echelon_musklast Tuesday at 4:46 PM

Is FORTRAN for FOR people?

dankobgdlast Tuesday at 4:04 PM

The future is here

dijksterhuislast Tuesday at 11:32 PM

genuinely one of the best submissions i’ve seen in a long time.

puzzlingcaptchalast Tuesday at 7:20 PM

that's just unchecked neurotoxoplasmosis

mxfhlast Tuesday at 9:33 PM

𓃠 exists.

ZebusJesuslast Tuesday at 6:15 PM

Not gonna lie this makes me want to learn Purrtran, you have to feed HEX, clean up after them and play with them or else it will misbehave or even die. Hex needs to be happy to help with code, I love it great way to make programming fun! Also pretty cool that they added print and for loop structures that are easier to use.

"In the following example, Hex leaves you a dead baby bunny rabbit because you have unused variables in your code"

show 1 reply
Rendellolast Saturday at 8:26 PM

See also: LOLCODE (which has implementations, unlike Purrtran)

https://en.wikipedia.org/wiki/LOLCODE

show 1 reply