Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Post
  • Reply
Fiedler
Jun 29, 2002

I, for one, welcome our new mouse overlords.

rjmccall posted:

so i can consider my question answered, cool

no problem, anytime

Adbot
ADBOT LOVES YOU

eschaton
Mar 7, 2007

Don't you just hate when you wind up in a store with people who are in a socioeconomic class that is pretty obviously about two levels lower than your own?

mystes posted:

I don't know if it's true but some things Microsoft people have written on blogs and so on have made it sound like there's a constant war between pro .net and anti .net (pro c++) factions.

unsurprising because the pro .NET faction was all “use our (new, unproven) stuff, it’ll be cool, love us please!” while the pro C++ faction response was “we have tens of millions of lines of code that make the company all of its money, we’re not rewriting poo poo”

eschaton
Mar 7, 2007

Don't you just hate when you wind up in a store with people who are in a socioeconomic class that is pretty obviously about two levels lower than your own?
Windows hated .NET because it bought the Java myth of “write once run anywhere” and wrapped the platform API and eschewed the platform UI

Office hated .NET because Windows hated it and the .NET people told they needed to rewrite to get the most benefit

all of the C++/.NET interop efforts have been intended to convince Windows and Office to start doing new stuff in .NET because “see, it interoperates!” and Windows & Office’s response has been “LOL, nice Trojan horse you got there, gently caress off”

eschaton
Mar 7, 2007

Don't you just hate when you wind up in a store with people who are in a socioeconomic class that is pretty obviously about two levels lower than your own?
Windows and Office see DevDiv’s role as primarily to provide tools to build Windows and Office and secondarily to provide tools so third parties can build on the Windows and Office platforms; you’ll note that providing its own developer platform isn’t in that list at all

they’re not wrong, and the people responsible for .NET in DevDiv were very lucky to last long enough for Azure to become a thing

also the wholesale rewrite of Visual Studio in WPF etc. was due to Windows and Office saying “LOL, you won’t even rewrite your own stuff, why should we rewrite ours” and look how many years that took to not suck

pokeyman
Nov 26, 2006

That elephant ate my entire platoon.

Lime posted:

they've abandoned both those and that whole approach

I am shocked

plain c++ sounds like a more correct answer than the last two (three?) though

Fiedler
Jun 29, 2002

I, for one, welcome our new mouse overlords.
as expected, eschaton's knowledge of the history of microsoft developer tools ends with VS 2010.

although xcode is getting dark mode so maybe somebody finally installed dev11.

Fiedler
Jun 29, 2002

I, for one, welcome our new mouse overlords.

eschaton posted:

the people responsible for .NET in DevDiv were very lucky to last long enough for Azure to become a thing

side note: one of those unimportant .net guys now owns the windows core os team

champagne posting
Apr 5, 2006

YOU ARE A BRAIN
IN A BUNKER


Fiedler posted:

side note: one of those unimportant .net guys now owns the windows core os team

not surprising considering the state of windows

Fiedler
Jun 29, 2002

I, for one, welcome our new mouse overlords.
no you have terry myerson to thank for that

mystes
May 31, 2006

I just hope the have some sort of sane strategy that hopefully eventually involves ditching the windows store, but I have a feeling that letting people develop desktop apps with .net core is just going to cause additional confusion.

UWP has done an excellent job of getting people to stop developing windows applications, though.

Plorkyeran
Mar 22, 2007

To Escape The Shackles Of The Old Forums, We Must Reject The Tribal Negativity He Endorsed
5 major versions later the WPFified stuff in VS is still a bit of a step down from the old version

rjmccall
Sep 7, 2007

no worries friend
Fun Shoe

Xarn posted:

Yes, lets cripple a feature that could make the long-term future much better to make the short-term future easier. This is definitely good language design decision.

microsoft-style modules are also a really lovely language design for, y'know, modularity. it's really quite bizarre, like it was written by c programmers: export declarations have to be at namespace scope, so you can export an entire class at a time, but you have to export everything from it; if you want to give it a module-private interface, even just to except the private methods from the interface, you have to stop exporting the entire class and instead redeclare every exported method out-of-line. also, there is no way to split up the interface of your module, so that clients can be clear about what parts of it they're using, without actually breaking it up into separate modules. also, adopting microsoft-style modules is really all-or-nothing: ironically, you can't adopt the feature without making all of your headers non-modular, because including a global header after the module declaration is a huge no-no; the only way to manage it is to put all the necessary includes and forward-declarations at the top of your header files inside #if guards. and the basic model is just as much "a module is an independently-generated pch file" as the google proposal because of the need to interoperate with non-modularized code, which will never ever disappear. and that model is itself good enough to solve the main problem with macros — that a macro from one module can break the interface of a completely different module — without needing to remove the ability to use macros as part of your exported interface, but instead they're just unconditionally asserting that macros don't matter.

