Live data from Hacker News

Cell Lang: Why yet another programming language?

cell-lang.net

1–10 of 126 posts

Re: Cell Lang: Why yet another programming language?

#4
So basically an actor system with relations between actors, reactivity and automatic persistence.

Very interesting concept!

Although I do wonder if this couldn't be implemented as a library for an existing language.

Doesn't seem like it is actively developed though, the compiler repo hasn't seen updates since November and the runtime repo since 2018.

Re: Cell Lang: Why yet another programming language?

#5
I too am disappointed by the lack of innovation around state management in applications. But I don't think this solves the problem.

A lot of developers think what we need is additional abstraction on top of the way data is stored and retrieved, to remove all the annoying CRUD boilerplate that goes into building an app. This seems to make sense because devs think in terms of simple examples like TODO lists.

But in a real production application with heavy scale, you need a lot of low-level control over precisely how state is managed. Tweaking a SQL query or table structure can be the difference between minutes of latency and milliseconds.

I'm not sure what the path forward is here, but I hope smart people keep thinking about it.

Re: Cell Lang: Why yet another programming language?

#6
It's frustrating that innovators are constantly having to justify "why yet another". Folks should just be able to freely innovate without fear of getting spammed with xkcd#927. You wanna make yet another programming language, compiler, JSON-alternative, container format, or trivial FTP+SVN killer, go for it! This is how we innovate.

Re: Cell Lang: Why yet another programming language?

#7
post #4

So basically an actor system with relations between actors, reactivity and automatic persistence. Very interesting concept! Although I do wonder if this couldn't be implemented as a library for an existing language. Doesn't seem like it is actively developed though, the compiler repo hasn't seen updates since November and the runtime repo since 2018.

temporal.io = durable actors for microservices workflows

Re: Cell Lang: Why yet another programming language?

#8
> The state of the application can be partitioned in separate components (called automata) that do not share any mutable state and can be safely updated concurrently.

This is the right direction! Pure computations on (somewhat) centralized data has proven to be very resilient to bugs. It's kind of like how React organizes its programs.

I like how Cell is tackling this problem at the language level. A language's programs will (in practice) often be a reflection of what the language makes easy and what it makes hard, so designing a language to handle this complexity would be a boon to the world.

Pony also has this via its `iso` keyword and actors [0]. Cone is also exploring this notion, with an interesting actor/async/await hybrid [1].

> The first one is the ability to "replay" the execution of a Cell program. One can easily reconstruct the exact state of a Cell program at any point in time. Obviously that's very useful for debugging, but there are others, more interesting ways of taking advantage of that.

This sounds like Vale's "Perfect Replayability" feature [2] which captures all IO for a program and deterministically replays it. It's an incredibly useful feature, and I hope Cell exposes it well!

[0] https://tutorial.ponylang.io/reference-capabilities/referenc...

[1] https://cone.jondgoodwin.com/

[2] https://verdagon.dev/blog/perfect-replayability-prototyped

Re: Cell Lang: Why yet another programming language?

#9
>Then there's support for reactive programming, which is still in its infancy

State management for UI I would think should be a first class objective rather than 3rd on the todo list. See SwiftUI for something evolving toward this direction.

>The best way to illustrate the advantages of functional/relational programming over OOP is through a case study

No, the best way is to be right up front with a real life common problems and code examples that make life better. I’d prefer not to read this many dry theoretical pages before seeing any of those.

Re: Cell Lang: Why yet another programming language?

#10
I came across cell-lang a few years and really liked the ideas in it. It does a lot of the things that was proposed in Out of the Tar Pit, which is probably the paper that has influenced my opinions about programming the most

For applications that don't have high performance requirements I could see this getting adopted - automation and IoT devices are a couple of areas that spring to mind

Post reply on HN