Generic Programming - What Is the Best Method? (Was: Intelligent macros .vs. BITS)



"Richard Maine" <nospam@xxxxxxxxxxxxx> wrote in message news:1ie4imi.13a7g9c12hk3foN%nospam@xxxxxxxxxxxxxxxx
Simulate <li.simula@xxxxxxxxx> wrote:

But generic programming is the overwhelming direction in programing at
present time.

In some ways, that's a pretty big argument *AGAINST* doing it. Trying to
run after the latest fad ends up with just a mess after a few
generations of such fads; that is not a way to go for the long term.

As it happens, I do think that there is a lot of benefit to generic
program. But *NOT* just because that's the current fad that we should
try to jump on.

However, even among strong supporters of generic programming, there is
major debate as to whether a macro feature is a good way to do it.
Perhaps it is a good way. I'll defer judgement. But I will note that
doing a good job of something like generic programming requires a lot of
careful thought and design work - not just throwing in the first idea
that comes to someone's mind. If you want to know why "intelligent
macros" aren't in the current proposed language, perhaps that is one of
the answers (along with the answers already mentioned, such as that it
didn't get enough votes). Maybe some people thought it too important to
throw in a half-baked job that would get in the way of doing it better
later. I'm not expressing an opinion on whether the proposal was
half-baked or not. I'm just elaborating on whay the fact that something
is considered important might be reason to take the time to come up with
a good proposal.

--
Richard Maine | Good judgement comes from experience;
email: last name at domain . net | experience comes from bad judgement.
domain: summertriangle | -- Mark Twain

I would like to throw out a thought question:

What is the best way to implement generic programming and generic procedures? What are the trade-offs involved in various approaches? What languages use the best approaches? What improvements could be made in those approaches? What languages do it badly and what are the shortcomings of those approaches?

I'm looking not only for ease and robustness of implementation, but also robustness and ease of use in using the generic programming feature for developing applications in Fortran.

--
Craig Dedo
17130 W. Burleigh Place
P. O. Box 423
Brookfield, WI 53008-0423
Voice: (262) 783-5869
Fax: (262) 783-5928
Mobile: (414) 412-5869
E-mail: <cdedo@xxxxxxxxx> or <craig@xxxxxxxxxx>

.



Relevant Pages

  • Re: Intelligent macros .vs. BITS
    ... Generic programming was older and more ... mature than the fad of inheritance based code when that fad was chosen ... The "typeful" language Haskell might be a better model. ...
    (comp.lang.fortran)
  • Re: Generic Programming - What Is the Best Method? (Was: Intelligent macros .vs. BITS)
    ... What languages do it badly and what are the shortcomings of those approaches? ... I'm looking not only for ease and robustness of implementation, but also robustness and ease of use in using the generic programming feature for developing applications in Fortran. ...
    (comp.lang.fortran)
  • Re: Intelligent macros .vs. BITS
    ... But *NOT* just because that's the current fad that we should ... However, even among strong supporters of generic programming, there is ... I'll defer judgement. ... throw in a half-baked job that would get in the way of doing it better ...
    (comp.lang.fortran)
  • Re: Generic Programming - What Is the Best Method? (Was: Intelligent macros .vs. BITS)
    ... What languages do it badly and what are the ... also robustness and ease of use in using the generic programming feature ... most abstract representations of efficient algorithms. ... Generic programming assumes that there are some fundamental laws that govern ...
    (comp.lang.fortran)
  • Re: How popular is .net and the whole managed code scene?
    ... traditional languages and previous technologies that it is not ... just a fad. ... Java is popular for server applications. ... Productivity add-ins for Visual Studio .NET You can code, ...
    (microsoft.public.vsnet.general)