hare language & carbon language & haxe language

To my knowledge, no Carbon compiler or language environment that actually works has been released on any platform. I think the team has stated that their very optimistic goal for the first 0.x public release is the end of 2026. At that point, the language definition itself will still be experimental, so code written in 2027 will probably have to be changed as the language and tools change. Right now, a toy development environment is public that supposedly (I haven't tried it) can run simple code, but does not support compatibility with C++ code yet.

It is possible that internally, functioning Carbon development environments exist; it is also possible that Carbon code is being used already by non-public groups. If that was true, I wouldn't know about it. And if I knew about it, I would not talk about it publicly.

I know nothing about Hare except the name.
 
To my knowledge, no Carbon compiler or language environment that actually works has been released on any platform. I think the team has stated that their very optimistic goal for the first 0.x public release is the end of 2026. At that point, the language definition itself will still be experimental, so code written in 2027 will probably have to be changed as the language and tools change. Right now, a toy development environment is public that supposedly (I haven't tried it) can run simple code, but does not support compatibility with C++ code yet.

It is possible that internally, functioning Carbon development environments exist; it is also possible that Carbon code is being used already by non-public groups. If that was true, I wouldn't know about it. And if I knew about it, I would not talk about it publicly.

I know nothing about Hare except the name.
I works fine on linux ,see,
I was however unable to bind to fltk.
Could not find docs how to do something different then standard library.
Meaning very limited.
But a better C++ we all want, but seems not available.
 
I used C++ professionally for about 20 years. Wrote 100K+ lines in it. OO is great for simulations (hence Simula67) but in general it is just one of many paradigms and as a multi-paradigm language C++ is not very good. Lisp and Scheme are truly multi-paradigmatic but I never quite liked Common Lisp and even the best Scheme implementations are not very performant.

C++ has continued evolving and adding more features, some are pretty good, but the syntax (& semantics) has gotten uglier and uglier. I find it to be far too complex for what it provides. Currently there does not seem to be a single language that is good for everything one might wish to program. For writing a kernel you wouldn't want a garbage collector but just that one decision can add a lot of complexity.

BTW, I have written multiple simulators in C++, the last one for a quite fancy Layer 2 switch (the real ones could sell for a million each about 15 years ago). In my case familiarity (with C++) has definitely bred contempt!
 
C++ is a good language. But you are allowed to abuse it and shoot yourself in the foot. A good language should prevent this.
A good language is
But you need ugly wrappers.
 
Note. Carbon language does not have a string class in it's library. So as current is close to useless.

That looks more like that language having it but the implementation installation being broken.
 
Alain De Vos you seem to have great knowledge of programming languages. Trying anything new that comes along.

What do you like to write code to do? I have program ideas in my head but without the knowledge to implement them.

You have skills but what do you use them for? Do you have a grand product you want to author? A frameworks perhaps?

Why are you searching and not building?
 
I did not mean to insult you I was just wondering what your end goal is.

If you asked me the same type question:
You buy 30 computers a year. What are you going to do with them all?
I would just shrug and say its my hobby.
 
C++ is a good language. But you are allowed to abuse it and shoot yourself in the foot. A good language should prevent this.
Shooting yourself in the foot is a very real incentive on "what not to do".

Sometimes a language constrains what you can do with it, which means it can take a lot of "thinking" out of programming.
Trying to force a language into a domain it's not written for causes issues.
I don't think anyone would write a a 10G ethernet device driver in Java because that's not what Java is good at. If you did you would write a library in C that has a Java interface so your Java app with pretty UI/UX can actually talk to the hardware.

Any language can be abused (forced into domains it was not designed for).

My opinion:
A good language will let you shoot yourself in the foot because you did something stupid, BUT will also provide enough information (stack dump, error message, compiler/tools) so you can understand what you did and how you can prevent it in the future.
 
But you need ugly wrappers.
That is the price you pay. Being an engineer is about compromise. You can either use an unsafe language to use an unsafe library directly which is quick and elegant. Or you can use a safe language but go through bindings layers against the unsafe library.

You can never have both. There are only three levels:
  1. C - direct access (~20% safe) zero bindings
  2. C++ - compromise (~75% safe) optional bindings
  3. i.e Rust - bindings jungle (~95% safe) mandatory bindings
 
That is the price you pay. Being an engineer is about compromise. You can either use an unsafe language to use an unsafe library directly which is quick and elegant. Or you can use a safe language but go through bindings layers against the unsafe library.

You can never have both. There are only three levels:
  1. C - direct access (~20% safe) zero bindings
  2. C++ - compromise (~75% safe) optional bindings
  3. i.e Rust - bindings jungle (~95% safe) mandatory bindings
My experience has been that one can use an unsafe language, safely. You just need to be very careful and take advantage of every tool to help you.
Things like lint, things like setting "warnings are errors" compiler flag. That one gets you at least analysis of the unsafe bindings (things that may lead to stack overflow and other issues).

It's great when a language forces you to be safe but it still needs to allow you to do "what you need to do".
 
then i will write a web application in dlang+vibe.d .

Build web apps with Vibe.d | Vibe.d tutorial



Example dlang + vibe.d
 
Back
Top