Web Server Details

Run BASIC is a special web server that allows you to create server-side web applications using a version of BASIC. The BASIC is not an add-on module like Perl or PHP is for Apache, but instead the BASIC is integrated tightly with the server.

Run BASIC includes a session manager that is transparent to the programmer. What this means is that when someone visits a web application that is hosted by Run BASIC that they are immediately given a session. If the user is then inactive long enough (this time period is adjustable in a server control panel) the session will time out. This means the application programmer doesn't have to be burdened with session logic.

Programming Model


Most web app systems model applications as a collection of pages. Information must be persisted between pages in some sort of datastore. Sometimes this is in memory but oftentimes it is done in a database or by passing files. Run BASIC does not force you to partition your applications in this way. Instead you can write your entire application as a single continuous program just like you would write a desktop app. You create a new page in your application by clearing the page and placing new things onto it in a dynamic way.

Traditionalist procedural programmers can create entire applications using subroutines and functions, similar to how it is done in popular languages like QBasic. This democratizes web programming because many casual programmers are comfortable with this way of coding software.

More object-oriented thinkers can componentize their systems into objects and call methods on them. The objects can be purely data, or they can render into a display buffer and be injected into a web page. This makes it easy to have different parts of a web page managed in a modular way.

User Interface Capabilities


An application's user interface is composed programmatically at when the program runs. Interactivity is similar to that of desktop applications, with callbacks to tie user actions to program routines. It isn't necessary to marshall a web request and interpret it with a case statement or session key. This all happens automatically and transparently.

Run BASIC is designed to let you quickly create the user interface without worrying too much about presentation up front. This works because Run BASIC generates HTML for you automatically. Once everything is working then color, fonts, backgrounds and layout can be adjusted using simple CSS support features of Run BASIC.

It is also easy to embed any HTML into a page for custom effects or for the insertion of Javascript for powerful scripting.

Graphics


An easy to use graphics drawing system is built right into Run BASIC so that it is a trivial to draw graphics and insert them into web pages dynamically. Loading existing images into memory and drawing on them is also possible.

Web 2.0


These days there is a lot of demand for ways to do things with information that is presented on different sites, also often referred to as Web 2.0. Run BASIC can fetch files from other web sites and use a built-in XML parser to pull data from all over the Internet.

Database


Run BASIC has an included SQLite database engine which does not need any special knowledge to administer. The addition of simple to use commands makes database programming very convenient and accessible.

Browser Compatibility


The following browsers are supported for use with Run BASIC. Internet Explorer 6 and 7, Firefox 2.x, Safari 3.x.