Article View: comp.lang.modula2
Article #3612M2 Std questions
From: nagler
Date: Fri, 13 Feb 1987 21:47
Date: Fri, 13 Feb 1987 21:47
40 lines
2551 bytes
2551 bytes
Does anyone know if the BSI or other standards bodies are considering
the following Modula-2 issues?
1. What about TEENYWEENYINT and REALLYBIGREAL?
After using various implementations of LONGREAL and REAL, I have found a
great need for the standardization of the following types: ITTYBITTYREAL,
SMALLREAL, SHORTREAL, NOTSOBIGREAL, AVERAGEREAL, etc... Basically, I
would like to know if the standards people are going to fall into the
same trap into which C has fallen. Or, are they planning a standard,
extensible naming mechanism such as: CARDINAL32, CARDINAL16, REAL32,
REAL64, INTEGER36, CARDINAL60? It would be ashame to let history
repeat itself.
2. Type compatibility of Opaques, POINTER, and SYSTEM.ADDRESS.
It has been my experience that the following procedure and type should
be assignment compatible:
PROCEDURE UserSupplied( userObject : MyPrivatePtrOrOpaque;
dataFound : SomeService.Something );
DEFINITION MODULE SomeService;
TYPE
ToBeCalledOnMatch = PROCEDURE ( SYSTEM.ADDRESS, (* importer supplied *)
Something ); (* what was found *)
In implementing the impossibile, ADTs, I have found that the above
feature is very powerful when implementing generics, but at present
I have to force a type coercion of the procedure type in my UserSupplied
module. This may seem like a hack, but it is very useful when managing
a system of ``upcalls'' (call-backs, reverse importation, ...). The
unnecessary importation of SYSTEM into the User module is dissatisfying.
A type coercion of UserSupplied into ToBeCalledOnMatch is not really a
good idea. This idea is merely an extension of the automatic coercion
of SYSTEM.ADDRESS into POINTER (and vice-versa).
If anyone knows if these issues are being addressed (I haven't seen them
in the minutes of the BSI), please let me know. The points are trivial
to implement, but they could have a significant impact on the flexibility
and usefulness of the language.
Rob Nagler
Technical Details
Message-ID:
<8702122037.AA03589@olsen.uucp>Path:
arc1-ca.pugleaf.net!utzoo!utgpu!water!watnot!watmath!clyde!cuae2!ihnp4!cbatt!ucbvax!nagler@seismo.CSS.GOV@olsen.UUCPShow Full Headers
Complete Article Headers
Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: arc1-ca.pugleaf.net!utzoo!utgpu!water!watnot!watmath!clyde!cuae2!ihnp4!cbatt!ucbvax!nagler@seismo.CSS.GOV@olsen.UUCP From: nagler@seismo.CSS.GOV@olsen.UUCP Newsgroups: comp.lang.modula2 Subject: M2 Std questions Message-ID: <8702122037.AA03589@olsen.uucp> Date: Fri, 13-Feb-87 16:47:45 EST Article-I.D.: olsen.8702122037.AA03589 Posted: Fri Feb 13 16:47:45 1987 Date-Received: Sat, 14-Feb-87 23:38:11 EST Sender: daemon@ucbvax.BERKELEY.EDU Organization: The ARPA Internet Lines: 40