Live data from Hacker News

Proto Actor – Fast distributed actors for Golang and C#

proto.actor

11–20 of 47 posts

Re: Proto Actor – Fast distributed actors for Golang and C#

#11

.NET and Go are a weird pairing, especially since the library isn't actually "cross-platform." It's two separate implementations. I wonder what the impetus was to develop this library on those two particular platforms, especially since there's already Akka.NET and most people can't shut up about how much they love Goroutines as a concurrency primitive.

I think for a communication framework cross-platform has a different meaning then for a simple program or library. I would interpret cross-platform here as "interoperable between platforms", or I can connect one Actor on platform A to another Actor on platform B. IMHO that's something really desireable, because it doesn't one to using a single programming language on a bigger distributed system.

Re: Proto Actor – Fast distributed actors for Golang and C#

#12

We should be really skeptical of (or perhaps we could charitably say, "We should contextualize these,") speed claims. Akka does well in benchmarks too, until you put significant memory pressure on the VM and find it handles less gracefully under load than a more JVM-natural approach using approaches in java.util.concurrent. Actor-based approaches with hundreds of thousands of actors are really amazing, powerful and o…

My favorite conference talk is about the multiple facets of Erlang that combine to make it such a great language. Take an opinionated language, an opinionated VM, and a focus on a specific problem space, and magic happens.

Take one or two features from Erlang into another language, and you have meh.

Re: Proto Actor – Fast distributed actors for Golang and C#

#13

We should be really skeptical of (or perhaps we could charitably say, "We should contextualize these,") speed claims. Akka does well in benchmarks too, until you put significant memory pressure on the VM and find it handles less gracefully under load than a more JVM-natural approach using approaches in java.util.concurrent. Actor-based approaches with hundreds of thousands of actors are really amazing, powerful and o…

My favorite conference talk is about the multiple facets of Erlang that combine to make it such a great language. Take an opinionated language, an opinionated VM, and a focus on a specific problem space, and magic happens. Take one or two features from Erlang into another language, and you have meh.

I think the Actor paradigm is valuable as a modeling tool and is widely dismissed these days by arguments I don't think are actually very valid.

But what doesn't work is trying to slavishly copy the Erlang/Pony style without those considerations.

Re: Proto Actor – Fast distributed actors for Golang and C#

#14
post #2

I am interested and I will certainly read the Go version of the documentation, but the .NET of the docs are showing Go code instead. http://proto.actor/docs/dotnet/hello%20world

Yeah I was going to mention this as well. Wanted to look at C# code and kept finding the Go code in the Docs.

Re: Proto Actor – Fast distributed actors for Golang and C#

#15
post #2

I am interested and I will certainly read the Go version of the documentation, but the .NET of the docs are showing Go code instead. http://proto.actor/docs/dotnet/hello%20world

And im getting bunch of 404s for .net docs. Which means its not really a serious project

Re: Proto Actor – Fast distributed actors for Golang and C#

#16

We should be really skeptical of (or perhaps we could charitably say, "We should contextualize these,") speed claims. Akka does well in benchmarks too, until you put significant memory pressure on the VM and find it handles less gracefully under load than a more JVM-natural approach using approaches in java.util.concurrent. Actor-based approaches with hundreds of thousands of actors are really amazing, powerful and o…

My favorite conference talk is about the multiple facets of Erlang that combine to make it such a great language. Take an opinionated language, an opinionated VM, and a focus on a specific problem space, and magic happens. Take one or two features from Erlang into another language, and you have meh.

Considering the production system that the Erlang VM has been deployed to(and the length of time it's existed and thrived) it's hard to make an argument to re-invent it in another language.

If that's what your domain space needs, use the BEAM and find a way to talk to it for the parts that you can't move to Erlang.

Re: Proto Actor – Fast distributed actors for Golang and C#

#17
post #15
post #2

I am interested and I will certainly read the Go version of the documentation, but the .NET of the docs are showing Go code instead. http://proto.actor/docs/dotnet/hello%20world

And im getting bunch of 404s for .net docs. Which means its not really a serious project

Tried to click on the "Books" link and got a 404. I get the feeling they really aren't ready for visitors yet.

Re: Proto Actor – Fast distributed actors for Golang and C#

#18

We should be really skeptical of (or perhaps we could charitably say, "We should contextualize these,") speed claims. Akka does well in benchmarks too, until you put significant memory pressure on the VM and find it handles less gracefully under load than a more JVM-natural approach using approaches in java.util.concurrent. Actor-based approaches with hundreds of thousands of actors are really amazing, powerful and o…

Channels will be a better fit inside .NET?

>powerful and often simpler than equivalent channel based systems, conceptually

Without true experience with any of agents/channels, what make it simpler? I read the GO and compare with Actors in F# or Erlang and for me it easier to understand channels. Mainly because are typed on the data.

Re: Proto Actor – Fast distributed actors for Golang and C#

#19
post #9

Most of my non trivial goroutines are organized like this: func actor_foo(things) error { set_up_stuff() defer clean_up_stuff() for { select { case msg := I recognize there is more to the actor model than just message loops, but I found that an explicit for-select-switch results in better overall readability.

Is signals your "done" channel?

Re: Proto Actor – Fast distributed actors for Golang and C#

#20

Earlier quoted context omitted.

My favorite conference talk is about the multiple facets of Erlang that combine to make it such a great language. Take an opinionated language, an opinionated VM, and a focus on a specific problem space, and magic happens. Take one or two features from Erlang into another language, and you have meh.

Considering the production system that the Erlang VM has been deployed to(and the length of time it's existed and thrived) it's hard to make an argument to re-invent it in another language. If that's what your domain space needs, use the BEAM and find a way to talk to it for the parts that you can't move to Erlang.

It's not hard to justify; that's laughable. It's simple redundancy!
Post reply on HN