[mercury-users] Bertrand Meyer's opinion

schachte at cs.mu.OZ.AU schachte at cs.mu.OZ.AU
Wed Aug 23 12:32:27 AEST 2000


Hi Michel,

On 22 Aug, Michel Vanden Bossche wrote:
> In "Where is Software Headed? A Virtual Roundtable" (Computer, Vol. 28,
> No. 8, August 1995), Betrand Meyer says:
> 
>> I do not see much future in the next few years for some approaches that
>> were recently heralded as promising: functional programming, logic 
>> programming, and expert systems (in their application to software). 
>> Some of them will find, or have already found, a niche, and all will 
>> remain useful as part of every software developer's bag of tricks, but 
>> it is hard to see how any of them could fundamentally affect our field 
>> over the next 10 years.
...
> And now, my key question. Besides what's being done or identified, what
> can help invalidate Bertrand's prediction?

Firstly, I think Meyer is probably right.  It probably took C++ at
least 5 years to "fundamentally affect our field" after its first public
release, and that with a big company behind it and being a fairly
incremental improvement on one of the already most popular programming
languages.  I'd be surprised if Mercury caught on any faster than 5
years from now.

But here are a few things that I think will be needed before Mercury
can really catch on, in roughly chronological order:

  o  I suspect any new paradigm now must sell itself as an improvement
     on object oriented programming, not just the successor to it.  So
     rewriting the library using type classes will probably be
     important.  It may also be useful to look for an appropriate
     language enhancement that makes abstract datatypes more formally
     part of the language.  Perhaps some way to make a type *be* a
     module.  I know subtypes are fraught with peril, but they may be
     necessary for OO programmers to be comfortable with Mercury.

  o  A good university-level text will need to be available,
     preferably several.  It will have to be easy for first or second
     year university students to pick up the language in one semester.
     This may mean the langauge will have to be modified, so that
     students can learn it a bit at a time.  Before managers would
     consider using a language like Mercury for a project, they'd have
     to be pretty confident that they'll be able to find good Mercury
     programmers and have their current staff trained to use it.

  o  There will have to be a good native Windows development environment.
     At some point, there will have to be a language standard, and
     several competing compilers available, some commercial.  Ideally,
     one from Microsoft.  Managers are definitely suspicious of any
     university product, and many are probably still suspicious of
     free software in general.

  o  As you mentioned, there will have to be good programming tools.
     The debuggers are a good start, but there will need to be good
     code and documentation browsing tools, GUI builders, and full
     IDEs.  Perhaps there are even some useful tools that would be
     possible or useful for a language like Mercury that don't exist
     for any other language, like editor plugins to help write and
     maintain all the declarations Mercury requires.

  o  There is going to have to be a lot of noise about declarative
     programming, and Mercury in particular, in the press.  Not
     academic journals, but the popular press.  Rags like BYTE and
     Dr. Dobbs.  And a few puffy pieces or at least mentions in mags
     like Fortune and business week.  All the places that have been
     hyping object oriented programming for the last decade.  Before
     something as radical as Mercury can catch on, it will have to be
     seen as inevitable by managers and as pleasant and friendly by
     programmers.

  o  Further performance improvements will probably be necessary, at
     least eventually.  The fewer excuses people can come up with for
     not moving to this new language, the more likely it is to catch on.

-- 
Peter Schachte                     The use of COBOL cripples the mind; its
mailto:schachte at cs.mu.OZ.AU        teaching should, therefore, be regarded
http://www.cs.mu.oz.au/~schachte/  as a criminal offense.
PGP: finger schachte at 128.250.37.3      -- E. W. Dijkstra 

--------------------------------------------------------------------------
mercury-users mailing list
post:  mercury-users at cs.mu.oz.au
administrative address: owner-mercury-users at cs.mu.oz.au
unsubscribe: Address: mercury-users-request at cs.mu.oz.au Message: unsubscribe
subscribe:   Address: mercury-users-request at cs.mu.oz.au Message: subscribe
--------------------------------------------------------------------------



More information about the users mailing list