Serving the Quantitative Finance Community

 
User avatar
katastrofa
Posts: 7440
Joined: August 16th, 2007, 5:36 am
Location: Alpha Centauri

Re: Google's Carbon

August 4th, 2022, 7:27 pm

Embarrassing display of smear and mockery towards one person, for lack of better arguments, compounded by elitism.

If the existence of a large legacy code base becomes the main or the only reason to convince people to learn C++, while its issues are not fixed, the generational turnover will kill it anyway, because maintaining it will be more painful and costly than rewriting it, in a new language.
You are projecting. Your words, not mine.  I think you miss the point.

 main or the only reason to convince people to learn C++
nah; you don't know C++?
Flexibility and speed. C++ expects a conscious programmer. Makes a casual programmer feel unsafe. Also, people often think there's something wrong with C++, while it's them doing it wrong. My impression after watching some Chandler presentations (he's been banging on about it for almost a decade).

Anyway, everybody knows Google just wants control.
 
User avatar
GiusArg
Posts: 17
Joined: January 26th, 2022, 5:35 pm

Re: Google's Carbon

August 4th, 2022, 8:05 pm

Maybe because I'm new here and not used to what is meant to be a lightweight banter, but where he got his degree, and indeed, whether he got one or not, is completely irrelevant, for example, even assuming that he is introducing his own single-handed project (which is not).

Many of the above mentioned languages have not been designed to be system programming languages, they play a different game, and nevertheless, in some cases, they have succeeded in their game, often taking over a big share of what was (or could have been) part of C++'s domain of applications.
Rust is gaining traction and it's increasingly backed by big tech companies, which, like it or not, can make the difference.
As of Carbon, again, it doesn't compare with all those languages, as it's being designed to import and use  C++ legacy codebases.

Technologies evolve, platform cease to be supported and systems have scaled hugely in the last 45 years, so again, new code must be written and the old code must be maintained until decommissioned, and this is a big problem when the relevant knowledge slowly disappears (COBOL anyone?)
But apparently, the "quality commission" is deciding that this is must be the fate of C++, the language of legacy code, stable ABI and little room for improving  and for removing its flaws (mainly inherited from C).

For what my opinion is worth: I don't want a new C++, I want a better, up-to-date C++
 
User avatar
Cuchulainn
Posts: 20254
Joined: July 16th, 2004, 7:38 am
Location: 20, 000

Re: Google's Carbon

August 4th, 2022, 8:29 pm

It was not banter for me.  I'm deadly serious. I don't do banter  :lol:

No problem. See C++20. As I remarked on the forum, why not write your own Pandas++?

BTW I was a COBOL programammer a while back. These guys earn $200/hour.
COBOL will NEVER be decommissioned. The infamous bank glitch a few years ago (450 million pounds down the tube) was caused by outsourced COBOL to save 10 million. No way again.Verum est.
For the same reason C++ aps will not be ported to Carbon any time soon.

As kat say: it's about control!
Last edited by Cuchulainn on August 4th, 2022, 8:40 pm, edited 4 times in total.
 
User avatar
Cuchulainn
Posts: 20254
Joined: July 16th, 2004, 7:38 am
Location: 20, 000

Re: Google's Carbon

August 4th, 2022, 8:30 pm

where he got his degree, and indeed, whether he got one or not, is completely irrelevant, f

Au contrare in this case; an MSc != PhD

Rust is gaining traction and it's increasingly backed by big tech companies
Fine. Go for it and save waiting for the "messiah".
 
User avatar
Cuchulainn
Posts: 20254
Joined: July 16th, 2004, 7:38 am
Location: 20, 000

Re: Google's Carbon

August 4th, 2022, 8:58 pm

languages have not been designed to be system programming languages
C++ also not, anymore (even in the 90s no one except competitors used that somewhat denigrating term). So, my comparison is valid, especially at those moments in time. That's historical fact. I was there.

C++ was designed with an orientation toward systems programming and embedded, resource-constrained software and large systems, with performance, efficiency, and flexibility of use as its design highlights.[11] C++ has also been found useful in many other contexts, with key strengths being software infrastructure and resource-constrained applications,[11] including desktop applicationsvideo gamesservers (e.g. e-commerceweb search, or databases), and performance-critical applications (e.g. telephone switches or space probes).[12]
 
User avatar
Cuchulainn
Posts: 20254
Joined: July 16th, 2004, 7:38 am
Location: 20, 000

Re: Google's Carbon

August 4th, 2022, 9:16 pm

Embarrassing display of smear and mockery towards one person, for lack of better arguments, compounded by elitism.

If the existence of a large legacy code base becomes the main or the only reason to convince people to learn C++, while its issues are not fixed, the generational turnover will kill it anyway, because maintaining it will be more painful and costly than rewriting it, in a new language.
You are projecting. Your words, not mine.  I think you miss the point.

 main or the only reason to convince people to learn C++
nah; you don't know C++?
Flexibility and speed. C++ expects a conscious programmer. Makes a casual programmer feel unsafe. Also, people often think there's something wrong with C++, while it's them doing it wrong. My impression after watching some Chandler presentations (he's been banging on about it for almost a decade).

Anyway, everybody knows Google just wants control.
Yeah, videos lasting 1 1/2 hours on basic algorithms (is that an American thing?) It could be done in 30 minutes. Speedo.
doesn't feel right.
 
User avatar
Cuchulainn
Posts: 20254
Joined: July 16th, 2004, 7:38 am
Location: 20, 000

Re: Google's Carbon

August 5th, 2022, 8:27 am

I wonder how many Carbonaras are able to givee a non-BS compariosn of Carbon verrsus C++20.
Too many developers are driveen by emotion, thereby making bad decisions.
https://quantnet.com/advancedcpp/
 
User avatar
Cuchulainn
Posts: 20254
Joined: July 16th, 2004, 7:38 am
Location: 20, 000

Re: Google's Carbon

August 6th, 2022, 9:29 am

Video on Carbon. Content-wise it's not telling us much. Too low-level and banal.
Give it 5-10 years.

// A bit mind-numbing TBH
 
User avatar
Cuchulainn
Posts: 20254
Joined: July 16th, 2004, 7:38 am
Location: 20, 000

Re: Google's Carbon

August 6th, 2022, 11:02 am

 
User avatar
katastrofa
Posts: 7440
Joined: August 16th, 2007, 5:36 am
Location: Alpha Centauri

Re: Google's Carbon

August 6th, 2022, 6:36 pm

 
User avatar
Cuchulainn
Posts: 20254
Joined: July 16th, 2004, 7:38 am
Location: 20, 000

Re: Google's Carbon

August 9th, 2022, 8:06 am

Carbon == Coals to Newcastle?

How would you sell Carbon to Rick Harrison?
 
User avatar
Cuchulainn
Posts: 20254
Joined: July 16th, 2004, 7:38 am
Location: 20, 000

Re: Google's Carbon

August 10th, 2022, 9:56 am

The word "generics" is used a lot without really defining(*) it. 
Is Carbon's vision on  generics similar to C++ templates(compile-time)  or C# generics (run-time)?

Carbon is reportedly static typing, so I expect closer to C++ unless it has some kind of virtual machine (p-code??)

(*) In maths, you first define concepts, then elaborate and not vice versa. In many videos you see elaboration of things w/o telling what those things are.
 
User avatar
Cuchulainn
Posts: 20254
Joined: July 16th, 2004, 7:38 am
Location: 20, 000

Re: Google's Carbon

August 10th, 2022, 10:55 am

C++20 and later are doing a great job. In particular, C++ 20 Concepts is a game-changer in the future. The big chalenge is to make the transition from current design awareness to Requires-Provides architectures which C++ Concepts supports.

Many "promising" C++ pretenders kind of petered out in the past.
 
User avatar
Cuchulainn
Posts: 20254
Joined: July 16th, 2004, 7:38 am
Location: 20, 000

Re: Google's Carbon

August 10th, 2022, 10:59 am

Question: how would Carbon do this? (kept easy as a 101 case)
// Test101Concepts.cpp
//
// Simplest example of a system. Context diagram consists only
// of Input and Output systems.
//
// We use C++20 Concepts to replace policy-based design
//
// Composition
//
//  V2: design using C++20 modules
//
// (C) Datasim Education BV 2015-2021
//

#include <string>
#include <iostream>

// Interface contract specification
template<typename T>
    concept IInput = requires (T x) { x.message(); };

template<typename T>
    concept IOutput = requires (T x, const std::string& s) { x.print(s); };

// I/O stuff
template <typename I, typename O> requires IInput<I> && IOutput<O>
    class SUD
{ // System under discussion, using composition

private:
    I i; O o;
public:
    SUD(const I& input, const O& output) : i(input), o(output) {}
    void run()
    { o.print(i.message());    }
};

// Instance Systems
class Input
{
public:

    std::string message() const
    {
        // Get data from hardware device
        return std::string("Good morning");
    }
};

class Output
{
public:

    void print(const std::string& s) const
    {
        std::cout << s << std::endl;
    }

};

int main()
{
    Input i; Output o;
    SUD<Input, Output> s(i,o);
    s.run();

    return 0;
}