MS STL now open source (and using Boost)

classic Classic list List threaded Threaded
15 messages Options
Reply | Threaded
Open this post in threaded view
|

MS STL now open source (and using Boost)

Boost - Dev mailing list
Microsoft's standard library is now in the process of going open source
(the code is there, but not the tests yet), see :
https://devblogs.microsoft.com/cppblog/open-sourcing-msvcs-stl/

Interestingly they're using the Math library's special functions en-mass
for enhanced <cmath> support, and a quick grep of the code turns up
other references to Boost, though I haven't identified the libraries
they've borrowed from yet.

Hopefully this means that in the long turn we'll see patches and
enhancements flowing in both directions for the benefit of all.

John.


---
This email has been checked for viruses by Avast antivirus software.
https://www.avast.com/antivirus


_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Reply | Threaded
Open this post in threaded view
|

Re: MS STL now open source (and using Boost)

Boost - Dev mailing list
On 9/17/19 1:06 AM, John Maddock via Boost wrote:

> Microsoft's standard library is now in the process of going open source
> (the code is there, but not the tests yet), see :
> https://devblogs.microsoft.com/cppblog/open-sourcing-msvcs-stl/
>
> Interestingly they're using the Math library's special functions en-mass
> for enhanced <cmath> support, and a quick grep of the code turns up
> other references to Boost, though I haven't identified the libraries
> they've borrowed from yet.
>
> Hopefully this means that in the long turn we'll see patches and
> enhancements flowing in both directions for the benefit of all.
>
> John.

Hmmmm - so boost writes something, it gets added to the standard, then
the vendor, copies in the boost version and releases it as  part of
their product.  I've got a couple of questions about this.

a) Aside from "certifying" or "legitimizing" a boost library, exactly
how is the C++ committee process actually contributing to all this.
Looks like just a time consuming way station on a round trip.

b) I think its time to seriously start to consider ideas about who open
source authors can get compensated for their efforts are widely used.
The music business was ignited when improved copyrights enforcement
complemented technology (phonograph/radio) in the early 20th century.
The result was an explosion of creativity in musical arts: jazz, musical
theater, popularization of folk music, film music, etc.

c) It's just crazy that the author of a pivotal piece of software which
the whole world runs on (or should run on), gets no monetary recognition
for these indispensable efforts.

CppCon - discuss.

Robert Ramey



_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Reply | Threaded
Open this post in threaded view
|

Re: MS STL now open source (and using Boost)

Boost - Dev mailing list
--On Tuesday, September 17, 2019 11:35 AM -0700 Robert Ramey via Boost
<[hidden email]> wrote:

> Hmmmm - so boost writes something, it gets added to the standard, then
> the vendor, copies in the boost version and releases it as  part of their
> product.

So you're getting free distribution and support for your product instead of
having to do it yourself.

The big winners of copyright changes were the big distribution companies,
not the artists. Now they're threatened by "open source" indie artists
distributing on Youtube and collecting income through ads and through
patronage systems.


_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Reply | Threaded
Open this post in threaded view
|

Re: MS STL now open source (and using Boost)

Boost - Dev mailing list
In reply to this post by Boost - Dev mailing list
On 2019-09-17 20:35, Robert Ramey via Boost wrote:
>
> Hmmmm - so boost writes something, it gets added to the standard, then
> the vendor, copies in the boost version and releases it as  part of
> their product.  I've got a couple of questions about this.
>
> a) Aside from "certifying" or "legitimizing" a boost library, exactly
> how is the C++ committee process actually contributing to all this.
> Looks like just a time consuming way station on a round trip.

The committee creates the standard. Often changing the component along
the way as a result of review and discussion.

The standard is important as it is the formal specification for all
language implementors, including those who don't use Boost in their
implementation. Abandoning the standard means blessing one
implementation and its maintainers as the "owner" of the language. I
view that as very detrimental to the language quality and ecosystem.

