{
"$type": "site.standard.document",
"bskyPostRef": {
"cid": "bafyreicw3fvck5nu4okzzulwevsk5wowhykmd3rxyk6xxbcwv4bchvkneu",
"uri": "at://did:plc:4n6wgsqsqm6q2hjncgwmreey/app.bsky.feed.post/3mgpvyho7i3l2"
},
"coverImage": {
"$type": "blob",
"ref": {
"$link": "bafkreif3dqs2c6q7ecqwvxkm37guf4pqb47wnflrx3ezspv4xbizx55yny"
},
"mimeType": "image/jpeg",
"size": 40671
},
"path": "/post/46978946",
"publishedAt": "2026-03-10T14:04:48.000Z",
"site": "https://programming.dev",
"tags": [
"Programming",
"tocano",
"3 comments",
"https://wiki.xxiivv.com/site/uxntal.html",
"piefed.social/…/what-is-uxntal-the-programming-la…",
"wiki.xxiivv.com/site/uxntal.html",
"en.wikipedia.org/…/Concatenative_programming_lang…"
],
"textContent": "submitted by tocano to programming\n9 points | 3 comments\nhttps://wiki.xxiivv.com/site/uxntal.html\n\ncross-posted from: piefed.social/…/what-is-uxntal-the-programming-la…\n\n> uxntal is the programming language for the uxn virtual machine.\n>\n> uxntal is a concatenative language, which works like a pipeline of functions which take the result from the previous function, apply a transformation, and return the value to the next operation. “[T]here are no precedence rules, the calculations are merely performed in the sequence in which they are presented”.\n>\n> In concatenative languages the block `mul(add(x, y), z)` could be written as `z x y add mul`. Each function takes its parameters from a common data structure, which in this case is a stack, and data types are dynamic, but may be infered with dev tools.\n>\n> A stack is a data structure where values are “pushed” / added on top of the stack and “popped” / removed from the stack. Operations will always be applyed on the top element(s).\n>\n> In uxntal you work with bytes (8 bits) and shorts (16 bits), usually in hex notation, and you have some basic stack operators.\n>\n> * LIT, push a value to the stack\n> * POP, pop a value from the stack\n> * DUP, copy a value from the stack\n>\n\n>\n>\n> (so the program)\n> LIT 00 DUP\n>\n> (would end up with a stack)\n> 00 00\n>\n> (and adding a POP)\n> LIT 00 DUP POP\n>\n> (would remove the last element)\n> 00\n>\n>\n> * wiki.xxiivv.com/site/uxntal.html\n> * en.wikipedia.org/…/Concatenative_programming_lang…\n>\n",
"title": "What is uxntal ? The programming language for uxn ecosystem"
}