Live data from Hacker News

Pony: An actor-model, capabilities-secure, high-performance programming language

ponylang.io

101–110 of 284 posts

Re: Pony: An actor-model, capabilities-secure, high-performance programming language

#101

Earlier quoted context omitted.

I think you only need one queue per actor? And then one worker per CPU core? I believe that how Erlang does it, and do millions of actors without any issues...

Yes, but now you have contention on the queue.

The way Erlang does it is to use buckets so it looks like a single queue to the user code but really is more like multiple queues behind the scene. Scales extremely well. It's certainly not "just moving a pointer to a piece of shared memory" though...

https://www.erlang.org/blog/parallel-signal-sending-optimiza...

Re: Pony: An actor-model, capabilities-secure, high-performance programming language

#102
post #87

Earlier quoted context omitted.

If the syntax is not important, that would mean coding in whitespace or malboge would be as easy as coding in python

[flagged]

Good faith argumentation, or really argumentation in general, went out the window when you started treating whether syntax matters (for this language and in general) as a universal truth / (binary) logical statement rather than just an opinion.

Re: Pony: An actor-model, capabilities-secure, high-performance programming language

#104
post #45

Without wanting to derail the conversation too much. Its original designer, Sylvan Clebsch, is nowadays working at Microsoft Research on languages like Verona [0], the last paper he contributed to, which has Guido as well among the collaborators, is about adding regions to dynamic languages, using Python as example implementation, https://www.microsoft.com/en-us/research/publication/dynamic... [0] - https://www.micro…

Is Verona still receiving attention? Seems like a quiet project.

Last I chatted with Tobias Wrigstad, work is still happening on Verona.

Re: Pony: An actor-model, capabilities-secure, high-performance programming language

#105
post #21

Earlier quoted context omitted.

Yea but the syntax looks like a mix of Python and JavaScript. By just seeing that I know I don’t want to use it, by seeing the code up front I know that I don’t want to keep reading what ever rationalizations they have to justify the existence of this language. So by seeing the syntax up front I can save a lot of time because in a world where there are many languages that do the same thing it really boils down to usi…

> in a world where there are many languages that do the same thing it really boils down to using the one with the syntax that you like the most Wat? If all languages were just syntax re-skinning, we really wouldn't need more than one compiler backend... Generally the semantic differences are much more important. Rust isn't interesting for its syntax, it's interesting for its ownership rules and borrow checker. Erlang…

You say that but I will never use Rust because of it's awful syntax, I'll stick with C/C++ and be happy and not miss out on anything. I don't know much about erlang so I have no comments on it.

Re: Pony: An actor-model, capabilities-secure, high-performance programming language

#106

> Deadlock-Free: This one is easy because Pony has no locks at all! So they definitely don’t deadlock, because they don’t exist! This really annoys me every time I read Pony description. What does deadlock free even mean here? Deadlock-free is typically the property of an algorithm, not a language. Does pony guarantees forward progress in all cases? Does it means that if I tried to implement a python interpreter in P…

> Does it means that if I tried to implement a python interpreter in Pony it will statically reject the implementation?

How could that be true? You'd be emulating the language particularities, so deadlocks would be just virtual states. Your interpreter itself being free of deadlocks doesn't mean it cannot represent them.

It's like thinking that you cannot write e.g. console emulators in Rust, because people typically ship unsafe code to consoles, yet Rust enforces memory safety. Yes, it does enforce it - so you'd be representing unsafe accesses instead, rather than actually doing them.

Re: Pony: An actor-model, capabilities-secure, high-performance programming language

#107

I wish these language websites would put an example of some code right there on the homepage so I can see what the language "feels" like. I finally found some code in the tutorials https://tutorial.ponylang.io/getting-started/hello-world

Same impression. I was reading several pages with "Interesting.. interesting.. interesting.. but where is the code?". First code I managed to find was a Github repo with examples [0], and just now trying to follow the click path that led me to it, couldn't find it anymore. I looked up the link from my browser history.

[0] https://github.com/ponylang/ponyc/tree/main/examples

Re: Pony: An actor-model, capabilities-secure, high-performance programming language

#108
post #49

Earlier quoted context omitted.

For Pony in particular, the syntax is not important ... it's simply not the point of the language.

[flagged]

This is textbook no true scotsman fallacy, you're aware, right?

Re: Pony: An actor-model, capabilities-secure, high-performance programming language

#109
I'm going to join the choir saying that languages need a concise description of what makes them special easily accessible — but while syntax is important, with a language like Pony (where the cool stuff is in the semantics), the cool semantics should be upfront.

It seems, from some skimming of the first like 10 pages of the guide, that Pony is an object-oriented language with actors, and a built-in concept of mutability of references. What kind of references are there? You say that deadlock is impossible; how — do you have session types or something? You say that nulls don't exist; how — do you have linear typing? How do you express capabilities?

Essentially, give me a one-page overview of the static and dynamic semantics (i.e. type system and runtime semantics) that gives me all I need to know about this language to decide whether I want to learn more about it.

The language looks cool, but all documentation I've seen so far seems to assume that the reader doesn't even know what static typing is. To get knowledgeable people interested, I think it's useful to have a pitch that appeals to people who are already familiar with a bunch of languages.

Re: Pony: An actor-model, capabilities-secure, high-performance programming language

#110
post #43

Earlier quoted context omitted.

[flagged]

[flagged]

> Most people visiting such websites are programmers who are more often than not busy as all hell.

Apparently not too busy to visit HN and post shallow dismissals.

I agree with GP. Not everything is for everyone and expecting every project to cater to your very specific needs is rather entitled. If you're not interested, feel free to move on - I do that all the time for most of the content on here.

Post reply on HN