Features of Microsoft Small Basic v1.0
This article shows features of Microsoft Small Basic v1.0 programming language.
Programming Environment
Small Basic v1.0 has own IDE (Integrated Development Environment). This IDE has following features.
- Import / Publish - Imports / publish the Small Basic source code from / to the Small Basic Program Listing Server.
- Run - Compiles the Small Basic source code to .NET runtime object (CIL - Common Intermediate Language) and runs it.
- Graduate - Converts the Small Basic source code to Visual Basic source code and start Visual Studio.
- Intellisense - Shows help window to select candidate key word for Small Basic programming.
Fonts in Editor
Following fonts are used in Small Basic editor.
For | Font Name | Font Size | Bold | Italic |
Instructions | Consolas | 14 | False | False |
Comments | Georgia | 14 | False | True |
Runtime Environment
There are two runtime environment for Small Basic v1.0. One is with [Run] button on Small Basic IDE. The other is with smallbasic.com program listing server on web browser and Silverlight plug-in.
System Requirement
Small Basic IDE and created executable (exe) programs run in following environment officially.
- Windows 7, Windows Server 2003, Windows Server 2008, Windows Vista, or Windows XP
- with .NET Framework 3.5 SP1
But also on Windows 8 with .NET Framework 3.5 enabled environment, Small Basic IDE and created exe can be run.
To run Published (uploaded) Small Basic program with smallbasic.com program listing server, you need any operating system which has a web browser supporting Silverlight add-on. Silverlight is an plug-in to display rich contents in web site powered by .NET Framework. So programs on smallbasic.com run on not only Windows PC but also Mac.
Object
Small Basic v1.0 API has following objects. These objects are provided as dynamic link library (SmallBasicLibrary.dll). Details about Object are described here.
Array
Array object provides some methods and property to manipulate especially text index arrays. Details about Array are described here.
Clock
Clock object provides system local time information as it's properties.
Controls
With Control object, you can create buttons and text boxes on GraphicsWindow and manipulate them. Details about Controls are described here.
Desktop
Desktop object provides methods to interact with the desktop.
Dictionary
Dictionary object provides access to an online Dictionary service in English and French. Details about Dictionary are described here.
File
File object supports to access local text file on your disk. Texts are encoded as UTF-8. Details about File are described here.
Flickr
Flickr object can get images from Flickr photo services.
GraphicsWindow
There are two types of window for user interaction. TextWindow and GraphicsWindow. Controls, Shapes and graphics can be displayed on GraphicsWindows. Details about GraphicsWindow are described here.
ImageList
ImageList object is for getting image size in pixels.
Math
Math object provides mathematic functions (methods) and a property (Pi).
Mouse
Mouse object provides accessors to get or set the mouse related properties, like the cursor (mouse pointer) position.
Network
Network object supports to access internet data with only two methods DownloadFile and GetWebPageContents.
Program
Program object provides helpers to control the program execution.
Shapes
Shapes object can draw and move shapes like animation.
Sound
Sound object provides functionality to play sound as preset sounds (chime, click, ring), MML, or audio files (mp3, wav, wma). Details about Sound are described here.
Stack
Stack object provides stack functions which pushes/pops data to/from stack. Details about Stack are described here.
Text
Text object is for text manipulation. Characters are encoded as Unicode. Details about Text are described here.
TextWindow
There are two types of window for user interaction. TextWindow and GraphicsWindow. You can input and output text on TextWindow with TextWindow object.
Timer
Timer object is for Timer event.
Turtle
Turtle object is for Turtle graphics.
Event
Small Basic v1.0 supports following 9 events. Events occur with user interaction (with Controls, keyboard, or mouse) or timer. At these events, program control will be given to their event handler subroutines. Following events are to define their event handlers. Details about Event are described here.
- Controls.ButtonClicked
- Controls.TextTyped
- GraphicsWindow.KeyDown
- GraphicsWindow.KeyUp
- GraphicsWindow.MouseDown
- GraphicsWindow.MouseMove
- GraphicsWindow.MouseUp
- GraphicsWindow.TextInput
- Timer.Tick
Supported Language
Small Basic v1.0 supports 20 languages.
Character Code Set
Small Basic v1.0 supports BMP (Basic Multilingual Plane: U+0000 - U+FFFF) of Unicode.