- STDOUT - Niklaus, Niklaus, NIKLAUS!

From: CFB Software <"CFB>
Date: Wed, 8 Aug 2007 10:15:39 +0930

----boundary-LibPST-iamunique-258757204_-_-
Content-type: text/plain

>-----Original Message-----
>From: blackbox{([at]})nowhere.xy
>Of Martin, Marc
>Sent: Thursday, 12 July 2007 7:47 AM
>To: BlackBox Mailing List
>Subject: [BlackBox] - STDOUT - Niklaus, Niklaus, NIKLAUS!
>
>> How come the name Niklaus (Wirth presumably?) is in the subject? He
>> didn't invent the Component Pascal language.
>
>Well, he was the one who removed READLN and WRITELN from

>Modula-2 and Oberon, which Component Pascal is based.
>

Yes - and for very good reason. Removing IO from the language makes the
compilers more portable / less OS-dependent. By moving IO statements out of
the compiler and into the libraries, porting the language to new platforms
means that the work of implementing IO facilities could be done by
developers without compiler writing skills.

He took the principle one step further with Oberon, and attempted to make
the whole operating platform portable. For the late 1980's that was very
prophetic. Only yesterday I was reading how VMs / virtualisation (e.g.
VMWare, Virtual PC - not necessarily JVM or .NET) are the 'next big thing'.

>Interestingly, the newer Zonnon language brings back READLN
>and WRITELN! I don't know who's using this, though. It
>doesn't appear that the compiler even corresponds to the
>latest definition of the language.
>

I revisit Zonnon every few months - it has a lot of potential but it isn't
'ready yet'. The primary attraction for me over Blackbox or GPCP is its
level of integration into Visual Studio 2005. However, from what I know
about the VS integration facilities, and experience I've had beta-testing
GPCP in VS 2003, I suspect this is a major cause of any implementation
problems experienced by the developers.

>But anyway, I don't see what the big deal is... I've written
>codes in Pascal, Modula-2, Oberon-2, and Component Pascal, and
>the output files get written one way or another! :-)
>

Yes indeed. No offence intended to anyone but the saying 'A poor workman
always blames his tools' comes to mind. I am *currently* actively writing
code in Gardens Point Component Pascal, Delphi 2006, Blackbox Component
Pascal and, yes, Modula-2. The *KEY PRINCIPLE* to code reuse is to
quarantine all of your UI / IO code into one or two separate modules instead
of having all of your modules littered with platform-specific IO statements.


Chris Burrows
CFB Software
http://www.cfbsoftware.com/gpcp

--- BlackBox
--- send subject HELP or UNSUBSCRIBE to blackbox{([at]})nowhere.xy

----boundary-LibPST-iamunique-258757204_-_-
Content-type: application/rtf
Content-transfer-encoding: base64
Content-Disposition: attachment; filename="rtf-body.rtf"

