www.digitalmars.com         C & C++   DMDScript  

digitalmars.D - GCC 4.6

reply bearophile <bearophileHUGS lycos.com> writes:
They keep adding more and more stuff to GCC, some unfinished notes about GCC
4.6, there are some interesting things:

http://gcc.gnu.org/gcc-4.6/changes.html


Some points:

 Improved auto-detection of const and pure functions. Newly, noreturn functions
are auto-detected.
-Wsuggest-attribute=[pure|const|noreturn] Warn for cases where adding an attribute may be beneficial. The attributes currently supported are listed below. -Wsuggest-attribute=pure -Wsuggest-attribute=const -Wsuggest-attribute=noreturn Warn about functions which might be candidates for attributes pure, const or noreturn. The compiler only warns for functions visible in other compilation units or (in the case of pure and const) if it cannot prove that the function returns normally. A function returns normally if it doesn't contain an infinite loop nor returns abnormally by throwing, calling abort() or trapping. This analysis requires option -fipa-pure-const, which is enabled by default at -O and higher. Higher optimization levels improve the accuracy of the analysis. This is one of the "compiler tips" for DMD I was talking about :-) It seems GCC devs like that idea. It may be good to have a DMD tip that lists where the programmer may add pure, const for class/struct methods, maybe nothrow (and noreturn if and when it's present in D). It reduces the time needed to add those attributes to D code. ----------------------
 Partial inlining is now supported and enabled by default at -O2 and greater.
The feature can
 be controlled via -fpartial-inlining.
 Partial inlining splits functions with short hot path to return. This allows
more aggressive
 inlining of the hot path leading to better performance and often to code size
reductions
 (because cold parts of functions are not duplicated).
This is very good. The JavaVM is doing this for years. I don't know how GCC finds the hot paths, I presume it uses profiling data. ----------------------
 Virtual methods considered for inlining when caller is inlined and
devirtualization
 is possible then.
This is good if it works. I will need to test how well this works... ----------------------
 A new switch -fstack-usage has been added. It makes the compiler output stack
 usage information for the program, on a per-function basis, in an auxiliary
file.
This is useful especially on small systems. ----------------------
 The -Wshadow option now warns if a local variable or type declaration shadows
another
 type in C++. Note that the compiler will not warn if a local variable shadows a
 struct/class/enum, but will warn if it shadows an explicit typedef.
This seems interesting. ----------------------
 The new -fsplit-stack option permits programs to use a discontiguous stack.
 This is useful for threaded programs, in that it is no longer necessary to
specify
 the maximum stack size when creating a thread. This feature is currently only
 implemented for 32-bit and 64-bit x86 GNU/Linux targets.
This sounds like a similar feature of the Go language. Bye, bearophile
Oct 30 2010
parent reply Walter Bright <newshound2 digitalmars.com> writes:
bearophile wrote:
 The -Wshadow option now warns if a local variable or type declaration shadows
another
 type in C++. Note that the compiler will not warn if a local variable shadows a
 struct/class/enum, but will warn if it shadows an explicit typedef.
This seems interesting.
Yeah, D has had that for 10 years now.
Oct 30 2010
parent reply bearophile <bearophileHUGS lycos.com> writes:
Walter:

 bearophile wrote:
 The -Wshadow option now warns if a local variable or type declaration shadows
another
 type in C++. Note that the compiler will not warn if a local variable shadows a
 struct/class/enum, but will warn if it shadows an explicit typedef.
This seems interesting.
Yeah, D has had that for 10 years now.
Let's focus our attention on what DMD "lacks", instead! :-) If you focus only on your strong points you will not improve yourself, this is a basic rule for any serious artist or athlete. Regarding that feature, this program shows no warnings, is this a bad example? alias int foo; struct bar {} void main() { int foo; int bar; } Bye, bearophile
Oct 30 2010
parent reply Walter Bright <newshound2 digitalmars.com> writes:
Bearophile, let me start by emphasizing that you are a valuable member of the D 
community.

bearophile wrote:
 Walter:
 
 bearophile wrote:
 The -Wshadow option now warns if a local variable or type declaration shadows
another
 type in C++. Note that the compiler will not warn if a local variable shadows a
 struct/class/enum, but will warn if it shadows an explicit typedef.
This seems interesting.
Yeah, D has had that for 10 years now.
Let's focus our attention on what DMD "lacks", instead! :-)
Why? What matters is whether D gets the job done or not, not whether it has a laundry list that encompasses every single feature of every other language. Isn't this endless desire for checklists of features incompatible with your expressed desire for a simple language? You post lists of features every day. If I had a staff of 100 expert people working on the compiler, I could not begin to keep up with that. At some point, it's pointless. It also bothers me that you regularly read feature lists put out by other languages, and seem unaware of what D can do. For example, you wrote recently that dmd lacked data flow analysis optimizations.
 If you focus only on your strong points you will not improve yourself,
If you focus only on what you lack, you will be seriously unhappy. And D also *should* focus on what it does well.
 this is a basic rule for any serious artist or athlete.
Would you criticize a long distance runner for being lousy at wrestling? Shouldn't a long distance runner focus on what he's good at - long distance running?
 Regarding that feature, this program shows no warnings, is this a bad example?
 
 alias int foo;
 struct bar {}
 void main() {
     int foo;
     int bar;
 }
Yes, it is a bad example. My experience is that shadowing global declarations is not a problem. Shadowing local ones is, though, and I've seen a lot of bugs caused by it. void foo(int x) { { long x; } } dmd -c test test.d(4): Error: shadowing declaration test.foo.x is deprecated
Oct 30 2010
next sibling parent reply "Nick Sabalausky" <a a.a> writes:
"Walter Bright" <newshound2 digitalmars.com> wrote in message 
news:iaiehl$24s1$1 digitalmars.com...
 bearophile wrote:

 If you focus only on your strong points you will not improve yourself,
 this is a basic rule for any serious artist or athlete.
Would you criticize a long distance runner for being lousy at wrestling? Shouldn't a long distance runner focus on what he's good at - long distance running?
Tell that to Bo Jackson! :)
Oct 30 2010
parent reply "Nick Sabalausky" <a a.a> writes:
"Nick Sabalausky" <a a.a> wrote in message 
news:iaifev$26jn$1 digitalmars.com...
 "Walter Bright" <newshound2 digitalmars.com> wrote in message 
 news:iaiehl$24s1$1 digitalmars.com...
 bearophile wrote:

 If you focus only on your strong points you will not improve yourself,
 this is a basic rule for any serious artist or athlete.
Would you criticize a long distance runner for being lousy at wrestling? Shouldn't a long distance runner focus on what he's good at - long distance running?
Tell that to Bo Jackson! :)
On a more serious note though, just focusing on what something's good at amounts to wearing blinders and is exactly what turned Java into a puritanical piece of shit: "Java's good at objects, so let's pretend nothing else exists." And it's what made Haskell into something that practically no one uses for real-world work: "Haskell's really good at functional. So let's pretend nothing else exists." Of course, what makes D so great is that we all know perfectly well it tries to do a variety of things well, which is actually in contrast to what you're saying here. I can certainly understand the impossibility of actually keeping up with bearophile, but I don't think that even he expects that every idea he brings up be rushed into D.
Oct 30 2010
next sibling parent Walter Bright <newshound2 digitalmars.com> writes:
Nick Sabalausky wrote:
 On a more serious note though, just focusing on what something's good at 
 amounts to wearing blinders and is exactly what turned Java into a 
 puritanical piece of shit: "Java's good at objects, so let's pretend nothing 
 else exists." And it's what made Haskell into something that practically no 
 one uses for real-world work: "Haskell's really good at functional. So let's 
 pretend nothing else exists." Of course, what makes D so great is that we 
 all know perfectly well it tries to do a variety of things well, which is 
 actually in contrast to what you're saying here.
 
 I can certainly understand the impossibility of actually keeping up with 
 bearophile, but I don't think that even he expects that every idea he brings 
 up be rushed into D.
Balance is, of course, essential. So is prioritizing what is important and what is not.
Oct 30 2010
prev sibling next sibling parent reply "Paulo Pinto" <pjmlp progtools.org> writes:
Well, let me say that both languages seem to be doing much better than D.

Java like it or not, is the number one language in Europe. If you know Java 
or
C++ well, even with the current crisis, it's quite easy to get a job in the 
IT sector.

As for Haskell, for sure it is an academic language but it gets much more 
industry
support than D has. Lets not forget that its development is sponsored by 
Microsoft.

http://software.intel.com/en-us/blogs/2010/05/27/announcing-intel-concurrent-collections-for-haskell-01/
http://www.haskell.org/haskellwiki/Haskell_in_industry
http://cufp.org/conference

I agree with bearophile, if you want D to become more visible in the 
industry, it needs to
be more stable, have tools and a clearer image.

I came to this forums, after reading the TDPL, a few months ago, when I was 
getting into Go,
and wanted to see what D was about.

What I found is that D also shares some fate with Java. Many people have a 
bad opinion about
Java due to issues that are no longer true. In D's case many people still 
refer to Tango\Phobos
issues and community issues.

Even though I have no use for D on my line of work, I have found nice 
community and wish all the best
for the language.


--
Paulo

"Nick Sabalausky" <a a.a> wrote in message 
news:iaig3k$27oc$1 digitalmars.com...
 "Nick Sabalausky" <a a.a> wrote in message 
 news:iaifev$26jn$1 digitalmars.com...
 "Walter Bright" <newshound2 digitalmars.com> wrote in message 
 news:iaiehl$24s1$1 digitalmars.com...
 bearophile wrote:

 If you focus only on your strong points you will not improve yourself,
 this is a basic rule for any serious artist or athlete.
Would you criticize a long distance runner for being lousy at wrestling? Shouldn't a long distance runner focus on what he's good at - long distance running?
Tell that to Bo Jackson! :)
On a more serious note though, just focusing on what something's good at amounts to wearing blinders and is exactly what turned Java into a puritanical piece of shit: "Java's good at objects, so let's pretend nothing else exists." And it's what made Haskell into something that practically no one uses for real-world work: "Haskell's really good at functional. So let's pretend nothing else exists." Of course, what makes D so great is that we all know perfectly well it tries to do a variety of things well, which is actually in contrast to what you're saying here. I can certainly understand the impossibility of actually keeping up with bearophile, but I don't think that even he expects that every idea he brings up be rushed into D.
Oct 31 2010
parent Peter Alexander <peter.alexander.au gmail.com> writes:
On 31/10/10 10:59 AM, Paulo Pinto wrote:
 What I found is that D also shares some fate with Java. Many people have a
 bad opinion about
 Java due to issues that are no longer true. In D's case many people still
 refer to Tango\Phobos
 issues and community issues.
These things go away with time. People used to complain about terrible template support in C++ compilers, but not any more. I definitely agree that D needs more stability and tools. These things will come with time as well. I also think that D needs some killer app(s) that people will look at and think "Oh, that was made with D? Maybe I should have a look at learning it..." Nothing shows what a language is capable of more than the apps that are made using it.
Oct 31 2010
prev sibling parent reply "Simen kjaeraas" <simen.kjaras gmail.com> writes:
Nick Sabalausky <a a.a> wrote:

 I can certainly understand the impossibility of actually keeping up with
 bearophile, but I don't think that even he expects that every idea he  
 brings
 up be rushed into D.
Yeah, I always see bearophile's lists as 'maybe some of this could fit in D at some point'. Well worth having on the list, but not to be regarded as The Bearer of Absolute Commandments. That said, I fully understand that Walter could get more tired of it than do I - I don't feel the pressure. -- Simen
Oct 31 2010
next sibling parent reply retard <re tard.com.invalid> writes:
Sun, 31 Oct 2010 16:48:47 +0100, Simen kjaeraas wrote:

 Nick Sabalausky <a a.a> wrote:
 
 I can certainly understand the impossibility of actually keeping up
 with bearophile, but I don't think that even he expects that every idea
 he brings
 up be rushed into D.
Yeah, I always see bearophile's lists as 'maybe some of this could fit in D at some point'. Well worth having on the list, but not to be regarded as The Bearer of Absolute Commandments. That said, I fully understand that Walter could get more tired of it than do I - I don't feel the pressure.
Bearophile often compares DMD to world class products such as LLVM. Even though Walter might be the best compiler writer in this world, he can't compete with a motivated team of professionals. The Intel C++ compiler, GCC, and LLVM teams are simply much bigger and well paid. Same things with DMDScript vs Google's Javascript engine. It's almost impossible to compete with these big teams. If you need performance, you probably use these tools instead.
Oct 31 2010
parent reply Walter Bright <newshound2 digitalmars.com> writes:
retard wrote:
 Bearophile often compares DMD to world class products such as LLVM. Even 
 though Walter might be the best compiler writer in this world, he can't 
 compete with a motivated team of professionals.
