Live data from Hacker News

Cell Lang: Why yet another programming language?

cell-lang.net

71–80 of 126 posts

Re: Cell Lang: Why yet another programming language?

#71
> and how tedious and time consuming it often is to implement even trivial things like sending data from the client to the server and vice-versa.

Let's be clear here, the complications there are as follows:

1. Authentication and permissions in regard to the end user who is making the change or fetching the data. (E.g. internal web app, the AWS hosted database has no knowledge of my corporate AD accounts)

2. Authentication/permissions of the service/software that is talking to the database

3. The crap tons of network problems and errors that can occur.

4. Dealing with other possible errors, such as malformed input, or data not being present, data being stale, write conflicts, etc.

5. My backend service is running in a private cluster and my DB is running in a different private cluster.

6. My backend service is running in a private cluster and because of that the nifty subscription DB engine can't try and reach out to reconnect to my service if something goes wrong with the connection because there isn't a routable IP address.

Writing data to a table isn't the problem!

Re: Cell Lang: Why yet another programming language?

#73
post #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.

When people write "why yet another", they usually mean "why this one specifically". And that's the case here, where the author lists what they think are the weaknesses of the state of the art, and explains why they think their innovations help with these problems. Innovation on its own isn't particularly interesting - I want to know why the author is innovating.

My Bayesian priors want to know more about the author.

Re: Cell Lang: Why yet another programming language?

#74
post #28

Earlier quoted context omitted.

I know some people are afraid of change and competition, but I'm thrilled everytime someone shares their new language or library. I don't have to learn or use them all, but it's great to basically have unlimited research and approaches to skim on github/gitlab/etc.. for any language and any problem.

Programming languages can be similar to bacterial DNA. Even if the language never gains broad acceptance, parts of it may be incorporated into other languages.

I like to think of it like music. For each Nirvana type band there needed to be many Pixies and Melvins type bands to influence them.

Re: Cell Lang: Why yet another programming language?

#75

Earlier quoted context omitted.

Languages that rely on the user creating their own language constructs suffer from a balkanization of the language - each team creates their own language, and cannot share code. This is why D does not have a macro preprocessor.

I agree it's much easier to make a mess, but I can see doing it the right way being extremely powerful. One (slightly contrived) example is javascript's different (sub?) languages. JSX, await/async, typescript, pre-processors, etc. It would be best practice to pull in popular versions of these things as opposed to rolling your own. However, I also don't think there's much issue with some custom languages as part of a…

With great power comes great responsibility, and unfortunately relying on everyone to be responsible doesn’t scale.

Re: Cell Lang: Why yet another programming language?

#76
When I clicked on the page I wanted to see an example and know if the language is meant for someone like me

I saw a huge page and clicked on links to find more pages just as big. I figure it's not for me because I love mini examples and low level and saw nothing like that.

So I wanted to say, you're probably not targeting me but make sure whoever you are targeting will know it's for them based on your site. No matter how nice the page looks, it's a large page and it's hard to know who it's for at a glance

Re: Cell Lang: Why yet another programming language?

#77
post #71

> and how tedious and time consuming it often is to implement even trivial things like sending data from the client to the server and vice-versa. Let's be clear here, the complications there are as follows: 1. Authentication and permissions in regard to the end user who is making the change or fetching the data. (E.g. internal web app, the AWS hosted database has no knowledge of my corporate AD accounts) 2. Authentic…

I think a more charitable interpretation would be that they're highlighting how much work has gone into that area (web server frameworks come to mind), compared to how little work they've seen on cleaner techniques and language assistance for managing local state.

That's how I read it at least, reasonable interpretations may differ.

Re: Cell Lang: Why yet another programming language?

#78

When I clicked on the page I wanted to see an example and know if the language is meant for someone like me I saw a huge page and clicked on links to find more pages just as big. I figure it's not for me because I love mini examples and low level and saw nothing like that. So I wanted to say, you're probably not targeting me but make sure whoever you are targeting will know it's for them based on your site. No matter…

It has a link labelled "Introductory example" at the top left of the linked page. ...in the section called "Start Here". I'm not sure how much easier they could make it to see some example code with detailed explanations.

Re: Cell Lang: Why yet another programming language?

#79
post #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 progr…

I heartily recommend you take a look at Elm if you find this interesting.

Re: Cell Lang: Why yet another programming language?

#80
This is really great, because it touches on the concepts of hardware design. I've thought a lot about this myself, and I'm honestly surprised to see someone else discussing this. Maybe I'm way out of my depth here, but the idea of stateful programming doesn't actually fall under the paradigm of sequential programming (think single threaded programming.) We all like sequential programming for the same reasons we like linear signal processing and euclidean geometry. When things break those paradigms, we of create mental models (transformation functions) to try to emulate it back in the linear world where the math is easier (for the most part, I'm not too well versed in those subjects. It's more of an analogy.) And I think that's what this language is trying to do, except for certain concepts of non-sequential programming.

Now I sort of disagree with the author when they state that no high level language exists for stateful programming, because a HDL (used for designing chips and programming FPGAs) is exactly this. Now is System Verilog a high level language? Maybe not, maybe the author is right.

Interestingly enough, a lot of hardware blocks (think like a ethernet controller) use a special purpose hardware based state machine to control and manage the link status. While this is less flexible and less programmable than a CPU (which is also a state machine at it's core,) it uses far less power.

You can think of a CPU as a state machine that can emulate other state machines (though that's probably not a great way of thinking of a CPU because it can do many other things.) However, an FPGA can do it far more efficiently, but it's a pain in the butt to program. Now I'm not suggesting we do everything on FPGAs, but as we start to run up against the physical limitations of speed and transistor density, I think it's good to think about other paradigms of computing and how we can more efficiently compute things.

Post reply on HN