sawant@nunki.usc.edu (Abhay Sawant) (02/01/89)
In the domain of Pascal implementations, Turbo Pascal is really head and shoulders ahead of the competition (evidenced by the sheer lack of competition ?). How and why does Microsoft keep churning out newer versions (each of them ponderous and painful) of Microsoft Pascal ? Is there any large group of people who would actually prefer MSP ? -ajay ------------------------------------------------------------------------------- You're never too old to have a happy childhood. ajay shah (213)745-2923 or sawant@nunki.usc.edu _______________________________________________________________________________
slezakm@jacobs.CS.ORST.EDU (Mark Slezak) (02/02/89)
I read (last week?) in Info-World Microsoft is has announced Quick Pascal. The artical said Mircosoft used Borland's own MircoCalc to show off Q-Pascal's speed and just compatible it is. What next? Quick-FORTRAN? Quick-Cobol? Mark. {tektronix,hp-pcd}!orstcs!jacobs.CS.ORST.EDU!slezakm
dwd@sfsup.UUCP (D.W.Dougherty) (02/02/89)
While I am a big fan of Borland's compilation tools, especially Turbo Pascal, I really like some of the things that Microsoft did with their Pascal compiler. Borland has make lots of useful extensions to the language, but they have overlooked what I believe are the two most obvious extensions: 1) allowing functions to return user defined types 2) functions and procedures as parameters to other functions or procedures Of course, MS has done some pretty nasty things with their compiler; i.e., let's map identifiers to all upper-case (*WHY*)??
drc@claris.com (Dennis Cohen) (02/03/89)
> Of course, MS has done some pretty nasty things with their compiler; > i.e., let's map identifiers to all upper-case (*WHY*)?? Maybe it's because Pascal is not case-sensitive and other languages such as C and Modula-2 are as are the linkers which support them. Because of this there needs to be some _consistent_ method of referencing procedures written in other languages and thus support multi-language development. Mapping all Pascal procedure/function names to upper-case (or lower-case) seems an altogether reasonable thing to do so that the linker may properly resolve references to a procedure written in Pascal from a program written in C. This "convention" is not uncommon. The same thing is done by the MPW product on the Macintosh. Dennis Cohen Claris Corp. ------------ Disclaimer: Any opinions expressed above are _MINE_!
ags@s.cc.purdue.edu (Dave Seaman) (02/03/89)
In article <4741@sfsup.UUCP> dwd@/guestc/dwdUUCP (xt1121-D.W.Dougherty) writes: >Borland has make lots of useful extensions to the >language, but they have overlooked what I believe are the two most >obvious extensions: > 1) allowing functions to return user defined types That is indeed an extension that is worth having. > 2) functions and procedures as parameters to other > functions or procedures That is not an extension; it is a part of standard Pascal. Any compiler that doesn't have it is not Pascal. (Yes, that means TP is not Pascal.) -- Dave Seaman ags@j.cc.purdue.edu
abcscnuk@csuna.UUCP (Naoto Kimura) (02/04/89)
In article <4741@sfsup.UUCP> dwd@/guestc/dwdUUCP (xt1121-D.W.Dougherty) writes:
]... (text deleted)...
]Pascal compiler. Borland has make lots of useful extensions to the
]language, but they have overlooked what I believe are the two most
]obvious extensions:
]
] 1) allowing functions to return user defined types
If you happen to mean ennumerated types (which are ordinal types), I
think that they are part of standard, not an extension. If I recall,
I was able to return enumerated types in TP.
If you're talking about returning record types, which is non-standard,
they'll have to change how the return value is passed back. At present,
Borland's TP uses AX register to pass back value. You'd need to use
either the stack segment or some other segment to return the value.
] 2) functions and procedures as parameters to other
] functions or procedures
Actually, procedural and functional parameters are part of standard.
Borland has implemented something similar with "procedural types"
in version 5.
]Of course, MS has done some pretty nasty things with their compiler;
]i.e., let's map identifiers to all upper-case (*WHY*)??
Actually, Standard Pascal is case-insensitive. Borland's Turbo Pascal
will also ignore case. You should never rely on case to differentiate
between identifiers. Nor should you rely on identifiers to be unique if
they differ somewhere beyond the 8th character (this will vary with the
implementation).
One complaint that I have of TP is that it doesn't have get() or put(),
nor does it implement page(), nor does it allow accessing file buffer,
as in standard (I can probably do this by using the TextRec type, but
that'll make my programs non-portable).
//-n-\\ Naoto Kimura
_____---=======---_____ (csun!csuna!abcscnuk)
====____\ /.. ..\ /____====
// ---\__O__/--- \\ Enterprise... Surrender or we'll
\_\ /_/ send back your *&^$% tribbles !!