What irritated me about bearophile's comparison of dmd to LLVM is he would say things like dmd didn't do data flow analysis (it does) and that it had poor integer arithmetic code gen (the integer arithmetic was the same) that it didn't do common loop optimizations (it did), etc.
 The Intel C++ compiler, 
 GCC, and LLVM teams are simply much bigger and well paid.
Yes, I know people just assume dmd doesn't do things because it is a small team. My favorite was the assumption that dmd didn't do the Named Return Value optimization, an optimization I invented back in 1990. Back in the days of competitive compiler benchmarks, my compiler often won them, up against those well paid huge compiler teams from MS, Borland, etc. A friend told me once that the head of one large company used to yell down the halls how come Walter sitting over his garage can beat you guys. That made me feel good.
 Same things 
 with DMDScript vs Google's Javascript engine. It's almost impossible to 
 compete with these big teams. If you need performance, you probably use 
 these tools instead.
I have to laugh at that. When DMDScript was created, back in 2001, it was twice as fast as Microsoft's Jscript, and *twenty* times faster than Mozilla's javascript. All from little ole me. It passed Sun's javascript validation suite, and was sold by sun as part of their Chilicom software (the C++ version). I haven't worked on it in 10 years, though, because of a lack of customer interest in it. It took the others 10 years to catch up. Where the large teams pay off, though, is the breadth of the offering.
Oct 31 2010
next sibling parent reply Russel Winder <russel russel.org.uk> writes:
On Sun, 2010-10-31 at 11:14 -0700, Walter Bright wrote:
[ . . . ]
 Yes, I know people just assume dmd doesn't do things because it is a smal=
l team.=20 [ . . . ]
 Where the large teams pay off, though, is the breadth of the offering.
I appreciate this is going off topic somewhat for the list, never mind the original posting, but I think summarizing this issue should be constructive -- albeit me seemingly acting as Devil's Advocate. (NB This is not a troll, for me these are serious issues -- I am a consultant and therefore whilst I do no significant development on big projects, I advise influencers and decision makers.) The marketing problem for D, at least as it impinges on me, is that it is "Walter's language with Andrei helping out". No matter that this may be an unfair and incorrect representation of reality overall, it is nonetheless what the project management and CTO/CIO community perceive of D, if they have heard of it at all. Let us assume the competition that D aims at is C, C++ and Go. I think we can ignore the VM-based community for now in this as they are either C/C++/Python/Lua or Java/Scala/Groovy/Clojure/C/C++ centred with little chance of looking for alternatives. Where the "native code" and "virtual machine" communities have overlap, it is generally handled by build, usually using SCons, Waf, or some home-grown equivalent. C and C++ have international standards, multiple compliant (!) realizations, huge vendor support, a long history, and much tooling. Go has Google behind it. D is perceived as a collection of "one-man band" bits with a few hangers-on. In this light, there is no way for D to have any traction, even if it is technically a better language than any of the actual competition. In order to get the ability to get traction, I see two main ways forward: 1. A big company gets involved and provides resources to ramp up on the productization of the end-to-end toolchain and library support -- so all of IDE support Qt, GTK libraries, etc. -- and gets some seriously high-profile projects using D. 2. The project goes fully open source with a core of 5 or 6 people, supported by employers or via some form of sponsorship, actively working nigh on full time to ramp up on the productization of the end-to-end toolchain and library support -- so all of IDE support Qt, GTK libraries, etc. -- and gets some seriously high-profile projects using D. Over the roughly four to five years I have known about D very little has seemed to change in the organization and marketing of the language and its development. The technical quality is there, the intention is there, but the realization of the dream has had no constructive effort. The ACCU conference has a couple of talks on or mentioning D each year, but there is nothing in between, There seems to be no "D buzz", even in London. Compare this to the "buzz" in London about Go. Not to mention the continued interest and "buzz" around C, C++, Java, Scala, Clojure, etc. Some (arguably rhetorical) questions: -- Why did Google push Go rather than use D when they became dissatisfied with C, C++, etc. -- Can D be used for the native clients in the web applications arena that seem to be coming, cf. Go's NaCl. -- Why don't ThoughtWorks use Go and D, but push Clojure and Ruby? -- How come no recruitment agent cares about D experience (or lack of it)? -- What will make companies take the risk and use D for a project instead of C++? Or put another way why do companies just use C and C++ even ion the face of better alternatives? Actually I know the answers to the last two and they have no basis in technical issues. Having already written half an essay, I think I will leave it there. I really would like to see D get some serious traction, but to be honest with the way things have and continue to go, I have doubts. Can I be proved wrong? --=20 Russel. =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D Dr Russel Winder t: +44 20 7585 2200 voip: sip:russel.winder ekiga.n= et 41 Buckmaster Road m: +44 7770 465 077 xmpp: russel russel.org.uk London SW11 1EN, UK w: www.russel.org.uk skype: russel_winder
Oct 31 2010
next sibling parent bearophile <bearophileHUGS lycos.com> writes:
Russel Winder:

--  Why did Google push Go rather than use D when they became dissatisfied with
C, C++, etc.
I don't know the answer, but maybe the answer is inside the Google C++ style guide, this document disallows most of the features of C++. So it seems Google doesn't want 3/4 of the features of D2. And maybe inside Google Pike and other people prefer to invent a new language.
--  Can D be used for the native clients in the web applications arena that
seem to be coming, cf. Go's NaCl.
NaCl seems a nice idea, but I think so far no one is using it. It's in Chrome, so things may eventually change. Bye, bearophile
Oct 31 2010
prev sibling next sibling parent reply Walter Bright <newshound2 digitalmars.com> writes:
Russel Winder wrote:
 I appreciate this is going off topic somewhat for the list, never mind
 the original posting, but I think summarizing this issue should be
 constructive -- albeit me seemingly acting as Devil's Advocate.  (NB
 This is not a troll, for me these are serious issues -- I am a
 consultant and therefore whilst I do no significant development on big
 projects, I advise influencers and decision makers.)
 
 The marketing problem for D, at least as it impinges on me, is that it
 is "Walter's language with Andrei helping out".  No matter that this may
 be an unfair and incorrect representation of reality overall, it is
 nonetheless what the project management and CTO/CIO community perceive
 of D, if they have heard of it at all.
Most (all?) languages have one or two prime designers behind it. What mystifies me is why this is considered a bad thing for D.
 Let us assume the competition that D aims at is C, C++ and Go.  I think
 we can ignore the VM-based community for now in this as they are either
 C/C++/Python/Lua or Java/Scala/Groovy/Clojure/C/C++ centred with little
 chance of looking for alternatives.  Where the "native code" and
 "virtual machine" communities have overlap, it is generally handled by
 build, usually using SCons, Waf, or some home-grown equivalent.
 
 C and C++ have international standards, multiple compliant (!)
 realizations, huge vendor support, a long history, and much tooling.  Go
 has Google behind it.
C and C++ existed and were successful long before any of those standards existed. C++ was "Bjarne's language" for 15 years, and that did not impair it. C, of course, is Kernighan and Ritchie's. Perl is Larry Wall's. Python is Guido van Rossum's. And on and on. (Perl, Python, Ruby, have only one implementation.)
 D is perceived as a collection of "one-man band" bits with a few
 hangers-on.  In this light, there is no way for D to have any traction,
 even if it is technically a better language than any of the actual
 competition.
Yet other successful languages follow this same model. Why is it bad for D? I suspect it really is some other issue.
 In order to get the ability to get traction, I see two main ways
 forward:
 
 1.  A big company gets involved and provides resources to ramp up on the
 productization of the end-to-end toolchain and library support -- so all
 of IDE support Qt, GTK libraries, etc. -- and gets some seriously
 high-profile projects using D.
I agree that would help enormously.
 2.  The project goes fully open source with a core of 5 or 6 people,
 supported by employers or via some form of sponsorship, actively working
 nigh on full time to ramp up on the productization of the end-to-end
 toolchain and library support -- so all of IDE support Qt, GTK
 libraries, etc. -- and gets some seriously high-profile projects using
 D.
D is fully open source.
 Over the roughly four to five years I have known about D very little has
 seemed to change in the organization and marketing of the language and
 its development.  The technical quality is there, the intention is
 there, but the realization of the dream has had no constructive effort.
 The ACCU conference has a couple of talks on or mentioning D each year,
 but there is nothing in between, There seems to be no "D buzz", even in
 London.  Compare this to the "buzz" in London about Go.  Not to mention
 the continued interest and "buzz" around C, C++, Java, Scala, Clojure,
 etc.
 
 Some (arguably rhetorical) questions:
 
 --  Why did Google push Go rather than use D when they became
 dissatisfied with C, C++, etc.
 
 --  Can D be used for the native clients in the web applications arena
 that seem to be coming, cf. Go's NaCl.
 
 --  Why don't ThoughtWorks use Go and D, but push Clojure and Ruby?
 
 --  How come no recruitment agent cares about D experience (or lack of
 it)?
 
 --  What will make companies take the risk and use D for a project
 instead of C++?  Or put another way why do companies just use C and C++
 even ion the face of better alternatives?
 
 Actually I know the answers to the last two and they have no basis in
 technical issues.
 
 Having already written half an essay, I think I will leave it there.  I
 really would like to see D get some serious traction, but to be honest
 with the way things have and continue to go, I have doubts.  Can I be
 proved wrong?
Sometimes I feel people are just waiting around, wanting to use D, but waiting for someone else to make the first move. It's like a dance club, where everyone sits on their toes wanting to go out on the floor, but unwilling to be the first. As soon as someone does, whoosh, everyone follows.
Oct 31 2010
next sibling parent retard <re tard.com.invalid> writes:
Sun, 31 Oct 2010 14:12:04 -0700, Walter Bright wrote:

 Russel Winder wrote:
 I appreciate this is going off topic somewhat for the list, never mind
 the original posting, but I think summarizing this issue should be
 constructive -- albeit me seemingly acting as Devil's Advocate.  (NB
 This is not a troll, for me these are serious issues -- I am a
 consultant and therefore whilst I do no significant development on big
 projects, I advise influencers and decision makers.)
 
 The marketing problem for D, at least as it impinges on me, is that it
 is "Walter's language with Andrei helping out".  No matter that this
 may be an unfair and incorrect representation of reality overall, it is
 nonetheless what the project management and CTO/CIO community perceive
 of D, if they have heard of it at all.
Most (all?) languages have one or two prime designers behind it. What mystifies me is why this is considered a bad thing for D.
It's considered a bad thing when the users disagree with the design decisions. Those who have faith in the language continue to criticize / rant / provide patches and wish it would improve. Others just leave the sinking ship.
 (Perl, Python, Ruby, have only one implementation.)
Is this a joke?
 D is perceived as a collection of "one-man band" bits with a few
 hangers-on.  In this light, there is no way for D to have any traction,
 even if it is technically a better language than any of the actual
 competition.
Yet other successful languages follow this same model. Why is it bad for D? I suspect it really is some other issue.
I've never gotten the impression that e.g. JavaScript/PHP/Python/Ruby/ Scala/Haskell were one man bands. C++ used to be a one man project, but now there's the committee. ISO/ANSI standards rarely are one man projects.
 2.  The project goes fully open source with a core of 5 or 6 people,
 supported by employers or via some form of sponsorship, actively
 working nigh on full time to ramp up on the productization of the
 end-to-end toolchain and library support -- so all of IDE support Qt,
 GTK libraries, etc. -- and gets some seriously high-profile projects
 using D.
D is fully open source.
DMD has a non open source backend ( http://www.opensource.org/docs/osd ), but the D language is of course open. There aren't many "closed source" languages out there. It would help if that backend was completely abandoned and something like LLVM was used instead. DMD and LDC teams could join their forces and implement something much faster. The other LLVM developers independently improve the backend optimizations.
Oct 31 2010
prev sibling next sibling parent reply dsimcha <dsimcha yahoo.com> writes:
== Quote from Walter Bright (newshound2 digitalmars.com)'s article
 van Rossum's. And on and on. (Perl, Python, Ruby, have only one
implementation.)
Nitpick (since your overall post was mostly on target): Python has Jython and IronPython and PyPy. Ruby has JRuby and IronRuby.
Oct 31 2010
parent reply Walter Bright <newshound2 digitalmars.com> writes:
dsimcha wrote:
 == Quote from Walter Bright (newshound2 digitalmars.com)'s article
 van Rossum's. And on and on. (Perl, Python, Ruby, have only one