also there is no remotely reasonable upgrade path for projects to start using microsoft-style modules. leaf projects will see pretty marginal benefits from using modules when none of their dependencies have been modularized, because any incremental edit that would cause multiple files to be rebuilt in a library today will be a change to the module interface unit in the future and therefore cause just as many if not more files to be rebuilt, and the compile-time benefits from just the module interface unit are literally almost exactly the same (actually probably slightly smaller) as the compile-time benefits of a well-tuned pch. library projects can't really adopt modules without either making modules a requirement for their clients or doing terrible, unmaintainable #if hacks in their headers. it is much easier to incrementally adopt the pch-style modules from the google proposal

if microsoft-style modules are adopted, it'll just be yet another arbitrary division in the language where different projects use different idioms, and probably even different idioms in different parts of the same codebase. and it won't actually make the language better in any of the ways you're imagining

DONT THREAD ON ME
Oct 1, 2002

by Nyc_Tattoo
Floss Finder
someone added generics to go: https://github.com/albrow/fo

it just does a source transformation and then runs it through the go compiler. it doesn't support interface constraints on generic types (which is pretty important) but the author said that they're on their way to implementing it.

DELETE CASCADE
Oct 25, 2017

i haven't washed my penis since i jerked it to a phtotograph of george w. bush in 2003
let's reimplement c++ templates having learned zero lessons!!!

Symbolic Butt
Mar 22, 2009

(_!_)
Buglord

Sagacity posted:

but if you turn everything into header-only libs you'll have exploding compile-times, unless you turn on precompiled headers which are like a clowncar of hackery in their own right

I spent so much time trying to figure out a good way of doing pch, c++ is infernal

b0lt
Apr 29, 2005

DELETE CASCADE posted:

let's reimplement c++ templates having learned zero lessons!!!

well go was a bad reimplementation of c, so that fits

Fiedler
Jun 29, 2002

I, for one, welcome our new mouse overlords.

rjmccall posted:

microsoft-style modules are also a really lovely language design for, y'know, modularity.

the work product of the microsoft c++ compiler team is... bad?

Slurps Mad Rips
Jan 25, 2009

Bwaltow!

rjmccall posted:

microsoft-style modules are also a really lovely language design for, y'know, modularity. it's really quite bizarre, like it was written by c programmers: export declarations have to be at namespace scope, so you can export an entire class at a time, but you have to export everything from it; if you want to give it a module-private interface, even just to except the private methods from the interface, you have to stop exporting the entire class and instead redeclare every exported method out-of-line. also, there is no way to split up the interface of your module, so that clients can be clear about what parts of it they're using, without actually breaking it up into separate modules. also, adopting microsoft-style modules is really all-or-nothing: ironically, you can't adopt the feature without making all of your headers non-modular, because including a global header after the module declaration is a huge no-no; the only way to manage it is to put all the necessary includes and forward-declarations at the top of your header files inside #if guards. and the basic model is just as much "a module is an independently-generated pch file" as the google proposal because of the need to interoperate with non-modularized code, which will never ever disappear. and that model is itself good enough to solve the main problem with macros — that a macro from one module can break the interface of a completely different module — without needing to remove the ability to use macros as part of your exported interface, but instead they're just unconditionally asserting that macros don't matter.

also there is no remotely reasonable upgrade path for projects to start using microsoft-style modules. leaf projects will see pretty marginal benefits from using modules when none of their dependencies have been modularized, because any incremental edit that would cause multiple files to be rebuilt in a library today will be a change to the module interface unit in the future and therefore cause just as many if not more files to be rebuilt, and the compile-time benefits from just the module interface unit are literally almost exactly the same (actually probably slightly smaller) as the compile-time benefits of a well-tuned pch. library projects can't really adopt modules without either making modules a requirement for their clients or doing terrible, unmaintainable #if hacks in their headers. it is much easier to incrementally adopt the pch-style modules from the google proposal

if microsoft-style modules are adopted, it'll just be yet another arbitrary division in the language where different projects use different idioms, and probably even different idioms in different parts of the same codebase. and it won't actually make the language better in any of the ways you're imagining

you're forgetting the whole "you can have any number of implementation files for a given module", so you have an interface module, and then maybe just like 20 implementation files and also gently caress you if you wanted these modules to be a hierarchy.

DELETE CASCADE
Oct 25, 2017

i haven't washed my penis since i jerked it to a phtotograph of george w. bush in 2003
ML-style modules are Cool and also Good