> b) I think its time to seriously start to consider ideas about who open
> source authors can get compensated for their efforts are widely used.

If you (not personally you - in general) are looking for material
compensation for your work then you've probably come to the wrong
project. Not that rewarding developer's work is bad, but when you
release source code under BSL or any other open source license, you have
to understand that that act of release alone does not ensue compensation
in return. In other words, you're not selling your code in a project
like Boost, you're gifting it. Though you may receive immaterial
compensation, like recognition among fellow developers and a nice line
in your resumé.

> The music business was ignited when improved copyrights enforcement
> complemented technology (phonograph/radio) in the early 20th century.
> The result was an explosion of creativity in musical arts: jazz, musical
> theater, popularization of folk music, film music, etc.

Some might say that the copyright system in the media world is
ridiculous in the modern times of Internet, YouTube in particular. But I
don't want to digress in this area.

> c) It's just crazy that the author of a pivotal piece of software which
> the whole world runs on (or should run on), gets no monetary recognition
> for these indispensable efforts.

I see nothing crazy about it. The author wrote an amazing piece of code
and was generous (and probably wise) enough to release it under a
liberal license, which allowed its wide adoption. You may call that
altruistic but not crazy.

If we're talking about something like a Nobel Prize for programmers,
then that might be a good idea, but that is a completely different thing.

_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Reply | Threaded
Open this post in threaded view
|

Re: MS STL now open source (and using Boost)

Boost - Dev mailing list
Boost - Dev mailing list wrote

> On 2019-09-17 20:35, Robert Ramey via Boost wrote:
>>
>> b) I think its time to seriously start to consider ideas about who open
>> source authors can get compensated for their efforts are widely used.
>
> If you (not personally you - in general) are looking for material
> compensation for your work then you've probably come to the wrong
> project. Not that rewarding developer's work is bad, but when you
> release source code under BSL or any other open source license, you have
> to understand that that act of release alone does not ensue compensation
> in return. In other words, you're not selling your code in a project
> like Boost, you're gifting it. Though you may receive immaterial
> compensation, like recognition among fellow developers and a nice line
> in your resumé.

There are situations when an open source software developer is
perfectly entitled to expect compensation from users of her/his
software.
A successful project can easily become a maintenance hassle
then satisfaction, self-fulfillment and good looking resume
are not enough to keep things rolling.

The GPL, for example, makes it clear that should the program prove
defective, she/he assumes the cost of all necessary servicing,
repair or correction:
https://media.ccc.de/v/bucharest-322-the-secret-life-of-open-source-developers

Some projects even use labeling to make it clear what issues/features
require funding
https://trac.osgeo.org/geos/milestone/GEOS%20Fund%20Me

Unfortunately, not every user of an open source project understands
that and some react in a very demotivating manner:
https://twitter.com/EvenRouault/status/1141389253093601280

Best regards,
Mateusz





-----
--
Mateusz Loskot, http://mateusz.loskot.net
--
Sent from: http://boost.2283326.n4.nabble.com/Boost-Dev-f2600599.html

_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Reply | Threaded
Open this post in threaded view
|

Re: MS STL now open source (and using Boost)

Boost - Dev mailing list
In reply to this post by Boost - Dev mailing list

> On 17. Sep 2019, at 18:35, Robert Ramey via Boost <[hidden email]> wrote:
>
> b) I think its time to seriously start to consider ideas about who open source authors can get compensated for their efforts are widely used. The music business was ignited when improved copyrights enforcement complemented technology (phonograph/radio) in the early 20th century. The result was an explosion of creativity in musical arts: jazz, musical theater, popularization of folk music, film music, etc.
>
> c) It's just crazy that the author of a pivotal piece of software which the whole world runs on (or should run on), gets no monetary recognition for these indispensable efforts.

