here is the program in the video:
Code: Select all
10 PRINT "SARA IS THE BEST"
20 goto 10
in early 2015 when my debian project was put on hold, i started working on a programming language designed to be "the easiest language ever." obviously that depends on whats important and whats difficult: if youre trying to learn memory management, learn c.
i wanted the language ("fig basic") to be usable for teaching the following concepts. if you can use a computer, you can probably learn them too:
* 1. variables, including arrays
* 2. input
* 3. output
* 4. basic math (2 + 2 = 4, upper-case "p" is ascii 80)
* 5. loops
* 6. conditionals
* 7. functions
fig has about 100 commands and punctuation is optional ( ) | ; : = ,
except for "strings of letters go in double quotes" and # hashes mark comments. decimals do what you would expect: 2.5 plus 2.5 is 5.
fig is also designed to get people more familiar with the command line, through simple tasks:
* compiling a program
* starting the program
* (not actually on the command line, but in the cli) running the program
if you install pygame, fig has a graphics window and a LINE and PSET command. (a public domain circle routine can be found here: http://www.murga-linux.com/puppy/viewtopic.php?t=107170)
if you dont install or have pygame, fig will use ansi in the term to do LINE and PSET (and the circle routine.) you can see what thats like in this video snippet: http://i.imgur.com/uslBGBo.webm
like older versions of basic, fig isnt case senstive. unlike almost any basic dialect, it starts almost every line with a variable. just use "p" or "x" or "z" if you dont want to think of a variable all the time. i often use "now"
Code: Select all
now "sara is the best" print
Code: Select all
now "sara is the best" ucase print
i tried teaching basic to friends, spent 5 years looking for a suitable basic alternative, found python, tried teaching python to friends.
trying to code gets a lot of people lost. fig is designed (both sematically and in terms of core subjects) to go in a straight line, so that after the basics are understood, the coder can move forward in one of several ways:
* transition to python or bash through figs arrshell and python commands
* learn another language
* do website / html / css / etc
* write a simple programming language (seriously)
* add routines to fig to create their own derivative
i also have a series of short stories related to the 7 programming concepts, which do not lean on code but make it easier to explain how programming works.
learning how to code wont necessarily prepare you for a career in coding, but its a first step. it will also help you understand computing, which for too long was being "trained instead of taught" and we are finally getting back to teaching again.
as for why fig is not drag-and-drop coding: there are usable drag-and-drop environments already. i wanted to make a language that made writing code as easy as possible, i didnt want to start with an ide.
fig tries to be the easiest language ever (if you arent familiar with the basics: http://imgur.com/oZ0zc1M -- it may not appear to be easy to understand at first) but its meant to also encourage coders to try to write an easier language. thats what the sig in my post currently talks about.
everyone should learn how to code. whether its fig or python or js or c, each language has strengths. figs (i hope) is that it will be easier to teach the largest number of people how to write and understand code.