BaCon is a free BASIC to C converter for Unix-based systems. The following design goals were followed:
Must run on each Unix/Linux/BSD platform, including MacOSX
Converted sourcecode must be compilable with GCC
Must resemble genuine BASIC with implicit variable delarations
Spoken language constructs are preferred
To use Bacon your system must have Korn Shell or Bourne Again Shell (BASH)
available. If both Korn Shell nor Bash are available on your platform, download and install the free Public Domain Korn Shell
which can execute BaCon also. Furthermore BaCon works with the traditional Korn Shell KSH88,
but also with a newer Kornshell implementation like the MirBSD Korn Shell.
BaCon intends to be a programming aid in creating tools which can be compiled on different platforms (including 64bit environments). It tries to revive the days of
the good old BASIC.
News
March 20, 2010: BaCon 1.0 build 10 released - see CHANGES. Documentation updated.
March 15, 2010: BaCon celebrates its first birthday today!
March 6, 2010: BaCon 1.0.9 released - see CHANGES. Documentation updated.
March 3, 2010: E. K. Virtanen from basicprogramming.org held an interview with me, you can read it here.
February 20, 2010: BaCon 1.0.8 released - see CHANGES. Documentation updated.
February 13, 2010: BaCon 1.0.7 released - see CHANGES.
February 7, 2010: BaCon 1.0.6 released - see CHANGES.
January 30, 2010: Some questions about debugging led to BaCon 1.0.5 - see CHANGES.
January 22, 2010: BaCon 1.0.4 released - see CHANGES.
January 18, 2010: BaCon 1.0.3 released - see CHANGES.
January 11, 2010: More improvements on the BaCon VIM IDE.
January 9, 2010: BaCon 1.0.2 released - see CHANGES. Improved the VIM macros also.
January 7, 2010: BaCon 1.0.1 released - see CHANGES.
January 1, 2010: BaCon 1.0 released - see CHANGES.
December 26, 2009: BaCon Release Candidate 1 available - see CHANGES.
December 21, 2009: By popular demand the NoteBook widget now is available in HUG.
December 15, 2009: The H.U.G. functions have been simplified even more.
December 10, 2009: ported my DICT client to BaCon. The code is here.
Why does BaCon need BASH or Kornshell, a.k.a. why was BaCon implemented in shell script?
Shell script was chosen to ensure maximum Unix compatibility; on each Unix version and Linux distribution a Kornshell or
BASH can be found.
Now only one program has to be downloaded to perform Basic-to-C conversion, so no hazzle to download different kinds of
binaries for all the different Unix versions with their particular binary formats and dependencies.
If you think this is impossible or strange or 'lame', refer to the common Kornshell website where Kornshell is described as a
command and programming language. Note that a standalone BaCon binary always can be created by compiling the BaCon version of BaCon!
How to compile network programs in OpenSolaris?
Run as follows: ./bacon -l nsl -l socket yourprogram.bac
Will there be a Win32 Version?
Not a native version, but BaCon runs in a Cygwin environment. For Windows, a native Basic to C converter can be found here.
So what is the difference between BaCon and Linux BCX?
Linux BCX needs a C++ compiler. Furthermore check out this list.
Where can I find more BASIC interpreters and compilers?
Check out the website of The Free Country, they have a lot of programming tools for
all kinds of languages!
Is there any relation with this BACON Basic converter or the BACON programming language?