IDL compilers are a very unusual special case. First, they do not abstract.
They merely provide a language-neutral way to specify an interface that must
exist anyway. Second, a decently written IDL compiler can emit safe but
highly optimized code that a human cannot maintain.

That is: where IDL compilers are used, the abstraction/modularity boundary
already exists, and the question is solely a matter of what language should
be used to describe the interface.

On Thu, Sep 24, 2009 at 2:19 AM, Bahadir Balban <[email protected]> wrote:

> [email protected] wrote:
>
>> Right, you can use languages with more abstraction to hide some
>> complexity. However, this also obscures the view on what is really
>> happening, and limits possibilities. So abstraction is always a
>> compromise.
>>
>
> Yes. Certainly.
>
> The problem with C++ is that IMHO the abstractions are very poor: they
>> obscure a lot without really hiding much complexity...
>>
>> -antrik-
>>
>>
> So why are you in favor of IDL compilers? To me that is also an abstraction
> that is a compromise. You could simply use a library with helper functions,
> and know what is going on, instead of design a whole system around
> compiler-generated communication idioms.
>
> --
> Bahadir Balban
>
>
>

Reply via email to