AlfaBASIC is not a specific or deliberate clone of any other BASIC dialect, but is a prototype "BASIC-like" language platform written in Java and serving as an experimental language environment. It also supports simple graphics and sound operations.
Be the first to post a text review of AlfaBASIC. Rate and review a project by clicking thumbs up or thumbs down in the right column.
2.0 --- * Samply MySQL plugin. * Minor tweaks. 2.0-beta-5 (RC) --------------- * MODULE operation and functions added. * INJECT allows creation of AlfaBASIC code inside programs. * Variable visualistion hooks. * Bug fixes from 1.2 and 1.3 beta 5
1.2 --- * "Lite" version of GUI (set default.gui option to "lite"). * Documentation updated. 1.1 --- * Rework on the GraphicsScreen implementation; a couple of people have reported problems which I have struggled to reproduce, but managed to on an older machine with an ATI card. The rework is a little tidier to be honest but not sure if it impacts general profiling at the moment. * STOP, CONT included to suspend and restart execution. * Option table editor in GUI. * Cut and Paste, output save to file in GUI. * Changed a couple of data structures from linked lists to growable arrays to see if access performance can be improved. Profiling is inconclusive at the moment because I suspect the Java libraries are pretty good... * Documentation is not updated for this release - apologies! 1.0 --- * IF now behaves such that if the expression is false, then execution moves to the start of the next *line* not the next *statement*. i.e. <statement5> is the "else" start point and not <statement3> in the following: 10 <statement1> 20 IF <expr> THEN <statement2>: <statement3>: <statement4>... 30 <statement5> * Added jump table type syntax: ON <expr> GOTO | GOSUB [ line1, line2, .... ] * Added VOID [ <expressions...> ] operation that basically ignores the results of the expressions in the list - mainly to clean up the use of side effect based plugins. * `freeload, `freerun - numberless loading and editing assuming user has used labels. Note: numbers are generated - they have not been removed from AlfaBASIC. * More work on the GUI - the GUI is not well suited to huge amounts of output and some truncation code has been added to prevent the java heap blowing out. Very little additional work to be done here as there are likely to be alternatives in Release 2.0 * POP added to cancel a GOSUB's need to RETURN. * CLEAR can cancel specific variables only. * Removing $ from the names of builtin functions that do not return strings. * Complete replacement of Expression parser with one that works according to correct rules of precedence. 1.0 Beta 12 ----------- * Performance tweaks through array and screen mods (see below). * Array implementation changed from linked list to arrays. Investigating whether it may be even more optimal to remove the Value wrapper completely but I want to make sure that assignment ans subarray assignment are still fast without wrapping and unwrapping all the time. Therefore further optimisation may have to wait until the next full release. * Despite claims that the syntax would be stable, I added an optional extra to SCREEN id, width, height [, layers ] to allow the maximum number of sprites to be specified *including 0*. This is low level, but should allow programs to perform optimally against the number of managed sprites by retaining the speed of array access to sprite layers but minimising unused layer checks. * Hashing of function names to improve function name lookup and use of op codes to boost computationally extensive loops etc. * Added plugin.path option to configuration file. Plugin search protocol updated - I think there are plenty of fair options to store plugins now so this issue is closed now. * Removed very annoying word wrapping from the GUI console input. Now there is only a moderately annoying need to scroll, and I seem to get some odd missing new line artefacts every so often. Will try to fix this by 1.0. * Fixed non-interactive loop so that mutiple programs can be run sequentially from command line without loading console. * Yet another tweak to the flood fill algorithm. I think the problem has been to do with the alpha in the RGB but I've also made sure a region cannot be painted with the color it already is. I'd love to hear from you if you can get a repeatable shape! * FORMAT$ function added to allow printing of aligned/padded text. 1.0 Beta 11 ----------- * Top level classes' public methods commented. * Reduce heap object creation during sprite update, assignment and expressions. * Minor bug fixes. * Note: no changes to documentation required so beta 9 docs are still valid. 1.0 Beta 9 ---------- * Fixed RESTORE line number bug (routine fell straight through to exception!) * More testing of flood fill (PAINT) seems stable now * Update of test files and added to distribution * Documentation updates regarding PLUGIN and how to build * Fixed `path preferences being saved if system exited from GUI instead of `quit * Disabled compile-on-save in NetBeans and bugs are more reproducible now! * Adding more debug and javadoc (ongoing/priority) 1.0 Beta 3 ---------- * `diag now has specific structure options * MOUSEPRESSED and KEYPRESSED functions added * Design document draft included typos come free of charge! * PLUGIN function and interface (finally!) * LINE and CIRCLE now support XOR mode (read manual) * Program termination and bounds checking errors fixed in LineBuffer and Interpreter main loop * Other bug fixes I think, or just Caaaache.. Ghoooosts! 1.0 Beta 1 ---------- * `help [ keywords ] mini help hints now supplied with major keywords * SOUND operation added midi style synchronous or asynchronous * Added optional rotation to WRITE for non-sega font * Addressed some "exception within exception" problems * Options/config file support added minimal functionality so far but font colors and window size persists * line LABEL operation 0.9 ---- * Array expressions implemented allowing an array to be constructed dynamically with expression elements instead of just constant elements. * Yet another rework of the graphics windows resorted to a brute force refresh regardless of whether artefacts were changing. This can be tuned with `refresh to see what works for your platform... * Resolved the problem with the panel coordinates in the graphics screen jframes always being out: once again relied on brute force to calculate the panel's offset relative to jframe's insets. * Added `run <filename> as a shortcut to `load and RUN * New bitmap type for PATTERN#B and BITMAP operation for bitmap rendering * Incorporated code editor that allows you to see where your errors are (exteneded `edit functionality) * Minor bug fixes 0.81 ---- * Horrific improvements to the sprite quality and performance by setting up double buffering and changing the whole paint strategy (almost usable now!) 0.8 --- * The Env class now contains much of the shared, general purpose functionality * Shell interface improvements allowing history navigation up to 100 entries * Circle types modified slightly with a new filled "pie" type added * Additional shell commands for getting code statistics and resetting low level interpreter structures if needed * RUN can now enter anywhere in a program with full preinitialisation * Shell command output can be redirected (captured) to a file * Some toughening up of bounds and failure checks but there is a long way to go! 0.4 --- * Fixed a (possibly Java-related) but in negating numeric literals * Inclusion of sprite and built in legacy font * Some renumbering support added * Redirected debug to stderr for better stability during debug * Minor bug fixes
Be the first person to add a text review.
Copyright © 2009 Geeknet, Inc. All rights reserved. Terms of Use
Thanks for your rating!
Would you also like to write a review?