Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!swrinde!zaphod.mps.ohio-state.edu!usc!snorkelwacker!husc6!spdcc!ima!esegue!compilers-sender From: pardo@cs.washington.edu (David Keppel) Newsgroups: comp.compilers Subject: Re: Defining polymorphism vs. overloading Keywords: polymorphism Message-ID: <12978@june.cs.washington.edu> Date: 7 Sep 90 17:01:04 GMT References: <8133@amelia.nas.nasa.gov> Sender: compilers-sender@esegue.segue.boston.ma.us Reply-To: pardo@cs.washington.edu (David Keppel) Organization: University of Washington, Computer Science, Seattle Lines: 31 Approved: compilers@esegue.segue.boston.ma.us >[Ongoing discussion of polymorphism & overloading.] Given two uses (`T' denotes type): func (T) -> T func (T, T) -> T is `func' overloaded, polymorphic, or neither? Note that the parameter types do not change but that the typ signature of the whole call does change. Does the O/P/N status depend on whether the specification is func (T: x) -> T { ... } func (T: x, T: y) -> T { ... } or func (T: x, optional T: y) -> T { ... } ? Ada allows default parameters, while some LISPs allow both defaults and genuinely optional parmaeters. Does that make a difference? ;-D on ( And is Eiffel's `feature' a documented bug? ) Pardo -- pardo@cs.washington.edu {rutgers,cornell,ucsd,ubc-cs,tektronix}!uw-beaver!june!pardo -- Send compilers articles to compilers@esegue.segue.boston.ma.us {ima | spdcc | world}!esegue. Meta-mail to compilers-request@esegue.