dynamic classes and duck typing

Bill Baxter wbaxter at gmail.com
Tue Dec 1 18:02:22 PST 2009


On Tue, Dec 1, 2009 at 5:08 PM, Bill Baxter <wbaxter at gmail.com> wrote:
> On Tue, Dec 1, 2009 at 4:37 PM, Andrei Alexandrescu
> <SeeWebsiteForEmail at erdani.org> wrote:
>> Leandro Lucarella wrote:
>>>
>>> Walter Bright, el  1 de diciembre a las 13:45 me escribiste:
>>>>
>>>> Leandro Lucarella wrote:
>>>>>
>>>>> I develop twice as fast in Python than in D. Of course this is only me,
>>>>> but that's where I think Python is better than D :)
>>>>
>>>> If that is not just because you know the Python system far better
>>>> than the D one, then yes indeed it is a win.
>>>
>>> And because you have less noise (and much more and better libraries
>>> I guess :) in Python, less complexity to care about.
>>>
>>> And don't get me wrong, I love D, because it's a very expressive language
>>> and when you need speed, you need static typing and all the low-level
>>> support. They are all necessary evil. All I'm saying is, when I don't need
>>> speed and I have to do something quickly, Python is still a far better
>>> language than D, because of they inherent differences.
>>>
>>>>> I think only not having a compile cycle (no matter how fast compiling
>>>>> is)
>>>>> is a *huge* win. Having an interactive console (with embedded
>>>>> documentation) is another big win.
>>>>
>>>> That makes sense.
>>>
>>> I guess D can greatly benefit from a compiler that can compile and run
>>> a multiple-files program with one command (AFAIK rdmd only support one
>>> file programs, right?) and an interactive console that can get the ddoc
>>> documentation on the fly. But that's not very related to the language
>>> itself, I guess it's doable, the trickiest part is the interactive
>>> console, I guess...
>>>
>>
>> I'm amazed that virtually nobody uses rdmd. I can hardly fathom how I
>> managed to make-do without it.
>
> The web page[1] says it doesn't work on Windows.  That'd be my excuse
> for not using it.
>
>
> [1] http://www.digitalmars.com/d/2.0/rdmd.html

Seems like it does work, though.  Good news!
The web page should be updated.

I will definitely use it now that I know it works.

It does seem to hang at the end of output waiting for an Enter from the console.
And the á in the --help message doesn't show properly on the console
either. (but actually it does work if I chcp 65001 first).
And the --man browser thing doesn't work at all.  I think you need to
do some registry diving to find the browser under Windows.

You can open a url in the default browser with this magic code:

import std.c.windows.windows;
extern(Windows) {
   HINSTANCE ShellExecuteW(HWND,const LPWSTR, const LPWSTR, const
LPWSTR, const LPWSTR,INT);
}

void main()
{
    HINSTANCE hr = ShellExecuteW(null, "open"w.ptr,
"http://www.digitalmars.com/d"w.ptr, null, null, SW_SHOWNORMAL);

}

--bb



More information about the Digitalmars-d mailing list