implementation.)
Nitpick (since your overall post was mostly on target): Python has Jython and IronPython and PyPy. Ruby has JRuby and IronRuby.
Those came along *much* later, like more than a decade *after* those languages were successful.
Oct 31 2010
next sibling parent Jimmy Cao <jcao219 gmail.com> writes:
Interestingly, what goes along with the discussion about the perception of D
as a language is what happened to IronPython and IronRuby.  Microsoft
initially showed a whole lot of support for those two languages, and
assembled teams to work on both.  That caused a big surge in their
popularities.  Of course, later Microsoft kinda lost interest and IronRuby
was first "dropped" and recently Microsoft announced it was no longer
supporting IronPython.  So, I think having a strong community behind an
open-source language is desirable instead of having corporate support.
 Because of their communities, the IronPython and IronRuby projects are
still alive right now.

On Sun, Oct 31, 2010 at 5:27 PM, Walter Bright
<newshound2 digitalmars.com>wrote:

 dsimcha wrote:

 == Quote from Walter Bright (newshound2 digitalmars.com)'s article

 van Rossum's. And on and on. (Perl, Python, Ruby, have only one
 implementation.)
Nitpick (since your overall post was mostly on target): Python has Jython and IronPython and PyPy. Ruby has JRuby and IronRuby.
Those came along *much* later, like more than a decade *after* those languages were successful.
Oct 31 2010
prev sibling parent reply retard <re tard.com.invalid> writes:
Sun, 31 Oct 2010 15:27:03 -0700, Walter Bright wrote:

 dsimcha wrote:
 == Quote from Walter Bright (newshound2 digitalmars.com)'s article
 van Rossum's. And on and on. (Perl, Python, Ruby, have only one
 implementation.)
Nitpick (since your overall post was mostly on target): Python has Jython and IronPython and PyPy. Ruby has JRuby and IronRuby.
Those came along *much* later, like more than a decade *after* those languages were successful.
His point was: there *are* other implementations. Other than that, the daily portion of bullshit talk from you is impressive. "Around 2005, interest in the Ruby language surged in tandem with Ruby on Rails, a popular web application framework written in Ruby. Rails is frequently credited with making Ruby "famous" and the association is so strong that the two are sometimes conflated by programmers who are new to Ruby.[9]" [1] "JRuby was originally created by Jan Arne Petersen, in 2001. At that time and for several years following, the code was a direct port of the Ruby 1.6 C code. With the release of Ruby 1.8.6, an effort began to update JRuby to 1.8.6 features and semantics. Since 2001, several contributors have assisted the project, leading to the current (2008) core team of four members." [2] "On April 30, 2007, at MIX 2007, Microsoft announced IronRuby, which uses the same name as Wilco Bauwer's IronRuby project with permission.[3] It was planned to be released to the public at OSCON 2007.[4]" [3] My interpretation: JRuby existed before Ruby was famous. IronRuby was started pretty much because of the Rails hype. A lot of other CLR projects were also started at that time, though. It couldn't have started a lot earlier because of the immaturity of CLR. I don't use Python that much so I have no idea when it really got popular. The code swarm video [4] gives some impressions. It looks like in 2000 it finally took off. Jython started in 1997 and moved to sourceforge in 2000 [5]. IronPython was announced in 2006 [6]. Conclusion: 1997-2000 = -3 and 2006-2000 = 6 are a lot less than a "*much* later, like more than a decade".. [1] http://en.wikipedia.org/wiki/Ruby_(programming_language) [2] http://en.wikipedia.org/wiki/JRuby [3] http://en.wikipedia.org/wiki/IronRuby [4] http://www.vimeo.com/1093745 [5] http://en.wikipedia.org/wiki/Jython [6] http://en.wikipedia.org/wiki/IronPython
Oct 31 2010
parent reply Walter Bright <newshound2 digitalmars.com> writes:
retard wrote:
 "Around 2005, interest in the Ruby language surged in tandem with Ruby on 
 Rails, a popular web application framework written in Ruby. Rails is 
 frequently credited with making Ruby "famous" and the association is so 
 strong that the two are sometimes conflated by programmers who are new to 
 Ruby.[9]" [1]
I have the second edition of "Programming Ruby", the definitive book on Ruby. Ruby was first released in 1995, and the first edition in 2000, and there never would have been a second edition if it wasn't famous.
 "JRuby was originally created by Jan Arne Petersen, in 2001. At that time 
 and for several years following, the code was a direct port of the Ruby 
 1.6 C code. With the release of Ruby 1.8.6, an effort began to update 
 JRuby to 1.8.6 features and semantics. Since 2001, several contributors 
 have assisted the project, leading to the current (2008) core team of 
 four members." [2]
 
 "On April 30, 2007, at MIX 2007, Microsoft announced IronRuby, which uses 
 the same name as Wilco Bauwer's IronRuby project with permission.[3] It 
 was planned to be released to the public at OSCON 2007.[4]" [3]
 
 My interpretation: JRuby existed before Ruby was famous.
As you said, it was the same source code. That doesn't count.
 I don't use Python that much so I have no idea when it really got 
 popular.
Python was started in 1989. I remember a fair amount of buzz about it in 1997. My 1999 book on Python claims it is "becoming mainstream". The code swarm video [4] gives some impressions. It looks like in
 2000 it finally took off. Jython started in 1997 and moved to sourceforge 
 in 2000 [5]. IronPython was announced in 2006 [6].
This account http://hugunin.net/story_of_jython.html says that the creator of Jython worked with Guido personally. That suggests it, too, at least started as a port of Python. "This gave me the wonderful opportunity to work closely with many of the key Python developers there, including Guido van Rossum himself." By the way, Cristi has created a .net implementation of D. Does that count?
Oct 31 2010
parent Bruno Medeiros <brunodomedeiros+spam com.gmail> writes:
On 31/10/2010 23:20, Walter Bright wrote:
 retard wrote:
 "Around 2005, interest in the Ruby language surged in tandem with Ruby
 on Rails, a popular web application framework written in Ruby. Rails
 is frequently credited with making Ruby "famous" and the association
 is so strong that the two are sometimes conflated by programmers who
 are new to Ruby.[9]" [1]
I have the second edition of "Programming Ruby", the definitive book on Ruby. Ruby was first released in 1995, and the first edition in 2000, and there never would have been a second edition if it wasn't famous.
Whoa, I didnt imagine Ruby to be that old, I didn't think it went back to before the 2000s ... -- Bruno Medeiros - Software Engineer
Nov 24 2010
prev sibling next sibling parent reply Jeff Nowakowski <jeff dilacero.org> writes:
On 10/31/2010 05:12 PM, Walter Bright wrote:
 D is fully open source.
No, Walter, it isn't, and you should know this by now considering all the past discussion. All the back-end work you're doing is "source available". "Open source" was coined in 1998 by people with a precise meaning: See http://www.opensource.org/docs/osd and http://www.opensource.org/history . In particular, free redistribution and derived works are fundamental to the open source definition.
Oct 31 2010
next sibling parent reply Walter Bright <newshound2 digitalmars.com> writes:
Jeff Nowakowski wrote:
 On 10/31/2010 05:12 PM, Walter Bright wrote:
 D is fully open source.
No, Walter, it isn't, and you should know this by now considering all the past discussion. All the back-end work you're doing is "source available". "Open source" was coined in 1998 by people with a precise meaning: See http://www.opensource.org/docs/osd and http://www.opensource.org/history . In particular, free redistribution and derived works are fundamental to the open source definition.
Yes, and GDC and LDC are 100% GPL.
Oct 31 2010
parent reply Jeff Nowakowski <jeff dilacero.org> writes:
On 10/31/2010 06:30 PM, Walter Bright wrote:
 Yes, and GDC and LDC are 100% GPL.
That's nice, except that neither are suitable as a replacement for your proprietary D2 compiler, which is the reference compiler and where all the bleeding edge work is done. So strong statements like "D is fully open source" are misleading. The open source compilers are always playing catch-up, and the people that could be helping you out on the compiler are instead replicating your efforts.
Oct 31 2010
parent reply Walter Bright <newshound2 digitalmars.com> writes:
Jeff Nowakowski wrote:
 On 10/31/2010 06:30 PM, Walter Bright wrote:
 Yes, and GDC and LDC are 100% GPL.
That's nice, except that neither are suitable as a replacement for your proprietary D2 compiler, which is the reference compiler and where all the bleeding edge work is done. So strong statements like "D is fully open source" are misleading. The open source compilers are always playing catch-up, and the people that could be helping you out on the compiler are instead replicating your efforts.
I don't agree. There's very little, almost no, D specific support in the dmd back end. It's a C compiler back end. Nearly all the work is done in the front end, which should be little more than a cut & paste job for LDC and GDC once they are already up and running with the front end. The bugfix patches are nearly all tagged with specific updates to the source, so any one critical patch can be easily applied. There are 3 D compilers, 2.5 of which are GPL, and the source is available for the rest.
Oct 31 2010
next sibling parent reply Jeff Nowakowski <jeff dilacero.org> writes:
On 10/31/2010 09:29 PM, Walter Bright wrote:
 I don't agree. There's very little, almost no, D specific support in the
 dmd back end. It's a C compiler back end. Nearly all the work is done in
 the front end, which should be little more than a cut & paste job for
 LDC and GDC once they are already up and running with the front end.
Are they using the front end?
 The bugfix patches are nearly all tagged with specific updates to the
 source, so any one critical patch can be easily applied.

 There are 3 D compilers, 2.5 of which are GPL, and the source is
 available for the rest.
First, 2.5/3.0 is not "fully open source". Second, as of yet, there is no open source compiler for D2 comparable with DMD, never mind any demonstration that it can keep up with any changes in the reference compiler.
Oct 31 2010
parent Walter Bright <newshound2 digitalmars.com> writes:
Jeff Nowakowski wrote:
 On 10/31/2010 09:29 PM, Walter Bright wrote:
 I don't agree. There's very little, almost no, D specific support in the
 dmd back end. It's a C compiler back end. Nearly all the work is done in
 the front end, which should be little more than a cut & paste job for
 LDC and GDC once they are already up and running with the front end.
Are they using the front end?
Yes.
Oct 31 2010
prev sibling next sibling parent reply dsimcha <dsimcha yahoo.com> writes:
== Quote from Walter Bright (newshound2 digitalmars.com)'s article
 Jeff Nowakowski wrote:
 On 10/31/2010 06:30 PM, Walter Bright wrote:
 Yes, and GDC and LDC are 100% GPL.
That's nice, except that neither are suitable as a replacement for your proprietary D2 compiler, which is the reference compiler and where all the bleeding edge work is done. So strong statements like "D is fully open source" are misleading.
> The
 open source compilers are always playing catch-up, and the people that
 could be helping you out on the compiler are instead replicating your
 efforts.
I don't agree. There's very little, almost no, D specific support in the dmd back end. It's a C compiler back end. Nearly all the work is done in the front end, which should be little more than a cut & paste job for LDC and GDC once they are already up and running with the front end. The bugfix patches are nearly all tagged with specific updates to the source, so any one critical patch can be easily applied. There are 3 D compilers, 2.5 of which are GPL, and the source is available for the rest.
That reminds me: What is the actual status of LDC2? According to the somewhat outdated-looking LDC wiki, it's highly unstable. According to http://bitbucket.org/prokhin_alexey/ldc2 serious progress is being made. Is it in a completely useless state? An alpha state? A beta state? In the bigger picture, the only usable D2 implementation is DMD. This isn't so bad, as non-reference implementations always take awhile to catch up. Jython, for example, is still back on Python 2.5. However, it would be nice if there were multiple *usable* implementations of D2.
Oct 31 2010
parent reply Walter Bright <newshound2 digitalmars.com> writes:
dsimcha wrote:
 In the bigger picture, the only usable D2 implementation is DMD.  This isn't so
 bad, as non-reference implementations always take awhile to catch up.  Jython,
for
 example, is still back on Python 2.5.  However, it would be nice if there were
 multiple *usable* implementations of D2.
