Other languages >> Leopard Programming Language
Posted by brandonwatts on 10:43:00 09-10-2003
Hello,

I'm a 17 year old software developer and overall technophile. Over the past three years I have been developing a programming language that makes it incredibly easy to get started making simple Windows programs. There are to many languages that make programming seem complicated and out of reach. I wanted to provide a tool that was quick, easy, and fun. I have released it as freeware so that everyone can use it to the full.

I just thought that I would post the url here for anyone that wanted to give it a try.

http://www.leopardprogramming.com

Thanks!

Brandon Watts
E-mail: brandonwatts@adelphia.net
Personal: http://www.brandonwatts.net
Leopard: http://www.leopardprogramming.com
Posted by cowsarenotevil on 10:51:00 09-10-2003
I don't need it, but I must say that looks very impressive. Good luck!
Posted by Smerdyakov on 11:08:00 09-10-2003
It would be nice if there were some information on the language available on the web. Not everyone runs Windows, and those who do may not want to run your program to learn more about it.
Posted by brandonwatts on 11:13:00 09-10-2003
-->

Leopard just came out about halfway through August. There has not been enough time for resources to develop online that contain users comments and experiences. I'm working on this though...

Brandon Watts
E-mail: brandonwatts@adelphia.net
Personal: http://www.brandonwatts.net
Leopard: http://www.leopardprogramming.com
Posted by Smerdyakov on 15:01:00 09-10-2003
I'm not talking about comments or experiences. I mean a language specification, tutorials, example programs, etc..
Posted by C_Rdd on 00:50:00 09-11-2003
I will be genuinely interested in this when there is some more documentation about it. Good luck. (Smerdyakov, would it harm to say something nice in a while. And this is clearly intended to be educational, rather than practical, and to my knowledge, very few people who are starting out on programming use anything other than Windows.)
Posted by ItinitI on 02:04:00 09-11-2003
Aye, this seems to be an overhead of Windows GUI programming; much in the way C is an overhead of ASM [From the picture on the site anyway]. And I'm quite interested... Ill try it soon.
Posted by ItinitI on 02:11:00 09-11-2003
For those who want somesort of tutorial, here is the readme from the download:

Leopard
Developed by Brandon Watts
(c) 2003 Brandon Watts

brandonwatts@adelphia.net
http://www.leopardprogramming.com


CONTENTS:

1. Introduction
2. Editor
3. Building a Window
4. Adding Controls
5. Printing to Controls
6. Using Onclick Events
7. Window Properties
8. OnOpen/OnClose Events
9. Variables
10. Graphics Window
11. Text Window
12. No Window
13. Using the Compiler
14. Troubleshooting
15. Legal Information



------------------------------------------------------------------------------------
INTRODUCTION
------------------------------------------------------------------------------------

Welcome to the Leopard programming language! Leopard makes it incredibly easy to
start programming your own software. There are so many languages out there that can
be to complicated and to confusing for a beginner to grasp. Leopard simplifies the
process, making programming easy and fun.

My goal with Leopard is to spark your interest in programming software, and
hopefully this will lead you to expanding your skills with other languages. Leopard
will get you up and running in very little time, and I hope it's an enjoyable
experience for you.

This helpfile is designed to give you an overview of all the features that Leopard
contains. Be sure to also look at the example programs that are included with this
distribution to get a feel for how programs are constructed, and how the language
works. If you have any questions, problems, comments, or bug reports, please feel
free to contact me.


------------------------------------------------------------------------------------
EDITOR
------------------------------------------------------------------------------------

The Leopard interface is built in an easy-to-use fashion. It was built to be very
simple, but it gets the job done. Here is an overview of the menu options in the
editor:

New - Clears the editor of all previous code and gives you a blank file.
Open - Opens a previously saved .lep file.
Save - Saves the current code to a .lep file.
Exit - Closes the editor.

Execute - Runs the program entered in the editor.
Compile - Takes a saved program file and turns it into an .exe file.

Change Font - Changes the font of the editor.
Change Text Color - Changes the text color of the editor. You must restart Leopard
to see the new color.
Print Code - Prints a copy of the current code from your printer.

