Start Programming - Basic Product Questions

 


1. What Ubercode packages are available?

Ubercode Standard Pack:

  • Developer Environment with Integrated Debugger and Form editor
  • Compiler for 32 bit Windows
  • Source code for Run time library and Developer Environment
  • Over 100 Sample programs
  • Over 400 useful icons and bitmaps
  • Full Technical support via email and website
  • License for developing software on your PC for personal use
  • Learning to Program Manual in PDF format
  • Printed copy of Learning to Program Manual (boxed copy only)
  • Sturdy protective case for the Manual and CD (boxed copy only)

Ubercode Professional Pack:

  • Developer Environment with Integrated Debugger and Form editor
  • Compiler for 32 bit Windows
  • Source code for Run time library and Developer Environment
  • Over 100 Sample programs
  • Over 400 useful icons and bitmaps
  • Full Technical support via email and website
  • License for personal and/or commercial use and for re-distributing EXE files
  • Learning to Program Manual in PDF format
  • 'Program Personalizer' for adding product details to programs
  • 'Program Packager' for creating installable packages for distribution
  • Printed copy of Learning to Program Manual (boxed copy only)
  • Sturdy protective case for the Manual and CD (boxed copy only)

Ubercode Language Reference Manual:

  • Printed manual with over 700 pages
  • Ubercode Language Report
  • Run time library reference
  • Hundreds of example programs
  • Syntax diagrams
  • Information on computer language design

2. What versions have been released?

Refer to version history for the list of versions of Ubercode.

3. What is the latest version?

Current stable release - Version 1.1 (Standard and Professional Pack). If you purchased an earlier version, you are welcome to download the current release. You will need the Download Link, User Name and Password that was issued to you. These details are in the Product Receipt emailed to you after purchase.

Beta release - Version 1.3 is currently being developed and beta tested, and is available as a Trial Package and as a download to registered customers. This version is not yet available as a stable release.

4. What version do I have?

To find out, start the Ubercode programming environment (the Developer Environment) and use the Help - About command. The version of Ubercode is shown in this dialog.

5. How much does Ubercode cost?

Refer to sales for pricing and availability.

6. Can I upgrade to a more powerful Ubercode package?

Yes. At any time within one year of your original purchase, you can upgrade your Ubercode package and the value of your original order will be credited to your upgrade. Refer to sales for upgrade pricing.

7. What kind of computer do I need?

System Requirements

  • PC with Pentium® processor (or compatible).
  • 64 MB memory or higher.
  • Microsoft® Windows XP, 2000, NT4, ME, 98 or 95.
  • VGA or higher resolution screen.
  • 50 MB of free disk space.
  • CD-ROM, DVD-ROM or access to CD-ROM over a network.
  • Mouse or other pointing device.

8. How is Ubercode tested?

There is a large collection of test programs which check the language elements work correctly. There are code validation tests that carry out an operation and check the result is correct, error validation tests that carry out an illegal operation and check the expected error is reported, and regression tests that check against the re-occurrence of bugs that have previously been fixed. There are several hundred classes in the test suite, each of which tests 10 - 100 related operations. The test suite is run during development to test new features and to check existing features have not been broken.

9. What are the Technical Specifications of Ubercode?

Developer Environment

  • Produces standard Windows applications (EXE files).
  • EXE files run under all supported versions of Windows.
  • Click one button to copy applications to other computers.
  • Ubercode source code can be stored in classes.
  • Window layout editor and Integrated Debugger.
  • Compiles single and multi class applications.
  • Supported versions: Windows XP, 2000, NT v4, ME, 98, 95.
  • Automatic DLL versioning.

Control Flow

  • Structured control flow (if, else, end if).
  • Multi-way control flow (select, case, end select).
  • Loops (for, while, loop, exit when, end loop).
  • Data file access (for each, iterate).
  • Classes, functions and interfaces.
  • Event driven code with callbacks.

File Types

  • DBF (dbase), XML and CSV for database applications.
  • ICO and BMP files for images.
  • TXT files.
  • INI files for configuration data.
  • WAV files for multimedia.
  • CHM, HLP and HTML files for Windows help.
  • RC and DLG files for window layouts.
  • Free-format binary files for general applications.

Data Types

  • Logical values (true, false).
  • Integers, fixed point and floating point numbers.
  • Fixed and variable length text strings.
  • Records (user defined types).
  • Sets of integers and Safe Arrays.
  • Lists and tables (in memory and for file access).
  • Abstract Data Types (for Object Oriented Programming).

Visual Object Types

  • Edit object (single and multi line).
  • Radio buttons, Check boxes (for selecting options).
  • Push buttons and Bitmap buttons.
  • Scroll bars and Progress bars (changing and displaying values).
  • Combo box, List box and List box with icons.
  • Pictures and Icons (BMP or ICO format).
  • Group box, Label text.
  • Shapes (coloured borders and interior).
  • Menus, Clipboard, Printer, Screen.

Window Types

  • Message box, Input box, List box.
  • Dialog box object.
  • Scrolling Edit window object.
  • Common dialogs (Open, Save As, Print, Font, Color).

Package Contents

  • Developer Environment with Debugger and Compiler.
  • 'Learning to Program' Manual.
  • Language Reference Manual (may be on disk).
  • Comprehensive on-line help.
  • Run Time Library source code.
  • Developer Environment source code.
  • Over 250 example programs (on disk and in Help files).
  • Useful icons and bitmaps.
  • Custom Control source code.

