From Seo Wiki - Search Engine Optimization and Programming Languages

Jump to: navigation, search
File:Basic4ppc logo.png File:Basic4ppc IDE varsion 68.jpg
Paradigm Procedural programming and Event-driven
Appeared in 2005
Designed by Anywhere Software/Erel Uziel
Stable release 6.8 (2009)
Typing discipline Static, Weak
Influenced by Visual Basic
OS Microsoft Windows, Windows Mobile

Basic4ppc (pronounced Basic for PPC) is a programming language for Smartphones and Pocket PC handheld computers running Windows Mobile operating system, by Anywhere software. The Language is based on a Basic-like syntax, taking advantage of Microsoft’s .NET technology, to allow additional libraries, graphical user interface design of windows forms, rapid development, and .NET framework compatible compilation. The language implements a unique way of adding objects to a program without being object oriented. Its advantages are simplicity, development pace and the integration with .NET framework. A special version of the IDE allows developing straight onto the mobile device.


History (major versions)

Version 1.00 of Basic4ppc was released in 2005. It was targeted mainly for the handheld device, allowing users to program in a unique device IDE. Basic concepts where introduced there, such as the direct naming reference and the syntax.

Version 2.0 added major improvements with user interface, controls and optimization.

8/2006 - Version 3.0 was released, improving stability, and allowing stand-alone compilation for the first time.

12/2006 - Version 4.0 was released, introducing the ability to use external libraries for the first time.

5/2007 - Version 5.0 was released, with a completely new IDE and support for Smartphones.

12/2007 - Version 6.0 has created a breakthrough, introducing optimized compilation, thus allowing a much better performance on both device and desktop compiled applications.

10/2008 - Version 6.5 released, introducing modules support.

06/2009 - Version 6.8 released, with automatic support for different screen resolutions and the addition of two new collections objects.

Language Features

Dual development platform: Basic4ppc allows development straight on the handheld device via a completely compatible Device IDE. Code written on either device or desktop IDEs is identical for both platforms and operating systems. Compilation, however, must target either device or desktop, due to the difference in the operating system.

Compilation available in four modes: Windows executable, Device executable for PocketPC (with and without AutoScale), Desktop executable, and Smartphone executable (for mobile phones running Windows Mobile OS). Compiled .EXE files require .NET 2.0 framework to be installed on the target machine. This is usually the case with Windows XP SP2 and later, but has to be manually taken care of with earlier versions.

Additional libraries: based on the Microsoft .NET framework, Basic4ppc can use code inside .NET .dll files after being adapted for Basic4ppc (this can be done by any programmer using Microsoft Development tools). Many such additional libraries exist, most of which are open source, written by users and accessible via the Basic4ppc forum.

Merging: Additional libraries code is merged into the main executable almost always. This way a single file can be deployed.


Basic4ppc is procedural, structural, implementing a partial object oriented programming model. Syntax is similar to common Basic dialects, most influenced by Visual Basic. It supports events. Like most modern languages, the development environment supplies graphical user interface designing tools. A programmer puts together an application using the drag and drop, component based UI. This is possible on both Device and Desktop, being unique in this ability.

Regular flow structures, such as if…then and for…next are supported, as in many other Basic versions.

Reserved words: Basic4ppc includes a vast number of reserved words. This is because of variable declaration scope.

Variables can be local (accessible throughout a subroutine), global (accessible throughout a module) or public (accessible throughout a program). All variables are typeless. This means you can write the following code:

Sub App_Start
    numA = "Five "
    numB = "5"
    numC = 6
    SUM1 = numA & numB 'remark: = "Five 5"
    SUM2 = numB + numC 'remark: = 11
End Sub

There is no need to declare variables explicitly.

Subroutines (called "Sub") are the most basic unit of code. All code must be written inside subroutines. Subroutines can return a value.

Direct Naming Reference: All internal controls can be accessed directly and passed as parameters to subroutines by specifying their name expressed as a string. This lets the programmer the ability to pass controls as parameters without knowing in advance the control that is to be passed, and without having to deal with either pointers nor with object oriented programming.

AutoScale mode allows developing for different screen resolution having the language taking care of the adjustments needed in UI appearance.

Example code

Here is an example of the language: Code snippet that displays a message box "Hello, World!" as the application starts, without any forms being loaded:

Sub App_Start
    MsgBox ("Hello, World!")
End Sub


Based on Microsoft's .NET technology, Basic4ppc supports .NET .DLLs with some minor adjustments. This allowed users to create a lot of open-source libraries, downloadable at the Basic4ppc forum, usually with complete source code. As with many other programming languages, additional libraries include most of the real-world language functionality. Additional libraries cover subjects such as graphics, databases, user interface, GPS, barcode readers and peripheral devices, debug, connectivity (bluetooth, wifi, and data-transfer protocols such as http, ftp and so on), XML, and more.

External links

Personal tools

Served in 0.562 secs.