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

    From Compl Yue@21:1/5 to All on Mon Jan 20 05:09:43 2020
    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

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Thoai Nguyen@21:1/5 to Compl Yue on Mon Feb 3 04:40:16 2020
    On 2020-01-21 00:09, Compl Yue wrote:
    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


    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,

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Compl Yue@21:1/5 to Thoai Nguyen on Wed Feb 5 06:57:55 2020
    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

    On Monday, February 3, 2020 at 1:40:53 AM UTC+8, Thoai Nguyen wrote:
    On 2020-01-21 00:09, Compl Yue wrote:
    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


    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,

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)