rjmccall
Sep 7, 2007

no worries friend
Fun Shoe
yeah, but ml-style modules are a completely different feature

Carthag Tuek
Oct 15, 2005

Tider skal komme,
tider skal henrulle,
slægt skal følge slægters gang



some kind of joke like "c++ is good, modulo making sense" but i cant be arsed to refine it

Athas
Aug 6, 2007

fuck that joker

DELETE CASCADE posted:

ML-style modules are Cool and also Good

They are not really for separate compilation though (there is the Basis System for that, which is ludicrously overengineered given the relatively small size of ML programs in practice).

Progressive JPEG
Feb 19, 2003

b0lt posted:

well go was a bad reimplementation of c, so that fits

c with a garbage collector

everything else stems from that

fart simpson
Jul 2, 2005

DEATH TO AMERICA
:xickos:

your posts collector

Sagacity
May 2, 2003
Hopefully my epitaph will be funnier than my custom title.

Symbolic Butt posted:

I spent so much time trying to figure out a good way of doing pch, c++ is infernal
thankfully the cross-platform c++ build tool cmake probably has good support, since it is designed to make building c++ projects easier

turns out all you need is a 4191 line script, it's THAT EASY

fritz
Jul 26, 2003

MALE SHOEGAZE posted:

someone added generics to go: https://github.com/albrow/fo

it just does a source transformation and then runs it through the go compiler. it doesn't support interface constraints on generic types (which is pretty important) but the author said that they're on their way to implementing it.

Stringent
Dec 22, 2004


image text goes here
lol

mystes
May 31, 2006

Fiedler posted:

even if microsoft was particularly keen on investing in the c++ ecosystem (you may have noticed they've been pushing this c# language instead in recent decades), it's simply too loving expensive to rewrite any significant fraction of their c++.
I am pleased to say that we now know the real answer to this question! The actual reason Microsoft isn't rewriting things in c# because they were apparently secretly rewriting everything in javascript!

https://twitter.com/thelarkinn/status/1006746626617008128?s=21

champagne posting
Apr 5, 2006

YOU ARE A BRAIN
IN A BUNKER


finally I’ll be able to add date time, string and into cells in excel without errors!

fart simpson
Jul 2, 2005

DEATH TO AMERICA
:xickos:

mystes posted:

I am pleased to say that we now know the real answer to this question! The actual reason Microsoft isn't rewriting things in c# because they were apparently secretly rewriting everything in javascript!

https://twitter.com/thelarkinn/status/1006746626617008128?s=21

lol

Fiedler
Jun 29, 2002

I, for one, welcome our new mouse overlords.
things to note:
1) that guy is talking about the ui only. the office c++ nightmare hellscape otherwise remains.
2) that guy is a complete loving moron who won't be working at microsoft in a couple of months.

Shaggar
Apr 26, 2006
teams and skype have some of the worst performing UIs in the world especially considering how simple they are

MononcQc
May 29, 2007

mystes posted:

I am pleased to say that we now know the real answer to this question! The actual reason Microsoft isn't rewriting things in c# because they were apparently secretly rewriting everything in javascript!

https://twitter.com/thelarkinn/status/1006746626617008128?s=21

https://twitter.com/mononcqc/status/1006886655817584641

mystes
May 31, 2006

They must have outsourced the calendar code to Rockchip.

cinci zoo sniper
Mar 15, 2013




mystes posted:

They must have outsourced the calendar code to Rockchip.

at least not to massive entertainment, who hardcoded the division daily event calendar to consist of 12 31 day long months per year

Gazpacho
Jun 18, 2004

by Fluffdaddy
Slippery Tilde

OldAlias
Nov 2, 2013

cinci zoo sniper posted:

at least not to massive entertainment, who hardcoded the division daily event calendar to consist of 12 31 day long months per year

hahaha

Carthag Tuek
Oct 15, 2005

Tider skal komme,
tider skal henrulle,
slægt skal følge slægters gang




:wrong:

Suspicious Dish
Sep 24, 2011

2020 is the year of linux on the desktop, bro
Fun Shoe
What the gently caress is this guy talking about with "compiles to native code". Also VS Code doesn't use react-native and doesn't have mobile ports. Jeez.

Adbot
ADBOT LOVES YOU

Malcolm XML
Aug 8, 2009

I always knew it would end like this.

Fiedler posted:

things to note:
1) that guy is talking about the ui only. the office c++ nightmare hellscape otherwise remains.
2) that guy is a complete loving moron who won't be working at microsoft in a couple of months.

how the gently caress is this guy not fired, you dont leak plans to anyone but mjf

  • 1
  • 2
  • 3
  • 4
  • 5
  • Post
  • Reply