|
All good points. The reason I think a framework should choose a language in widespread use (assuming that the language is appropriate) is division of labor: specialization. It's hard to get a framework right, and it's hard to get a language right. It's unlikely that the skills required to implement a domain-specific language will exist within the same team or even the same company. And if the framework uses a language in widespread use, it and its applications will be able to use the tools, and possibly some third-party software, available in that language. It's very unlikely that a company will want to recreate all of that. But if they somehow go down the path of implementing their own language, it's almost a certainty that the first thing to get cut in an economic downturn will be the budget for the language and its tools.
|
|
|
|
|
Seen from an application domain point of view, the best would often be a domains specific language, as you strongly suggest. And, as you also suggest, that could turn out to be costly.
Yet, if that is out of reach, so you have to make due with existing languages, they are not all the same, from the user point of view.
[putting on my asbestos suit:]
Maybe, for some problem solutions outside the IT domain, even VB6 is a better alternative than C++ 23 for discussing the solution implementation with a domain expert.
|
|
|
|
|
To implement an application framework, one must become reasonably expert in the domain. This might come from having worked on software for that domain for many years or through discussions with a domain expert, bolstered by use cases.
I don't know anything about VB6 other than there are many who are quick to deride it. But it might well be an excellent choice for certain domains, just as C++ is often the best choice for real-time systems and servers.
|
|
|
|
|
trønderen wrote: I do not want to discuss a solution where pointer arithmetic and abstract functions are essential for understanding the solution. If you have a domain where pointer arithmetic or abstract functions are the best solution for the problem, then use them. I'd argue that very, very, very few problems require pointer arithmetic. But if you aren't able to convey to your client that in your framework, abstract classes are the way programs enforce having a common calling convention for similar types, then you aren't a very good communicator. The heart of what you are talking about is communication, not programming languages. You are saying that it is necessary for the wine makers to understand the code. In fact, if they want to understand the code, it is your job to help them because that is your domain expertise, not theirs. If you are overmodeling it in C++, you will likely overmodel it in another paradigm as well. Hell, C# has interfaces, which pretty much do the same thing. I've made objects in VBA for Office. If someone wanted to understand my work, I've done my best to make it simple. But at some point it can't be made any simpler, and it will have to adhere to the limitations of VBA (which I don't believe allows abstract classes for one thing).
Extending your earlier argument for ER diagrams, as far as I'm aware, there is nothing stopping a C++ programmer from interacting with a client using ER diagrams, and tailoring their feedback back into C++ code. (Granted, such tailoring may be much easier in another language.) As I've said, your point is one of communication, not programming. And I agree, communication is VERY important.
|
|
|
|
|
Jeff Bezos’ space tourism company safely brought its crew capsule and New Shepard booster back to Earth after a one-year hiatus. Now there are two
...billionaires engaged in a **** measuring contest, that is.
|
|
|
|
|
Kent Sharkey wrote: back to Earth after a one-year hiatus
Does that mean it was orbiting for a year? Poor sentence structure.
I’ve given up trying to be calm. However, I am open to feeling slightly less agitated.
I’m begging you for the benefit of everyone, don’t be STUPID.
|
|
|
|
|
Watching those boosters land always reminds me of the goofy effects in Buck Rogers or Flash Gordon B&W shows. It's really amazing how sci-fi becomes reality decades later. And I still can't wrap my head around the computations and sensors needed to do all this.
|
|
|
|
|
There are actually several active orbital launch systems, but Blue Origin isn't one of them. New Glenn never reaches orbit. New Glenn is nothing more than a rocket powered amusement ride.
|
|
|
|
|
In Visual Studio 2022 version 17.8, we introduced a feature that allows C++ developers to easily view the size and alignment of classes, structs, unions, base types, or Enums. For more perfect unions (and classes, structs, and enums)
|
|
|
|
|
Most Windows users pay attention to updates only when they wreck something, like the latest story about universities suggesting uninstalling December 2023 updates to fix broken Wi-Fi connections in Windows 11. Better late than never?
|
|
|
|
|
I've been using Windows 11 since close to when it came out (purchased a new machine with it) and haven't seen this bug. I can see how it would be really annoying to those whose systems have it but I suspect it isn't that widespread.
|
|
|
|
|
Yeah, not here either. There's all kinds of fun that can happen I suspect when you combine all the variations of BIOS/chipsets/hardware. Sometimes I marvel that Windows works at all as well as it does.
TTFN - Kent
|
|
|
|
|
I see it quite regularly on work PC. It is really annoying. At first I thought I was alt-tabbing without noticing
|
|
|
|
|
The video, featuring a cat named Taters, was sent back from nearly 19 million miles away by NASA’s laser communications demonstration, marking a historic milestone. Cat videos...in SPACE!
Their conquest continues
Hemi-semi-demi dupe, but I think the last one was just "a message". This one is showing they can stream content.
|
|
|
|
|
The Microsoft Printer Metadata Troubleshooter Tool will rename your printer to its correct name and uninstall the HP Smart app. At least you don't have to dance widdershins around your computer (this time)
And no chicken sacrifice required (maybe)
|
|
|
|
|
Nuke the computer from orbit; it's the only way.
Freedom is the freedom to say that two plus two make four. If that is granted, all else follows.
-- 6079 Smith W.
|
|
|
|
|
Everything Google’s giving up has a time limit, and some of it is exceedingly minor. I guess the holiday party is cancelled this year
At least for the plebs. The execs will still have theirs, of course.
|
|
|
|
|
It’s a common occurrence: You’re sitting at your desk, lost in thought, trying to solve a problem that’s been blocking your work all week. Without a door, what are you supposed to slam in anger?
|
|
|
|
|
The craft’s NIRCam filters captured the planet, including its rings, in unprecedented detail. "Please enter. The Prophets await you."
What?! You were expecting a juvenile Uranus joke? NEVER!
Well, OK. If you insist.
A little cream should clear that up.
|
|
|
|
|
Actually, wouldn't the juvenile joke be, "Oops, that was the negative."
I’ve given up trying to be calm. However, I am open to feeling slightly less agitated.
I’m begging you for the benefit of everyone, don’t be STUPID.
|
|
|
|
|
My god, that is amazing. And all those moons!
|
|
|
|
|
Send Musk to Mars, and Bezos in a cylindrical space station, to Uranus... That would be an improvement.
|
|
|
|
|
My God, it's full of...
-- (not) David Bowman
Freedom is the freedom to say that two plus two make four. If that is granted, all else follows.
-- 6079 Smith W.
|
|
|
|
|
It's a portal, all right.
Immediately came here for the comments and was not disappointed.
|
|
|
|
|
The actuary, who began competing in 2018, claimed this year's title during an esports event in Las Vegas, which was streamed online and broadcast live on TV. Hopefully there were no performance-enhancing drugs involved
Just drugs on the part of anyone watching this on TV. What, there were no darts competitions going on then?
|
|
|
|