I don't understand why there would be any technical reasons why a D1 compiler using the dmd front end could not relatively trivially upgrade to D2. I can't think of any back end changes necessary to support D2, other than some trivial changes to the symbolic debug info, which are not strictly necessary. Additionally, if the LDC or GDC teams have suggestions on changes to the front end that will make their work easier, I'm not hard to find!
Oct 31 2010
parent reply Iain Buclaw <ibuclaw ubuntu.com> writes:
== Quote from Walter Bright (newshound2 digitalmars.com)'s article
 dsimcha wrote:
 In the bigger picture, the only usable D2 implementation is DMD.  This isn't so
 bad, as non-reference implementations always take awhile to catch up.  Jython,
for
 example, is still back on Python 2.5.  However, it would be nice if there were
 multiple *usable* implementations of D2.
I don't understand why there would be any technical reasons why a D1 compiler using the dmd front end could not relatively trivially upgrade to D2.
For the most part, the incremental updates I've been doing with GDC have lots of (what turned out to be) trivial changes. Add those changes all up though... :~)
 I can't think of any back end changes necessary to support D2, other
 than some trivial changes to the symbolic debug info, which are not
 strictly necessary.
The only feature I've come across that looks set to me (finally) making changes to the backed are with implementing in/out contract inheritance, but that's a D1 feature too...
 Additionally, if the LDC or GDC teams have suggestions on changes to the front
 end that will make their work easier, I'm not hard to find!
In a month, the GDC project may be in such a position (up to date + stable) that I will likely do so.
Nov 01 2010
next sibling parent Walter Bright <newshound2 digitalmars.com> writes:
Iain Buclaw wrote:
 == Quote from Walter Bright (newshound2 digitalmars.com)'s article
 dsimcha wrote:
 In the bigger picture, the only usable D2 implementation is DMD.  This isn't so
 bad, as non-reference implementations always take awhile to catch up.  Jython,
for
 example, is still back on Python 2.5.  However, it would be nice if there were
 multiple *usable* implementations of D2.
I don't understand why there would be any technical reasons why a D1 compiler using the dmd front end could not relatively trivially upgrade to D2.
For the most part, the incremental updates I've been doing with GDC have lots of (what turned out to be) trivial changes. Add those changes all up though... :~)
 I can't think of any back end changes necessary to support D2, other
 than some trivial changes to the symbolic debug info, which are not
 strictly necessary.
The only feature I've come across that looks set to me (finally) making changes to the backed are with implementing in/out contract inheritance, but that's a D1 feature too...
Yup, make it work for one and you do for both.
 Additionally, if the LDC or GDC teams have suggestions on changes to the front
 end that will make their work easier, I'm not hard to find!
In a month, the GDC project may be in such a position (up to date + stable) that I will likely do so.
Great!
Nov 01 2010
prev sibling parent reply Andrei Alexandrescu <SeeWebsiteForEmail erdani.org> writes:
On 11/1/10 3:26 AM, Iain Buclaw wrote:
 == Quote from Walter Bright (newshound2 digitalmars.com)'s article
 dsimcha wrote:
 In the bigger picture, the only usable D2 implementation is DMD.  This isn't so
 bad, as non-reference implementations always take awhile to catch up.  Jython,
for
 example, is still back on Python 2.5.  However, it would be nice if there were
 multiple *usable* implementations of D2.
I don't understand why there would be any technical reasons why a D1 compiler using the dmd front end could not relatively trivially upgrade to D2.
For the most part, the incremental updates I've been doing with GDC have lots of (what turned out to be) trivial changes. Add those changes all up though... :~)
 I can't think of any back end changes necessary to support D2, other
 than some trivial changes to the symbolic debug info, which are not
 strictly necessary.
The only feature I've come across that looks set to me (finally) making changes to the backed are with implementing in/out contract inheritance, but that's a D1 feature too...
 Additionally, if the LDC or GDC teams have suggestions on changes to the front
 end that will make their work easier, I'm not hard to find!
In a month, the GDC project may be in such a position (up to date + stable) that I will likely do so.
I wonder what we can do about increasing GDC's exposure. One common pattern is that people look for GDC, find the defunct version, and conclude that there's no work on it. Andrei
Nov 01 2010
next sibling parent Iain Buclaw <ibuclaw ubuntu.com> writes:
== Quote from Andrei Alexandrescu (SeeWebsiteForEmail erdani.org)'s article
 On 11/1/10 3:26 AM, Iain Buclaw wrote:
 == Quote from Walter Bright (newshound2 digitalmars.com)'s article
 dsimcha wrote:
 In the bigger picture, the only usable D2 implementation is DMD.  This isn't so
 bad, as non-reference implementations always take awhile to catch up.
Jython, for
 example, is still back on Python 2.5.  However, it would be nice if there were
 multiple *usable* implementations of D2.
I don't understand why there would be any technical reasons why a D1 compiler using the dmd front end could not relatively trivially upgrade to D2.
For the most part, the incremental updates I've been doing with GDC have lots of (what turned out to be) trivial changes. Add those changes all up though... :~)
 I can't think of any back end changes necessary to support D2, other
 than some trivial changes to the symbolic debug info, which are not
 strictly necessary.
The only feature I've come across that looks set to me (finally) making changes to the backed are with implementing in/out contract inheritance, but that's a D1 feature too...
 Additionally, if the LDC or GDC teams have suggestions on changes to the front
 end that will make their work easier, I'm not hard to find!
In a month, the GDC project may be in such a position (up to date + stable) that I will likely do so.
I wonder what we can do about increasing GDC's exposure. One common pattern is that people look for GDC, find the defunct version, and conclude that there's no work on it. Andrei
I'm not sure how reachable David is, though someone mentioned that Arthur Loiret is an admin at the sourceforge page, to whom I should be able to get hold of (have some weak ties through Debian with him) and ask if he could update the main page to point people in the right direction.. Iain
Nov 01 2010
prev sibling parent reply Michel Fortin <michel.fortin michelf.com> writes:
On 2010-11-01 11:02:02 -0400, Andrei Alexandrescu 
<SeeWebsiteForEmail erdani.org> said:

 On 11/1/10 3:26 AM, Iain Buclaw wrote:
 In a month, the GDC project may be in such a position (up to date + 
 stable) that I
 will likely do so.
I wonder what we can do about increasing GDC's exposure. One common pattern is that people look for GDC, find the defunct version, and conclude that there's no work on it.
Once GDC is current and stable on Mac OS X, I should be able to add it to my D for Xcode installer. -- Michel Fortin michel.fortin michelf.com http://michelf.com/
Nov 01 2010
next sibling parent bioinfornatics <bioinfornatics fedoraproject.org> writes:
why talk about gdc on LDC2 thread?
Nov 01 2010
prev sibling parent reply Iain Buclaw <ibuclaw ubuntu.com> writes:
== Quote from Michel Fortin (michel.fortin michelf.com)'s article
 On 2010-11-01 11:02:02 -0400, Andrei Alexandrescu
 <SeeWebsiteForEmail erdani.org> said:
 On 11/1/10 3:26 AM, Iain Buclaw wrote:
 In a month, the GDC project may be in such a position (up to date +
 stable) that I
 will likely do so.
I wonder what we can do about increasing GDC's exposure. One common pattern is that people look for GDC, find the defunct version, and conclude that there's no work on it.
Once GDC is current and stable on Mac OS X, I should be able to add it to my D for Xcode installer.
I'm not lavish enough to own one, so I am limited to what I can do there. :~) I pushed patches for the current apple-gcc (5664) recently. It's based on GCC-4.2, so I can imagine no problems with it. Just need someone who can build, test, and send feedback on progress. BTW: How is LDC2 doing? I don't think anyone has mentioned just *where* they are in the whole scheme of things. Iain
Nov 01 2010
parent Jacob Carlborg <doob me.com> writes:
On 2010-11-01 21:18, Iain Buclaw wrote:
 == Quote from Michel Fortin (michel.fortin michelf.com)'s article
 On 2010-11-01 11:02:02 -0400, Andrei Alexandrescu
 <SeeWebsiteForEmail erdani.org>  said:
 On 11/1/10 3:26 AM, Iain Buclaw wrote:
 In a month, the GDC project may be in such a position (up to date +
 stable) that I
 will likely do so.
I wonder what we can do about increasing GDC's exposure. One common pattern is that people look for GDC, find the defunct version, and conclude that there's no work on it.
Once GDC is current and stable on Mac OS X, I should be able to add it to my D for Xcode installer.
I'm not lavish enough to own one, so I am limited to what I can do there. :~) I pushed patches for the current apple-gcc (5664) recently. It's based on GCC-4.2, so I can imagine no problems with it. Just need someone who can build, test, and send feedback on progress. BTW: How is LDC2 doing? I don't think anyone has mentioned just *where* they are in the whole scheme of things. Iain
If I recall correctly GDC didn't build on Mac OS X. Your patches applied successfully but it didn't build. The problem is I could only build GCC the Apple way and not the FSF way. If I build it the Apple way the D specific code doesn't seem to be recognized. -- /Jacob Carlborg
Nov 02 2010
prev sibling parent reply SK <sk metrokings.com> writes:
On Sun, Oct 31, 2010 at 6:29 PM, Walter Bright
<newshound2 digitalmars.com> wrote:
 I don't agree. There's very little, almost no, D specific support in the dmd
 back end. It's a C compiler back end. Nearly all the work is done in the
 front end, which should be little more than a cut & paste job for LDC and
 GDC once they are already up and running with the front end.
As a casual observer of D, I've wondered in the past: why isn't D2 and the D community in general already using LLVM's backend by default? Seems that compiler back-ends are full of nitty-gritty details and relatively unglamorous work. This post makes me think there is nothing in the way, so why not just rally around LLVM and spend the time savings on more D-centric issues?
Oct 31 2010
parent reply Andrei Alexandrescu <SeeWebsiteForEmail erdani.org> writes:
On 10/31/10 10:38 PM, SK wrote:
 On Sun, Oct 31, 2010 at 6:29 PM, Walter Bright
 <newshound2 digitalmars.com>  wrote:
 I don't agree. There's very little, almost no, D specific support in the dmd
 back end. It's a C compiler back end. Nearly all the work is done in the
 front end, which should be little more than a cut&  paste job for LDC and
 GDC once they are already up and running with the front end.
As a casual observer of D, I've wondered in the past: why isn't D2 and the D community in general already using LLVM's backend by default? Seems that compiler back-ends are full of nitty-gritty details and relatively unglamorous work. This post makes me think there is nothing in the way, so why not just rally around LLVM and spend the time savings on more D-centric issues?
No Windows? Andrei
Oct 31 2010
next sibling parent reply SK <sk metrokings.com> writes:
On Sun, Oct 31, 2010 at 9:19 PM, Andrei Alexandrescu
<SeeWebsiteForEmail erdani.org> wrote:
 No Windows?
My Google-fu shows most complaints related to LLVM on Windows are actually clang problems. I also came across this, but maybe old news here: http://software.intel.com/en-us/blogs/2009/05/27/why-we-chose-llvm/
Oct 31 2010
parent dennis luehring <dl.soluz gmx.net> writes:
On 01.11.2010 05:43, SK wrote:
 On Sun, Oct 31, 2010 at 9:19 PM, Andrei Alexandrescu
 <SeeWebsiteForEmail erdani.org>  wrote:
 No Windows?
My Google-fu shows most complaints related to LLVM on Windows are actually clang problems. I also came across this, but maybe old news here: http://software.intel.com/en-us/blogs/2009/05/27/why-we-chose-llvm/
there is no Windows Exception (SEH) Support in LLVM
Nov 01 2010
prev sibling parent SK <sk metrokings.com> writes:
On Sun, Oct 31, 2010 at 9:43 PM, SK <sk metrokings.com> wrote:
 On Sun, Oct 31, 2010 at 9:19 PM, Andrei Alexandrescu
 <SeeWebsiteForEmail erdani.org> wrote:
 No Windows?
My Google-fu shows most complaints related to LLVM on Windows are actually clang problems. =A0I also came across this, but maybe old news here: http://software.intel.com/en-us/blogs/2009/05/27/why-we-chose-llvm/
On further reading, it seems that the reason LLVM is not the focus is answered in the previous thread about gcc 4.6. To paraphrase, the answer is not just lackluster Windows support, but also that Walter has a professional and business interest in advancing back-end compiler technology. Fair enough.
Oct 31 2010
prev sibling parent reply Christopher Bergqvist <quasiconscious gmail.com> writes:
Would it be possible to organize a "bounty" for having the backend released u=
nder an OSI-approved license?

On Oct 31, 2010, at 22:48, Jeff Nowakowski <jeff dilacero.org> wrote:

 On 10/31/2010 05:12 PM, Walter Bright wrote:
=20
 D is fully open source.
