From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail2-relais-roc.national.inria.fr (mail2-relais-roc.national.inria.fr [192.134.164.83]) by sympa.inria.fr (Postfix) with ESMTPS id 7EA127EE35 for ; Thu, 7 Apr 2016 09:43:42 +0200 (CEST) IronPort-PHdr: 9a23:13yFKxMZ8ru6oM4Xyowl6mtUPXoX/o7sNwtQ0KIMzox0KPjzrarrMEGX3/hxlliBBdydsKIUzbaM+Pm6ASQp2tWojjMrSNR0TRgLiMEbzUQLIfWuLgnFFsPsdDEwB89YVVVorDmROElRH9viNRWJ+iXhpQAbFhi3DwdpPOO9QteU1JTnkbzosMSJO01hv3mUX/BbFF2OtwLft80b08NJC50a7V/3mEZOYPlc3mhyJFiezF7W78a0+4N/oWwL46pyv50IbaKvRJxwGadAJDM8OWEp7cnlsgmFRgyKsCgySGITxzVPGBfE6lnkWZG5mDH3uudn3C6FdZn5SqsrWDLn8eJhYADlgmELOmhqoynslsVsgfcD81qarBtlztuMbQ== Authentication-Results: mail2-smtp-roc.national.inria.fr; spf=None smtp.pra=goswin-v-b@web.de; spf=Pass smtp.mailfrom=goswin-v-b@web.de; spf=None smtp.helo=postmaster@mout.web.de Received-SPF: None (mail2-smtp-roc.national.inria.fr: no sender authenticity information available from domain of goswin-v-b@web.de) identity=pra; client-ip=212.227.15.14; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="goswin-v-b@web.de"; x-sender="goswin-v-b@web.de"; x-conformance=sidf_compatible Received-SPF: Pass (mail2-smtp-roc.national.inria.fr: domain of goswin-v-b@web.de designates 212.227.15.14 as permitted sender) identity=mailfrom; client-ip=212.227.15.14; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="goswin-v-b@web.de"; x-sender="goswin-v-b@web.de"; x-conformance=sidf_compatible; x-record-type="v=spf1" Received-SPF: None (mail2-smtp-roc.national.inria.fr: no sender authenticity information available from domain of postmaster@mout.web.de) identity=helo; client-ip=212.227.15.14; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="goswin-v-b@web.de"; x-sender="postmaster@mout.web.de"; x-conformance=sidf_compatible X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: A0CJAgDnDgZXdw4P49Rct1+HdwENgXOCTYIwgRACgUI4FAEBAQEBAQEBEQEXMy+CLYIUAQEBAwE6PwULCxgJJQ8FKCGIJAENCAS7PB+FUAEBAQcCAR2JaoECh2qCKwEEmASOAok1CoVZjyQeAQGEK4ldAQEB X-IPAS-Result: A0CJAgDnDgZXdw4P49Rct1+HdwENgXOCTYIwgRACgUI4FAEBAQEBAQEBEQEXMy+CLYIUAQEBAwE6PwULCxgJJQ8FKCGIJAENCAS7PB+FUAEBAQcCAR2JaoECh2qCKwEEmASOAok1CoVZjyQeAQGEK4ldAQEB X-IronPort-AV: E=Sophos;i="5.24,448,1454972400"; d="scan'208";a="212668409" Received: from mout.web.de ([212.227.15.14]) by mail2-smtp-roc.national.inria.fr with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 07 Apr 2016 09:43:41 +0200 Received: from frosties.localnet ([134.3.242.84]) by smtp.web.de (mrweb004) with ESMTPSA (Nemesis) id 0Ll30X-1bMZsF1cGL-00ajRq; Thu, 07 Apr 2016 09:43:38 +0200 Received: from mrvn by frosties.localnet with local (Exim 4.84) (envelope-from ) id 1ao4bJ-0003IO-20; Thu, 07 Apr 2016 09:43:37 +0200 Date: Thu, 7 Apr 2016 09:43:37 +0200 From: Goswin von Brederlow To: SP Cc: caml-list@inria.fr Message-ID: <20160407074336.GC11304@frosties> References: <20160323105016.GA2235@frosties> <56F2CFD4.4000401@cea.fr> <20160324102559.GB32689@frosties> <20160325112839.GA27075@frosties> <20160329222912.GI9386@darkstar> <20160331102118.GA17174@frosties> <20160402113841.GB30016@frosties> <20160406225621.GB644@tiger> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20160406225621.GB644@tiger> User-Agent: Mutt/1.5.23 (2014-03-12) X-Provags-ID: V03:K0:nbL+Jz6Yptgzw4uPDXtQRKBWm1X4McpeV7aCRk8ooMgx55PC4o+ BUHsNNKJ1yTZyZCz2P2hJ/HG/S1O83ujKm2jUyrbwU1uQQ2vlwplsSSGMeVK/riESqvQNeo uI5wsB/GQACefu8jZvKu56AKUH7vnLngoDMnThXPqdPgY+81vzXdpdCLH8R4c/bkMre2DNr tQ0AcIneFS3Ix+nCB+oWg== X-UI-Out-Filterresults: notjunk:1;V01:K0:ZJMqo4njHYc=:I6wbWEDmkCDDz8jOzKu49A ODBLOQ+3vplaCHXfAidnc4pnjTHXWrIYeYo+p9g8aOeB2U50Ud4q8GxHDP5svkENsYIP1JnZ2 Q59hPxykdmNIlXhubM5+47LG93q/cRcAeYVRdzO0kkhsNpMYdYffFQibKpstU7EQvcgk0eiE6 qeTwHXqFQaUikptnv6SSEzANs3QogB6fg9ibNIeN/d/PkAjerN6cfM/nnKTp4sPmPvvmlkR8J /3KH1oaCKVIQ1DvCpqeJTxm2JHaOZ0guO9mjO8qpVYRXTSOsI70+SkoPG6IuS7YGvMq/EbqpC 1Xa4Ic+A1z6K2ttKTapB6bNCnFcWw/J/1XoH9tmcseA/GF6HxgIRTcBE5637S4QcXoXW3TnpV Fq8sVWa2OmluIag79RTFlp4GjEnV/HkTtaY8TgVVxfASUMJ8Gtps+wJKGeTObqroOJDAJKrHw LyYTsvb3h1dsZnCNE0F6ROfjJPWMURefoznvJoqIkAq4/SpJ6LzpPNAKOl90KAxBc04Gam/n9 96/4OOENJrY5C/ZKnga/Fq44oGNQiWwQFCZhuiMIl+vn+vToMKjFfEDTIrudvgiBBVGzGQ1u6 qFI95+0RM7SwgRmMmoewsCyVuieoEuL4wvtvBHsN4C2196ED0hSzyFwua2SNEtoW9kKtuzNqZ d/aZcSitjv9AR/8N5PGvZWGqBNuAipIWITfn8zXzzds5TItBg4A+MUjXEFwlYGsr+VRsMkatW gjmpEShGg5xJ4cdNg3S5dob00Vw+rD116DWjLnDPQnboIHdLfmcb63L/hgo= Subject: Re: [Caml-list] RFH: can't figure out why my QT5 widget bindings segfault On Wed, Apr 06, 2016 at 11:56:21PM +0100, SP wrote: > On Sat, Apr 02, 2016 at 01:38:41PM +0200, Goswin von Brederlow wrote: > >With objects each class inherits all the data of the parent while > >alowing the child to be used with methods of the parent. > > This is part of the problem I'm referring to when I say "tracking the > changes in the API". > > >You can't do that with records or tuples. And if I have one class > >definition per Qt5 class anyway I might as well expose that to the > >user instead of hiding it in modules. > > Yes, it would have to be new approach all together. Then I'm afraid you have to rewrite Qt. You have to overload every single Qt class to use the many virtual functions. > There is still merit in having a one-to-one ocaml wrapper for Qt. If > you can do the wrapping using some generator operating on the headers, > even better. > > But I would encourage that a higher level, functional wrapper is used > for applications. It would be a shame if heavy object orientation > affected user interface codebases because of such necessity. > > -- > SP Feel free to do that. Personally I think a GUI is the worst fit for functional programming and the best fit for object oriented. A GUI screams side effect and mutability to me and a purely functional approach I think is entirely pointless beyond the academical. Luckily ocaml allows one to use both functional and object oriented programming where it fits best. MfG Goswin