[vox] Who thinks Java is cool?

Bill Broadley bill at broadley.org
Fri Jun 17 19:08:46 PDT 2011


On 06/17/2011 05:15 PM, Brian Lavender wrote:
> On Fri, Jun 17, 2011 at 11:00:54AM -0700, Norm Matloff wrote:
>> I think it's fair to say that it is a fact that shared-memory code is
>> simpler, i.e. takes up fewer lines of source code.
>>
>> But is simpler clearer?  That is absolutely a matter of taste.
>>
> 
> But isn't there the ability to analyze for correctness the following
> non-functional requirements. I mean real parallel problems.
> 
> boundedness, deadlock, safeness and liveness
> 
> It seems to me that one can use a PetriNet analyze the state space for
> correctness. Yet, the state space grows incredibly fast. The PIPE tool
> is a tool that does just that.
> http://pipe2.sourceforge.net/

That all sounds good, but the reality is that it's not practical on
interesting real world problems that are too complicated to be practical
with this approach.

> Erlang has low thread creation overhead and immutability of variables,
> so it appears that it is easier to analyze. It seems Erlang uses 
> messages, has low thread creation overhead, and variables are immutable,
> a model to analyze.

Erlang is interesting, I watched a few videos introducing it.  I'm all
for cheap threads, avoiding locks via message passing, etc.  Seems like
at least for now it's popular/useful for telecom where reliability is of
the upmost concern and programmer cost is of lessor concern.  The
problem in HPC is that most codes live a long time, depend on other
codes/libraries/file formats/frameworks/published papers/algorithms and
are slow to move to new platforms.  Even GPUs that have offered fairly
huge improvements (depending on what you are doing) have only now slowly
starting to gain market/mind share.  I think this last top500 list was
the first one with a noticeable number of clusters having GPUs.  So even
the huge improvements with GPUs and a very C like approach (compared to
erlang) the movement has been slow.

Not sure I've come across anyone that's become proficient in erlang,
quite a few researchers I know (and the related grad students, postdocs,
and visiting researchers) have been taking up Python.  Python's not
fast, but it does make rather efficient use of programmer time and I
suspect that's the number one bottleneck in many situations.



More information about the vox mailing list