Page 1 of 2 12 LastLast
Results 1 to 10 of 19

Thread: Oberon-2

  1. #1

    Oberon-2

    What are all your views on this language? How powerful is it? Can it be used effectively for game development? Have you any proper direction -- preferrably stuff that is being updated and recent -- for libraries and other resources (-- I haven't found a lot).

    As a fan of Pascal I haven't really checked out all his invented languages thoroughly, but Oberon-2... from what I see the syntax is just superb and typically Wirth-like (or Pascal-ish). Still very safe, and it's probably even less likely to make errors, because many things were taken out which prevents misuse and makes it less complex.

    One little piece of beauty of the syntax I noticed when I checked quickly is that the sign for an inequality test is for instance not <> but # which looks very intuitive, 'cause it represents an equality sign = with a strikethrough. Beautiful.

    Furthermore, from what I see the syntax is very consistent and friendly. But I'm just speaking from little experience, so maybe you can all add some useful stuff and maybe correct mine.

  2. #2

    Oberon-2

    I've looked a bit on it in the past but not thoroughly. I just took a peek over the documentation and the more I look the more sexy it looks. It actually does looks rather nice.

    The reason I probably won't switch is the lack of units and compilers for it. (Please prove me wrong here)
    Peregrinus, expectavi pedes meos in cymbalis
    Nullus norvegicorum sole urinat

  3. #3

    Oberon-2

    I don't think Oberon is usefull for game development. While the language is well designed, runtime library isn't and severely lacks for real world development. Pascal had initially had this problem too, but over time a reasonably well designed and well documented rtl developed. A more serious problem is that there is a lack of good libraries in Oberon, and a lack of bindings to common external libraries. It isn't even defined how to link to external libraries. The bomb though is that there are no good compilers for Oberon.

    Oberon is in typical Wirth style, a well designed language, with an unique view on OOP.

    However, there are a few things that don't make it my favourite language, for example:
    * Case sensitiveness. I prefer case insensitivity.
    * Uppercase keywords. Uppercasing keywords was form of manual syntax highlighting, however uppercase words reduce readability (try to read a software license with lots of capitals). Sincereadability of auto syntax highlighted code is so good nowadays, uppercase keywords are seriously outdated.
    * Modula inspired modular programming system. Sorry Niklaus, but the UCSD Pascal units are way superior.
    * While I like Pascal's natural language syntax, I have my doubts wether changing ^ to "POINTER TO" is an improvement.
    * Explicit END keyword instead of begin/end. IMO a solution for a problem that doesn't exist in practise, and requires the introduction of an ugly ELSIF keyword.
    * Real men do manual memory management. While nice in theory, garbage collection doesn't live up to its expectations and it limits interoperability with external libraries. Alas, with so few Oberon code in use, you depend a lot on external libraries and they require manual memory management.

  4. #4

    Oberon-2

    Oberon by itself is good for games.
    Modular architecture is better then OOP for as big systems as a game engine is.
    Well-tought and strict language is also advantage - or do you like buggy games? It's a norm novadays.
    Typical Oberon program is a set of modules for a host environment (e.g. BlackBox). In conjunction with the reflection system it's really powerful. No need in scripting system - just write a module and use efficient, fully-featured Oberon for scripting purposes.

    Text attributes in BlackBox are often used to highlight semantics (manually), not syntax. And possiblity to insert a picture into source code is also a useful one (why I can't do this in Delphi or VS??).

    Garbage collector is also very useful in most cases. If you want to manage memory by hands - just take a large piece of memory and manage it manually.
    But existance of Active Oberon-based real time OS BlueBottle tells us that there is no need in manual memory management.

    Concerning libraries - it's possible to work with COM objects from a BlackBox application.
    For games even 3D-math library is often written from scratch. Nevertheless, there are libraries for Oberon:
    http://www.zinnamturm.de/

    Disadvantages (or why I still not at Oberon):
    * very small community - recently the interest to Oberon is incresing but it's still small
    * lack of ideal compilers - BlackBox is good but the code it generating is not very fast. Code generated by XDS is fast, but XDS doesn't have an IDE, not open source etc.
    * lack of libraries

  5. #5

    Oberon-2

    Quote Originally Posted by Mirage
    Disadvantages (or why I still not at Oberon):
    * very small community - recently the interest to Oberon is incresing but it's still small
    * lack of ideal compilers - BlackBox is good but the code it generating is not very fast. Code generated by XDS is fast, but XDS doesn't have an IDE, not open source etc.
    * lack of libraries
    http://www.excelsior-usa.com/xdsx86.html : it seems it does have an IDE.

  6. #6

    Oberon-2

    Yes it does, a DOS-based IDE.
    I mean modern IDE.

  7. #7

    Oberon-2

    Here's a whole list of compilers: http://www.oberon.ws/TORS/compilers.html


    Haven't tried 'em, but at least there's no lack of compilers :)

  8. #8

    Oberon-2

    There are stacks of Pascal compilers, but only very few are production ready.

  9. #9
    Co-Founder / PGD Elder WILL's Avatar
    Join Date
    Apr 2003
    Location
    Canada
    Posts
    6,107
    Blog Entries
    25

    Oberon-2

    As apposed to Object Pascal where there are only a handfull of them and all of them are production ready.

    [size=9px]Psst, I think you meant to say Oberon-2 Daniel. [/size]
    Jason McMillen
    Pascal Game Development
    Co-Founder





  10. #10

    Oberon-2

    No, I did mean Pascal, pointing out that even an arsenal of compilers (hundreds, perhaps over a thousand) does not mean a lot of good compilers. As said above, one of the most serious problems with Oberon-2 is the lack of mature compilers. A list of compilers doesn't change that.

Page 1 of 2 12 LastLast

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •