[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Occam and WoTUG-20

Øyvind Teig wrote:
> Maybe my system hasn't *really* understood that occam is dead,
> so this would have to be inevitable.

Mine neither. There's more excitement in the occam community now
regarding language developments and compiler porting than there has been
since the mid-80s. At last we'll have shared channels. Maybe the other
features we talked about earlier in the year will get scheduled.

Perhaps these things indicate a language that is struggling to be
useful. Or perhaps one where a bunch of die-hard stalwarts can't let go
of some really good ideas.

I'm an enthusiast of occam, java, and ada (I don't like C++ and I
despise - but use - languages like C and Perl). They all have strengths
and shortcomings. Ada is too big - and there's not much chance of
getting any changes even though it desperately needs them. Tasking in
ada is a joke! Java is exciting but multithreaded programming is still
hard. Occam is undercapitalised and deficient of some standard
constructs - but we can change both these if there's a will.

Over the next ten years, my crystal ball reveals a strongly growing need
for distributed multithreaded programming (well that's the way my work
is going at least). There could be a shakedown (C++ might follow occam
into the dustbin, for example) or there could be new exciting languages
and more proliferation. Time will tell. However, in the shorter term,
KRoC may demonstrate to people they can write serious programs in occam
and solve problems that would be harder by other means. So I support the
occam-for-all project wholeheartedly.

Well that's more than two-pen'orth for now.


PS To recap., here are some musings from earlier in the year, with some
new ones:

        IDEA                :        EFFORT              USEFUL
        ----                -        ------              ------
 ENUMERATED TYPES           :         low                 yes
 DISCRETE RANGED TYPES      :         high                yes
 OPERATOR OVERLOADING       :         low                 yes
 CONVERSION OPERATORS       :         low                 yes
 BASIC DYNAMIC MEMORY       :       moderate              yes
 FULLY DYNAMIC MEMORY       :         high              probably
 POLYMORPHISM               :         dunno              maybe
 TYPED ARRAY INDICES        :       moderate              yes
 BIT PRIMITIVE TYPE         :       moderate             dunno
 MAS CONSTRUCTIONS          :         high               dunno
 INITIALISED DECLARATIONS   :       moderate              yes
 RESULT DECLARATIONS        :       moderate             dunno
 UNION TYPES                :         high              probably
 RECORDS OF CHANNELS        :         high               dunno
 CALL CHANNELS              :         high                yes
 SHARED CALL CHANNELS       :         high                yes
 MODULES                    :       v. high              dunno
 LIBRARIES                  :         high                yes
 DOTS --> UNDERSCORES,      :       moderate      (only for politics)
 RECORD SELECTORS --> DOTS                            
 INDENTATION --> {}         :       moderate      (only for politics)
 U.SCORES IN IDENTIFIERS    :         low               probably
 SEMAPHORES                 :       v. low                no
 SHARED CHANNELS            :         low                 yes
 BARRIER SYNCS              :       moderate            probably
 BUCKETS                    :       moderate             dunno

              Richard Beton BSc MInstP CPhys
      Roke Manor Research, Romsey, Hampshire SO51 0ZN
-------  Standard disclaimer about my own views etc  -------
           See http://www1.roke.co.uk/WHR/WHR.html