ANNOUNCE: C++ Version of Wirth's Oberon-O compiler 
Author Message
 ANNOUNCE: C++ Version of Wirth's Oberon-O compiler

We now have a working version of the Oberon-O compiler translated
to C++.

To get the code goto:
http://www.*-*-*.com/

Please let me know if there are any bugs.
The code has not been cleaned up yet but it
should compile and run.
Once cleaned up, we will then move to the full
Oberon-2 compiler in C++. We will be using the Oberon-O
as a testing platform due to is simplicity.

Also please check out the web site:
http://www.*-*-*.com/

And send me any suggestions it is still under construction!!!!



Thu, 06 Jun 2002 03:00:00 GMT  
 ANNOUNCE: C++ Version of Wirth's Oberon-O compiler


Quote:
> We now have a working version of the Oberon-O compiler translated
> to C++.

you sick, demented person you. ;-)  I'm just joking (mostly).

    -- ben

--



Thu, 06 Jun 2002 03:00:00 GMT  
 ANNOUNCE: C++ Version of Wirth's Oberon-O compiler
OK, before I get hung for doing what I did, let me justify why
I did, what I did and am doing.
I feel the Oberon thing needs new {*filter*}. To get new people
interested, I decided that a compiler is always a good
project to get people interested in taking a look.
Now whenever I have worked on compilers I had to learn
the target language (dah..) . Seeing that most Universities here in the US
now use C/C++ as there curriculum I thought that Oberon-O and Oberon-2
implemented under that language would be a more up to date compiler target
then Pascal ( Forgive me Mr. Wirth, oh yeh you also did Oberon, then never
mind ;-) )
but clean and simple enough for a single semester course..
I feel that once people see the simple elegance inherent in the Oberon
language itself,
this may add some momentum from the C/C++ group.
Then I want to present the people with Oberon itself. Keeping with the
concept of simple, the system is extremely powerful. Then when people can see
what
can be accomplished with the OS & compiler.... well the future will tell.
Quote:



> > We now have a working version of the Oberon-O compiler translated
> > to C++.

> you sick, demented person you. ;-)  I'm just joking (mostly).

>     -- ben

> --




Thu, 06 Jun 2002 03:00:00 GMT  
 ANNOUNCE: C++ Version of Wirth's Oberon-O compiler
Hello Ronald,

Quote:
> To get the code goto:
> http://www.straw-hat-oberon.com/Oberon-O.html

I did and it was a pain to compile.
Before I start complaining, let me say that I really
appreciate if people from the MS/C++ world start working
on Oberon.

Quote:
> Please let me know if there are any bugs.
> The code has not been cleaned up yet but it
> should compile and run.

The code does not compile on my Linux 2.2.13 with
egcs 2.91.66. The reason is simple: Your sources
are still MS-bound. Take for example M.BAT:

  bcc32 -v test.cpp OSS.CPP RISC.CPP OSG.CPP OSP.CPP

You try to compile "test.cpp" but there is only "TEST.CPP"
available. OK, so I rename all the files by hand. Still it
does not compile because you included the files with
uppercase letters. OK, so I change the sources, sometimes
mixed cases, sometimes not. Still does not compile, conio.h
is not a C/C++ header file.

  g++ -o ttt test.cpp osp.cpp oss.cpp osg.cpp risc.cpp -lm

Now it compiles. To test the compiler, I used this Oberon-0
source:

  MODULE sample;
  END sample.

Result:

  Oberon-O Compiler (C++) .01
    compiling sample
  code generated     4
  entry     0
     0    ADDI      30,   0,    4096
     4    LDW        0,   0,       4
     8    LDW        0,   0,       4
    12    LDW        0,   0,      31
  reloc

    code loaded
  Trap at 1247
  Segmentation fault

Not quite perfect, but I like the P-code approach.

Quote:
> Once cleaned up, we will then move to the full
> Oberon-2 compiler in C++. We will be using the Oberon-O
> as a testing platform due to is simplicity.

