{
  "$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"
}