Remix.run Logo
swyx 3 hours ago

for those (like me) completely new but interested in new programming languages - can you or similar minds summarize the current appeal?

zem 3 hours ago | parent [-]

it's an evolutionary (as opposed to revolutionary) language; it is in many ways a reimagining of c++ based on decades of observing the latter's flaws and weaknesses in the real world. if you're in the c or c++ ecosystem already you will likely find D a pleasant set of improvements to c++.

WalterBright 3 hours ago | parent [-]

For example, C and C++ still cannot compile this:

    int foo() { return bar(); }

    int bar() { return 3; }
vips7L 3 hours ago | parent [-]

Is it because bar is defined after foo?

WalterBright 2 hours ago | parent [-]

Yes.

It has deleterious consequences. One solution is to add a forward declaration, which is the kind of busywork a language is supposed to eliminate.

Another is to reverse the natural order of functions, with the implementation functions at the top and the interface of the module at the bottom.

After all, do you read a website from top to bottom or bottom to top?