=20 No, Walter, it isn't, and you should know this by now considering all the p=
ast discussion. All the back-end work you're doing is "source available". "O= pen source" was coined in 1998 by people with a precise meaning: See http://= www.opensource.org/docs/osd and http://www.opensource.org/history .
=20
 In particular, free redistribution and derived works are fundamental to th=
e open source definition.
Oct 31 2010
parent reply dsimcha <dsimcha yahoo.com> writes:
== Quote from Christopher Bergqvist (quasiconscious gmail.com)'s article
 Would it be possible to organize a "bounty" for having the backend released u
 nder an OSI-approved license?
Vote++. I understand that this has worked in the past, though I don't remember off the top of my head what the project was.
Oct 31 2010
parent reply =?UTF-8?B?IkrDqXLDtG1lIE0uIEJlcmdlciI=?= <jeberger free.fr> writes:
dsimcha wrote:
 =3D=3D Quote from Christopher Bergqvist (quasiconscious gmail.com)'s ar=
ticle
 Would it be possible to organize a "bounty" for having the backend rel=
eased u
 nder an OSI-approved license?
=20 Vote++. I understand that this has worked in the past, though I don't =
remember
 off the top of my head what the project was.
The first one I know of is Blender. I believe there have been a couple of others since. Jerome --=20 mailto:jeberger free.fr http://jeberger.free.fr Jabber: jeberger jabber.fr
Nov 03 2010
parent Christopher Bergqvist <quasiconscious gmail.com> writes:
Yes, I don't want to run Walter into bankruptcy though. ;)

Honestly, I do think it would change the perception of the language in a ben=
eficial way if one could say that the whole reference compiler infrastructur=
e were _unquestionably_ open source.

On Nov 3, 2010, at 21:17, "J=C3=A9r=C3=B4me M. Berger" <jeberger free.fr> wr=
ote:

 dsimcha wrote:
 =3D=3D Quote from Christopher Bergqvist (quasiconscious gmail.com)'s arti=
cle
 Would it be possible to organize a "bounty" for having the backend relea=
sed u
 nder an OSI-approved license?
=20 Vote++. I understand that this has worked in the past, though I don't re=
member
 off the top of my head what the project was.
=20 The first one I know of is Blender. I believe there have been a couple of others since. =20 Jerome --=20 mailto:jeberger free.fr http://jeberger.free.fr Jabber: jeberger jabber.fr =20
Nov 03 2010
prev sibling parent reply Juanjo Alvarez <fake fakeemail.com> writes:
On Sun, 31 Oct 2010 14:12:04 -0700, Walter Bright 
<newshound2 digitalmars.com> wrote:
 Sometimes I feel people are just waiting around, wanting to use D, 
but waiting
 for someone else to make the first move. It's like a dance club, 
where everyone With Python what happened for some years was that some companies were using it for lots of internal project, but not disclosing its use, for fear that the upper management could scream, "whats that python crap! That is not java! " I know because I worked on one of them (a fortune 100 bank). The same happens with lots of other technologies inside Big Corps (MySQL comes too my mind too), they are first used by programmers and people that know their job in a semi stealth way and later they are accepted by the people whose main job is internal company politics and can't tell the difference of a ref from a pointer. I'm not saying this is the case with D2, I would not use it my daywork production code yet (but my play project at home is already over 5000 lines of code and the last version of dmd fixed all the bugs I stumbled on while developing it), but this is surely going to happen a lot once D2 stabilizes.
Nov 01 2010
parent reply Walter Bright <newshound2 digitalmars.com> writes:
Juanjo Alvarez wrote:
 With Python what happened for some years was that some companies were 
 using it for lots of internal project, but not disclosing its use, for 
 fear that the upper management could scream, "whats that python crap! 
 That is not java! " I know because I worked on one of them (a fortune 
 100 bank).
 The same happens with lots of other technologies inside Big Corps (MySQL 
 comes too my mind too), they are first used by programmers and people 
 that know their job in a semi stealth way and later they are accepted by 
 the people whose main job is internal company politics and can't tell 
 the difference of a ref from a pointer.
 I'm not saying this is the case with D2, I would not use it my daywork 
 production code yet (but my play project at home is already over 5000 
 lines of code and the last version of dmd fixed all the bugs I stumbled 
 on while developing it), but this is surely going to happen a lot once 
 D2 stabilizes.
I agree that the most likely route for D is in through the back door.
Nov 01 2010
parent reply Gour <gour atmarama.net> writes:
On Mon, 01 Nov 2010 02:15:06 -0700
 "Walter" =3D=3D Walter Bright wrote:
Walter> I agree that the most likely route for D is in through the back Walter> door. Why not open-source projects as well? We're planning to make one, despite advises against (see latest answer http://tinyurl.com/36yzzj4 ) Sincerely, Gour --=20 Gour | Hlapicina, Croatia | GPG key: CDBF17CA ----------------------------------------------------------------
Nov 01 2010
parent reply Walter Bright <newshound2 digitalmars.com> writes:
Gour wrote:
 On Mon, 01 Nov 2010 02:15:06 -0700
 "Walter" == Walter Bright wrote:
Walter> I agree that the most likely route for D is in through the back Walter> door. Why not open-source projects as well? We're planning to make one, despite advises against (see latest answer http://tinyurl.com/36yzzj4 )
I appreciate you having the courage to stand up to the critics. I hope we can ensure that your choice turns out to be a big win for you.
Nov 01 2010
parent Gour <gour atmarama.net> writes:
On Mon, 01 Nov 2010 11:14:09 -0700
 "Walter" =3D=3D Walter Bright wrote:
Walter> I appreciate you having the courage to stand up to the critics. Walter> I hope we can ensure that your choice turns out to be a big win Walter> for you. Well, I learnt that judging someone based on his (its) past is in the ignorance, based on the present is in passion and seeing the potential is in the goodness...so, we (just) want to see D's goodness. ;) Sincerely, Gour=20 --=20 Gour | Hlapicina, Croatia | GPG key: CDBF17CA ----------------------------------------------------------------
Nov 01 2010
prev sibling parent reply "Nick Sabalausky" <a a.a> writes:
 Some (arguably rhetorical) questions:
I know you said "rhetorical" but I can't help chiming in on some of them anyway ;) Some of these below may sound, umm, "troll-ish", but they really are my honest opinion:
Why did Google push Go rather than use D when they became
dissatisfied with C, C++, etc.
Some of what they've said seemed to indicate lack of awareness of D (at best). Other than that: (Speculation): Google NIH, and the Go developers believing the same thing they've gotten other's to believe: "Go's made by Google and by the same people that made C and Unix (forty fucking years ago), so it HAS to be great!"
 Why don't ThoughtWorks use Go and D, but push Clojure and Ruby?
Never even heard of ThoughtWorks.
 How come no recruitment agent cares about D experience (or lack of it)?
Speaking from direct personal experience with those people, recruitment agents and others in HR are among the dumbest people in the world. They believe and disbelieve things randomly, presumably based entirely on neuron misfires. I actually had one tell me "I don't know anything about programming, but I'm very good at identifying people who are good at it." What a fucking moron. Clearly, this person's real-world worth is about $0/yr, but some dipshit actually chose to hire and give that useless excuse for a member of society both responsibility and a paycheck. (Which makes two useless-moron HR people.)
 Or put another way why do companies just use C and C++
 even ion the face of better alternatives?
I'm sure inertia is a big part of it. Another big part is what I said in my reply to Walter: most people are too stupid to realize that big companies don't know what the hell they're doing. Or put less contentiously, they've fallen into the widespread misconception that business environments are more conductive (rather than less conductive) to creating good software than smaller informal ones.
 I really would like to see D get some serious traction, but to be honest
 with the way things have and continue to go, I have doubts. Can I be
 proved wrong?
PHP is a piece of shit language made by bedroom coders and no corporate backing, but it managed to take over the whole damn web. I'm starting to think the problem D faces with adoption is that it *doesn't* suck. If it did, people would probably be all over it.
Oct 31 2010
parent reply dsimcha <dsimcha yahoo.com> writes:
== Quote from Nick Sabalausky (a a.a)'s article
 I'm starting to
 think the problem D faces with adoption is that it *doesn't* suck. If it
 did, people would probably be all over it.
I know you're kidding, but ironically you may be right in a way. Sometimes D needs to realize that worse is better. For example: The discussion on arbitrary cost copy construction. It's silly to contort half of Phobos to efficiently support a paradigm that is only used in a few niche areas and is widely regarded as a questionable practice, especially outside of the C++ community.
Oct 31 2010
parent Walter Bright <newshound2 digitalmars.com> writes:
dsimcha wrote:
 I know you're kidding, but ironically you may be right in a way.  Sometimes D
 needs to realize that worse is better.  For example:  The discussion on
arbitrary
 cost copy construction.  It's silly to contort half of Phobos to efficiently
 support a paradigm that is only used in a few niche areas and is widely
regarded
 as a questionable practice, especially outside of the C++ community.
This is the same argument I used to try and convince Andrei to abandon support for arbitrary cost copying. Similar arguments were made in support of making strings immutable. There were a few cases from C++ where people wanted to poke at their strings. But immutable strings have so many huge advantages, that supporting rare (and questionable) practices is just not worth it. Another one was eschewing support for the "mutable" C++ keyword - an escape from const. And not allowing an object to be both a floor wax and a desert topping (value and a reference) which is allowed in C++. Multiple inheritance. I think it is a poor tradeoff to make 95% of the users suffer to support the other 5% doing stuff they probably shouldn't be doing anyway. And suffer they will, C++ has had agonies that just won't go away trying to make that work.
Oct 31 2010
prev sibling parent reply "Nick Sabalausky" <a a.a> writes:
"Walter Bright" <newshound2 digitalmars.com> wrote in message 
news:iakbog$2ra3$1 digitalmars.com...
 Back in the days of competitive compiler benchmarks, my compiler often won 
 them, up against those well paid huge compiler teams from MS, Borland, 
 etc. A friend told me once that the head of one large company used to yell 
 down the halls how come Walter sitting over his garage can beat you guys. 
 That made me feel good.
Yea, what many people don't realize is that developing within a big business environment is *very* constraining, for various reasons. It really is much easier for a small informal group to write good software than it is for a bigger business environment. But somehow people are brainwashed into thinking that having know-nothing managers sticking their fingers where they don't belong is somehow supposed to produce better results. Larger resources and brainwashing (ie, "brand recognition") are the *only* advantages the business environment provides, all the other advantages go to the small informal devs.
Oct 31 2010
parent reply Walter Bright <newshound2 digitalmars.com> writes:
Nick Sabalausky wrote:
 Yea, what many people don't realize is that developing within a big business 
 environment is *very* constraining, for various reasons. It really is much 
 easier for a small informal group to write good software than it is for a 
 bigger business environment. But somehow people are brainwashed into 
 thinking that having know-nothing managers sticking their fingers where they 
 don't belong is somehow supposed to produce better results. Larger resources 
 and brainwashing (ie, "brand recognition") are the *only* advantages the 
 business environment provides, all the other advantages go to the small 
 informal devs.