e1xydGYxXGFuc2lcYW5zaWNwZzEyNTJcZnJvbXRleHQgXGRlZmYwe1xmb250dGJsDQp7XGYwXGZz
d2lzcyBBcmlhbDt9DQp7XGYxXGZtb2Rlcm4gQ291cmllciBOZXc7fQ0Ke1xmMlxmbmlsXGZjaGFy
c2V0MiBTeW1ib2w7fQ0Ke1xmM1xmbW9kZXJuXGZjaGFyc2V0MCBDb3VyaWVyIE5ldzt9fQ0Ke1xj
b2xvcnRibFxyZWQwXGdyZWVuMFxibHVlMDtccmVkMFxncmVlbjBcYmx1ZTI1NTt9DQpcdWMxXHBh
cmRccGxhaW5cZGVmdGFiMzYwIFxmMFxmczIwID4tLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLVxw
YXINCj5Gcm9tOiBibGFja2JveEBvYmVyb24uY2ggW21haWx0bzpibGFja2JveEBvYmVyb24uY2hd
IE9uIEJlaGFsZiBccGFyDQo+T2YgTWFydGluLCBNYXJjXHBhcg0KPlNlbnQ6IFRodXJzZGF5LCAx
MiBKdWx5IDIwMDcgNzo0NyBBTVxwYXINCj5UbzogQmxhY2tCb3ggTWFpbGluZyBMaXN0XHBhcg0K
PlN1YmplY3Q6IFtCbGFja0JveF0gLSBTVERPVVQgLSBOaWtsYXVzLCBOaWtsYXVzLCBOSUtMQVVT
IVxwYXINCj5ccGFyDQo+PiBIb3cgY29tZSB0aGUgbmFtZSBOaWtsYXVzIChXaXJ0aCBwcmVzdW1h
Ymx5PykgaXMgaW4gdGhlIHN1YmplY3Q/IEhlIFxwYXINCj4+IGRpZG4ndCBpbnZlbnQgdGhlIENv
bXBvbmVudCBQYXNjYWwgbGFuZ3VhZ2UuXHBhcg0KPlxwYXINCj5XZWxsLCBoZSB3YXMgdGhlIG9u
ZSB3aG8gcmVtb3ZlZCBSRUFETE4gYW5kIFdSSVRFTE4gZnJvbVxwYXINCj5Nb2R1bGEtMiBhbmQg
T2Jlcm9uLCB3aGljaCBDb21wb25lbnQgUGFzY2FsIGlzIGJhc2VkLiAgXHBhcg0KPlxwYXINClxw
YXINClllcyAtIGFuZCBmb3IgdmVyeSBnb29kIHJlYXNvbi4gUmVtb3ZpbmcgSU8gZnJvbSB0aGUg
bGFuZ3VhZ2UgbWFrZXMgdGhlXHBhcg0KY29tcGlsZXJzIG1vcmUgcG9ydGFibGUgLyBsZXNzIE9T
LWRlcGVuZGVudC4gQnkgbW92aW5nIElPIHN0YXRlbWVudHMgb3V0IG9mXHBhcg0KdGhlIGNvbXBp
bGVyIGFuZCBpbnRvIHRoZSBsaWJyYXJpZXMsIHBvcnRpbmcgdGhlIGxhbmd1YWdlIHRvIG5ldyBw
bGF0Zm9ybXNccGFyDQptZWFucyB0aGF0IHRoZSB3b3JrIG9mIGltcGxlbWVudGluZyBJTyBmYWNp
bGl0aWVzIGNvdWxkIGJlIGRvbmUgYnlccGFyDQpkZXZlbG9wZXJzIHdpdGhvdXQgY29tcGlsZXIg
d3JpdGluZyBza2lsbHMuIFxwYXINClxwYXINCkhlIHRvb2sgdGhlIHByaW5jaXBsZSBvbmUgc3Rl
cCBmdXJ0aGVyIHdpdGggT2Jlcm9uLCBhbmQgYXR0ZW1wdGVkIHRvIG1ha2VccGFyDQp0aGUgd2hv
bGUgb3BlcmF0aW5nIHBsYXRmb3JtIHBvcnRhYmxlLiBGb3IgdGhlIGxhdGUgMTk4MCdzIHRoYXQg
d2FzIHZlcnlccGFyDQpwcm9waGV0aWMuIE9ubHkgeWVzdGVyZGF5IEkgd2FzIHJlYWRpbmcgaG93
IFZNcyAvIHZpcnR1YWxpc2F0aW9uIChlLmcuXHBhcg0KVk1XYXJlLCBWaXJ0dWFsIFBDIC0gbm90
IG5lY2Vzc2FyaWx5IEpWTSBvciAuTkVUKSBhcmUgdGhlICduZXh0IGJpZyB0aGluZycuXHBhcg0K
XHBhcg0KPkludGVyZXN0aW5nbHksIHRoZSBuZXdlciBab25ub24gbGFuZ3VhZ2UgYnJpbmdzIGJh
Y2sgUkVBRExOIFxwYXINCj5hbmQgV1JJVEVMTiEgIEkgZG9uJ3Qga25vdyB3aG8ncyB1c2luZyB0
aGlzLCB0aG91Z2guICBJdCBccGFyDQo+ZG9lc24ndCBhcHBlYXIgdGhhdCB0aGUgY29tcGlsZXIg
ZXZlbiBjb3JyZXNwb25kcyB0byB0aGUgXHBhcg0KPmxhdGVzdCBkZWZpbml0aW9uIG9mIHRoZSBs
YW5ndWFnZS5ccGFyDQo+XHBhcg0KXHBhcg0KSSByZXZpc2l0IFpvbm5vbiBldmVyeSBmZXcgbW9u
dGhzIC0gaXQgaGFzIGEgbG90IG9mIHBvdGVudGlhbCBidXQgaXQgaXNuJ3RccGFyDQoncmVhZHkg
eWV0Jy4gVGhlIHByaW1hcnkgYXR0cmFjdGlvbiBmb3IgbWUgb3ZlciBCbGFja2JveCBvciBHUENQ
IGlzIGl0c1xwYXINCmxldmVsIG9mIGludGVncmF0aW9uIGludG8gVmlzdWFsIFN0dWRpbyAyMDA1
LiBIb3dldmVyLCBmcm9tIHdoYXQgSSBrbm93XHBhcg0KYWJvdXQgdGhlIFZTIGludGVncmF0aW9u
IGZhY2lsaXRpZXMsIGFuZCBleHBlcmllbmNlIEkndmUgaGFkIGJldGEtdGVzdGluZ1xwYXINCkdQ
Q1AgaW4gVlMgMjAwMywgSSBzdXNwZWN0IHRoaXMgaXMgYSBtYWpvciBjYXVzZSBvZiBhbnkgaW1w
bGVtZW50YXRpb25ccGFyDQpwcm9ibGVtcyBleHBlcmllbmNlZCBieSB0aGUgZGV2ZWxvcGVycy5c
cGFyDQpccGFyDQo+QnV0IGFueXdheSwgSSBkb24ndCBzZWUgd2hhdCB0aGUgYmlnIGRlYWwgaXMu
Li4gSSd2ZSB3cml0dGVuIFxwYXINCj5jb2RlcyBpbiBQYXNjYWwsIE1vZHVsYS0yLCBPYmVyb24t
MiwgYW5kIENvbXBvbmVudCBQYXNjYWwsIGFuZCBccGFyDQo+dGhlIG91dHB1dCBmaWxlcyBnZXQg
d3JpdHRlbiBvbmUgd2F5IG9yIGFub3RoZXIhICA6LSlccGFyDQo+XHBhcg0KXHBhcg0KWWVzIGlu
ZGVlZC4gTm8gb2ZmZW5jZSBpbnRlbmRlZCB0byBhbnlvbmUgYnV0IHRoZSBzYXlpbmcgJ0EgcG9v
ciB3b3JrbWFuXHBhcg0KYWx3YXlzIGJsYW1lcyBoaXMgdG9vbHMnIGNvbWVzIHRvIG1pbmQuIEkg
YW0gKmN1cnJlbnRseSogYWN0aXZlbHkgd3JpdGluZ1xwYXINCmNvZGUgaW4gR2FyZGVucyBQb2lu
dCBDb21wb25lbnQgUGFzY2FsLCBEZWxwaGkgMjAwNiwgQmxhY2tib3ggQ29tcG9uZW50XHBhcg0K
UGFzY2FsIGFuZCwgeWVzLCBNb2R1bGEtMi4gVGhlICpLRVkgUFJJTkNJUExFKiB0byBjb2RlIHJl
dXNlIGlzIHRvXHBhcg0KcXVhcmFudGluZSBhbGwgb2YgeW91ciBVSSAvIElPIGNvZGUgaW50byBv
bmUgb3IgdHdvIHNlcGFyYXRlIG1vZHVsZXMgaW5zdGVhZFxwYXINCm9mIGhhdmluZyBhbGwgb2Yg
eW91ciBtb2R1bGVzIGxpdHRlcmVkIHdpdGggcGxhdGZvcm0tc3BlY2lmaWMgSU8gc3RhdGVtZW50
cy5ccGFyDQpccGFyDQpccGFyDQpDaHJpcyBCdXJyb3dzXHBhcg0KQ0ZCIFNvZnR3YXJlXHBhcg0K
aHR0cDovL3d3dy5jZmJzb2Z0d2FyZS5jb20vZ3BjcFxwYXINClxwYXINCi0tLSBCbGFja0JveFxw
YXINCi0tLSBzZW5kIHN1YmplY3QgSEVMUCBvciBVTlNVQlNDUklCRSB0byBibGFja2JveEBvYmVy
b24uY2h9fQB6SXdJ


----boundary-LibPST-iamunique-258757204_-_---
Received on Wed Aug 08 2007 - 02:45:39 UTC

This archive was generated by hypermail 2.3.0 : Thu Sep 26 2013 - 06:31:26 UTC