Hacker Read top | best | new | newcomments | leaders | about | bookmarklet login

It’s simplicity is also it’s crutch. It lacks so many niche things (like math) that every implementation have their own syntax.


sort by: page size:

It’s too simple and refuses to offer any sort of syntactical sugar. Error handling requires lots of boilerplate. No enumerations. Etc etc.

It's still a vastly simpler language than pretty much any other widely used language out there. Consistency is superseded by pragmatism in the language design.

The language is simple, the implementation is anything but.

It's meh for a language, it's simple which is what they are trying to achieve but it all comes with trade offs like all programming languages. I would say a large portion of a language is how you mesh with the syntax and tooling around it.

The lack of syntax alone puts me off. E.g. Inability to define an operator for composition

All the examples where they're useful are contrived.

And simplicity is an actual goal of computer language design.


Being able to do a trivial hello world doesn't make a language elegant.

At the risk of inviting a flame-war, it's distressing to me that a language this recent, with such a purported focus on simplicity, has design-problems this fundamental

They can simplify code, but they don't simplify the language.

The implementation being clever in parts does nothing for the language itself.

It’s a boring language and I avoid it where I can help it. Its facilities for abstraction are too limited, everything is a loop, if err return, and so on. It’s just not a language I’d use by choice for anything.

It's also rather unwieldy to use, much more so than other dependently typed languages (like Idris).

Sadly, despite having useful-looking properties, I suspect it'll serve as little more than inspiration for others.


I'm not talking about how many features the language has, I'm talking about the endless amount of line noise that you need to accomplish simple tasks.

Most of what the code does is hidden behind ceremony.

Imagine Newtown writing out instructions on how to calculate gravity instead of just writing: F = G((m1 m2)/(r^2))

I really don't understand how a language that can't succinctly express calculus from 300 years ago would be regarded as suitable for complex code.


Those three flaws are brought up repeatedly because they are a sad regression from the current state of the art in programming language construction. It could've been a much nicer language with very little effort, but its designers chose not to do so.

Lack of a formal specification and/or an international standard is the real bummer. That's the biggest disadvantage in comparison to languages like Ada and C.

It's because it was easy to use, and so people adopted it long before realizing just how many features they needed that it doesn't provide (for example, lack of types). "Simplicity" is a double-edged sword because you can't actually eliminate natural complexity; you can only move it around into (hopefully) more convenient / less chaotic forms.

I've been developing https://concise-encoding.org over the past two years with this in mind.


The biggest barrier in my opinion is what most people think is "weird" syntax or the more precisely the absence of it. People are just not used to it. Add to the that the lack of popular libraries for some modern niceties and it really adds to it being unpopular.

To me it's the lack of some functional features for 1-liners that really trip me up. Verbose function declaration, no null-coalesce operator, no ternary operators, stuff like that.

I love the platform and ideals and goals - a simple, lightweight embedding language... but the language details rub me the wrong way.


I don't see how a new language can claim to fast and efficient when it does nothing to encourage data-oriented programming.
next

Legal | privacy