Like others have said, the author makes the decision upfront whether to release his/her work as open source or to try to get compensated. It is contradictory to expect compensation after a library starts to become popular. An analogy: you gave away some land that you think is not worth much, and then the new owner finds a gold ore on that land. Then you cannot in hindsight demand a price. This is a fundamental principle of trade that you cannot change a completed transaction once new information comes in (if the transaction was lawful).

At the time of writing a library, it is not yet clear whether that library will prove valuable and become popular. The competition, even in open source, is tough. Success depends on the quality of the library but also how fast it can build a user base. As in economy, it is all about growth. Can you grow your user base faster than the competition?

Big companies have a huge advantage on that front. They can put money into advertising, and they can nudge or urge their existing user base to use a library. As an independent OS dev, you don't have a backing like this. Your edge is to give away your work for free. No cost is certainly an important factor for the user base.

The trend seems to be rather that even big companies release software as OSS, just to grow fast enough. Think of Qt and TensorFlow, for instance.

_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Reply | Threaded
Open this post in threaded view
|

Re: MS STL now open source (and using Boost)

Boost - Dev mailing list
In reply to this post by Boost - Dev mailing list
On 2019-09-18 11:31, Mateusz Loskot via Boost wrote:

> Boost - Dev mailing list wrote
>> On 2019-09-17 20:35, Robert Ramey via Boost wrote:
>>>
>>> b) I think its time to seriously start to consider ideas about who open
>>> source authors can get compensated for their efforts are widely used.
>>
>> If you (not personally you - in general) are looking for material
>> compensation for your work then you've probably come to the wrong
>> project. Not that rewarding developer's work is bad, but when you
>> release source code under BSL or any other open source license, you have
>> to understand that that act of release alone does not ensue compensation
>> in return. In other words, you're not selling your code in a project
>> like Boost, you're gifting it. Though you may receive immaterial
>> compensation, like recognition among fellow developers and a nice line
>> in your resumé.
>
> There are situations when an open source software developer is
> perfectly entitled to expect compensation from users of her/his
> software.

Yes, of course, but that is an agreement between users and the developer
that does not follow from the act of the source release. Often, quite
the opposite. For example, the developer may agree to implement a
feature for a certain payment. As part of that agreement, he may or may
not release that source code afterwards, and the conditions/license of
such release may be different from when he implements something else for
free for the same project. IOW, if you simply release a piece of code,
you cannot expect to be paid for it. For that you have to sell it, in
one way or another.

Specifically in Boost, we don't sell code and don't receive any payment
for our work on libraries. So if someone comes here in hope to be
rewarded for his work, that expectation is wrong. There may be cases
when the time a maintainer spends on Boost is paid for by his employer
or that the library is maintained outside Boost on paid basis and the
Boost version is the "free" version or something like that, but in any
case, the developer is not receiving compensation from the Boost project.

> A successful project can easily become a maintenance hassle
> then satisfaction, self-fulfillment and good looking resume
> are not enough to keep things rolling.

Of course. There are plenty reasons to want to receive compensation, and
there's nothing wrong with it.

> The GPL, for example, makes it clear that should the program prove
> defective, she/he assumes the cost of all necessary servicing,
> repair or correction:
> https://media.ccc.de/v/bucharest-322-the-secret-life-of-open-source-developers

In this case "she/he" is the user, not the developer. Pretty much any
open source license contains a disclaimer that lifts any damage/losses
responsibility from the developer.

_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Reply | Threaded
Open this post in threaded view
|

Re: MS STL now open source (and using Boost)

Boost - Dev mailing list
In reply to this post by Boost - Dev mailing list
On Tue, 17 Sep 2019 at 09:06, John Maddock via Boost
<[hidden email]> wrote:
>
> Interestingly they're using the Math library's special functions en-mass
> for enhanced <cmath> support

Is their hypot implementation right?
Certainly does not look like the classic Sun implementation.

_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Reply | Threaded
Open this post in threaded view
|

Re: MS STL now open source (and using Boost)