Help Topics - Loads this file.
About - Various information about Leopard.


------------------------------------------------------------------------------------
BUILDING A WINDOW
------------------------------------------------------------------------------------

Let's build a simple "window" program now. First, specify the type of window you
want to use which for this example is "window". You do this by typing the following
command in the editor:

window

Now you enter the text you want to appear in the titlebar of the window:

window title
My First Program

Next, you specify the size of the window:

window size
300
200

The first number is the width of the window, and the second number is the height.
These numbers are in terms of pixels.

Now you let the editor know that you are done programming with this vital command:

end

This command MUST be at the end of every one of your programs! If it is not included
your program will not run and it may cause an error. Sometimes you may want to space
it down a good bit from the rest of the program code. This helps Panther interpret
the command and tell the editor that the program code is done.

Your program should look something like this:


window

window title
My First Program

window size
300
200

end


Click the run command to execute your program. Congratulations! You have built your
first Windows program!

Notice how I have spaced the commands apart instead of typing them one after the
other. This helps readability, and also ensures that Leopard will interpret your
program code properly. Make it a regular practice to give considerable space between
each command.

In the following sections you will learn how to make your programs do more useful
things by adding controls, and using onclick events.


------------------------------------------------------------------------------------
ADDING CONTROLS
------------------------------------------------------------------------------------

Now that you know how to build a simple window, let's add some controls to it.

Here is the list of controls that you can add:

textbox
textedit
text
button
bmpbutton
listbox
combobox
radiobutton
checkbox
groupbox
menu

In these examples, just change the numbers to the dimensions of the control that you
want. The first two numbers specify the location (width/height) on the window where
the control appears. The last two numbers are the width and height of the control
itself. This applies for most of the controls you will utilize. If the text of a
certain control gets cut off, just make it bigger.


Textbox:

textbox
10
10
90
90


Textedit:

textedit
10
10
90
90


Text:

text
Hello World!
10
10
90
20


Button:

button
Click Me
10
10
60
20


Bmpbutton:

bmpbutton
name.bmp
10
10

The graphic used for this control MUST be a .bmp file!


Listbox:

listbox
10
10
90
90


Combobox:

combobox
10
10
90
90


Radiobutton:

radiobutton
Click Me
10
10
90
90


Checkbox:

checkbox
Click Me
10
10
90
90


Groupbox:

groupbox
Group
10
10
90
90


Menu:

menu


Of course, one control is not always enough. In Leopard you can use five of each
control. The exceptions are the listbox, combobox, and menu control. You can have
only one instance of these controls. All other controls can have five instances.

For example, if you wanted five button controls you would use the button code that
you used earlier, only this time you add the number to the end, such as:

buttontwo
buttonthree
buttonfour
buttonfive

So the complete syntax for the third button would be something like:

buttonthree
Click Me
10
10
60
20

A program with two button controls would be written like this:


window

window title
My Sample

window size
300
200

button
Button #1
110
10
60
60

buttontwo
Button #2
110
100
60
60


end


Remember to always start with the first control and add others as needed. Do not
start from the second or third control and work your way up.


------------------------------------------------------------------------------------
PRINTING TO CONTROLS
------------------------------------------------------------------------------------

Before we learn how to use onclick commands, it will prove useful to first learn how
to print to certain controls when the window first opens.

Printing to textbox and textedit controls is very simple. If you want to print to
the first textbox, type:

print textbox
Text

If you would like to print to textedit four, you would type:

print texteditfour
Text

Just use the print command with the name of the textbox or textedit you want to print
to, and on the next line specify the text you want printed.

Here is what an example use of this code might look like in a program:


window

window title
Control Test

window size
300
300

textbox
10
10
120
120

print textbox
Test


end


You can also print to listbox and combobox controls too. Use the same code you used
to print to the textbox and textedit controls, except name the listbox or combobox
selection. You can only use one combobox and listbox control in Leopard, but they
can hold five selections. Here's an example:

print listbox
One

print listboxtwo
Two

Used in a real program it would look like this:


window

window title
Listbox

window size
300
300

listbox
10
10
120
120

