November 21, 2008
On Thu, Nov 20, 2008 at 6:54 PM, dsimcha <dsimcha@yahoo.com> wrote:
> == Quote from bearophile (bearophileHUGS@lycos.com)'s article
>> D is a fringe language, and it's not an easy one (system language and all that),
> so there's never shortage of unusual people in this newsgroup :-)
>> Java groups are so boooring compared to this one :-)
>> Bear hugs,
>> bearophile
>
> Do people seriously consider D a "difficult" language?  Given that it has garbage collection out of the box, builtin arrays, etc. I would have guessed that most people only consider it to be of moderate difficulty.  Yes, you *can* do down-and-dirty programming with pointers, manual memory management, etc. in it, but you don't *have to* unless the nature of your problem domain would require it no matter what the language.
>

Or if you're absolutely obsessed with microperformance and attempt to subvert the GC at every possible opportunity.

(Consider who you're replying to ;) )
November 21, 2008
Reply to dsimcha,

> == Quote from bearophile (bearophileHUGS@lycos.com)'s article
> 
>> D is a fringe language, and it's not an easy one (system language and
>> all that),
>> 
> so there's never shortage of unusual people in this newsgroup :-)
> 
>> Java groups are so boooring compared to this one :-)
>> Bear hugs,
>> bearophile
> Do people seriously consider D a "difficult" language?  Given that it
> has garbage collection out of the box, builtin arrays, etc. I would
> have guessed that most people only consider it to be of moderate
> difficulty.  Yes, you *can* do down-and-dirty programming with
> pointers, manual memory management, etc. in it, but you don't *have
> to* unless the nature of your problem domain would require it no
> matter what the language.
> 

Compared to C or C++ it's down right easy, but that's kind of like saying climbing K2 is easy compared to going to the moon. (I wonder what more cash has been spent on, the Apollo project or C++ IDEs?)


November 21, 2008
Jarrett Billingsley escribió:
> On Thu, Nov 20, 2008 at 6:54 PM, dsimcha <dsimcha@yahoo.com> wrote:
>> == Quote from bearophile (bearophileHUGS@lycos.com)'s article
>>> D is a fringe language, and it's not an easy one (system language and all that),
>> so there's never shortage of unusual people in this newsgroup :-)
>>> Java groups are so boooring compared to this one :-)
>>> Bear hugs,
>>> bearophile
>> Do people seriously consider D a "difficult" language?  Given that it has garbage
>> collection out of the box, builtin arrays, etc. I would have guessed that most
>> people only consider it to be of moderate difficulty.  Yes, you *can* do
>> down-and-dirty programming with pointers, manual memory management, etc. in it,
>> but you don't *have to* unless the nature of your problem domain would require it
>> no matter what the language.
>>
> 
> Or if you're absolutely obsessed with microperformance and attempt to
> subvert the GC at every possible opportunity.
> 
> (Consider who you're replying to ;) )

Or if you are a template maniac.
November 21, 2008
Ary Borenszweig escribió:
> Jarrett Billingsley escribió:
>> On Thu, Nov 20, 2008 at 6:54 PM, dsimcha <dsimcha@yahoo.com> wrote:
>>> == Quote from bearophile (bearophileHUGS@lycos.com)'s article
>>>> D is a fringe language, and it's not an easy one (system language and all that),
>>> so there's never shortage of unusual people in this newsgroup :-)
>>>> Java groups are so boooring compared to this one :-)
>>>> Bear hugs,
>>>> bearophile
>>> Do people seriously consider D a "difficult" language?  Given that it has garbage
>>> collection out of the box, builtin arrays, etc. I would have guessed that most
>>> people only consider it to be of moderate difficulty.  Yes, you *can* do
>>> down-and-dirty programming with pointers, manual memory management, etc. in it,
>>> but you don't *have to* unless the nature of your problem domain would require it
>>> no matter what the language.
>>>
>>
>> Or if you're absolutely obsessed with microperformance and attempt to
>> subvert the GC at every possible opportunity.
>>
>> (Consider who you're replying to ;) )
> 
> Or if you are a template maniac.

I mean... if someone you code with is a template maniac, and you are not. :-P
November 21, 2008
> Or if you are a template maniac.

Did somone say my name? :<G> 


November 21, 2008
dsimcha wrote:
> == Quote from bearophile (bearophileHUGS@lycos.com)'s article
>> D is a fringe language, and it's not an easy one (system language and all that),
> so there's never shortage of unusual people in this newsgroup :-)
>> Java groups are so boooring compared to this one :-)
>> Bear hugs,
>> bearophile
> 
> Do people seriously consider D a "difficult" language?  Given that it has garbage
> collection out of the box, builtin arrays, etc. I would have guessed that most
> people only consider it to be of moderate difficulty.  Yes, you *can* do
> down-and-dirty programming with pointers, manual memory management, etc. in it,
> but you don't *have to* unless the nature of your problem domain would require it
> no matter what the language.

It's a systems language, it has to be difficult. I need a virtual machine with a billion dollars behind it to feel safe.