Boost - Dev mailing list
[Mathias Gaunard]
> Is their hypot implementation right?
> Certainly does not look like the classic Sun implementation.

Please file an issue on GitHub if you can demonstrate inaccurate results.

At the moment, the only modern Boost component that we're using is Boost.Math to power Special Math. (We include Boost during our build, instead of shipping its sources.) We're also using some of William E. Kempf's Boost.Thread v1 code, heavily modified (this predated the Boost Software License, so it has separate notices). Separately, we're using Ryu under the Boost Software License.

If there's anything that we can do to be helpful to Boost, please let us know.

In the medium-long term, we may be interested in using Boost.Regex to replace our regex implementation (when we can break ABI).

Thanks,
STL

_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Reply | Threaded
Open this post in threaded view
|

Re: MS STL now open source (and using Boost)

Boost - Dev mailing list
> In the medium-long term, we may be interested in using Boost.Regex to replace our regex implementation (when we can break ABI).

You wouldn't prefer Hana's really cool constexpr one instead with the
much superior performance?

(I appreciate it isn't conforming, but I'd like there to be some day a
fully conforming implementation using that technology i.e. you to write
it Stephan will all that free time you have!)

Niall


_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Reply | Threaded
Open this post in threaded view
|

Re: MS STL now open source (and using Boost)

Boost - Dev mailing list
On Tue, Sep 24, 2019 at 1:51 PM Niall Douglas via Boost <
[hidden email]> wrote:

> > In the medium-long term, we may be interested in using Boost.Regex to
> replace our regex implementation (when we can break ABI).
>
> You wouldn't prefer Hana's really cool constexpr one instead with the
> much superior performance?
>
> (I appreciate it isn't conforming, but I'd like there to be some day a
> fully conforming implementation using that technology i.e. you to write
> it Stephan will all that free time you have!)
>
>
> I assume the disadvantage of Hana library is that it is not used as much
as boost so it is *probably *more buggy, and I am not sure it can easily be
wrapped to match the std:: stuff since in my experience it is impossible to
dispatch code to constexpr and nonconstexpr implementation.
By this I mean
    const std::string s("bla");
    std::regex r1(s);
    std::regex r2(s + std::to_string(time(NULL))); //NULL to upset STL

Here r1 and r2 look the same to the poor regex constructor, although one is
known  at compile time.
disclaimer: I admit I did not follow C++20 standardization so maybe those
nice people from WG21 gave us some magic tools to do this.

_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Reply | Threaded
Open this post in threaded view
|

Re: MS STL now open source (and using Boost)

Boost - Dev mailing list
In reply to this post by Boost - Dev mailing list
Sorry for the possibly-stupid question, but this is the boost list, and
you're talking about constexpr regex's, therefore any reference to Hana is
immediately quite ambiguous.

Do you mean Boost.Hana, or do you mean Hana Dusíková ?

On Tue, Sep 24, 2019 at 4:51 AM Niall Douglas via Boost <
[hidden email]> wrote:

> > In the medium-long term, we may be interested in using Boost.Regex to
> replace our regex implementation (when we can break ABI).
>
> You wouldn't prefer Hana's really cool constexpr one instead with the
> much superior performance?
>
> (I appreciate it isn't conforming, but I'd like there to be some day a
> fully conforming implementation using that technology i.e. you to write
> it Stephan will all that free time you have!)
>
> Niall
> _______________________________________________
> Unsubscribe & other changes:
> http://lists.boost.org/mailman/listinfo.cgi/boost
>

_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Reply | Threaded
Open this post in threaded view
|

Re: MS STL now open source (and using Boost)

Boost - Dev mailing list
On 26/09/2019 04:36, Jorg Brown wrote:
> Sorry for the possibly-stupid question, but this is the boost list, and
> you're talking about constexpr regex's, therefore any reference to Hana
> is immediately quite ambiguous.
>
> Do you mean Boost.Hana, or do you mean Hana Dusíková ?