System Requirements

  • PC with Pentium® processor (or compatible).
  • 64 MB memory or higher.
  • Microsoft® Windows XP, 2000, NT4, ME, 98 or 95.
  • VGA or higher resolution screen.
  • 50 MB of free disk space.
  • CD-ROM, DVD-ROM or access to CD-ROM over a network.
  • Mouse or other pointing device.

10. What's different about Ubercode?

Solid Developer Environment helps you develop programs.

  • Ubercode runs under all versions of Windows from 1995 onwards.
  • All Ubercode Packages have everything you need to write industry standard EXE files.
  • The Developer Environment runs well on a mid-range Pentium with an 800 by 600 pixel screen. It has a clean interface and doesn't clutter your desktop with multiple toolbars and floating windows.
  • Ubercode makes it easy to add windows and menus to your programs.
  • Ubercode applications avoid "DLL hell" and "Framework hell" because they have their own version system. They avoid troublesome Windows DLLs such as the MFC DLLs.
  • 'Single button' support to copy EXE files for running on other computers. You can copy the EXE files and supporting files to floppy disks, local folders, network folders, and to zip files!
  • Programs written in Ubercode are easy to distribute. You don't need special installation programs that delete system DLLs, trash the registry, reboot three times and work inconsistently on different computers. Ubercode applications can be installed just by copying the files over.
  • The Developer Environment is extensible with full source code available.

Easy Reference Manual gives you information at your fingertips.

  • Slim-line Learning to Program manual tells you everything you need to get started.
  • Fast on-line help gives you information within seconds. You don't have to wait while your browser dredges up information from disk.
  • Context-sensitive help and Example programs are available for all language commands.
  • Detailed on-line reference information is available if you need it.
  • Printed Language Reference Manual (LRM) is available.
  • Get to the source if you need to. All Ubercode customers have access to Technical Support which has answers to all the questions and sample programs too.

High Level Language makes it easy to write code.

  • Ubercode is a High Level Language. This means you spend your time writing your program, not dealing with language trivia.
  • The run time library has hundreds of useful commands. This is more code you don't have to write yourself.
  • High level commands such as Loadfile and Savefile read and write text files, binary files, dBase files, XML files and bitmaps.
  • Msgbox, Inputbox and Listbox functions display dialogs with a single call.
  • Windows common dialogs can be displayed with a single function call.
  • Functions can return values of any type.
  • Run-time structured expressions allow initialization of entire records and arrays with a single command.
  • High level iterate statement loops through most structured types.

Seamless integration with other software tools.

  • All Ubercode tools in the build chain (compiler, make utility) have a well-documented command line interface. They can be invoked from external build scripts and 3rd party developer environments.
  • Ubercode programs use RC and DLG files for dialog definitions (form layouts). This makes it possible for Ubercode to use dialogs from other programming environments.
  • Ubercode programs can read and write from text files, CSV files, dbase files and XML files. Data stored in these files can be read and written from most data types. This makes Ubercode highly compatible with existing applications.
  • Ubercode applications are portable to all versions of Windows (from 1995 onwards). Ubercode development and deployment works identically under all versions of Windows.
  • Ubercode programs and development tools are low impact, and work independently of the .NET framework and MFC DLLs. The presence (or absence) of any optional Windows component has no effect on Ubercode applications.

Strong Type System makes your code more reliable.

  • Ubercode uses strong typing which means the compiler catches most logic errors when creating the EXE file. It doesn't leave the errors in the EXE file for your customers.
  • There are powerful data types such as resizable Arrays of any type, Lists of any type and Tables which help you model real-world applications.
  • Ubercode data types automatically allocate and free memory as required. There is no danger of memory leaks, invalid pointers or corrupted structures. Also there are no pauses for garbage collection which would slow down your program.

Object Oriented Programming makes it easy to reuse code.

  • Ubercode programs have a simple modular structure which implements object oriented programs (OOP) in a natural manner.
  • Objects are allowed preconditions and postconditions that can be checked automatically.
  • There is typesafe linkage across class boundaries which avoids all linker errors.
  • The compiler keeps track of class dependencies and recompilation requirements without "make" files.
  • Powerful objects are ready for use "out of the box", such as Property editors, Resource editors, and more than 10 common dialogs.

Event Driven Windows make it easy to add code to windows.

  • Ubercode code is based around an application's windows and written in an event driven style.
  • Ubercode supports industry standard Windows RC (resource script) files. This allows reuse of resource scripts from existing programs.
  • Window definitions and code are stored in a closely related group of files, so you can't "lose" code as is possible in other event driven models.
  • Events are always fired when Windows is stable. For example you can call a Msgbox when handling most events.

Error Proof Technology prevents most run time errors.

  • Ubercode has GPF-resistant code. Array reference errors, invalid pointers, memory allocation failures, illegal parameter values, overflow of variables, and similar errors, are handled by the library and do not cause a GPF.
  • Ubercode has two levels of error handling for safety. Your code gets first look at errors, then all unhandled errors are dealt with by the Ubercode library.
  • Ubercode has no dangerous language elements such as goto statements, implicit declarations and global variables.
  • Preconditions and Postconditions provide extra levels of error checking.

11. Is there a Linux version?

Not yet. The most important tasks (in order) are:

  • Finish the Basic compiler and integrate this with the Developer Environment.
  • Finish the Enterprise Edition, which will include the ability to communicate with SQL Server 2000, 2005, 2008 and with all other databases that provide an ODBC (Open Database Connectivity) driver.
  • Port to Linux using the Wine libraries (Windows API compatibility layer).