OK, but make sure you change all file names to lower case.
And forget about conio.h.

________________________________________________________________________

Juergen Kahrs                                       Tel.  0421  249 666
Millstaetter Strasse 15                             Tel.  0421  457 2819
D 28359 Bremen                                      Fax   0421  457 3578
____________ http://home.t-online.de/home/Juergen.Kahrs/ _______________



Fri, 07 Jun 2002 03:00:00 GMT  
 ANNOUNCE: C++ Version of Wirth's Oberon-O compiler
My apologizes, for the troubles. I have removed the "#include conio.h"
satement.
As for the case problems with the names. The files are stored on the web
page
in upper case. So when you download them they should still in upper case.
As for the batch file, it was only ment to show the order on compiling the
files. Due to the fact that how a set of file are linked will determine
which
constructor will get called in what order.

So the compile order should be:
TEST.CPP OSS.CPP RISC.CPP OSG.CPP

BTW

MODULE sample;
END sample.

Produces:

Oberon-O Compiler (C++) .01
  compiling sample
code generated     4
entry     0
   0    ADDI      30,   0,    4096
   4    PSH       31,  30,       4
   8    POP       31,  30,       4
  12    RET        0,   0,      31
reloc

  code loaded

And I do not fault!
But if you find something wrong I would appreciate here about it!

Quote:

> Hello Ronald,

> > To get the code goto:
> > http://www.straw-hat-oberon.com/Oberon-O.html

> I did and it was a pain to compile.
> Before I start complaining, let me say that I really
> appreciate if people from the MS/C++ world start working
> on Oberon.

> > Please let me know if there are any bugs.
> > The code has not been cleaned up yet but it
> > should compile and run.

> The code does not compile on my Linux 2.2.13 with
> egcs 2.91.66. The reason is simple: Your sources
> are still MS-bound. Take for example M.BAT:

>   bcc32 -v test.cpp OSS.CPP RISC.CPP OSG.CPP OSP.CPP

> You try to compile "test.cpp" but there is only "TEST.CPP"
> available. OK, so I rename all the files by hand. Still it
> does not compile because you included the files with
> uppercase letters. OK, so I change the sources, sometimes
> mixed cases, sometimes not. Still does not compile, conio.h
> is not a C/C++ header file.

>   g++ -o ttt test.cpp osp.cpp oss.cpp osg.cpp risc.cpp -lm

> Now it compiles. To test the compiler, I used this Oberon-0
> source:

>   MODULE sample;
>   END sample.

> Result:

>   Oberon-O Compiler (C++) .01
>     compiling sample
>   code generated     4
>   entry     0
>      0    ADDI      30,   0,    4096
>      4    LDW        0,   0,       4
>      8    LDW        0,   0,       4
>     12    LDW        0,   0,      31
>   reloc

>     code loaded
>   Trap at 1247
>   Segmentation fault

> Not quite perfect, but I like the P-code approach.

> > Once cleaned up, we will then move to the full
> > Oberon-2 compiler in C++. We will be using the Oberon-O
> > as a testing platform due to is simplicity.

> OK, but make sure you change all file names to lower case.
> And forget about conio.h.

> ________________________________________________________________________

> Juergen Kahrs                                       Tel.  0421  249 666
> Millstaetter Strasse 15                             Tel.  0421  457 2819
> D 28359 Bremen                                      Fax   0421  457 3578
> ____________ http://home.t-online.de/home/Juergen.Kahrs/ _______________



Sat, 08 Jun 2002 03:00:00 GMT  
 ANNOUNCE: C++ Version of Wirth's Oberon-O compiler
Correction on compiler order:
TEST.CPP    OSS.CPP    RISC.CPP    OSG.CPP    OSP.CPP
Quote:

