Article View: comp.lang.misc
Article #4509Re: Check the Arg Count
From: Chris Torek
Date: Wed, 14 Jan 1987 06:58
Date: Wed, 14 Jan 1987 06:58
35 lines
2079 bytes
2079 bytes
In article <1639@enea.UUCP> sommar@enea.UUCP (Erland Sommarskog) writes: >To get I/O-routines (or whatever scanf() is) with variable parameter lists, >there seems to be four ways: >1) Make them standard routines recognized by the compiler. The best alter- > native. Specially in a small langauge like C. This is bad because it cannot be extended, not without hacking the compiler. >2) Introduce a syntax that allows this. Possible, but not very attrcative. This is `not very attractive' because it clutters up the syntax? >3) Skip checking of parameter count. To be straight: Ridiculous. This is bad because it does not do something that could be done, and that has proven worthwhile in similar cases. >4) Forget the whole thing. This is bad because it makes the language harder to use. I claim that the proper solution is 1 and/or 2: What is needed is a way of telling the compiler, `this routine takes arguments described by . . .' that is general enough to cover printf, scanf, execl, and so forth, yet simple enough so that new ones can be introduced as necessary, and so that the syntax is not unduly cluttered. The real problem is in conveying the `described by' part. System V lint has /*PRINTFLIKE*/ and /*SCANFLIKE*/ pragmas in its lint library, which takes care of printf and scanf and variants, but not execl. Would adding /*REPEATING*/ suffice? I cannot say. -- In-Real-Life: Chris Torek, Univ of MD Comp Sci Dept (+1 301 454 7690) UUCP: seismo!mimsy!chris ARPA/CSNet: chris@mimsy.umd.edu
Technical Details
Message-ID:
<5064@mimsy.UUCP>Path:
arc1-ca.pugleaf.net!utzoo!mnetor!seismo!mimsy!chrisReferences:
<1634@enea.UUCP> <594@mcgill-vision.UUCP> <1639@enea.UUCP>Show Full Headers
Complete Article Headers
Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: arc1-ca.pugleaf.net!utzoo!mnetor!seismo!mimsy!chris From: chris@mimsy.UUCP (Chris Torek) Newsgroups: comp.lang.misc Subject: Re: Check the Arg Count Message-ID: <5064@mimsy.UUCP> Date: Wed, 14-Jan-87 01:58:20 EST Article-I.D.: mimsy.5064 Posted: Wed Jan 14 01:58:20 1987 Date-Received: Wed, 14-Jan-87 19:01:06 EST References: <1634@enea.UUCP> <594@mcgill-vision.UUCP> <1639@enea.UUCP> Organization: U of Maryland, Dept. of Computer Science, Coll. Pk., MD 20742 Lines: 35