Liberty BASIC

Liberty BASIC

Infobox programming language
name = Liberty BASIC

paradigm = Event-driven, Procedural
year = 1992
designer = Carl Gundel
developer = Shoptalk Systems
latest_release_version = 4.03
latest_release_date = 27 December 2005
typing = Dynamic, strong
implementations = Run BASIC, GLBCC
dialects =
influenced_by = QuickBASIC, Smalltalk/V, Visual Basic
influenced = Just BASIC, Leopard
current version = 4.03
operating_system = Microsoft Windows (Mac OS X, and Linux in Liberty Basic 5)
license = Commercial
file_ext = .bas, .fr3
website = [http://www.libertybasic.com/ libertybasic.com]

Liberty BASIC (LB) is a commercial computer programming language and integrated development environment (IDE). It has a compiler which recognizes its own dialect of the BASIC programming language. It runs on 16- and 32-bit Windows and OS/2.

Background

Liberty BASIC was written by Carl Gundel and published in its first release by his company, Shoptalk Systems, in 1992. It 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 very usable introductory integrated development environment, 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 Liberty BASIC dialect, and 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 does not mean 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 version 5 is in active development and runs on Mac OS X and Linux systems as well.

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

* A visual development tool called FreeForm, written in Liberty BASIC and greatly extended by the Liberty BASIC community over the years
* Source level debugger
* 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

Distinguishing features

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.

Notable programs written in Liberty BASIC

* Brandon Watts has created a programming language for beginners, called Leopard. The IDE and interpreter were written in Liberty BASIC.
* FreeFormJ a GUI WYSIWYG Editor Written in LB for created simple to complicated GUI formats

Example code

Here are some examples of the language:

"Hello world" program:

print "hello world"end

Program to display a pop-up message box with the words "Hello, World!" on it:

nomainwinnotice "Hello world!"end

nomainwinnotice "Example program" + chr$(13) + "Hello world!"end

Program to display an input box:

nomainwinprompt "Enter your name:";response$notice "Response:"+ chr$(13) +response$end

Running another application using Liberty BASIC:

nomainwinrun "notepad.exe"end

Printing multiplication table of 5 on form:

[multi] for i = 1 to 10 res = 5 * i print res next iend

ee also

*Liberty BASIC Workshop (an add-on IDE for Liberty BASIC)
*Just BASIC (a freeware version of Liberty BASIC)
*Run BASIC (a free-to-use web programming site based on Liberty BASIC)

External links

* [http://www.libertybasic.com Liberty BASIC]
* [http://basicprogramming.blogspot.com/ Carl Gundel's blog]
* [http://basic.wikispaces.com/ Liberty BASIC Wiki]
* [http://lbpe.wikispaces.com/ Liberty BASIC Programmer's Encyclopedia]
* [http://libertybasic.conforums.com Liberty BASIC CommunityForum]


Wikimedia Foundation. 2010.

Игры ⚽ Нужно решить контрольную?

Look at other dictionaries:

  • Liberty Basic — (LB) ist eine kommerzielle Computerprogrammiersprache mit einem Anwendungsprogramm zur Entwicklung von Software (IDE). Liberty BASIC ist ein Dialekt der BASIC Programmiersprache, mit der Programme für Windows Betriebssysteme erstellt werden… …   Deutsch Wikipedia

  • Liberty Basic — Класс языка: алгоритмическое, процедурное, объектное программирование Появился в: 1992 Автор(ы): Карл Гандел Релиз: 4.04 (31 июля 2010 г.) Типизация данных: нестрогая …   Википедия

  • Liberty BASIC — es un dialecto BASIC interpretado dirigido especialmente para el entorno gráfico Windows. En sus versiones iniciales se ejecutaba en Windows 3.x. Ofrece compatibilidad con los diferentes BASIC microsoft para MS DOS, principalmente GWBASIC y… …   Wikipedia Español

  • Liberty BASIC Workshop — Liberty BASIC Workshop, created by programmer Alyce Watson, is an add on IDE for the Liberty BASIC language. It runs on the Windows platform. It was honored as a Dr. File Finder Pick on Tucows, a very coveted position for computer applications.ee …   Wikipedia

  • Basic (langage) — BASIC Pour les articles homonymes, voir Basic. {{{image}}}   Sigles d une seule lettre   Sigles de deux lettres   Sigles de trois lettres …   Wikipédia en Français

  • BASIC — Класс языка: алгоритмическое, процедурное, объектное программирование Появился в: 1963 г. Расширение файлов: .bas Типизация данных: нестрогая Бейсик (от BASIC, сокращение от англ.  …   Википедия

  • BASIC-256 — с …   Википедия

  • BASIC — This article is about the programming language. For the think tank, see British American Security Information Council. For the group of countries, see BASIC countries. For other uses, see Basic (disambiguation). BASIC Screenshot of Atari BASIC,… …   Wikipedia

  • BASIC — Pour les articles homonymes, voir Basic.   Sigles d’une seule lettre   Sigles de deux lettres   Sigles de trois lettres   Sigles de quatre lettres > Sigles de cinq lettres …   Wikipédia en Français

  • Liberty (pressure group) — Liberty The National Council for Civil Liberties (NCCL) Motto To protect civil liberties and promote human rights for everyone Formation 1 January 1934 (1934 01 01) (77 years ago) Type Political pressure group …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”