Live data from Hacker News

Ballerina Programing Language

ballerina.io

21–30 of 56 posts

Re: Ballerina Programing Language

#21

This is the best landing page/documentation I've seen in a while. The examples with detailed comments are really outstanding.

I totally disagree. After reading the landing page, I have no idea what kind of programming language this is.

Someone else mentioned this is based on JVM. There is no mention of JVM on the homepage. So, is it based on JVM? Or some interpreted language? Or compiled to native code?

"The Network in the Language" What does this mean?

"Sequence Diagrams for Programming" What does this mean?

"Structural, Open-by-Default Typing" Looks pretty standard?

"From Code to Cloud" What does this mean? Just some nice tooling?

"Batteries Included" Like most other languages.

"Developer First" What does this mean? What's different to other languages?

This sounds all like marketing fuzz, without telling actually any information. Really. I have no idea what this language is about.

Is this a competitor to other JVM languages? Or to system languages like C++/Rust/Nim/etc? Or to languages like Go/Erlang? Or to languages like Python/Ruby? And what's special about this language?

mdasen summarized my complaints in a nice way: https://news.ycombinator.com/item?id=22402053

Re: Ballerina Programing Language

#22
post #7

Earlier quoted context omitted.

I looked through examples and I don't see what's so revolutionary about it. This is specialized language suited for more or less one task that has nothing specialized for that task which cannot be rolled in Clojure in a day or two. Challenge me, give one example that can't be done as easily with Clojure.

Generally, the big benefit of not using Clojure is to reduce the probability of having Clojure programmers on the project.

This is offensive. Do you want to mean all Clojure developers are garbage? What technology are you working with? Does your entire community consist of stellar individuals with no faults?

Clojure problems typically start because some member of the team had enough power to convince their manager to do something in Clojure. It is not an organization that typically hires Clojure developers and has already people that know Clojure and can interview Clojure candidates. Clojure projects are typically a byproduct of having developers who are not satisfied with your language (Java most of the time) and try to seek out a better tool for the job.

It is not an inherent problem with Clojure or those people. Most developers need an organization to support them and lacking expertise around them they tend to fail in one way or another.

Programming Clojure requires huge amount of discipline and guidance with regards to the structure of actual code which you don't have when you just had got hooked up on it and red through couple of articles. Lacking the discipline and guidance, the code reflects thinking process and understanding of Clojure by a single, novice developer who has the most power within the project. But that is because of how powerful and malleable lisp is.

Languages like Java force you to use particular solutions to particular problems and have huge amount of public guidance and expectations with regards to program structure which means the code is easier to read and interact with by other developers.

You would do better by, instead of being lazy in your thinking and offensive to other communities, to actually try to use your head and try to understand the problem.

Re: Ballerina Programing Language

#23
post #5

So, the home page makes some big claims, but doesn't link to how Ballerina solves those issues. I'm not saying that it doesn't. I'm saying that it would be nice to have a link to what makes it different for that aspect. For example, "Structural, Open-by-Default Typing". It sounds really interesting, but the image next to it just looks like what you'd get in Go (except for nullability checks), C#, Kotlin, and many oth…

> For example, "Structural, Open-by-Default Typing". It sounds really interesting, but the image next to it just looks like what you'd get in Go (except for nullability checks), C#, Kotlin, and many other languages.

Go types are structural. C# types are nominal.

https://en.wikipedia.org/wiki/Structural_type_system

"Open-by-Default" probably refers to the fact that structural types are more flexible to use.

Re: Ballerina Programing Language

#24
post #9

> Be conservative in what you send, be liberal in what you accept. I can't believe we haven't all learnt the lesson of how much of a bad idea this principle is. Has this guy not heard of HTML and quirks mode?

Only because nobody ever persuaded document authors to be conservative (strictly schema conforming) in what they send.

Many have tried. The problem is, if the page works as intended, there is no benefit in making it strictly conforming.

Re: Ballerina Programing Language

#25
post #9

> Be conservative in what you send, be liberal in what you accept. I can't believe we haven't all learnt the lesson of how much of a bad idea this principle is. Has this guy not heard of HTML and quirks mode?

The principle makes sense for ambiguities in the specification. But input which is unambiguously illegal should be rejected.

Re: Ballerina Programing Language

#26
post #7
post #3

I have followed this language passively for ~1.5 years. I think it's revolutionary, and the big barrier for my adoption is the fact that I do not currently write services for the JVM. But the ability to define services as HTTP/Ingress endpoints, Docker containers, and Kubernetes/Openshift resources natively as part of the language is incredible. Add that to the fact that they have native support for things like tabul…

I looked through examples and I don't see what's so revolutionary about it. This is specialized language suited for more or less one task that has nothing specialized for that task which cannot be rolled in Clojure in a day or two. Challenge me, give one example that can't be done as easily with Clojure.

Static typing

Re: Ballerina Programing Language

#27

This is the best landing page/documentation I've seen in a while. The examples with detailed comments are really outstanding.

I totally disagree. After reading the landing page, I have no idea what kind of programming language this is. Someone else mentioned this is based on JVM. There is no mention of JVM on the homepage. So, is it based on JVM? Or some interpreted language? Or compiled to native code? "The Network in the Language" What does this mean? "Sequence Diagrams for Programming" What does this mean? "Structural, Open-by-Default Ty…

My understanding is that Ballerina has semantics for defining multiple services in the same program, and it “compiles” to a set of containers and cloud configs that allow these programs to talk to each other. So very basically it’s like putting Kubernetes or AWS into a language. But there documentation is pretty unclear as many others have noted so I really doubt my interpretation is precisely accurate.

Re: Ballerina Programing Language

#28
post #22

Earlier quoted context omitted.

Generally, the big benefit of not using Clojure is to reduce the probability of having Clojure programmers on the project.

This is offensive. Do you want to mean all Clojure developers are garbage? What technology are you working with? Does your entire community consist of stellar individuals with no faults? Clojure problems typically start because some member of the team had enough power to convince their manager to do something in Clojure. It is not an organization that typically hires Clojure developers and has already people that kno…

[deleted]

Re: Ballerina Programing Language

#29
post #22

Earlier quoted context omitted.

Generally, the big benefit of not using Clojure is to reduce the probability of having Clojure programmers on the project.

This is offensive. Do you want to mean all Clojure developers are garbage? What technology are you working with? Does your entire community consist of stellar individuals with no faults? Clojure problems typically start because some member of the team had enough power to convince their manager to do something in Clojure. It is not an organization that typically hires Clojure developers and has already people that kno…

Must've stuck a nerve there.

> Do you want to mean all Clojure developers are garbage?

Of course not, many Clojure programmers are excellent at programming in Clojure.

> You would do better by, instead of being lazy in your thinking and offensive to other communities, to actually try to use your head and try to understand the problem.

I don't have to do that, because I'm not using Clojure.

Post reply on HN