METAL IS A VERY EASY TO USE AND EASY TO LEARN BASIC LANGUAGE
WITH A USER FRIENDLY INTERFACE.METAL IS Faster than any interpreter.
A PC preliminary version of METAL beats BASIC that used to come
with MS-DOS by 1012% (Sieve benchmark). It beats Future Basic
(supposedly a compiler) by 675%, and Chipmunk BASIC (a very fast
interpreter) by 27%. These tests were done with the first version
of METAL. This version is somewhat faster. As for the compilers,
MS QuickBasic compiler for MS-DOS beat preliminary unoptimized
PC-version of METAL by cca. 250%, proving that METAL provides
an affordable sacrifice of performance to portability.
METAL features dynamic allocation, garbage collection and a
flexible memory heap.
METAL includes a rich command library, that includes powerful
graphics, sound, speech, math and file I/O routines.
2900 lines of hypertextual documentation are accessible at
any time from the "Help" menu.
When METAL 1.3 came out it was VERY
much improved in stability and language. Now METAL 1.6+ is out
and I can't say I'm disappointed but it still has some things
to be added to it
THIS HAS BEEN IMPLEMENTED
OR FIXED(OF THE THINGS EARLIER MENTIONED HERE):
The inkey$ function
needs some improvement, on my keyboard it only reads the right
side of the keyboard.
Quicktime support
(MIDI, MooV).
Getting the length
of soundtracks.
Support for different
picture formats (JPEG,GIF).
THIS REALLY SHOULD
BE ADDED TO THE METAL EDITOR AND DEBUGGER:
The usual text drag and drop interface
found in almost all applications which handles text
Syntax make beautifull (add spacing
and capitals for keywords)
Keyword detection, suggestion and
autofilling (like REALbasic).
Better help, if you press "help"
and there is a highlited keyword in the Code help for the keyword
should show up.
When something goes wrong during
code execution it is often hard to find the bug since the error
string only indicates an error not what and where the error is
(line number, variable).
Perhaps an event lister which lists
all of the events executed during the code execution.
Multiple undos and redos
STILL NOT IMPLEMENTED:
ACCESS TO THE TOOLBOX
!!!!!! : Most of the missing functions in METAL could be coded
with this
SERIAL CONTROL
!!!!!! (socket and device)
Menu items.
Multiple, movable windows.
Buttons, Listboxes ...
Getting the number of bytes a certain
file consist of.
Perhaps some drag and drop support.
A simpler direct
key reader (if a specific key is pressed or not) instead of using
peek
3D- rendering (Open
GL)
A list of common
basic commands that are not supported in METAL:
MouseSpeed(X,Y)
MouseArea(Minx,Miny,Maxx,Maxy)
,limits the mouse moving area to the rectangle passed
Pointer(cursor
reference#), change the mouse cursor picture.
Fill(fillstartx,fillstarty,fillcolor,[stopcolor]),fills
the color specified by fillcolor until it reaches an diffrent
color (additionally you could specific a color to stop at) from
fillstartx,fillstarty.
Better file read
and write (choose a specific line number to read from, ReadAll)
Types
Change the screen
width and screen height
Change the number
of colors the screen displays
UCASE$(string) , LCASE$(string)
Bugs?:
When loading and
playing a sound from a resource file I have not been able to
play any other sound from the resources later in the code.
Timer is not the
number of seconds elapsed since January 1:st 1970 it is the number
of seconds elapsed since the computer was turned on (like ticks
but in seconds)
Tips and tricks:
I just want to
make everyone aware of the feature of being able to use any text
font installed on your computer just by using textfont "the
font name". I don't think this was featured in the previous
METAL versions
Timer is not the
number of seconds elapsed since January 1:st 1970 it is the number
of seconds elapsed since the computer was turned on (like ticks
but in seconds)
The sprite collision
detection works pixel by pixel
All file, sprite,
screen references are simply numbers which means you can use
them just as usual variables (dim)
The Sprite collision
detection detects all of the sprites on a position (Not only
the top sprite)
This will probably
never be added:
Compiled apps instead
of intepreted.
Got something more
you want to see in METAL? email me