Article View: comp.lang.modula2
Article #2144Re: Oberon-2 discussion continues
From: Jarmo Pussinen
Date: Mon, 23 Nov 1992 08:14
Date: Mon, 23 Nov 1992 08:14
38 lines
2571 bytes
2571 bytes
Benedict Rafanello (bmr@buoy.cis.ufl.edu) wrote: : |> >>> e) DEFINITION & IMPLEMENTATION merged. : : |> >>This was a really bad move. Now you can't define the interface separately : |> >>and enforce it, and the "*" and "-" stuff is really kludgy, very atypical : |> >>of Wirth's work. Even if you accept that merging the def and imp is good, : |> >>interface details like READONLY really deserve their own keywords. : : |> No, this is a good move. The maintenance of only 1 file is a big : |> win. If you are concerned about the definition being published with : |> the source, don't worry. There is a `Browser' module which will : |> output a definition for a compiled module. You can then ship the : |> defintion (sans comments, unless you provide them) with your object : |> modules. : : If both the interface and the implementation are in one file, how do you : tell when only the implementation was changed? This is very important for : large projects. Some of the projects that I have been involved with contain : more than a million lines of code. These projects (done in Ada) would take : several DAYS just to compile. If the interface to a package was changed, : we would have to go through that horrendous compile cycle whereas if just : the implementation was changed, we only needed to relink. How does Oberon : handle this? : : Ben There is a compiler option, which tells to the compiler that interface may change. If you compile a source file without that option you cannot change the interface (create a new .sym file) without a compile time error. So there is no need to recompile the other stuff (and as you know there is no linking phase in Oberon :-), after changes that do not affect interface. In short in Oberon it is the compiler which creates the interface file. -- -------------------------------------------------------------------------------- | University of Joensuu | When I was younger I always thought| | jpussi@cs.joensuu.fi | but nowadays I don't. | | or something like that | |
Technical Details
Message-ID:
<1992Nov23.081453.5152@cs.joensuu.fi>Path:
arc1-ca.pugleaf.net!sparky!uunet!mcsun!news.funet.fi!cs.joensuu.fi!jpussiReferences:
<37695@uflorida.cis.ufl.edu>Show Full Headers
Complete Article Headers
Newsgroups: comp.lang.modula2 Path: arc1-ca.pugleaf.net!sparky!uunet!mcsun!news.funet.fi!cs.joensuu.fi!jpussi From: jpussi@cs.joensuu.fi (Jarmo Pussinen) Subject: Re: Oberon-2 discussion continues Message-ID: <1992Nov23.081453.5152@cs.joensuu.fi> Organization: University of Joensuu X-Newsreader: Tin 1.1 PL5 References: <37695@uflorida.cis.ufl.edu> Date: Mon, 23 Nov 1992 08:14:53 GMT Lines: 38