print listbox
One

print listboxtwo
Two


end


This works the same way with comboboxes. Remember, you can use up to five selections
with the combobox and listbox controls, but always name the first one and work your
way up to five.


------------------------------------------------------------------------------------
USING ONCLICK EVENTS
------------------------------------------------------------------------------------

Onclick events are where you can get your program to do some more useful things.
They specify what happens when a user clicks on a certain control.

To use them you just type the name of the control and add "onclick" to the line.

Examples:

button onclick
menu onclick
bmpbuttonthree onclick
listboxfive onclick

You then follow that code with the command you want to execute. You will see how
this is accomplished in a better way by looking at the following commands. If you
still need more examples look at the sample programs that are included with Leopard.


ONCLICK COMMAND LIST:

notice
print textbox
print textedit
printer textbox
printer textedit
write file
append file
playwav
stopwav
print
delete
internet
email
beep
close window
cursor
date
drives
filedialog
makedir
removedir
printerdialog
run
time
run text
fontdialog
cd open
cd close
play avi
play avi fullscreen
restart
read file textedit
play mp3
stop music
pause music
play midi
colordialog
download file
textedit file
textbox file
play mpeg
play mpeg fullscreen
pause video
stop video
change window title
file check
change text
maximize
minimize


EXPLANATATIONS:


To display a notice box:

buttonthree onclick
notice
Leopard


To print to a textbox:

bmpbutton onclick
print textboxfour
Look at me!


To print to a textedit control:

radiobutton onclick
print texteditthree
Look at me!


To create a file:

menu onclick
write file
test.txt
Complete!

Instead of using the .txt file extension you can name your own. Commands that create
files like this place them in the directory where the program is being run, unless
you give them a direct path to place the file.


To append a file (add):

button onclick
append file
name.dat
Append


To play a wav file:

checkbox onclick
playwav
sample.wav


To stop a wav file:

radiobuttonfour onclick
stopwav


To print text from a printer:

listboxtwo onclick
print
Here I come!


To print text from a textedit or textbox:

menu onclick
printer textboxtwo


To delete a file (BE CAREFUL WITH THIS):

checkbox onclick
delete
file.txt


To open the default browser and go to a website:

menu onclick
internet
www.google.com


To open the default e-mail application and put an address in the "To:" field:

radiobuttontwo onclick
email
brandonwatts@adelphia.net


To make a beep sound:

comboboxfive onclick
beep


To close the program window:

menu onclick
close window


To change the cursor:

bmpbutton onclick
cursor
crosshair

Instead of crosshair you can also use:

text
arrow
hourglass
normal


To find out what the current date is:

checkboxthree onclick
date


To see what the drives on the computer are:

bmpbutton onclick
drives


To open a filedialog box:

menu onclick
filedialog


To make a directory (folder):

buttonfive onclick
makedir
Leopard

You can also specify an exact path: c:\programs\Leopard


To remove a directory (folder):

listbox onclick
removedir
Leopard

You can also specify an exact path: c:\programs\Leopard


To see the printer dialog:

bmpbutton onclick
printerdialog


To run a .exe file:

radiobutton onclick
run
Program.exe

You can specify an exact path for the file such as: c:\folder\Program.exe


To see the current time

checkboxfour onclick
time


To open a textfile in notepad:

listboxtwo onclick
run text
beta.txt

You can specify an exact path for the file such as: c:\folder\beta.txt


To see the fontdialog:

menu onclick
fontdialog


To open the CD tray:

radiobutton onclick
cd open


To close the CD tray:

menu onclick
cd close


To play an avi file that the user selects:

checkbox onclick
play avi
name.avi


To play an avi file fullscreen:

checkboxtwo onclick
play avi fullscreen
name.avi


To restart the computer:

bmpbutton onclick
restart


To put the contents of a file into a textedit control:

radiobuttonfour onclick
read file textedit
name.txt


To play an mp3 file:

menu onclick
play mp3
song.mp3


To play a midi file:

bmpbuttonfive onclick
play midi
song.mid


To stop the audio from a mp3 or midi file:

button onclick
stop music


To pause the audio from a mp3 or midi file:

