BASE/Other esolang implementations

From Esolang
Jump to navigation Jump to search
Back to BASE
This is still a work in progress. It may be changed in the future.

+

Becuase of + being a OISC langauge. This interpriter is easy to make probabaly anywhere. What a useful language!

ASSIGN a TO 0
WHILE TRUE
  ASSIGN i TO USER
  CHECK IF i IS + IF YES THEN
    ASSIGN a TO SUM a PLU 1
  END

+-

oh look. we have an update

+-

wait why is there a subheading with the same name?

eh whatever

ASSIGN a TO 0
WHILE TRUE
  ASSIGN i TO USER
  CHECK IF i IS + IF YES THEN
    ASSIGN a TO SUM a PLU 1
  END
  CHECK IF i IS - IF YES THEN
    ASSIGN a TO SUM a MIN 1
  END

+-=

oh nevermind then

ASSIGN a TO 0
WHILE TRUE
  ASSIGN i TO USER
  CHECK IF i IS + IF YES THEN
    ASSIGN a TO SUM a PLU 1
  END
  CHECK IF i IS - IF YES THEN
    ASSIGN a TO SUM a MIN 1
  END
  CHECK IF i IS = IF YES THEN
    PRINT var:a
  END

,()

ASSIGN a TO 0
WHILE TRUE
  ASSIGN i TO USER
  CHECK IF i IS , IF YES THEN
    ASSIGN a TO i
  END
  CHECK IF i IS ( IF YES THEN
    CHECK IF i IS 0 IF YES THEN
      PRINT var:a
    IF NOT THEN
      WHILE TRUE
        PRINT var:a
    END
  END
  CHECK IF i IS ) IF YES THEN
    PRINT var:i
  END

-

WHILE TRUE
  ASSIGN i TO USER
  CHECK IF i IS - IF YES THEN
    PRINT Hello, World!
  IF NOT THEN
    PRINT i will not do that!

ABCD

ASSIGN a TO 0
WHILE TRUE
  ASSIGN i TO USER
  CHECK IF i IS A
    ASSIGN a TO SUM a PLU 1
  END
  CHECK IF i IS B
    ASSIGN a TO SUM a MIN 1
  END
  CHECK IF i IS C
    ASSIGN a TO USER
  END
  CHECK IF i IS D
    PRINT var:a
  END

ABPLWNL... Without the "a" and the "7" command

ASSIGN A TO 0
ASSIGN B TO 0
ASSIGN tv TO 0
WHILE TRUE
  ASSIGN i IS USER
  CHECK IF i IS 1 IF YES THEN
    ASSIGN A TO SUM A PLU 1
  END
  CHECK IF i IS 2 IF YES THEN
    CHECK IF A IS NOT 0 OR LESS 0 IF YES
      ASSIGN A TO SUM A MIN 1
    END
  END
  CHECK IF i IS 3 IF YES THEN
    ASSIGN A TO tv
    ASSIGN B TO A
    ASSIGN tv TO B
  END
  CHECK IF i IS 4 IF YES THEN
    CHECK IF B IS NOT 0 IF YES THEN
      ASSIGN B TO SUM B MIN 1
      ASSIGN A TO SUM A PLU 1
    END
  END
  CHECK IF i IS 5 IF YES THEN
    ASSIGN A TO SUM A PLU B
    ASSIGN B TO 0
  END
  CHECK IF i IS 6 IF YES THEN
    PRINT var:B
  END
  CHECK IF i IS 8 IF YES THEN
    ASSIGN A TO 0
  END
  CHECK IF i IS 9 IF YES THEN
    ASSIGN B TO USER
  END