On 11 Apr., 18:30, "Auric__" <not.my.r...@[EMAIL PROTECTED]
> wrote:
> On Fri, 11 Apr 2008 08:30:52 GMT, wrote:
> > On 9 Apr., 22:28, "Auric__" <not.my.r...@[EMAIL PROTECTED]
> wrote:
> >> On Sun, 06 Apr 2008 20:21:53 GMT, wrote:
> >> > Hello,
>
> >> > I just released a new version of the bas7 basic interpreter,
> >> > which can execute old basic programs from the line number era
> >> > (If you know GW-Basic: That was the era). The interpreter is
> >> > released under the GPL. A description of bas7 can be found here:
>
> >> >http://seed7.sourceforge.net/scrshots/bas7.htm
>
> >> > The new version of Bas7 is contained in new the release of
> >> > Seed7 seed7_05_20080406.tgz, which can be downloaded at:
>
> >> >http://sourceforge.net/project/showfiles.php?group_id=151126
>
> >> > Changelog of the 20080406 version of bas7:
>
> >> [snip]
>
> >> > It would be nice to get some feedback about it.
>
> >> Downloading now. I'll try it out tonight or tomorrow and get back
> >> to you, especially as compared to my initial testing. My only
> >> comments right now are mutterings about people who continue to use
> >> gzip when there are much more efficient compressors available. ;-)
>
> > Sure, there are always more efficient compressors available.
> > Since I try to sup****t various operating systems, I have to
> > choose the least common denominator as compressor.
> > Since all the fancy windows compression programs are not
> > available under unix I cannot use them.
>
> There's always bzip2. Most of the time it offers better compression
> than gzip. (For seed7 it's usually about 1/4 to 1/3 smaller; for
> everything else it depends on the filetype. I usually use a script I
> wrote that compresses your selected file with everything available,
> one at a time.)
I am not sure if windows sup****t for bzip2 decompression is as
widespread as sup****t for gzip decompression.
> > For windows compression/decompression I suggest 7-Zip (no
> > relation****p to Seed7) which is open source software and is
> > available at:www.7-zip.org
>
> ...which is one of the tools that I use. For *nix systems there's also
> p7zip, the *nix ****t of 7zip:
> http://p7zip.sf.net/
>
> Of course, since that's probably not included with most distros, you'd
> have people *****ing about it anyway.
>
> > I'm looking forward to seeing your feedback.
>
> Well... I wrote down a nice big list, then forgot to copy it to my USB
> stick. [sigh] This is all from memory.
Such a problem (forgetting to copy something to the USB stick)
sounds familiar. Could you send the nice big list when it is
available?
> MY SYSTEM:
> Slackware 10.1, Kernel 2.4.36, GCC 3.4.5, Pentium III w/ 384MB RAM
>
> INSTALLING:
> As before, I had to edit the makefile to find my libX11. I again
> recommend either mentioning this in the README, or finding someone who
> knows how to write a configure script. (I'm using a very standard
> Slackware install; this *will* be a problem for people besides me.)
There exists the file src/read_me.txt which explains this problem.
> The compile had no errors, but lots of warnings -- maybe double the
> last time. The previous warnings were all complaints about type
> casting; they're still there but this one added "'variablename' is
> declared but not used" and "'variablename' may be used uninitialized".
> [shrug]
Interestingly gcc is not able to recognize when the states of two
variables are connected. Such as a global fail_flag variable and
a local condition variable (cond). The connection is: As long as
fail_flag is FALSE the cond variable is initialised. When the
fail_flag is TRUE the cond variable is not used and therefore it
could be in an uninitialized state. At several places I use such
connected variable states which are not recognized by the gcc
optimizer and are therefore flagged with a warning. I accept such
warnings in performance critical paths. I am not willing to do
"unnecessary" initialisations in performance critical paths of the
program. At places that are not performance critical I do some
of this "unnecessary" initialisations just to avoid such warnings.
OTOH I was able to remove some of this "may be used uninitialized"
messages by reordering program code.
> RUNNING:
> I did very little testing outside of bas7. I ran castle.sd7 again --
> found about a dozen treasures this time [yay me] -- and eliza.sd7.
> Both are fine. (Thanks again for the "-p" switch in bas7, btw.)
>
> The BASIC programs all run a bit slow. (I can't recall if this was
> happening in the previous version; I was mostly looking to see if they
> worked at all.) I chalk it up to the fact that the interpreter is
> itself interpreted, but you may want to check for yourself.
Yes, if you call Bas7 with './hi bas7 myProg', the Bas7 interpreter
is itself interpreted. That way you have two levels of
interpretation. But it is also possible to compile the Bas7
interpreter with './hi comp bas7' in the seed7/prg directory. This
should produce a bas7 executable which can be used to execute basic
programs with './bas7 myProg'.
> Most notable is eliza.bas (from the early-to-mid 80's; the reason I
> also ran eliza.sd7, for comparison)
There are also startrek.sd7, hamu.sd7, wumpus.sd7 and wiz.sd7 which
might be compared to a BASIC version.
> which runs just fine under several
> DOS BASICs, but has a noticeable pause after each line of input. I
> didn't check the logs, but my guess is that the slowdown is caused by
> the logging. Eliza parses the text in a very... well... let's call it
> overly-complex manner, and each line of the parsing, string
> manipulating, and reply choosing probably generates its own log
> output. A very slow way to talk to yourself.
A compiled Bas7 interpreter would help here also.
> Also, text-mode colors still aren't there. (I realize they're probably
> pretty low on the todo list.) *This* is what I meant last time by "no
> colors". (I ran a BASIC program that "tests" VGA colors.)
The text colors work in graphic windows (but there are lots of other
problems with graphic windows). The solution I plan for text colors
is to have always graphic windows (also for text only programs).
That way it would not be necessary to improve my console (screen)
driver to work with colors.
> I haven't tried any actual graphical programs, but then, I don't think
> that I have any with line numbers...
Bas7 can also execute basic programs without line numbers.
It has also sup****t for various features of QBasic (DO, SELECT,
structured IF, ...). Several im****tant features of QBasic are
currently not sup****ted with Bas7: Subprograms and functions with
parameters (subprograms without parameters work), user defined types,
common blocks... I do not want to advertise the features of QBasic
that Bas7 sup****ts, until more of them work.
Greetings Thomas Mertes
Seed7 Homepage: http://seed7.sourceforge.net
Seed7 - The extensible programming language: User defined statements
and operators, abstract data types, templates without special
syntax, OO with interfaces and multiple dispatch, statically typed,
interpreted or compiled, ****table, runs under linux/unix/windows.


|