button onclick
pause music


To display the colordialog:

checkboxtwo onclick
colordialog


To download a file from the internet:

radiobuttonthree onclick
download file
http://www.domain.com/me.jpg
c:\me.jpg

The "c:\me.jpg" part tells Leopard where to save the downloaded file on the computer.


To save the contents of a textbox or textedit control to a file:

menu onclick
texteditthree file
file.html


To play an mpeg file in a small window:

buttonthree onclick
play mpeg
filename.mpeg


To play an mpeg file fullscreen:

listboxfour onclick
play mpeg fullscreen
filename.mpeg


To pause the video:

bmpbutton onclick
pause video


To stop the video:

bmpbuttonfour onclick
stop video


To change the text in the window titlebar:

comboboxfive onclick
change window title
New Text


To see if a file exists:

radiobuttontwo onclick
file check
name.bmp

You can also point to a file in a specific directory such as: c:\windows\name.bmp


To change the text of a text control:

menu onclick
change textthree
New Text


To maximize the program window:

checkbox onclick
maximize


To minimize the program window:

radiobuttonfour onclick
minimize



Those are all of the current onclick commands for Leopard. If you combine them with
other onclick events for seperate controls you can do some useful stuff. Just
experiment with it a bit, and see what you come up with.

The onclick code goes after the code for creating the controls. A sample program
with one control would go like this:


window

window title
Onclick

window size
200
170


checkbox
Launch URL
53
30
80
80


checkbox onclick
internet
www.google.com


end


Remember, this is just a starting point. You can use a lot more controls and onclick
events. Look at the included sample programs to get a better idea of how this works.


------------------------------------------------------------------------------------
WINDOW PROPERTIES
------------------------------------------------------------------------------------

Besides just constructing a basic window with controls and onclick events, there are
other window properties you can define. Place these commands right after your basic
window construction (window title, window size).


To specify a background color for the window:

background color
blue

You can use any of these colors:

white
black
lightgray
darkgray
yellow
brown
blue
darkblue
red
darkred
pink
darkpink
green
darkgreen
cyan
darkcyan
buttonface


There are certain controls that can have their own color setting. Instead of typing
background color, use this:

textbox color
textedit color
combobox color
listbox color

Follow it with the color of your choice, such as:

combobox color
green

You can use any of the colors that were listed for the background color property.


To specify a font for the text in the window (including controls):

font
matisse_itc 15

Notice how I put a underscore character (_) between the spaces in the fonts name.
This is required for the font to work. The number 15 is just the size of the font.
You can increase or decrease this number and tweak it until it is right for your
needs.

You can also program other settings for the font. For example, if you wanted
the font of the window to be bold:

font
courier_new 8 bold


Here is an example program using some of these settings:


window

window title
Test

window size
100
100

background color
blue

text color
green

font
comic_sans_ms 15

text
Testing...
10
10
100
100

end


------------------------------------------------------------------------------------
ONOPEN/ONCLOSE EVENTS
------------------------------------------------------------------------------------

Leopard also allows you to trigger certain events when the window first opens. This
code should go right before the "end" command.


To play a wav file:

playwav
file.wav

You can also point to a file in a specific directory such as: c:\folder\file.wav


To play an mp3 file:

play mp3
name.mp3

You can also point to a file in a specific directory such as: c:\folder\file.mp3


To maximize the window when it opens:

maximize


To minimize the window when it opens:

minimize


Besides these commands that execute when the window is open, you can also trigger an
event to happen when the user attempts to quit the program.


To display a confirmation box:

confirm
Are you sure you want to quit this program?

This code will give the user a choice of continuing or quitting the program.


Here is a simple program utilizing some of these onopen and onclose events:


window

window title
Test

window size
200
250

background color
black

maximize

confirm
Are you sure?

end


------------------------------------------------------------------------------------
VARIABLES
------------------------------------------------------------------------------------

Variables are essentially pieces of information that are stored in your computer
memory for later use. They are vital in most programming languages, and they help
make things more interactive in Leopard as well.

The first thing we can learn to do with variables is declare them, or set them up.
All that is required is this:

varone
First

