On 2/20/07, skaller <[EMAIL PROTECTED]> wrote:
> On Tue, 2007-02-20 at 12:24 +0100, Ramon Diaz-Uriarte wrote:
>
> > > > 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.
>
> It's like saying functional programming is better than
> imperative programming. That's crap for the same reason.
>
> They're actually equivalent .. FP is better suited for
> some things, and imperative for others .. which is why
> most FPL's give you both. Even Haskell has its monadic
> style .. which demonstrates the equivalence.
>
> There's no doubt functions are better understood than mutations,
> but that's a weakness in research being studied now.
>
> FPLs usually have multiple features. For example some
> people would say declarative style was good, and FPL's
> provide that. As does logic programming. Even imperative
> systems provide declarations.. and what is a regular
> expression but a declarative form of what is usually
> considered an imperative operation (executing a
> state machine)?
>
> The idea in Felix is as for C++: to provide the programmer
> several techniques and let them choose.
>


Thanks, I appreciate the detail.


>
> > > 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".
>
> Very little documentation exists for the cooperative multi-tasking
> system.
>

I'll wait then :-).


> >
> > > 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 ...
>
> It just dropped out of the model.
>
> Felix is basically an operating system: it has a scheduler,
> channels, and kernel calls (service requests).
>
> Apart from the fibres and your ordinary pthreads
> (both with channels), it also does asynchronous I/O.
>
> Basically if you read a socket, your fibre blocks ..
> but the pthread it is in doesn't. Async I/O is standard,
> and optimised for your OS.
>


This is really neat!! And seems quite different from most anything
else I had heard about! I'll keep my eyes open.


Thanks,

R.

> Again .. not many examples of how to do this .. especially
> as the interface is being changed (to use typeclasses).
>
>
> --
> 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
Felix-language@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/felix-language

Reply via email to