dynamic classes and duck typing

Andrei Alexandrescu SeeWebsiteForEmail at erdani.org
Tue Dec 1 19:19:01 PST 2009


Bill Baxter wrote:
> 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

Thanks! Could you please submit that to bugzilla?

Andrei



More information about the Digitalmars-d mailing list