"First" would be the value bottomigned to that variable. You can declare up to five
variables.

varone
vartwo
varthree
varfour
varfive

What use is this to us now? Well, now that that piece of information is stored we
can use it as many times as we would like. In an onclick event, you would do
something like this:

button onclick
notice
varone

The value you bottomigned to varone would appear in the notice box. Here is a program
that creates a file from two variables:


window

window title
Variables

window size
170
100

varone
var.txt

vartwo
It really works!

radiobutton
-->
40
0
80
70

radiobutton onclick
write file
varone
vartwo


end


You can also use a variable prompt to get input from the user. You can use a prompt
for each variable. To use it, set it up in an onclick command:

menu onclick
varone prompt
Enter Value:

The "Enter Value:" text appears above the prompt textbox. Next, you just use another
onclick command to use that variable:

checkboxthree onclick
internet
varone

As a side note, if you choose to declare the variable at the beginning of the
program, the value you bottomign will appear in the text field. A good example of these
features is this program:


window

window title
Internet

window size
200
90

varone
http://

menu

checkbox
Launch URL
50
0
90
30

menu onclick
varone prompt
Enter URL:

checkbox onclick
internet
varone

end


In the end, learning to use varibles effectively can make your programs more
interactive.


------------------------------------------------------------------------------------
GRAPHICS WINDOW
------------------------------------------------------------------------------------

The graphics window allows you to do some basic drawing by programming the drawing
commands. This kind of computer drawing is usually referred to as "turtle graphics".

Setting up a basic window is easy. You use the same commands you used for the window
type, except you type "graphics window" instead of "window" at the beginning of your
code. Here's an example:


graphics window

window title
Graphics

window size
260
200

end


This starts you off with a basic template to work with.

Listed below are all of the commands available for the graphics window. If you are
confused as to how they work in a program, look at the example at the end of this
section or examine the included sample programs.


To bring the pen up (prevents visible drawing):

up


To bring the pen down (allows visible drawing):

down


To center the pen in the window:

home


To go forward a certain amount of pixels in the current direction:

go
50


To go to a certain pixel position on the window:

goto
10 10

The numbers represent the x and y coordinates to go to.


To turn the pen from the current direction using an angle:

turn
90


To set the pen to go north:

north


To fill the window with a background color:

fill
blue

You can use any of the colors that were mentioned in the Window Properties section.


To set the color of the pen:

pen
green

You can use any of the colors that were mentioned in the Window Properties section.


To set the size of the pen:

size
5


To set the font of text drawn in the window (do this before drawing text):

font
comic_sans_ms 12

Specifying the font in a graphics window is done the same way as the window type.


To insert text at the current position of the pen:

text
Hello World!


To specify a backcolor for controls that are filled with color:

backcolor
blue


To draw a box:

box
10
10


To draw a box that is filled with the color specified in the backcolor command:

boxfilled
70
70


To draw a circle:

circle
50

The number specifies the radius of the circle.


To draw a circle that is filled with the color specified in the backcolor command:

circlefilled
50


To draw an ellipse centered at the pen position:

ellipse
10
15

The numbers reprent the width and height.


To draw an ellipse that is filled with the color specified in the backcolor command:

ellipsefilled
10
15


To draw a bitmap graphic on the screen:

drawbmp
name.bmp
20
60

The numbers represent the x and y location of the bitmap.


Below is a sample program using some of the commands listed above. To see more
graphic window examples, check the examples folder.


graphics window

window title
Graphics

window size
260
200

fill
blue

pen
green

size
10

up

home

north

go
50

turn
90

go
60

down

turn
90

go
100

turn
90

go
100

turn
90

go
100

turn
90

go
100


end


------------------------------------------------------------------------------------
TEXT WINDOW
------------------------------------------------------------------------------------

A text window essentially has the same interface as Notepad. It makes it easy to
open and manipulate files with text.

Setting up a text window is easy. You use the same commands you used for the window
type, except you type "text window" instead of "window" at the beginning of your
code. Here's an example:


text window

window title
My Notepad

window size
300
200


end


After you have entered this code, run the program. You will notice how all the basic
functions are already there.