Another interesting factoid is that I've been told "you can't possibly do that" from the experts before I wrote the first line of the C compiler right up to today. Retard's comments are typical.
Oct 31 2010
parent reply retard <re tard.com.invalid> writes:
Sun, 31 Oct 2010 14:01:02 -0700, Walter Bright wrote:

 Nick Sabalausky wrote:
 Yea, what many people don't realize is that developing within a big
 business environment is *very* constraining, for various reasons. It
 really is much easier for a small informal group to write good software
 than it is for a bigger business environment. But somehow people are
 brainwashed into thinking that having know-nothing managers sticking
 their fingers where they don't belong is somehow supposed to produce
 better results. Larger resources and brainwashing (ie, "brand
 recognition") are the *only* advantages the business environment
 provides, all the other advantages go to the small informal devs.
Another interesting factoid is that I've been told "you can't possibly do that" from the experts before I wrote the first line of the C compiler right up to today. Retard's comments are typical.
Take a look at GCC now. Take a look at LLVM. Compare with DMC. They both generate better code than DMC. I simply have no reason to use DMC (or DMD when LDC and GDC implement the spec well enough). I agree the human resources follow the law of diminishing returns. However those resources help in so many ways. You can hire marketing people, web designers, document writers. D has improved so much after the community was allowed to take part in the development. DMD would suck badly if Don didn't help you. I don't know how my comments are typical. I base my claims on established facts and real world experiences with D. The optimal number of developers surely isn't one.
Oct 31 2010
parent reply Walter Bright <newshound2 digitalmars.com> writes:
retard wrote:
 Sun, 31 Oct 2010 14:01:02 -0700, Walter Bright wrote:
 Another interesting factoid is that I've been told "you can't possibly
 do that" from the experts before I wrote the first line of the C
 compiler right up to today. Retard's comments are typical.
Take a look at GCC now. Take a look at LLVM. Compare with DMC. They both generate better code than DMC. I simply have no reason to use DMC
You do if you want to run on Windows. LLVM won't work on Windows. Or use DMC if you want to get your compiles to run in a reasonable length of time. DMC has often been at the forefront of compiler optimizations. Did you know it was first (on the x86) to do data flow analysis? First at named return value optimizations? First to do instruction scheduling?
 (or DMD when LDC and GDC implement the spec well enough).
I think it's great you have a choice of 3 good D compilers. I find it strange, though, when I then hear the complaint there's no 100% GPL version of D.
 I agree the human resources follow the law of diminishing returns. 
 However those resources help in so many ways. You can hire marketing 
 people, web designers, document writers. D has improved so much after the 
 community was allowed to take part in the development. DMD would suck 
 badly if Don didn't help you. I don't know how my comments are typical. I 
 base my claims on established facts and real world experiences with D. 
 The optimal number of developers surely isn't one. 
Your comments are typical in that I've been told for nearly 30 years now that I and the people who work with me cannot produce a competitive compiler. Yet we have and do. I'd have never accomplished anything if I listened to such loser talk. I've made a good living ignoring the constant stream of experts telling me I can't do it. I remember one journalist who was always telling me that he'd seen the next release of Microsoft's compiler, and that it would put me out of business. The release would come, and there'd be no decline in sales. So what did he do? He'd say "yeah, ok, but the next one will surely destroy your company!" The world is full of losers and loser talk. And yes, I wish I could clone Don.
Oct 31 2010
parent reply Jonathan M Davis <jmdavisProg gmx.com> writes:
On Sunday 31 October 2010 16:02:13 Walter Bright wrote:
 Your comments are typical in that I've been told for nearly 30 years now
 that I and the people who work with me cannot produce a competitive
 compiler. Yet we have and do. I'd have never accomplished anything if I
 listened to such loser talk. I've made a good living ignoring the constant
 stream of experts telling me I can't do it.
 
 I remember one journalist who was always telling me that he'd seen the next
 release of Microsoft's compiler, and that it would put me out of business.
 The release would come, and there'd be no decline in sales. So what did he
 do? He'd say "yeah, ok, but the next one will surely destroy your
 company!"
 
 The world is full of losers and loser talk.
Well, I expect that if you didn't produce a high quality compiler, you wouldn't have been out of business ages ago. In many ways, Microsoft's compiler is the de facto standard for C++ development on Windows, so you're going to have to do something to stand out if you want people to go with dmc. So, dmc pretty much has to be of high quality or it would be dead by now. Personally, I'd never even heard of you or Digital Mars prior to learning about D, and I'm sure that there are plenty of other C++ programmers out there in the same boat. Just because dmc isn't bigger than Microsoft's compiler doesn't mean that it's worse. If anything, the fact that it's still used in spite of Microsoft's dominance implies that it's actually better than Microsoft's compiler.
 And yes, I wish I could clone Don.
LOL.
Oct 31 2010
parent reply Walter Bright <newshound2 digitalmars.com> writes:
Jonathan M Davis wrote:
 Well, I expect that if you didn't produce a high quality compiler, you
wouldn't 
 have been out of business ages ago. In many ways, Microsoft's compiler is the
de 
 facto standard for C++ development on Windows, so you're going to have to do 
 something to stand out if you want people to go with dmc. So, dmc pretty much 
 has to be of high quality or it would be dead by now. Personally, I'd never
even 
 heard of you or Digital Mars prior to learning about D, and I'm sure that
there 
 are plenty of other C++ programmers out there in the same boat. Just because
dmc 
 isn't bigger than Microsoft's compiler doesn't mean that it's worse. If 
 anything, the fact that it's still used in spite of Microsoft's dominance 
 implies that it's actually better than Microsoft's compiler.
The compilers have always been different, and appeal to different programmers. A lot like DMC for its fast compile speeds, 80 bit long doubles, DOS support, source code comes with it, more personal support, smaller size, etc.
Oct 31 2010
parent reply Bruno Medeiros <brunodomedeiros+spam com.gmail> writes:
On 01/11/2010 01:23, Walter Bright wrote:
 ... , DOS support,  ...
DOS support?... That's quite telling. I can't say I view that as a positive, either for DMC or the people who prefer it. In fact, I find quite the contrary. -- Bruno Medeiros - Software Engineer
Nov 24 2010
parent Adam D. Ruppe <destructionator gmail.com> writes:
Bruno Medeiros wrote:
 DOS support?... That's quite telling.
It's great. DMC making DOS programs is how I got started. Still play around with it from time to time. The simple simplicity of the simple era was just so much simpler. (I've never used it professionally, but I'm sure lots of people do. I know a lot local stores still use old DOS programs.)
Nov 24 2010
prev sibling parent reply Don <nospam nospam.com> writes:
Simen kjaeraas wrote:
 Nick Sabalausky <a a.a> wrote:
 
 I can certainly understand the impossibility of actually keeping up with
 bearophile, but I don't think that even he expects that every idea he 
 brings
 up be rushed into D.
Yeah, I always see bearophile's lists as 'maybe some of this could fit in D at some point'. Well worth having on the list, but not to be regarded as The Bearer of Absolute Commandments. That said, I fully understand that Walter could get more tired of it than do I - I don't feel the pressure.
I think a lot of the problem is that quite a few of bearophile's post contain very valuable ideas, which are immediately relevant. But their impact gets diluted because there's such a constant stream of ideas. Would be great if someone could do a regular "best of bearophile" post <g>.
Oct 31 2010
next sibling parent reply tls <do notha.ev> writes:
Don Wrote:

 Simen kjaeraas wrote:
 Nick Sabalausky <a a.a> wrote:
 
 I can certainly understand the impossibility of actually keeping up with
 bearophile, but I don't think that even he expects that every idea he 
 brings
 up be rushed into D.
Yeah, I always see bearophile's lists as 'maybe some of this could fit in D at some point'. Well worth having on the list, but not to be regarded as The Bearer of Absolute Commandments. That said, I fully understand that Walter could get more tired of it than do I - I don't feel the pressure.
I think a lot of the problem is that quite a few of bearophile's post contain very valuable ideas, which are immediately relevant. But their impact gets diluted because there's such a constant stream of ideas. Would be great if someone could do a regular "best of bearophile" post <g>.
What is valueable ideas? Bug reports goto bugzilla. Can some else be immedeately relevant? Long messages with no patches or D language application have no value. D2 and TDPL staple now so no new ideas? And 64-bit support and shared libraries and ARM support becomes before D3? And GUI and IDE? So why we need new ideas before?
Oct 31 2010
parent Don <nospam nospam.com> writes:
tls wrote:
 Don Wrote:
 
 Simen kjaeraas wrote:
 Nick Sabalausky <a a.a> wrote:

 I can certainly understand the impossibility of actually keeping up with
 bearophile, but I don't think that even he expects that every idea he 
 brings
 up be rushed into D.
Yeah, I always see bearophile's lists as 'maybe some of this could fit in D at some point'. Well worth having on the list, but not to be regarded as The Bearer of Absolute Commandments. That said, I fully understand that Walter could get more tired of it than do I - I don't feel the pressure.
I think a lot of the problem is that quite a few of bearophile's post contain very valuable ideas, which are immediately relevant. But their impact gets diluted because there's such a constant stream of ideas. Would be great if someone could do a regular "best of bearophile" post <g>.
What is valueable ideas? Bug reports goto bugzilla. Can some else be immedeately relevant? Long messages with no patches or D language application have no value. D2 and TDPL staple now so no new ideas? And 64-bit support and shared libraries and ARM support becomes before D3? And GUI and IDE? So why we need new ideas before?
Bearophile's posts "I tried to write XXX, and it's hard to do well because ..." are excellent. Note that they tend to be more relevant for Phobos, than for the compiler. The links are great, too. There are some of the more obscure languages which I'd never have heard of, if not for bearophile.
Oct 31 2010
prev sibling parent reply Bruno Medeiros <brunodomedeiros+spam com.gmail> writes:
On 31/10/2010 16:08, Don wrote:
 Simen kjaeraas wrote:
 Nick Sabalausky <a a.a> wrote:

 I can certainly understand the impossibility of actually keeping up with
 bearophile, but I don't think that even he expects that every idea he
 brings
 up be rushed into D.
Yeah, I always see bearophile's lists as 'maybe some of this could fit in D at some point'. Well worth having on the list, but not to be regarded as The Bearer of Absolute Commandments. That said, I fully understand that Walter could get more tired of it than do I - I don't feel the pressure.
I think a lot of the problem is that quite a few of bearophile's post contain very valuable ideas, which are immediately relevant. But their impact gets diluted because there's such a constant stream of ideas.
 Would be great if someone could do a regular "best of bearophile" post <g>.
And it would be even better if that someone would be bearophile himself... ^_^' I must say though, that I disagree that most of bearophile's post contain valuable ideas. Please don't construe the following as a personal attack, it is not meant to be so, but I often find it's the contrary (especially lately). beorophile's main posts usually fall in one of these two categories: * Discuss X from elsewhere: a post not about a concrete suggestion to change D, but rather discuss/expose a feature or aspect of some other language/tool/paradigm. Posts are often accompanied by a link to an external article/documentation/presentation/etc.. The post is usually interesting, but they happen often and usually take too much time to read and understand all of them(often because of the external links). * Sugesting a change to D: a post that discusses some actual change to D that beorophile came up with. I often find that with these latter ones, I don't agree such changes should be in D, either now or in the future (so it's not just a matter of stabilizing D2). Rather, it's because the suggested change is of very limited usefulness (has little impact in code, or occurs rarely), and/or has a very acceptable alternative/workaround in current D. A recent example is the "Interfacing C functions with safer ptr/length": A somewhat limited use case (interfacing with certain C functions), and the alternative in current D code that Andrei pointed out is perfectly fine. It is just as safe, just as fast (with compiler optimizations enabled), and only slightly more verbose. Other examples are plenty: "To avoid a C code bug" http://d.puremagic.com/issues/show_bug.cgi?id=3847 (issue of limited impact, and its very much a bikeshed issue, no consensus that it was actually an improvement, most people actually seemed to prefer the current way) "Ghost fields for Contract Programming:" http://d.puremagic.com/issues/show_bug.cgi?id=5027 (limited usefulness, current alternative nearly as good) A comment regarding sugesting an alternative change to deal with the problem of covariance in arrays: http://d.puremagic.com/issues/show_bug.cgi?id=2095#c16 (Change would increase memory footprint in arrays and pointers, something that is almost certainly unacceptable for D. Plus, change would detect errors only in runtime, whereas compile-time checking is perfectly possible) "Safer unions with tagged" http://d.puremagic.com/issues/show_bug.cgi?id=5097 (again, change is for a very rare use case, and current alternatives are nearly as good, if not just as good) "Array-bound indexes" news://news.digitalmars.com:119/ial0qb$1c0a$1 digitalmars.com (an even rarer use case, of questionable validity, and it's not clear the sugested change would actually help with the issue) ...and I could go one with more examples. On the hand, it is hard for me to find a recent discussion started by beorophile (or where beorophile was heavily involved) that has affected the development of D itself in any way, either now or in the future. I'm talking of threads such as these: "crystal clear()" Discussing regarding issues around clear(), object destruction etc.. "Proposal: Relax rules for 'pure'" Don's changes (even though they went as far as 2008). "We need to kill C syntax for declaring function types" Again started by Don, Walter said he made a good case for it. "Ruling out arbitrary cost copy construction?" Started by Andrei, discussion guiding the future direction for Phobos container. A lot of people were involved in the discussion, but not bearophile. "Uniform Function Call syntax for properties" by Steven Schveighoffer, Andrei agreed there was a problem here and some change was desired, although it seemed no one had a sure idea on what the change should be. "duck!" Started by Andrei. Discussion regarding the future name of Kenji's adaptTo template. "std.algorithm.remove and principle of least astonishment" A discussion about the semantics of char[] and wchar[], might lead to a future change in D, even if it just allowing: ubyte[] str = "asdf"; Feel free to correct me, I don't claim to have made a complete or fully accurate assessment of all the posts and proposal changes that were discussed in the last 3-4 months or so. -- Bruno Medeiros - Software Engineer
Nov 25 2010
parent reply so <so so.do> writes:
 Feel free to correct me, I don't claim to have made a complete or fully  
 accurate assessment of all the posts and proposal changes that were  
 discussed in the last 3-4 months or so.
Sorry but you are a bit harsh here. If you go back, you'll see some very nice posts of him but recently his attitude a little bit different. This happens to people on D community every now end then, i think it is because we are also emotionally attached to D. I just hope he won't end up like a few others. -- Using Opera's revolutionary email client: http://www.opera.com/mail/
Nov 25 2010
parent Architect <smurf vil.lage> writes:
so Wrote:

 Feel free to correct me, I don't claim to have made a complete or fully  
 accurate assessment of all the posts and proposal changes that were  
 discussed in the last 3-4 months or so.
Sorry but you are a bit harsh here. If you go back, you'll see some very nice posts of him but recently his attitude a little bit different. This happens to people on D community every now end then, i think it is because we are also emotionally attached to D. I just hope he won't end up like a few others.
The facts don't lie. I appreciate bearophile's work quite a lot. But let's look at his accomplishments. I think he wastes his time studying esoteric language features and working as a "middle man" between two communities. - He never touches compiler internals - this way he never learns to implement a language of his own. - His suggestions are also badly argumented and too abstract to be of any use in D's development. - He messes with toy programs and does not participate in big real world projects, which means that he has no senior/lead developer skills. He can't really say anything enlightening in these meaningful pragmatic discussions. - His efforts in language competitions and wikis mostly attract novice users who get caught by marketing speech - He is a lone wolf, the social status is really bizarre. A novice ponders why bearophile wants to help so much. The only sane explanation is that he is a real weirdo. Likes all other languages (especially python) much more, but still sticks with D. Why on earth? Not trying to be rude or anything. Just food for thought 8-)
Nov 25 2010
prev sibling parent reply bearophile <bearophileHUGS lycos.com> writes:
Walter:

 You post lists of features every day.
I hate wasting your time, so please ignore my posts you aren't interested in. I write those things because I like to think and discuss about new ways to explain semantics to computers. Most of those things are for discussion, not for inclusion in D2 (few of them may be included in D3, in the future). Please don't add any new major feature to D2 before the current features are implemented and work. In Bugzilla I have a short list of small things that I'd like to see tidied up, there is no major (or medium sized) feature among them. Only little but important things for the general tidiness of a language, like enforcing the presence of [] in vector operations. Once a lot of D2 code is written fixing them will be harder.
 It also bothers me that you regularly read feature lists put out by other
 languages, and seem unaware of what D can do.
There are many things I don't know yet about D and its compiler, and from the answers and corrections I become more aware about D and programming. In some weeks I may teach the basics of D2 to a classroom in my nation, so the more mistakes I make & gets corrected in the relative isolation of this newsgroup, the less wrong things I will teach them :-) Bye, bearophile
Oct 30 2010
next sibling parent reply Gary Whatmore <no spam.spam> writes:
bearophile Wrote:

 Walter:
 
 You post lists of features every day.
I hate wasting your time, so please ignore my posts you aren't interested in. I write those things because I like to think and discuss about new ways to explain semantics to computers. Most of those things are for discussion, not for inclusion in D2 (few of them may be included in D3, in the future).
Less talk and more concrete solutions. We may need another newsgroup for useless language discussion. This way Walter and core team can easily ignore all language discussion and focus on fixing D.
 There are many things I don't know yet about D and its compiler, and from the
answers and corrections I become more aware about D and programming.
You could study without interrupting Walter. The persons in this group can be divided into three groups: * the core language ecosystem developers (important persons. don't waste their time), * commercial pragmatic developpers (semi-important, waste a bit of their time as payment for their questions that only benefit commercial 3rd parties), * hobbyist/school student procrastination group (useful conversation of languages = bearophile, useless functional programming advocacy talk, n00b questions). We should punish the third group more with useless discussion and let the important persons finish their jobs quick.
 In some weeks I may teach the basics of D2 to a classroom in my nation, so the
more mistakes I make & gets corrected in the relative isolation of this
newsgroup, the less wrong things I will teach them :-)
I'd suggest one thing; if you don't know something, give answer to some other question. If someone criticizes D 2.0, ridicule their good points. We need more young developers from other language camps and sometimes a lie at this point might turn into a gold mine in our all lives later. The students probably realize later how important choosing D really was (they'll even learn functional programming with a friendly C style syntax). It's not necessarily evil to lure them in using questionable methods. If some older teacher is watching you, you need to be more careful with personal agendas.
Oct 30 2010
next sibling parent "Nick Sabalausky" <a a.a> writes:
"Gary Whatmore" <no spam.spam> wrote in message 
news:iaiqtd$2r5j$1 digitalmars.com...
 We should punish the third group more with useless discussion and let the 
 important persons finish their jobs quick.

 It's not necessarily evil to lure them in using questionable methods.
Yes, we should just be a bunch of giant assholes.
Oct 30 2010
prev sibling parent Jimmy Cao <jcao219 gmail.com> writes:
On Sat, Oct 30, 2010 at 11:22 PM, Gary Whatmore <no spam.spam> wrote:

 You could study without interrupting Walter.
Interrupting? Breaks do interrupt work time, but that's the point. We all need a break, and so does Walter once in a while (I hope).
 We should punish the third group more with useless discussion and let the
 important persons finish their jobs quick.
Once again, I think you are delusional in thinking that the Important Persons are like machines, working on their jobs in such a way that this discussion is punishing and inhibitive. The ML is leisure, we talk leisurely in discussions of all sorts. Am I not correct? Anyways, I think it's very wrong to suggest that these suggestions by bearophile are "unwanted." We can discuss them, and perhaps, one or two of them will stand out from the others because they are truly fantastic ideas. The goal is for D to get the job done, but remember that we always can have small improvements along the way. Every feature bearophile brings up is just a little taste here and there that we can just consider and ponder for a bit, and move on.
Oct 30 2010
prev sibling parent reply Bruno Medeiros <brunodomedeiros+spam com.gmail> writes:
On 31/10/2010 02:47, bearophile wrote:
 Walter:

 You post lists of features every day.
I hate wasting your time, so please ignore my posts you aren't interested in. I write those things because I like to think and discuss about new ways to explain semantics to computers. Most of those things are for discussion, not for inclusion in D2 (few of them may be included in D3, in the future).
And how does Walter (or anyone else for that matter), determine if they are interested in your posts or not (or anyone else's for that matter) without reading them first? This is often the case for me regarding posts and threads that discuss changes or additions to language features. In these kinds of threads the title alone is very little indication of the quality or interest of the thread. -- Bruno Medeiros - Software Engineer
Nov 24 2010
next sibling parent reply Emil Madsen <sovende gmail.com> writes:
On 24 November 2010 21:40, Bruno Medeiros <brunodomedeiros+spam com.gmail>wrote:

 On 31/10/2010 02:47, bearophile wrote:

 Walter:

  You post lists of features every day.

 I hate wasting your time, so please ignore my posts you aren't interested
 in. I write those things because I like to think and discuss about new ways
 to explain semantics to computers. Most of those things are for discussion,
 not for inclusion in D2 (few of them may be included in D3, in the future).
And how does Walter (or anyone else for that matter), determine if they are interested in your posts or not (or anyone else's for that matter) without reading them first? This is often the case for me regarding posts and threads that discuss changes or additions to language features. In these kinds of threads the title alone is very little indication of the quality or interest of the thread. -- Bruno Medeiros - Software Engineer
I must say; I think bearophile usually brings up some good issues, and things to discuss, and I do like reading his posts. - About not being interrested in reading his posts, really if you dont wanna read posts, why are you on a mailing list? - if its the amount thats the issue, then find some community with low activity instead >.<'. And yea, bearophile brings up a lot of nice features, and Walter would never have a chance to implement all of them himself, which might be good, if everything bearophile suggests got into the language, we would have this major language noone would ever be able to learn, nor use. However, if we succeed in implementing the best ideas I do think we'll end up with a superb output, however I do think we need to discuss a lot of issues and features, and thats why I love bearophiles postings, simply because it gives the community a lot to discuss. Just my opinion. - But I do think discussing a lot of features, even the ones not really related, will help out the language in the end. -- // Yours sincerely // Emil 'Skeen' Madsen
Nov 24 2010
parent reply Walter Bright <newshound2 digitalmars.com> writes:
Emil Madsen wrote:
 And yea, bearophile brings up a lot of nice features, and Walter would 
 never have a chance to implement all of them himself, which might be 
 good, if everything bearophile suggests got into the language, we would 
 have this major language noone would ever be able to learn, nor use. 
 However, if we succeed in implementing the best ideas I do think we'll 
 end up with a superb output, however I do think we need to discuss a lot 
 of issues and features, and thats why I love bearophiles postings, 
 simply because it gives the community a lot to discuss.
 
 Just my opinion. - But I do think discussing a lot of features, even the 
 ones not really related, will help out the language in the end.
I think bearophile does a valuable service to us by bringing up discussion topics. My gripe is when he lists things that he wishes D did when D already does them and has for years. Case in point: D imports. It's irksome when he often writes from the perspective of assuming that D does it wrong while other languages are assumed to do it right. Case in point: design by contract, and his assumption that dmd was a primitive compiler that did not do data flow analysis while praising llvm's. My concern about that is that with the volume of his posts, I will miss some of them, and people inexperienced with D will presume those mistakes and misunderstandings are correct. I have no issue at all with bringing up factual shortcomings of D, even when I disagree about whether they are actual shortcomings or not. For example, it is a fact that D does not check for integer arithmetic overflow. Whether that's a problem or not is a fine topic for discussion.
Nov 24 2010
parent reply Emil Madsen <sovende gmail.com> writes:
On 25 November 2010 00:25, Walter Bright <newshound2 digitalmars.com> wrote:

 Emil Madsen wrote:

 And yea, bearophile brings up a lot of nice features, and Walter would
 never have a chance to implement all of them himself, which might be good,
 if everything bearophile suggests got into the language, we would have this
 major language noone would ever be able to learn, nor use. However, if we
 succeed in implementing the best ideas I do think we'll end up with a superb
 output, however I do think we need to discuss a lot of issues and features,
 and thats why I love bearophiles postings, simply because it gives the
 community a lot to discuss.

 Just my opinion. - But I do think discussing a lot of features, even the
 ones not really related, will help out the language in the end.
I think bearophile does a valuable service to us by bringing up discussion topics. My gripe is when he lists things that he wishes D did when D already does them and has for years. Case in point: D imports. It's irksome when he often writes from the perspective of assuming that D does it wrong while other languages are assumed to do it right. Case in point: design by contract, and his assumption that dmd was a primitive compiler that did not do data flow analysis while praising llvm's. My concern about that is that with the volume of his posts, I will miss some of them, and people inexperienced with D will presume those mistakes and misunderstandings are correct. I have no issue at all with bringing up factual shortcomings of D, even when I disagree about whether they are actual shortcomings or not. For example, it is a fact that D does not check for integer arithmetic overflow. Whether that's a problem or not is a fine topic for discussion.
Well I must agree with you, atleast on the part, about how he sometimes seems negative about what dmd does. - And that tune, is obviously not nice towards you, as your the one doing the hard work, but lets just try to remember, that bearophile just wants D to be the best, eh? What really is an issue for me currently, is that the mailing list seems like its going a tad into war, that is between you and bearophile sometimes; wheres you should instead be joining forces. - As it seems to me, D got about the best compiler writer out there, and one of the best feature requester/discusser :). And I can understand you concerns, about how newcomers to D, might react reading about all of these things bearophile complains about, and wants to change/add. - Just curious, how much of your time do you spend on reading this mailing list a day? (Excuse my somewhat bad english tonight (its 3am)) -- // Yours sincerely // Emil 'Skeen' Madsen
Nov 24 2010
parent reply Iain Buclaw <ibuclaw ubuntu.com> writes:
== Quote from Emil Madsen (sovende gmail.com)'s article
 --90e6ba539f3ee121840495d5033f
 Content-Type: text/plain; charset=ISO-8859-1
 On 25 November 2010 00:25, Walter Bright <newshound2 digitalmars.com> wrote:
 Emil Madsen wrote:

 And yea, bearophile brings up a lot of nice features, and Walter would
 never have a chance to implement all of them himself, which might be good,
 if everything bearophile suggests got into the language, we would have this
 major language noone would ever be able to learn, nor use. However, if we
 succeed in implementing the best ideas I do think we'll end up with a superb
 output, however I do think we need to discuss a lot of issues and features,
 and thats why I love bearophiles postings, simply because it gives the
 community a lot to discuss.

 Just my opinion. - But I do think discussing a lot of features, even the
 ones not really related, will help out the language in the end.
I think bearophile does a valuable service to us by bringing up discussion topics. My gripe is when he lists things that he wishes D did when D already does them and has for years. Case in point: D imports. It's irksome when he often writes from the perspective of assuming that D does it wrong while other languages are assumed to do it right. Case in point: design by contract, and his assumption that dmd was a primitive compiler that did not do data flow analysis while praising llvm's. My concern about that is that with the volume of his posts, I will miss some of them, and people inexperienced with D will presume those mistakes and misunderstandings are correct. I have no issue at all with bringing up factual shortcomings of D, even when I disagree about whether they are actual shortcomings or not. For example, it is a fact that D does not check for integer arithmetic overflow. Whether that's a problem or not is a fine topic for discussion.
Well I must agree with you, atleast on the part, about how he sometimes seems negative about what dmd does. - And that tune, is obviously not nice towards you, as your the one doing the hard work, but lets just try to remember, that bearophile just wants D to be the best, eh? What really is an issue for me currently, is that the mailing list seems like its going a tad into war, that is between you and bearophile sometimes; wheres you should instead be joining forces. - As it seems to me, D got about the best compiler writer out there, and one of the best feature requester/discusser :). And I can understand you concerns, about how newcomers to D, might react reading about all of these things bearophile complains about, and wants to change/add. - Just curious, how much of your time do you spend on reading this mailing list a day? (Excuse my somewhat bad english tonight (its 3am))
He's started peeking an interest at GDC too, which was both amusing and heartening to see. I don't honestly think any of his comments can really be seen as complaints. As has already been echoed, most are very informative, he always seems to pick up on things you don't commonly think about. Then again, I can see it can get a bit tiring how he almost always starts off with "Language/Compiler <Y> does <Feature X>", then goes on to explain that yours doesn't. This is where I see myself going terse over things very quickly. I think you wrongly see things as war-like. It's all really just healthy discussion and competition.
Nov 24 2010
parent reply Emil Madsen <sovende gmail.com> writes:
On 25 November 2010 01:15, Iain Buclaw <ibuclaw ubuntu.com> wrote:

 == Quote from Emil Madsen (sovende gmail.com)'s article
 --90e6ba539f3ee121840495d5033f
 Content-Type: text/plain; charset=ISO-8859-1
 On 25 November 2010 00:25, Walter Bright <newshound2 digitalmars.com>
wrote:
 Emil Madsen wrote:

 And yea, bearophile brings up a lot of nice features, and Walter would
 never have a chance to implement all of them himself, which might be
good,
 if everything bearophile suggests got into the language, we would have
this
 major language noone would ever be able to learn, nor use. However, if
we
 succeed in implementing the best ideas I do think we'll end up with a
superb
 output, however I do think we need to discuss a lot of issues and
features,
 and thats why I love bearophiles postings, simply because it gives the
 community a lot to discuss.

 Just my opinion. - But I do think discussing a lot of features, even
the
 ones not really related, will help out the language in the end.
I think bearophile does a valuable service to us by bringing up
discussion
 topics.

 My gripe is when he lists things that he wishes D did when D already
does
 them and has for years. Case in point: D imports. It's irksome when he
often
 writes from the perspective of assuming that D does it wrong while
other
 languages are assumed to do it right. Case in point: design by
contract, and
 his assumption that dmd was a primitive compiler that did not do data
flow
 analysis while praising llvm's.

 My concern about that is that with the volume of his posts, I will miss
 some of them, and people inexperienced with D will presume those
mistakes
 and misunderstandings are correct.

 I have no issue at all with bringing up factual shortcomings of D, even
 when I disagree about whether they are actual shortcomings or not. For
 example, it is a fact that D does not check for integer arithmetic
overflow.
 Whether that's a problem or not is a fine topic for discussion.
Well I must agree with you, atleast on the part, about how he sometimes seems negative about what dmd does. - And that tune, is obviously not
nice
 towards you, as your the one doing the hard work, but lets just try to
 remember, that bearophile just wants D to be the best, eh?
 What really is an issue for me currently, is that the mailing list seems
 like its going a tad into war, that is between you and bearophile
sometimes;
 wheres you should instead be joining forces. - As it seems to me, D got
 about the best compiler writer out there, and one of the best feature
 requester/discusser :).
 And I can understand you concerns, about how newcomers to D, might react
 reading about all of these things bearophile complains about, and wants
to
 change/add.
 - Just curious, how much of your time do you spend on reading this
mailing
 list a day?
 (Excuse my somewhat bad english tonight (its 3am))
He's started peeking an interest at GDC too, which was both amusing and heartening to see. I don't honestly think any of his comments can really be seen as complaints. As has already been echoed, most are very informative, he always seems to pick up on things you don't commonly think about. Then again, I can see it can get a bit tiring how he almost always starts off with "Language/Compiler <Y> does <Feature X>", then goes on to explain that yours doesn't. This is where I see myself going terse over things very quickly. I think you wrongly see things as war-like. It's all really just healthy discussion and competition.
Sure it can get tiring when hes like saying 'Language/Compiler <Y> does<Feature X>', but while he does so, he also brings up a discussion whether its something to add or not. - And I must say, a lot of the features he points out in other language seem like good things :) - however pointing it out, and being like; 'Why doesn't D do this?', might not be the right tune, where it should be; 'Would it be an idea if D did this?', and I can understand why the first tune might seem a tad hard on people like Walter, when it already does. About GDC, I think the dmd community should be watching whats happening at LDC and GDC, they might come up with something good, before we do, eh? I might be right about the way thing, its just, sometimes people seem a little bit hostile if you ask me, but that might just me me thats a tad off. -- // Yours sincerely // Emil 'Skeen' Madsen
Nov 25 2010
parent reply Iain Buclaw <ibuclaw ubuntu.com> writes:
== Quote from Emil Madsen (sovende gmail.com)'s article
 --0015174c37fe0831b20495dd37b5
 Content-Type: text/plain; charset=ISO-8859-1
 On 25 November 2010 01:15, Iain Buclaw <ibuclaw ubuntu.com> wrote:
 == Quote from Emil Madsen (sovende gmail.com)'s article
 --90e6ba539f3ee121840495d5033f
 Content-Type: text/plain; charset=ISO-8859-1
 On 25 November 2010 00:25, Walter Bright <newshound2 digitalmars.com>
wrote:
 Emil Madsen wrote:

 And yea, bearophile brings up a lot of nice features, and Walter would
 never have a chance to implement all of them himself, which might be
good,
 if everything bearophile suggests got into the language, we would have
this
 major language noone would ever be able to learn, nor use. However, if
we
 succeed in implementing the best ideas I do think we'll end up with a
superb
 output, however I do think we need to discuss a lot of issues and
features,
 and thats why I love bearophiles postings, simply because it gives the
 community a lot to discuss.

 Just my opinion. - But I do think discussing a lot of features, even
the
 ones not really related, will help out the language in the end.
I think bearophile does a valuable service to us by bringing up
discussion
 topics.

 My gripe is when he lists things that he wishes D did when D already
does
 them and has for years. Case in point: D imports. It's irksome when he
often
 writes from the perspective of assuming that D does it wrong while
other
 languages are assumed to do it right. Case in point: design by
contract, and
 his assumption that dmd was a primitive compiler that did not do data
flow
 analysis while praising llvm's.

 My concern about that is that with the volume of his posts, I will miss
 some of them, and people inexperienced with D will presume those
mistakes
 and misunderstandings are correct.

 I have no issue at all with bringing up factual shortcomings of D, even
 when I disagree about whether they are actual shortcomings or not. For
 example, it is a fact that D does not check for integer arithmetic
overflow.
 Whether that's a problem or not is a fine topic for discussion.
Well I must agree with you, atleast on the part, about how he sometimes seems negative about what dmd does. - And that tune, is obviously not
nice
 towards you, as your the one doing the hard work, but lets just try to
 remember, that bearophile just wants D to be the best, eh?
 What really is an issue for me currently, is that the mailing list seems
 like its going a tad into war, that is between you and bearophile
sometimes;
 wheres you should instead be joining forces. - As it seems to me, D got
 about the best compiler writer out there, and one of the best feature
 requester/discusser :).
 And I can understand you concerns, about how newcomers to D, might react
 reading about all of these things bearophile complains about, and wants