> My apologizes, for the troubles. I have removed the "#include conio.h"
> satement.
> As for the case problems with the names. The files are stored on the web
> page
> in upper case. So when you download them they should still in upper case.
> As for the batch file, it was only ment to show the order on compiling the
> files. Due to the fact that how a set of file are linked will determine
> which
> constructor will get called in what order.

> So the compile order should be:
> TEST.CPP OSS.CPP RISC.CPP OSG.CPP

> BTW

> MODULE sample;
> END sample.

> Produces:

> Oberon-O Compiler (C++) .01
>   compiling sample
> code generated     4
> entry     0
>    0    ADDI      30,   0,    4096
>    4    PSH       31,  30,       4
>    8    POP       31,  30,       4
>   12    RET        0,   0,      31
> reloc

>   code loaded

> And I do not fault!
> But if you find something wrong I would appreciate here about it!


> > Hello Ronald,

> > > To get the code goto:
> > > http://www.straw-hat-oberon.com/Oberon-O.html

> > I did and it was a pain to compile.
> > Before I start complaining, let me say that I really
> > appreciate if people from the MS/C++ world start working
> > on Oberon.

> > > Please let me know if there are any bugs.
> > > The code has not been cleaned up yet but it
> > > should compile and run.

> > The code does not compile on my Linux 2.2.13 with
> > egcs 2.91.66. The reason is simple: Your sources
> > are still MS-bound. Take for example M.BAT:

> >   bcc32 -v test.cpp OSS.CPP RISC.CPP OSG.CPP OSP.CPP

> > You try to compile "test.cpp" but there is only "TEST.CPP"
> > available. OK, so I rename all the files by hand. Still it
> > does not compile because you included the files with
> > uppercase letters. OK, so I change the sources, sometimes
> > mixed cases, sometimes not. Still does not compile, conio.h
> > is not a C/C++ header file.

> >   g++ -o ttt test.cpp osp.cpp oss.cpp osg.cpp risc.cpp -lm

> > Now it compiles. To test the compiler, I used this Oberon-0
> > source:

> >   MODULE sample;
> >   END sample.

> > Result:

> >   Oberon-O Compiler (C++) .01
> >     compiling sample
> >   code generated     4
> >   entry     0
> >      0    ADDI      30,   0,    4096
> >      4    LDW        0,   0,       4
> >      8    LDW        0,   0,       4
> >     12    LDW        0,   0,      31
> >   reloc

> >     code loaded
> >   Trap at 1247
> >   Segmentation fault

> > Not quite perfect, but I like the P-code approach.

> > > Once cleaned up, we will then move to the full
> > > Oberon-2 compiler in C++. We will be using the Oberon-O
> > > as a testing platform due to is simplicity.

> > OK, but make sure you change all file names to lower case.
> > And forget about conio.h.

> > ________________________________________________________________________

> > Juergen Kahrs                                       Tel.  0421  249 666
> > Millstaetter Strasse 15                             Tel.  0421  457 2819
> > D 28359 Bremen                                      Fax   0421  457 3578
> > ____________ http://home.t-online.de/home/Juergen.Kahrs/ _______________



Sat, 08 Jun 2002 03:00:00 GMT  
 
 [ 6 post ] 

 Relevant Pages 

1. Wirth's Oberon-0 Compiler for Pow!

2. 'Compiler Construction' by Niklaus Wirth

3. Announce: Oberon 960, an Oberon-2 compiler generating 80960 code

4. Seek for german version of Wirth's book

5. IBM announces new release of z/OS (OS/390) compiler

6. new version of Oberon for OS/2

7. Announcement: New version of Oberon for OS/2

8. ANNOUNCE: Oberon-2 Compiler w/Plugable BackEnd

9. ANNOUCE Experimental Oberon Compiler C++

10. ANNOUCE: Oberon Compiler C/C++

11. Oberon to C++ compiler, any opinion?

12. Oberon Compiler for DOS Updated Version

 

 
Powered by phpBB® Forum Software