To extend the functionalty a bit further, you can use the following two commands.


To print text to the window:

print text
Sample Text


To automatically load a file when the program is run:

open file
name.txt


Here is a basic text window program:


text window

window title
My Notepad

window size
300
200

print text
Sample Text

end


------------------------------------------------------------------------------------
NO WINDOW
------------------------------------------------------------------------------------

A cool feature of Leopard is the ability to activate onclick commands without an
actual window. This is called using the "no window" type. You can use any of the
onclick commands that don't require having an actual window. Just type the code
below and click Run to see how simple this really is.


For example, to go to an internet address:

no window
internet
www.yahoo.com

end


To write to a file:

no window
write file
doc.txt
Hello World!

end


It really is that easy! Those are just two of the onclick commands, but you can use
the others as well.

The no window type is useful when you want to get a certain task done without having
to see and use a window and it's controls.


------------------------------------------------------------------------------------
USING THE COMPILER
------------------------------------------------------------------------------------

Now that you have been able to build some interesting applications with Leopard, you
probably want to run them independently, or send them to people who don't have
Leopard. To do this you will have to make an .exe file out of your program. Don't
worry, this is made easy in Leopard.

1. Just click Compile from the Run menu in Leopard.

2. You will be asked for a program name. Enter the name of your program file such
as:

program.lep

NOTE: Make sure that the program you are converting to an exe is in the folder where
Leopard is! Also include all other dependant files such as text files you open in
your program, or graphics.

3. Click OK once you have typed it in, and then you are done!

Run the file Program.exe in the folder where Leopard is located to see your program
run by itself.


If you want to distribute your program to others, you must include all of these
files:

Program.exe
program.dat
program.tkn
Your Leopard program file. (example: program.lep)

NOTE: Instead of having a boring filename such as Program.exe, you can rename it to
your liking. To do so, just rename the exe file to whatever you want, such as
MyProgram.exe. You then have to rename the program.tkn file to match it, such as
myprogram.tkn.


You also have to include these files found in the Leopard directory:

vbas31w.sll
vgui31w.sll
voflr31w.sll
vthk31w.dll
vtk1631w.dll
vtk3231w.dll
vvm31w.dll
vvmt31w.dll


Package all of these files together in a folder when you distribute your program,
and then by double clicking Program.exe your program will run.


------------------------------------------------------------------------------------
TROUBLESHOOTING
------------------------------------------------------------------------------------

Problems can occur within a Leopard program due to improper command entry, or a
number of other things. If you are a having a problem, look through this brief list
of suggestions for some help. If you still need help, feel free to contact me
directly.

1. I have many people say they have received an error message that says "file past
end". The Leopard development environment then proceeds to crash. The solution for
this is to space your commands out, this is known as giving your code white space.
Make sure that all the commands are not scrunched up like this:

button onclick
notice
Hello
radiobutton onclick
time

Notice how all of this runs together. Leopard can have problems picking the proper
commands out if your code is written like this. Instead, this is more proper and
readable:

button onclick
notice
Hello

radiobutton onclick
time

Each seperate command set should have a good line or two of white space seperating
them from others.

Also, be sure to space the end command further down from the rest of the code.


2. Be sure to check the spelling of the commands used in your code. An improper
spelling could cause problems.


3. Check all the files you load in your program (such as text files or bitmaps) to
make sure that you are using the proper path to load them. Be sure that they are in
the exact location and spelled the same way as the code you are trying to use to
load the file.


4. If Leopard is continually crashing even when you are just using basic features
of the editor, try restarting your computer and that should fix the problem.


Future releases of Leopard will have better error catching features. This is
something that I feel is very important.


------------------------------------------------------------------------------------
LEGAL INFORMATION
------------------------------------------------------------------------------------

Leopard - (c) 2003 Brandon Watts

The Leopard programming language was developed by Brandon Watts. This product is not
affiliated with any other software product or service named "Leopard".

You may not alter the files included with this distribution and distribute Leopard
as your own.

Leopard has been tested to bottomure it can run safely on your computer. Any problems
bottomociated with the use of this program on your computer is not the responsibility
of Brandon Watts.

