I came up with an idea for a programming language quite some time ago, and only recently I've actually sat down to make it happen.
FLIO: First/Last, In/Out.

This language is based off of a stack which can be pushed/popped from both ends.
FLIO code does most of its operations on that stack.

The instructions are case-insensitive, but [most of] the arguments are case-sensitive.

This language is mostly for fun, but it can be used to do a lot of practical things.
I am planning to upload a release very soon Smile

Here's some example code, to give you an idea of what FLIO is like:

Code:

//Hello world example in "flio" by beckadamtheinventor
//make a variable and store a number to it
var version
fi 1.3
fo version
//push the label "hello" to the first stack
fi lbl-hello
//push the program counter plus one (ignoring comments) to the latter stack, then pop the first stack to the program counter
lpush 1
fret
//exit the interpreter
quit
lbl-hello
print "Hello World!"
//Initialize variable "I", push user input, then pop user input to "I"
var I
fi input-"What is your name?"
fo I
//push this string then concatenate other strings/numbers with 'fadd'
fi "Hello, "
fadd I
fadd "! Welcome to flio "
fadd version
fadd "!"
//pop to I and then print it
fo I
print I
//return from subroutine
lret

And the output:

Code:

Hello World!
What is your name?Beck
Hello, Beck! Welcome to flio 1.3!
It reminds me a bit of stack-based programming languages such as RPL and Forth, but with explicit pushing and popping, I guess. (In RPL/Forth, data that appears in the program is automatically pushed, and functions take arguments from the stack automatically and then push their return values, and there are also functions to rearrange the values on the stack so that you can work with them in a different order.)
  
Register to Join the Conversation
Have your own thoughts to add to this or any other topic? Want to ask a question, offer a suggestion, share your own programs and projects, upload a file to the file archives, get help with calculator and computer programming, or simply chat with like-minded coders and tech and calculator enthusiasts via the site-wide AJAX SAX widget? Registration for a free Cemetech account only takes a minute.

» Go to Registration page
Page 1 of 1
» All times are UTC - 5 Hours
 
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum

 

Advertisement