Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I wish there was a clarification of the differences between the “Dart plan” and the “TypeScript plan”. If I had to guess I’d say the Dart approach is a whole new language that transpiles to C++ while the TypeScript plan is one that augments the current language with useful additions.


> Both plans have value, but they have different priorities and therefore choose different constraints… most of all, they either embrace up-front the design constraint of perfect C++ interop and ecosystem compatibility, or they forgo it (forever; as I argue in the talk, it can never be achieved retroactively, except by starting over, because it’s a fundamental up-front constraint).

> cppfront is on the TypeScript plan:

> full seamless interop compatibility with ISO Standard C++ code and libraries without any wrapping/thunking/marshaling,

> full ecosystem compatibility with all of today’s C++ compilers, IDEs, build systems, and tooling, and

> full standards evolution support with ISO C++, including not creating incompatible features (e.g., a different concepts feature than C++20’s, a different modules system than C++20’s) and bringing all major new pieces to today’s ISO C++ evolution as also incremental proposals for today’s C++.


Yeah, the whole article rests on this premise, but does not explain it. I guess that's behind the "timewall" of the talk?


Yeah you really have to watch the talk video to understand the article. Which is a time sink but I felt it was worth it


It's about 100% compatibility and interop


Dart compile to JavaScript, TypeScript like stated above augments JavaScript, and transpiles also when needed.


C+++


[&] { auto D = C; C += 2; return D; }()


Dis you, Walter?


Lol, this would imply that D is the old C, so I doubt Walter would write this. :)

I should have just called the variable oldC.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: