From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.1.3 (2006-06-01) on yquem.inria.fr X-Spam-Level: ** X-Spam-Status: No, score=2.8 required=5.0 tests=DNS_FROM_RFC_POST,SPF_NEUTRAL autolearn=disabled version=3.1.3 X-Original-To: caml-list@yquem.inria.fr Delivered-To: caml-list@yquem.inria.fr Received: from mail3-relais-sop.national.inria.fr (mail3-relais-sop.national.inria.fr [192.134.164.104]) by yquem.inria.fr (Postfix) with ESMTP id 5D634BB84 for ; Sat, 17 Jan 2009 04:14:40 +0100 (CET) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AokBAIrbcEnRVcbvjWdsb2JhbACTRT4BAQEBCQkKCQ8FqHmBA40HAQMBA4VvhEs X-IronPort-AV: E=Sophos;i="4.37,279,1231110000"; d="scan'208";a="21614219" Received: from rv-out-0506.google.com ([209.85.198.239]) by mail3-smtp-sop.national.inria.fr with ESMTP; 17 Jan 2009 04:14:39 +0100 Received: by rv-out-0506.google.com with SMTP id f6so1988399rvb.3 for ; Fri, 16 Jan 2009 19:14:38 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:in-reply-to:references :date:message-id:subject:from:to:cc:content-type :content-transfer-encoding; bh=BA9RSlpGREK5tRxlUSzL3xU26lN1GQOE3EiYq+d6B1E=; b=t/vZtjzSJ/XtPlyR/kdqwqpo9hSizpYIU/xAN1ulrBj+YmeYk1TMXVRdiR/eUOqclC tT2wJHxEsTaOWrK/O/P28uIgk2V+VDCjgmuKSWjZ4iGzPFaIXfzDib64palwo+n9Ur93 svlIMUAuLBeYtUZ5WlrDcoHf4VoynuS0goXqE= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type:content-transfer-encoding; b=AUmXbGWrpl03RpiP0FBaf1WIBoXNwQg1bwWQ13HjWde1hMoshJiiKAFmoUj+ajjRGX sSKmq1S8pJiu3GQzGtyAm2urT0k7aRktuna+F+vYqx+MmD3cQVxi5JV4FYueyEiPkDfM Y8OlcOG66HzFZj2BksfpuRbenV4438qP1wvNg= MIME-Version: 1.0 Received: by 10.141.19.9 with SMTP id w9mr1561754rvi.31.1232162078215; Fri, 16 Jan 2009 19:14:38 -0800 (PST) In-Reply-To: References: <91a2ba3e0901161027x5432afcbh504b4ca3df501851@mail.gmail.com> Date: Sat, 17 Jan 2009 14:14:38 +1100 Message-ID: <23738f080901161914tb290576yd2306babe68887ea@mail.gmail.com> Subject: Re: [Caml-list] C++/C# inheritance is bad? From: Sashan Govender To: Kuba Ober Cc: caml-list@yquem.inria.fr Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit X-Spam: no; 0.00; model:01 ocaml:01 model:01 yaron:01 runtime:01 polymorphism:01 caml-list:01 face:97 inheritance:03 static:03 limitations:04 complain:04 practice:09 objection:09 basically:10 > > I basically still hold that Yaron's original objection is baseless in face > of established good OO practice in C++/Java/C#/... > > I do understand the limitations of the popular OO model, of course, and > the benefits of Jane Street choosing OCaml. I was merely trying to > understand what I don't understand about the popular OO model that > would have Yaron complain about not being able to tell which exact > method is being called... It, somehow, is not an issue for me, not in > well designed C++ codebases at least. I thought he was talking about the effects of runtime polymorphism on static code analysis. You can't tell which method is invoked if the method is virtual.