{"id":19900,"date":"2023-07-05T12:12:23","date_gmt":"2023-07-05T19:12:23","guid":{"rendered":"https:\/\/www.kith.org\/jed\/?page_id=19900"},"modified":"2025-09-20T23:41:54","modified_gmt":"2025-09-21T06:41:54","slug":"programming-language-proposal-c","status":"publish","type":"page","link":"https:\/\/www.kith.org\/jed\/hodgepodge\/code\/programming-language-proposal-c\/","title":{"rendered":"Programming language proposal: C!!!"},"content":{"rendered":"\r\n\r\n<p class=\"pub-history-dates\">(Written: 24 July 1995. Webbed: 25 October 1995.)<\/p>\r\n\r\n<hr width=\"25%\" \/>\r\n\r\n<p class=\"text-center\"><i>\u201cDesperate times call for desperate languages.\u201d<\/i><p>\r\n\r\n<p>&nbsp;<\/p>\r\n\r\n<p>I just saw a sentence that ended with \u201cC!!!\u201d, which I thought would be a great name for a new programming language (pronounced \u201csee bang bang bang!\u201d). It\u2019s not as concise as ! (a programming language one of my friends came up with a few years back), but it might be more flexible. Above all, it\u2019s a LOUD language\u2014all keywords and variable names must be capitalized at all times, and bangs, splats, crashes, and other sound effects should be used liberally. There are no permanent data structures in C!!!; all data is considered mortal. The language includes operators like<p>\r\n\r\n<pre>\r\n      \\|\/\r\n     --*--\r\n      \/|\\\r\n<\/pre>\r\n\r\n<p>(the \u201ckaboom\u201d operator, which obliterates whatever data is fed to it\u2014not to be confused with \u201c-*-\u201d, the \u201ckapow\u201d operator, which deallocates memory but does not render it useless for future storage), and {} (the \u201cmangle\u201d and \u201cchomp\u201d operators, used to crush data into more compact forms). Other things you can do to data include slashing (\/), mashing (#), and quartering (+). Pointers are known as \u201carrows\u201d (-->) and are used primarily to puncture data structures and let their contents dribble out (known as \u201cbleeding\u201d). Rather than using old-fashioned iteration and recursion, C!!! programmers take a \u201chack-and-slash\u201d approach to solving problems\u2014though other programming structures (such as \u201cdivide and conquer\u201d and \u201cscorched earth\u201d) are also available.<p>\r\n\r\n<p>I think C!!! is destined to be the language of the future. Anyone who wants to get in on the ground floor now should start suggesting key language features, preferably named after their discoverers.<p>\r\n\r\n\n","protected":false},"excerpt":{"rendered":"","protected":false},"author":5,"featured_media":0,"parent":5479,"menu_order":20,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"footnotes":""},"class_list":["post-19900","page","type-page","status-publish","hentry"],"acf":[],"_links":{"self":[{"href":"https:\/\/www.kith.org\/jed\/wp-json\/wp\/v2\/pages\/19900","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.kith.org\/jed\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.kith.org\/jed\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.kith.org\/jed\/wp-json\/wp\/v2\/users\/5"}],"replies":[{"embeddable":true,"href":"https:\/\/www.kith.org\/jed\/wp-json\/wp\/v2\/comments?post=19900"}],"version-history":[{"count":5,"href":"https:\/\/www.kith.org\/jed\/wp-json\/wp\/v2\/pages\/19900\/revisions"}],"predecessor-version":[{"id":20663,"href":"https:\/\/www.kith.org\/jed\/wp-json\/wp\/v2\/pages\/19900\/revisions\/20663"}],"up":[{"embeddable":true,"href":"https:\/\/www.kith.org\/jed\/wp-json\/wp\/v2\/pages\/5479"}],"wp:attachment":[{"href":"https:\/\/www.kith.org\/jed\/wp-json\/wp\/v2\/media?parent=19900"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}