On 2/19/07, skaller <[EMAIL PROTECTED]> wrote:
> On Mon, 2007-02-19 at 10:44 +0100, Ramon Diaz-Uriarte wrote:
> > On 2/16/07, skaller <[EMAIL PROTECTED]> wrote:
> > > On Fri, 2007-02-16 at 14:49 +0100, Ramon Diaz-Uriarte wrote:
> > > > On 2/16/07, skaller <[EMAIL PROTECTED]> wrote:
>
> > > It takes time and effort to write good docs -- much less to
> > > spout off in an email.
>
> > Sure. No criticism in my email.
>
> There's nothing wrong with criticism, there should be more
> of it :) Just limited resources .. plus it's more fun writing

I'll try being mean and harsh (and of course, continue saying "not
me") next time :-).


> a compiler than documenting it :)
>
>
> > Now, following with the tradition of "it is sooo easy to ask for
> > stuff": my superficial understanding is that distributed, concurrent,
> > and parallel computing using shared memory can be a lot harder and
> > error prone (e.g., "Concepts, Techniques, and Models of Comp. Progr",
> > from van Roy and Haridi).  If at all possible, when/why/how to choose
> > Felix over Erlang (or Oz) and how to complement both (your sentence of
> > "Felix to create ... that Erlang would manage ...") would be something
> > great to have in the docs.
>
> Because it isn't a lot harder, that's crap. Message passing
> is easier to analyse, but some kinds of things will require
> much more complex programs.
>

Please, do not make Van Roy and Haridi responsible for my above
statement. It might just be my lack of understanding.



> Felix provides two kinds of threading: your ordinary
> pre-emptive threads and fibres. Both use channels for
> communication. Channels are actually synchronisation
> primitives not data pipes, but they can and usually are
> used for transfering ownership of data. So that's basically
> message passing.. except the data is in shared address
> space so it's very fast.
>
> Of course you can also use mutexes etc. With fibres this
> kind of things is rarely needed, since they can't be
> pre-empted.
>

Aha. I need to go through this much, much more carefully. But this
looks really mind blowing. Thanks a lot for the comments! Do you know
where I can find a (gentle) introduction to these issues? I actually
think "I just don't get Felix".


> So the actual model is a variant of CSP plus shared memory.
> An arbitrary program isn't easy to reason about .. but
> it is possible to write code which is if you want.
>
> Just as an example -- fibres cannot deadlock!
>
> Hehe! This is a trick statement. The way the model
> is built, if fibres deadlock they're unreachable
> and get reaped by the collector, and so they don't
> exist, and hence can't be deadlocked.
>

That is funny. Sounds a lot like magic, though ...


Thanks a lot again for your comments.

Best,

R.

>
> --
> John Skaller <skaller at users dot sf dot net>
> Felix, successor to C++: http://felix.sf.net
>


-- 
Ramon Diaz-Uriarte
Statistical Computing Team
Structural Biology and Biocomputing Programme
Spanish National Cancer Centre (CNIO)
http://ligarto.org/rdiaz

-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Felix-language mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/felix-language

Reply via email to