Jackass

From Esolang
Jump to: navigation, search

Jackass is a stack-based language made by User:Phase. The way it operates is inspired by Brainfuck, but the syntax is pure hexadecimal.

Syntax

A program is split up into different hexadecimal commands separated by spaces.

01 02 02

Pushes 2 to the stack and pops it off.

Operation List

The operations are in the order I thought of them in, so they're completely out of order and are meant to be that way. This list is not complete by any means, I will be adding more once I recharge my computer.

  • 01 - push the next value to the stack
  • 02 - pop the top of the stack off
  • 03 - swap the top two values on the stack
  • 04 - move the third value on the stack to the top
  • 05 - pop the top of the stack, go to that line in the program
  • 06 - clone the top of the stack
  • 07 - add the top two values on the stack and push the result
  • 08 - subtract the top two values on the stack and push the result
  • 09 - multiply the top two values on the stack and push the result
  • 0a - divide the top two values on the stack and push the result
  • 0b - mod the top two values on the stack and push the result
  • 0c - print the top of the stack as a number
  • 0d - print the top of the stack as a character
  • 0e - push input from stdin as a number
  • 0f - push input from stdin as a string (splitting it up into characters and pushing the value of each one)

Interpreter

Untested Interpreter based on spec at time of writing. Care to write a Hello World?