On a more serious note, the standard library and available IDEs often have more to do with ease of use of a language than the language itself (assuming the language is reasonable).
November 21, 2008
Christopher Wright wrote:
> On a more serious note, the standard library and available IDEs often have more to do with ease of use of a language than the language itself (assuming the language is reasonable).

I disagree. I still find D _much_ easier than C++ even though C++ has tons of "standard" libraries and at least one passable IDE (SourceInsight; don't get me started on VS). Similarly, I would argue Ruby is easier than Perl, even though the latter has better libraries/development environments. Oh, and ML vs Scheme... yeah, I think the language has a lot to do with it.
November 21, 2008
"Jarrett Billingsley" <jarrett.billingsley@gmail.com> wrote in message news:mailman.26.1227226037.22690.digitalmars-d@puremagic.com...
> On Thu, Nov 20, 2008 at 6:54 PM, dsimcha <dsimcha@yahoo.com> wrote:
>> == Quote from bearophile (bearophileHUGS@lycos.com)'s article
>>> D is a fringe language, and it's not an easy one (system language and all that),
>> so there's never shortage of unusual people in this newsgroup :-)
>>> Java groups are so boooring compared to this one :-)
>>> Bear hugs,
>>> bearophile
>>
>> Do people seriously consider D a "difficult" language?  Given that it has garbage
>> collection out of the box, builtin arrays, etc. I would have guessed that most
>> people only consider it to be of moderate difficulty.  Yes, you *can* do
>> down-and-dirty programming with pointers, manual memory management, etc. in it,
>> but you don't *have to* unless the nature of your problem domain would require it
>> no matter what the language.
>>
>
> Or if you're absolutely obsessed with microperformance and attempt to
> subvert the GC at every possible opportunity.
>
> (Consider who you're replying to ;) )

It seems that bearophile basically wants a GP / systems language and tools that are nearly as productive as the likes of Python but can also produce blazingly fast code. A pretty worthy goal, and I think that was the orginal blanket idea behind D anyway. To win mindshare I think D has to be able to do better than more established languages in both areas.

Look at the time and $$$ spent on making Java "fast". Not a trivial subject.

Besides, there has been in previous years a good deal of initial interest from members of two important groups where performance is vital: numeric and game software developers. Over the years and more often than not it seems, various members of both groups drop in to the NG's but end-up showing only a fleeting interest in D. Most of the reason I think is because performance isn't stellar, and even more that D (the language, as specified) doesn't offer any advantage in that regard over the tried and true like Fortran and C/++.

I don't think D will succeed without healthy backing from at least one of those groups. After all, if you're developing a "high-performance" language, customers of organizations who sell Fortran compilers, math and physics libraries and HPC hardware are pretty desirable to have on your side..

So bearophile might be onto something there...

November 21, 2008
Dave:
>It seems that bearophile basically wants a GP / systems language and tools that are nearly as productive as the likes of Python but can also produce blazingly fast code.<

The things I like can't be summarized in few lines, but one of the things I like more is the following.

Developing ShedSkin (that translates implicitly statically typed Python programs ==> C++) I have seen that it can exist a language that at the same time has a short and very handy syntax and produces very fast programs. The "good" thing is that it doesn't require big inventions, all the necessary parts exists already, to it's not a revolution (some people like revolutions, so this isn't for them).
Languages like Genie, Delight, ShedSkin, Vala, Boo, Cython, Rpython, etc (and OcaML too, probably), go in this direction. The D language too (with the right libraries) can become almost handy.

The last two posts here show examples of what I mean: http://leonardo-m.livejournal.com/72504.html http://leonardo-m.livejournal.com/72754.html

In both situations a ShedSkin program is both shorter/cleaner and quite faster than the D ones (the speed increase generally comes from GCC optimizing better than DMD).

Bye,
bearophile
November 21, 2008
bearophile wrote:

> Dave:
>>It seems that bearophile basically wants a GP / systems language and tools that are nearly as productive as the likes of Python but can also produce blazingly fast code.<
> 
> The things I like can't be summarized in few lines, but one of the things I like more is the following.
> 
> Developing ShedSkin (that translates implicitly statically typed Python programs ==> C++) I have seen that it can exist a language that at the same time has a short and very handy syntax and produces very fast programs. The "good" thing is that it doesn't require big inventions, all the necessary parts exists already, to it's not a revolution (some people like revolutions, so this isn't for them). Languages like Genie, Delight, ShedSkin, Vala, Boo, Cython, Rpython, etc (and OcaML too, probably), go in this direction. The D language too (with the right libraries) can become almost handy.
> 
> The last two posts here show examples of what I mean: http://leonardo-m.livejournal.com/72504.html http://leonardo-m.livejournal.com/72754.html
> 
> In both situations a ShedSkin program is both shorter/cleaner and quite faster than the D ones (the speed increase generally comes from GCC optimizing better than DMD).

It must be stated that "cleaner" is in the eye of the beholder - IMO Python does _not_ produce cleaner programs. It is harder to say how the implicitly statically typed stuff of ShedSkin affects mantainability, but I guess one could expect/hope for it to be better than normal Python.

-- 
Lars Ivar Igesund
blog at http://larsivi.net
DSource, #d.tango & #D: larsivi
Dancing the Tango