As Boost.Hana does not contain a regex implementation, it would be the
other Hana you mention.

Niall

_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Reply | Threaded
Open this post in threaded view
|

Re: MS STL now open source (and using Boost)

Boost - Dev mailing list
In reply to this post by Boost - Dev mailing list
On Tue, Sep 17, 2019 at 10:35 AM Robert Ramey via Boost <
[hidden email]> wrote:

> On 9/17/19 1:06 AM, John Maddock via Boost wrote:
> > Microsoft's standard library is now in the process of going open source
> > (the code is there, but not the tests yet), see :
> > https://devblogs.microsoft.com/cppblog/open-sourcing-msvcs-stl/
> >
> > Interestingly they're using the Math library's special functions en-mass
> > for enhanced <cmath> support, and a quick grep of the code turns up
> > other references to Boost, though I haven't identified the libraries
> > they've borrowed from yet.
> >
> > Hopefully this means that in the long turn we'll see patches and
> > enhancements flowing in both directions for the benefit of all.
> >
> > John.
>
> Hmmmm - so boost writes something, it gets added to the standard, then
> the vendor, copies in the boost version and releases it as  part of
> their product.  I've got a couple of questions about this.
>
> a) Aside from "certifying" or "legitimizing" a boost library, exactly
> how is the C++ committee process actually contributing to all this.
> Looks like just a time consuming way station on a round trip.
>
> b) I think its time to seriously start to consider ideas about who open
> source authors can get compensated for their efforts are widely used.
> The music business was ignited when improved copyrights enforcement
> complemented technology (phonograph/radio) in the early 20th century.
> The result was an explosion of creativity in musical arts: jazz, musical
> theater, popularization of folk music, film music, etc.
>
> c) It's just crazy that the author of a pivotal piece of software which
> the whole world runs on (or should run on), gets no monetary recognition
> for these indispensable efforts.
>
> CppCon - discuss.
>

Well, first off, I believe that throughout the history of boost, there was
never any promise of monetary recognition.  If it wasn't crazy not to be
paid when you contributed code to Boost in the first place, it's not crazy
now, either.

But there are some benefits that go along with that.  First and most
important is that you don't have to pay for the part of Boost you didn't
write, which is most of it.  And second is that you're not responsible for
supporting it - including fixing the bugs.  And third is the combination of
the first two: when you contribute to an open-source project, it often
happens that someone sends you a fix for a bug you didn't know you had.
Depending on what you use your code for, that can be very valuable, even if
you don't put a monetary value on it.

As for how they get compensated, consider Newton.  This man invented
Calculus - an indispensable foundation upon which most mathematics - and by
extension most physics - rests.  Was he paid for it?  No, not per se.  But
it made him extremely famous among academics, and that had lots of benefits
on its own.  Likewise, authoring a pivotal piece of open-source software
gives you a reputation, which can be exchanged for money in other
ways. People like Hana Dusíková and Louis Dionne can get multiple offers
for high-paying jobs at many companies based on their open-source
contributions.

It may seem strange - even crazy - that the contributions that made these
people famous don't pay that well, while their in-person contributions do,
but it's actually quite similar to the music industry you cited: The most
lucrative space for musicians is live performances, not recorded ones.

-- Jorg

ps Cite:
https://www.rollingstone.com/music/music-features/how-musicians-make-money-or-dont-at-all-in-2018-706745/

_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Reply | Threaded
Open this post in threaded view
|

Re: MS STL now open source (and using Boost)

Boost - Dev mailing list

>
> ps Cite:
> https://www.rollingstone.com/music/music-features/how-musicians-make-money-or-dont-at-all-in-2018-706745/

Very interesting link.  I was using the music industry before the year
?2000? as an example.  These days, it seems that the music industry is
struggling with exactly the same issues that I alluded to.  And of
course a scheme for compensating open source software developers would
have to address this same issues.

>
> _______________________________________________
> Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
>



_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost