Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Goroutine ported to Haskell, is the marriage of Go routine and STM done right?

14 views
Skip to first unread message

Compl Yue

unread,
Jan 20, 2020, 8:09:44 AM1/20/20
to
Hello Haskellers,

I'm learning to be one of your Haskellers too, and recently got this piece done:

https://github.com/e-wrks/edh#program-concurrency-and-data-consistency-as-a-whole

Best regards,
Compl

Thoai Nguyen

unread,
Feb 2, 2020, 12:40:53 PM2/2/20
to
Hey Compl,

Firstly, nice effort!

What is the benefit of Edh vs an other mainstream hybrid language (such
as Scala)? What are the language's primary use cases?

What is your response to xkcd #927?

https://xkcd.com/927/

Cheers,

Compl Yue

unread,
Feb 5, 2020, 9:57:58 AM2/5/20
to
Thanks for asking!

Specifically comparing with Scala, I think Edh brings an add-on option for Haskell lovers, similar in the sense that Scala be an add-on option for JVM lovers, but not in functionality or philosophy sense of course.

Myself is using Edh recently, particularly to find ways to compose temporal events better, that to express the (mostly prototyping) event consequence logic easier (in Edh for human performance), and run the emulation + assessment faster (in Haskell by GHC for machine performance). Polymorphic events should be composed easier, as arbitrary go routines (and for loops) can be started with access to shared, mutable entities, events can be posted to arbitrary sinks from anywhere (i.e. no producer abstraction, anything can produce any event), event sinks can be drained (shared broadcasting fashion) from anywhere with a (possibly go-) for loop (i.e. no consumer abstraction, anything can do a local loop over arbitrary event streams), finally with event reactor procedure, which runs interleaved with normal event processing transactions on the same thread, it can terminate the thread safely in responding to certain event conditions, serialization is very straight forward, almost no need to think about it.

I'm not aware of other frameworks can do above similarly.

I sensed the humor behind xkcd #927, while myself is not seeking to establish a new or renewed standard, I think I just can't stop experimenting with things and sometimes happen to get some creative results.

I don't personally like the idea of standardization, I'm more comfortable in a "Dynamic Society" than a "Static Society" as described in https://beginningofinfinity.com/ , met with Haskell not long ago made and is making me happier, I think I'll stick around.

Cheers,
Compl
0 new messages