future of BCX

38 views
Skip to first unread message

John Jacques

unread,
Feb 10, 2007, 5:50:55 PM2/10/07
to MB...@googlegroups.com, David Garner
Hello, I was in another group today where we have been working on a top
secret project written in BCX that has gone on for almost 2 years
now!!!

It has come to the end of what will be done for the same reasons every
bcx
project dies before being released.

I mentioned what we are doing in this group and they are all for it.

We agreed that BCX has matured to it's final stage in development and
we
want to go further, but the parse/translator is too complex for all but
the
builders to understand and cope with.

What we are looking to do is this:
1) "Take out the trash" from bcx. This means writing a completely new
translator.
2) The new translator will be BASIC only, ignore any lines that start
with
!,$,', etc... It will not "see" or "care" about mixed C, SQL, Python,
or any
other code, only its own internal BASIC code.
3) The translator will be modular, allow for any number of PRE and POST
processors to be run.
4) It will not include any "internal" RunTimeFunctions. The will be
linked
with the C linker.

We need a server to hold the libraries, files, etc. That we plan on
mass
producing for everyone to share and use. Some will be free, shareware,
gpl,
etc. and be stored under those categories. Like an FTP server.

The new translator will allow pre and post processing, some will choose
to
add a bit of AI to do things like check the code for errors, make it
more
efficient, check for memory leaks, etc...

We also think a standard be writing for how to code in this basic. The
syntax will affect the overall parsing and translation steps. There is
also
going to be an Interpreter written to run the BASIC code in real time.
Note
that I said "BASIC code" not C or anything else.

The expandability of this new BASIC translator/language will be up to
those
who use it and share their code. For example, if you want to add OOP to
it,
then you write the plug-in to do that.

John



____________________________________________________________________________________
Expecting? Get great news right away with email Auto-Check.
Try the Yahoo! Mail Beta.
http://advision.webevents.yahoo.com/mailbeta/newmail_tools.html

John Jacques

unread,
Feb 10, 2007, 9:26:04 PM2/10/07
to MB...@googlegroups.com
I was thinking that maybe we can move BCX from C to C++ or something
more
current. The basic idea is to program in BASIC and have an executable.

Just an idea.
John



____________________________________________________________________________________
Want to start your own business?
Learn how on Yahoo! Small Business.
http://smallbusiness.yahoo.com/r-index

David Garner

unread,
Feb 10, 2007, 10:30:52 PM2/10/07
to MB...@googlegroups.com
John,

> I was thinking that maybe we can move BCX from C to C++

BCX will already create output files which can be compiled with the MS C++
compiler.

Basically, C++ adds object oriented classes to C - at least that's my
understanding of the ++. How does that help with the BASIC to executable
quest?

I'm not saying it's a good or bad idea, I just don't know that I see any
advantage to C++ over C for a BASIC (which is not object oriented)
translator.

If you were to target C#, then you would get the ability to run on the .NET
runtime and all the memory management advantages - of course you pick up the
.NET runtime requirement then. I'm not saying that's a bad idea either.
With Vista out, XP and Vista both support .NET and I don't know how much
longer any previous OS version is relevant anymore.

I guess C++ managed would also target the .NET platform. I don't know how
one differentiates between C++ and C++ managed code though. Is it just a
compiler switch or something similar?

David Garner

David Garner

unread,
Feb 10, 2007, 10:40:51 PM2/10/07
to MB...@googlegroups.com
John,

> It has come to the end of what will be done for the same reasons every
> bcx project dies before being released.

It's not really clear to me exactly what you mean. If you have insight into
some limitations (other than the scalability lacking because of lack of
modularity), I'd like to hear your thoughts. You obviously have more
experience with such matters than I do since I hit the modularity issue and
pretty much gave up until that issue is addressed - and I've not managed to
address it yet.



> I mentioned what we are doing in this group and they are all for it.

Then get them to sign up and start the ball rolling. You need someone to
encourage you and I'm obviously not getting around to doing that in a really
supportive manner. Maybe having some other minds involved would get things
moving.

David Garner

John Jacques

unread,
Feb 10, 2007, 11:21:06 PM2/10/07
to MB...@googlegroups.com
Well, after looking into M$ VC++ which seems to only come with Visual
Studio
2005 (and you can download the .net extensions for free) the cost is
WAY too
much and it reminded me that BCX is also FREE. Approx $3,000 for VS PRO
and
the other tools needed to code M$ VC++ efficiently.

So, that idea is gone.

Ok here's what I do know:

1) BCX needs database support, and although we write code for MySQL and
SQL,
there is no standard distributed library for it. I wrote a simple SQL
database app for bcx a few years ago.

2) There is no IDE for BCX

3) There is no Visual IDE for BCX (EZIDE is ok, but lacks dynamic
output).
It is built with dynamic code, but outputs static code. I wrote a
ezide-2-dynamic ezide code converter about a year ago.

4) We cannot use DirectX and OpenGL with the C language, you NEED C++
at the
very least just to interface with DX8 and 9. Supposedly, a new DX10 is
due
for release that requires .NET but no official word on that at this
time.

I want to be able to write a GUI database backed application in under
30
minutes. It seems like there's 2 types of BCX people. The 1st are just
using
it for a hobby and not interested in what the limitations are and the
2nd
are those who have enough money that they can buy M$ developer
languages.
There's nothing for the middle man.

Remember the year we had BCX programmers writing DirectX games and
demos?
ODBC applications/interfaces? Parallel port interfaces?

I guess what I would like to see is that bcx be made so that everyone
understand how it works by reading the simple BASIC code, no C tricks.

We should be able to select which code snippets are added to the
RunTimeFunctions. So we could have the standard and extended RTF's.

There's also the $TURBO directive that should not be used EVER. Ok, so
I am
the only one who says this. Does this mean I am wrong? Why don't we add
a
few lines of code to check the $TURBO status and see how often it is
abused
by all of us who think BASIC and not $TURBO BASIC. A single for loop
could
corrupt your entire app, where would you look for a problem with data
corruption? Basically, one way to fix everything is to run a C debugger
on
all of our programs.

* on a side note M$ released a free command line scripting language


John



____________________________________________________________________________________
Finding fabulous fares is fun.
Let Yahoo! FareChase search your favorite travel sites to find flight and hotel bargains.
http://farechase.yahoo.com/promo-generic-14795097

Reply all
Reply to author
Forward
0 new messages