to
 change/add.
 - Just curious, how much of your time do you spend on reading this
mailing
 list a day?
 (Excuse my somewhat bad english tonight (its 3am))
He's started peeking an interest at GDC too, which was both amusing and heartening to see. I don't honestly think any of his comments can really be seen as complaints. As has already been echoed, most are very informative, he always seems to pick up on things you don't commonly think about. Then again, I can see it can get a bit tiring how he almost always starts off with "Language/Compiler <Y> does <Feature X>", then goes on to explain that yours doesn't. This is where I see myself going terse over things very quickly. I think you wrongly see things as war-like. It's all really just healthy discussion and competition.
Sure it can get tiring when hes like saying 'Language/Compiler <Y> does<Feature X>', but while he does so, he also brings up a discussion whether its something to add or not. - And I must say, a lot of the features he points out in other language seem like good things :) - however pointing it out, and being like; 'Why doesn't D do this?', might not be the right tune, where it should be; 'Would it be an idea if D did this?', and I can understand why the first tune might seem a tad hard on people like Walter, when it already does.
To paraphrase a famous that best describes my view of things when it comes to features: add, but rather when there is nothing more to take away.'' Regards
Nov 25 2010
parent so <so so.do> writes:
 To paraphrase a famous that best describes my view of things when it  
 comes to
 features:


 more to add, but
 rather when there is nothing more to take away.''

 Regards
