BookRags.com Literature Guides Literature
Guides
Criticism & Essays Criticism &
Essays
Questions & Answers Questions &
Answers
Lesson Plans Lesson
Plans
My Bibliography Periodic Table U.S. Presidents Shakespeare Sonnet Shake-Up
Research Anything:        
History | Encyclopedias | Films | News | Create a Bibliography | More... Login | Register | Help
Not What You Meant?  There are 13 definitions for LB.

Liberty BASIC

Print-Friendly
About 3 pages (1,030 words)

Bookmark and Share Questions on this topic? Just ask!

Liberty BASIC (LB) is a commercial programming language and integrated development environment (IDE) that works on 16 and 32 bit Windows and also on OS/2.

Contents

Background

Liberty BASIC was written by Carl Gundel and was published in its first release by his company, Shoptalk Systems in 1992, and has progressed steadily since then. The last published update to the software was in 2006. The current version is v4.03. Liberty BASIC has been used in examples of code for various guides and references about programming in Windows, including "Beginning Programming For Dummies", by Wallace Wang. Though Liberty BASIC has its share of limitations in its design for advanced programming, it makes a credible and highly usable introductory IDE for moderate to advanced users of Windows and OS/2. DLLs are available with functions allowing users to overcome most of the limitations in Liberty BASIC. The OS/2 version is very old, but free. A new version that will run on Windows, Macintosh and Linux is in active development. The compiler recognizes its own dialect of the BASIC programming language. The programming language dialect, and the IDE have developed a market niche for introductory and intermediate programmers who are learning the skills of programming, though it has been less widely adopted as a commercial publishing product. This is not to say that Liberty Basic is educational software only. It is still a commercial product, and can be used to create proprietary software. In its current version, it runs only on Microsoft Windows, but v5 is in active development and runs on Mac OS X and Linux systems as well, in addition to being "up to 5 times faster" than the current version, says its author. As of now, Liberty Basic is not considered to be a true compiler. Liberty Basic translates the code written in the IDE to a 'tokenized' file with the extension: "tkn". This file is then interpreted by an executable file that carries the same file name. Although, this may change with the release of version 5.

Features

  • An interactive tutorial suitable for the beginner
  • A visual development tool called FreeForm, written in Liberty BASIC and greatly extended by the Liberty BASIC community over the years
  • An editor for writing BASIC programs
  • A source level debugger
  • Easy calling of DLLs and APIs
  • Color graphics capability
  • Can create games with sprite animation, sound, music, and joystick control
  • An add-on package called Assist with many new features, such as a code formatter, source code versioning, a performance profiler, an easy-to-use code difference browser, and an improved package and deployment system

Resources

  • Free websites for source code and fully working programs
  • Liberty BASIC Programmer's Encyclopedia (includes archive of the LB newsletters that ran for 143 issues over several years)
  • Two active forums where users help one another, discuss problems, give tips and participate in contests and community projects

(see links below)

Distinguishing features of the language

Liberty BASIC allows for programming in a style similar to DOS BASICs that run in console mode, using a default "main window" that displays formatted text and accepts user input. It also supports GUI-based event-driven programming using several types of windows that may contain the standard controls such as buttons, menus, textboxes, etc. A central idea in creating Liberty BASIC was to model the handling of windows after the syntax for file handling. For example, (from the Liberty BASIC Help File): "The OPEN command opens communication with a device, which can be a disk file, a window, a dynamic link library or a serial communications port."

OPEN device FOR purpose AS #handle {LEN = n}

This general purpose syntax is one of the features of LB that make it easier to learn. Once a “device” is open, data and also commands to control that device can be “printed” to it. For each type of device there is a set of commands which can be sent to it in this way. In the more recent versions of LB the word "print" may be dropped from the "print" statement, making the syntax even simpler. Simplicity has been at the heart of Liberty BASIC from the beginning. This makes it easier to learn but at some cost, perhaps, in limiting functionality. Only two data types are supported in LB4.03: numeric and string. No type declarations are required: any variable with a $ sign at the end of its name is a string variable; otherwise it is numeric. (The plan for LB5 is to support other types and user defined types as well as these.) For the purpose of making calls to API or 3rd party DLLs there is a STRUCT and the additional types necessary for the DLL. The only other data structure currently supported is the ARRAY. Arrays of one or two dimensions are supported. LB5 may support arrays of user-defined types.

Programs written in Liberty BASIC

1. Brandon Watts has created a programming language for beginners, called Leopard. The IDE and interpreter were written in Liberty BASIC.

License information

A trial version of Liberty BASIC is available. The trial version does not allow creation of programs that run independent of the development environment. The trial is time-limited to 30 days, but when the trial expires it doesn't deactivate the software. Instead it inserts a delay when starting up, so that new Liberty BASIC users have as much time as they need to evaluate the software. The "Gold" license permits the creation of royalty-free standalone applications using a runtime engine and some support files. Standalone applications do not require the inclusion of program source code.

See also

External links

View More Summaries on Liberty BASIC
 
Ask any question on Liberty BASIC and get it answered FAST!
Answer questions in BookRags Q&A and earn points toward
discounted or even FREE Study Guides and other BookRags products!
Learn more about BookRags Q&A
Copyrights
Liberty BASIC from Wíkipedia. ©2006 by Wíkipedia. Licensed under the GNU Free Documentation License. View a list of authors or edit this article.

Article Navigation
Join BookRagslearn moreJoin BookRags




About BookRags | Customer Service | Report an Error | Terms of Use | Privacy Policy