Remix.run Logo
astonex a year ago

Just give me a modern C++ like language with fast compilation, easy to pull in packages, and build tooling. Basically Go with no GC.

pjmlp a year ago | parent | next [-]

Check Odin.

joshlemer a year ago | parent [-]

The language seems to be heavily branding itself as "data-oriented", mentioning it front and center on the website and repo, but never mentions in the docs what makes it data-oriented, or what it even means by that. Is it data-oriented in the Clojure sense, in contrast to "place-oriented"? Or is it data-oriented as in programming with tables of rows, or something else?

dgellow a year ago | parent [-]

https://en.wikipedia.org/wiki/Data-oriented_design

throwaway2037 a year ago | parent | prev | next [-]

How is fast compilation possible with C++-like templates? That seems impossible.

pjmlp a year ago | parent | next [-]

C++ modules, in VC++ and clang/CMake/ninja today.

Add to the potion, binary libraries and extern templates for the common types.

jayd16 a year ago | parent | prev [-]

So redo the templates.

AlotOfReading a year ago | parent [-]

They did, hence concepts and constexpr. Rust has more powerful versions of both in traits and macros.

jayd16 a year ago | parent [-]

Aren't Rust compiles slow as well? I'm suggesting they take a different approach. Are these systems really needed seeing as other languages do without?

AlotOfReading a year ago | parent [-]

Other languages don't do without them, the costs are just worse in Rust (and C++). Go for example consciously tried to avoid shipping generics and was forced to implement them by community pressure. They now pay the same kinds of monomorphization costs as C++ and Rust because the alternatives have greater runtime costs. Go is simply a faster-compiling language overall though and the problem is less noticeable. Macros are similarly ubiquitous in other functional languages, but most of them aren't compiled or meaningfully optimized.

Rust is complex, highly expressive, and does a lot of optimization. None of that's good for compile times. C++ is even worse because of how awful the template abuse gets and the amount of duplicated code that's fed into the compiler from how #includes work.

cemdervis a year ago | parent | prev [-]

Swift

vips7L a year ago | parent [-]

Arc is a GC.

tonyedgecombe a year ago | parent [-]

So is RAII if you squint hard enough.