Leopard was created using the Liberty BASIC programming language, which is
developed by Carl Gundel. [addsig]
Posted by dxprog on 03:42:00 09-11-2003
Looks like a very interesting program. Keep up the good work [addsig]
Posted by Smerdyakov on 05:54:00 09-11-2003
This looks like it might be a good tool for very young people who want to learn programming. I think that spending time on a language with no looping or recursion constructs is generally not helpful for someone with a good grasp of basic algebra or some other kind of abstract thinking, though.
Posted by brandonwatts on 11:48:00 09-11-2003
My target group is beginning programmers. Obviously Leopard does not have the functionality to be a long term language. My goal is to make it an easy and enjoyable first language. Some have continued to use it however because it provides a way to accomplish basic tasks and see immediate results.

Brandon Watts
E-mail: brandonwatts@adelphia.net
Personal: http://www.brandonwatts.net
Leopard: http://www.leopardprogramming.com
Posted by Smerdyakov on 00:48:00 09-12-2003
And what I'm saying is that there are important distinctions between beginning programmers. A 4-year-old and a college student probably have different optimal learning strategies.
Posted by dxprog on 02:25:00 09-12-2003
Like a four year-old would understand what programming was [addsig]
Posted by C_Rdd on 02:37:00 09-12-2003
Brandon: Have you any intentions to include some system of iteration, and some way of making decisions? If not, I feel that this would in no way act as a good first language, as for those going on to learn C++ or Java (or Basic or Pascal, let Smerdy answer with respect to SML), they are not learning about two of the most fundamental concepts of programming.
Posted by brandonwatts on 02:41:00 09-12-2003
If a 4 year old could understand it, I would be extremely pleased!

Programming does not always have to be about complicated syntax that does not make any sense. Leopard's syntax makes complete sense, you KNOW what it's going to do.

For all of us programming junkies we love getting down into more complicated things like the API, but there is no reason for a beginner to have to worry and be bombarded with that.

Leopard is simply a first step.

Brandon Watts
E-mail: brandonwatts@adelphia.net
Personal: http://www.brandonwatts.net
Leopard: http://www.leopardprogramming.com
Posted by brandonwatts on 02:43:00 09-12-2003
"Have you any intentions to include some system of iteration, and some way of making decisions?"

I am looking at possible ways to incorporate this. I agree this is important. Most likely the interpreter is going to be rewritten to allow more code flexibility.

Brandon Watts
E-mail: brandonwatts@adelphia.net
Personal: http://www.brandonwatts.net
Leopard: http://www.leopardprogramming.com
Posted by C_Rdd on 06:21:00 09-12-2003
Brandon: Best of luck then.
Posted by Smerdyakov on 13:55:00 09-12-2003
I think I've Internet-met people who started learning programming at age 4. I started at 6.

brandon, I think you haven't looked at enough "real" languages if you think their syntaxes are too complicated for beginners. There are a number of popular languages that would even support using your syntax almost verbatim with minor alterations, via a library... not that I'm suggesting that that's a good idea, since Leopard is so simple that it teaches almost none of the basic material covered in introductory programming classes.
Posted by DInsane on 06:07:00 09-13-2003
Nice, Brandon . Very impressive. [addsig]
Posted by cowsarenotevil on 06:46:00 09-13-2003
Quote:
On 2003-09-12 13:55, Smerdyakov wrote:
I think I've Internet-met people who started learning programming at age 4. I started at 6.

Hmm, six is at least possible, but four? The average four year-old can't read!
Posted by DInsane on 09:20:00 09-13-2003
Didn't Peter, or was it Kagez?, say they started at about 4?

I started around programming at 8 or 9, but have been on a computer as long as I can remember. [addsig]
Posted by cowsarenotevil on 10:32:00 09-13-2003
I didn't even get a computer until I was seven or eight... but I think I made my first playable game at about 10. But doesn't this belong in a new thread?
Posted by DInsane on 12:25:00 09-13-2003
Drew's Updated List of Things Programmers Tend To Do

1. Say "lollipop".
2. Get off-topic.

And.... that's all. [addsig]