Would that apply to PL design as well? You actually don't "need" templates for example but their presence changes everything. -- Using Opera's revolutionary email client: http://www.opera.com/mail/
Nov 25 2010
prev sibling parent spir <denis.spir gmail.com> writes:
On Wed, 24 Nov 2010 22:39:02 +0100
Emil Madsen <sovende gmail.com> wrote:

 On 24 November 2010 21:40, Bruno Medeiros <brunodomedeiros+spam com.gmail=
wrote:
=20
 On 31/10/2010 02:47, bearophile wrote:

 Walter:

  You post lists of features every day.

 I hate wasting your time, so please ignore my posts you aren't interes=
ted
 in. I write those things because I like to think and discuss about new=
ways
 to explain semantics to computers. Most of those things are for discus=
sion,
 not for inclusion in D2 (few of them may be included in D3, in the fut=
ure).

 And how does Walter (or anyone else for that matter), determine if they=
are
 interested in your posts or not (or anyone else's for that matter) with=
out
 reading them first?
 This is often the case for me regarding posts and threads that discuss
 changes or additions to language features. In these kinds of threads the
 title alone is very little indication of the quality or interest of the
 thread.


 --
 Bruno Medeiros - Software Engineer
=20 I must say; I think bearophile usually brings up some good issues, and things to discuss, and I do like reading his posts. - About not being interrested in reading his posts, really if you dont wanna read posts, why are you on a mailing list? - if its the amount thats the issue, then find some community with low activity instead >.<'. =20 And yea, bearophile brings up a lot of nice features, and Walter would ne=
ver
 have a chance to implement all of them himself, which might be good, if
 everything bearophile suggests got into the language, we would have this
 major language noone would ever be able to learn, nor use. However, if we
 succeed in implementing the best ideas I do think we'll end up with a sup=
erb
 output, however I do think we need to discuss a lot of issues and feature=
s,
 and thats why I love bearophiles postings, simply because it gives the
 community a lot to discuss.
=20
 Just my opinion. - But I do think discussing a lot of features, even the
 ones not really related, will help out the language in the end.
=20
I completely share these views. +++ the last sentence. (PL design in genera= l suffers from lack of wide view [I do _not_ mean narrow-mindness, but mayb= e lack of curiosity, yes ;-)], esp from reproducing misfeatures from the ma= in designer's best known PL language or paradigm. But it's a long and hard = task to "un-learn" & re-open one's mental eyes. Design should be choosing f= rom awareness of alternatives, else it's "eyes wide shut"-reproduction.) Denis -- -- -- -- -- -- -- vit esse estrany =E2=98=A3 spir.wikidot.com
Nov 25 2010