X-Authentication-Warning: delorie.com: mail set sender to geda-user-bounces using -f X-Recipient: geda-user AT delorie DOT com X-Original-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=date:from:to:subject:message-id:in-reply-to:references:mime-version :content-transfer-encoding; bh=OMMg2PgKGo4uE1LCCg6OZkKkAsPNM6485DYFnDZs4r4=; b=F3yCuA37tVZ92TWVpVPTcXdcZJmapxVKzyjTc+G5p3WPg/cygZ/RwvZ5muiVtx6KOr aWmNBKSiyWP6Pko7MJXc3p7YT/NTr1tSmYUxo+UtslAHzFUQkbYVbA1JCUXBhD1pRPiO /1XURMzSdk9cyiU6t7+NOsow6d900CpdGrJg2LEQrQjQO0qQ4j8DPqupkm/AZfPNf8nW x5woc/x2Rw440WeS981g9XB5ZcDCFPh757R5rxtmdhXKZ/SrxGKTuTlja3qY/cNPITu9 PXgisPEEb1y1YWXn35I7R0y9uyadcWLOervLt4tiR0brtIp/FHzLj4qiPsDdqVXYKyKv 1eKA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:date:from:to:subject:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=OMMg2PgKGo4uE1LCCg6OZkKkAsPNM6485DYFnDZs4r4=; b=LVwsfxBwm3voHTkfqHSNfScGiwDh0nj4WSMy7i5Gi6PgfgvWxWWucLgVJboL9dv4D5 gUpTyZGahPehKoyfIuwPVqQ2aivf+NWjQOpaweOIEa1rYTYWEhbXRJeNa8SF5lpdMvYk wwb+U1bDPWw9DXmz/KW5NtjfUOwXTAtZB+RdEFtiEggte9uBwrWVG07BbkveDZ4dAZDO SAsYjegi4Cf/UouSnNmKTnYkaNwOpzAhLky/5cu978fwn+kUU6WT86pRMABguVtC3ZSn PR9rf7AtK6KgUQkXfE9MlKEEjSR3HWbo/YrcI8ajXX0+Qxukjwcouk3c0l8gZU3C+uDd jkRg== X-Gm-Message-State: AOPr4FWA8/qJdsXfWcP7ra9l/xMYVN2DJ1BDwmJt+HDG7SwuVimqpIMXHpHQmTbb+cg5Cw== X-Received: by 10.28.14.73 with SMTP id 70mr8998886wmo.15.1463243101273; Sat, 14 May 2016 09:25:01 -0700 (PDT) Date: Sat, 14 May 2016 18:24:59 +0200 From: "Nicklas Karlsson (nicklas DOT karlsson17 AT gmail DOT com) [via geda-user AT delorie DOT com]" To: geda-user AT delorie DOT com Subject: Re: [geda-user] Re: gschem annoyances (C++) Message-Id: <20160514182459.ea2e9ad5563f9444529239ac@gmail.com> In-Reply-To: <201605141432.u4EEWZ9s018507@envy.delorie.com> References: <154a7fb8d8c-2a04-17506 AT webprd-a31 DOT mail DOT aol DOT com> <20160513081037 DOT GA23474 AT visitor2 DOT iram DOT es> <5735ACC6 DOT 30105 AT iee DOT org> <20160514094703 DOT fc95ba64dab2c53b068f260c AT gmail DOT com> <201605141432 DOT u4EEWZ9s018507 AT envy DOT delorie DOT com> X-Mailer: Sylpheed 3.5.0beta1 (GTK+ 2.24.25; x86_64-pc-linux-gnu) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Reply-To: geda-user AT delorie DOT com Errors-To: nobody AT delorie DOT com X-Mailing-List: geda-user AT delorie DOT com X-Unsubscribes-To: listserv AT delorie DOT com Precedence: bulk > > Main advantage of object oriented programming is function > > overloading and private variables in structures but excess amount of > > features stuffed in C++ is really a problem. I think C++ does not > > handle polymorphism well. > > The whole point of C++ is to handle polymorphism well, and it does. > For programs like gschem and pcb, which have lots of object types that > are "similar but different", an object oriented language like C++ > should be an obvious choice. If I remember correctly there some differences in C++ inheritance that make it less useful. It is useful with for example a virtual function to extract drawing primitives in the super class which are implemented for each sub class. > Unfortunately, C++ is a huge toolbox and people think you have to use > every tool for every application, ... I stay happy with those needed. > > C/C++ lack good type checking which is a real disadvantage. > > Well, C maybe, C++ has great support for type checking. You just have > to write type-specific code. C does not distinguish different enumeration types does C++ do? Nicklas Karlsson