On Mon, Jan 25, 2016 at 10:31 AM, Rikki Cattermole via Digitalmars-d-announce <firstname.lastname@example.org> wrote:
> On 25/01/16 9:21 PM, Rory McGuire via Digitalmars-d-announce wrote: > >> >> On Mon, Jan 25, 2016 at 9:34 AM, Rikki Cattermole via >> Digitalmars-d-announce <email@example.com >> <mailto:firstname.lastname@example.org>> wrote: >> >> On 25/01/16 8:16 PM, tsbockman wrote: >> >> On Monday, 25 January 2016 at 07:03:35 UTC, Russel Winder wrote: >> >> The strategy should be "get rid of anything in Phobos that >> can be put >> out as a separate library". >> >> >> This makes no sense as a standard: since neither DMD nor druntime >> is >> allowed to depend upon Phobos, everything in Phobos *could* be >> put into >> a separate library. >> >> >> I had a long post replying to Russel and to put it bluntly, its just >> wrong. >> We are most definitely losing people simply because they expect >> certain code in the standard library. Like windowing and image. >> Things like sockets are lower on their priority list. >> >> In their mind we are not even a 'programming language'. >> >> Phobos does need to be bigger, but not fully inclusive. >> If most people won't use something, don't add it. >> >> Sure there is arguments against this, but there is a certain amount >> we must standardize and agree upon as a community. Phobos most >> certainly is the place to do this. Otherwise we will be going round >> in circles for a much longer period then we should and not growing >> much. >> >> >> I'm going to quote you there: to put it bluntly you are plain wrong. >> >> We do not, and no one does, need a kitchen sink standard library. Look >> at python, look at Go, these are two of the fastest growing languages >> out there. They are: >> - Extremely easy to pick up and use. >> - Have excellent documentation and simple naming conventions >> - Have fantastic 3rd party open source libraries >> > > Nope just no. > I am only talking about newbies here. > They will pick distributions of Python that are all encompassing. > > http://winpython.github.io/#overview > When it comes to newbies who come into programming seeing from all of > their previous experience that things like GUI toolkit just comes with the > language they just don't care if it was provided "extra" by a distribution > or by the language itself. Only that they did exactly 0 beyond importing > and using it. > > During my degree, the final programming class was Python. > Everyone used WinPython except me. At the time pip didn't even work in it. > Yes you heard me correct. > > When they had to use other code, they had no way or will to even try what > wasn't part of it and so in their eyes what they had downloaded was Python. > Because it really does appear to be Python. > > Especially with the IDE and QT being part of it... > And right here is the problem. They expected and there it was. > You will see this in every language. From Java to PHP. > > The community in general misses the point here time and time again. > It wasn't until recently that Adam saw how bad things were just to add > some context. > > How does one find the "right" library for a task? >> - The community refers devs to their preferred / popular libs >> - There are excellent tutorials / how-tos that show case the library >> >> If we spent less time fussing of what gets into phobos and more time >> making good libraries for code.dlang.org <http://code.dlang.org> and let >> the best ones win out we'd get much better stuff much quicker. >> > > And I agree with you. As long as we have the bare bones in Phobos such as > windowing and image library we can actually fight over GUI toolkits. > Instead of repeatedly doing the same code over and over poorly. > > Ouch yes, seen that before. I just would prefer the base library to be exactly that a base. In fact if dub came with dmd, or if you downloaded dub and it could install dmd/gdc/ldc I would be much happier, phobos could be just another library on code.dlang.org. That why the one app to rule them all could just be dub and newbies and veterans alike could be happy that their needed libraries were just there. Something like: - download dub - double click installer - present with options to install, defaults to dmd and phobos must be installed (if not found) - other option to create blank project - opens project with a basic ide that uses dcd etc and allows compile and run with a simple example that outputs to a console and opens a window with the D logo. (Just thinking out loud) :D PS: Can you make sure its easy to do transparent shaped windows in your bare bones windowing implementation?