From kde-bindings Fri Jul 12 18:55:47 2013 From: Dimitar Dobrev Date: Fri, 12 Jul 2013 18:55:47 +0000 To: kde-bindings Subject: Re: [Kde-bindings] Qt & SWIG Message-Id: <1373655347.63508.YahooMailNeo () web122402 ! mail ! ne1 ! yahoo ! com> X-MARC-Message: https://marc.info/?l=kde-bindings&m=137365536118251 MIME-Version: 1 Content-Type: multipart/mixed; boundary="--===============8693829507379249802==" --===============8693829507379249802== Content-Type: multipart/alternative; boundary="1494295045-1175456628-1373655347=:63508" --1494295045-1175456628-1373655347=:63508 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: quoted-printable =0A=0A=A0=A0=A0 Thank you for your suggestion. However, Qt-Jambi (http://qt= -jambi.org/) looks abandoned. There already was an attempt to use it throug= h IKVM here - http://code.google.com/p/qt4dotnet/ - also abandoned. Even if= one were to revive it, its dependency on the seemingly dead Qt-Jambi kills= any future it might have. Besides, I believe performance would be worse th= an with a SWIG-based solution.=0A=0A=A0=A0=A0 Regards,=0A=A0=A0=A0 Dimitar= =0A=0A=0A=0A________________________________=0A From: james =0ATo: Dimitar Dobrev ; KDE bindings fo= r other programming languages =0ASent: Friday, July = 12, 2013 9:32 PM=0ASubject: Re: [Kde-bindings] Qt & SWIG=0A =0A=0A=0AWhat i= s Qt-Jambi doing, or are they in difficulty too?=0A=0AQt seems to shed bind= ings like they are going out of fashion.=0A=0AI can imagine that's no probl= em for Phil with PySide, bit perhaps=0A a little less NIH elsewhere wo= uld work.=0A=0AI mean - maybe the Qt-Jambi system could be extended?=A0 Eve= n if it=0A means going through IKVM?=0A=0AOr maybe the PySide stuff co= uld be reused - even if the glue is=0A IronPython?=0A=0AJames=0A=0A=0A= On 12/07/2013 13:41, Dimitar Dobrev wrote:=0A=0A=0A>=0A>=A0=A0=A0 Hello, Ru= th,=0A>=0A>=0A>=A0=A0=A0 Glad to hear from you again. I am sorry Qyoto didn= 't work out for you but I do agree SWIG would be a better solution, with be= tter performance indeed. I'll try to find free time to work on it as soon a= s possible. However, I cannot make any promise yet.=0A>=0A>=0A>=A0=A0=A0 Be= st regards,=0A>=A0=A0=A0 Dimitar=0A>=0A>=0A>=0A>=0A>_______________________= _________=0A> From: Ruth Ivimey-Cook =0A>To: kde-bindings@= kde.org =0A>Sent: Friday, July 12, 2013 2:41 PM=0A>Subject: Re: [Kde-bindin= gs] Qt & SWIG=0A> =0A>=0A>=0A>Dimitar and others,=0A>=0A>I evaluated using = Qyoto for a project I'm working=0A on and - with regre= t for all the hard work Dimitar=0A had obviously put i= n - decided against it, both=0A because it was buggy a= nd because it was very slow.=0A When I investigated th= e speed issue SMOKE relies=0A on textual matching of f= unction signatures to call=0A functions. Admittedly th= e hashes, once matched,=0A are hashed and cached, but = still...=A0=A0 It also=0A involved at least 2 transiti= ons from managed to=0A unmanaged code, which IIRC are = expensive in=0A themselves. =0A>=0A>People I know have= used SWIG to good effect but I=0A have no personal ex= perience.=0A>=0A>A statically linked shim file (not a DLL, if=0A = possible) - i.e. a set of functions coded in=0A = managed code that each make an unmanaged call to=0A = the "real" function would be the way I would=0A exp= ect. Coding this by hand would be painful, so a=0A pro= gram to generate them is the obvious response.=0A I be= lieve this is the SWIG way.=0A>=0A>If it were possible I would look into us= ing=0A something like an XML file containing the=0A = interface definition, maybe itself initially=0A = generated from the .h files, and which can then be=0A = adapted and enhanced to improve it. If the Qt=0A = and/or SWIG community were receptive this might=0A = become something people would support generally -=0A = e.g. including PyQt et al. - which would benefit=0A = everyone.=0A>=0A>HTH=0A>Ruth=0A>=0A>=0A>Dimitar Dobrev wrote:=0A>=0A>=A0= =A0=A0 =0A>>=A0=A0=A0 Dylan,=0A>>=0A>>=A0=A0=A0 Thank you for your suggesti= on. I know about CXXI but it wouldn't be my choice for the following reason= s:=0A>>=A0=A0=A0 1. It is both incomplete and abandoned;=0A>>=A0=A0=A0 2. I= t relies on Reflection.Emit which is not supported on iOS; Qt will soon off= icially run on iOS and it'd be nice if the bindingsworked on that platform = too.=0A>>=0A>>=A0=A0=A0 Regards,=0A>>=A0=A0=A0 Dimitar=A0=A0 =0A>>=0A>>=0A= >>=0A>>________________________________=0A>> From: "Moonfire, D." =0A>>To: KDE bindings for other programming languages =0A>>Sent: Thursday, July 11, 2013 9:06 PM=0A>>Subject: Re= : [Kde-bindings] Qt & SWIG=0A>> =0A>>=0A>>=0A>>On Thu, Jul 11, 2013 at 10:2= 5 AM, Gour wrote:=0A>>=0A>>On Thu, 11 Jul 2013 06:31:43= -0700 (PDT)=0A>>>Dimitar Dobrev wrote:=0A>>>=0A>>>> = 3. I don't want to have=0A anything to d= o with SMOKE any more=0A so if you'd=0A>= >>> like to take this path, you'd=0A be = on your own.=0A>>>=0A>>>Isn't it pity that there is no more=0A = interest in having Qt bindings for=0A>>>the .NET/Mon= o? :-(=0A>>>=0A>>There was an announcement some years=0A = back on one of the Mono blogs about an=0A = interop layer for C++ (https://github.com/mono/cxxi). It was nev= er mentioned again and I think a grue ate it, but it looked like a really n= ice set of libraries if someone maintained it beyond the initial proof of c= oncept. I also don't know how tightly it is tied to Mono itself and if a cr= oss-platform version could be done with it.=0A>>=0A>>Looking at the code, t= hey were also=0A using Qt as the example in = their POC.=0A>>=0A>>- Dylan=0A>>=0A>>______________________________________= _________=0A>>Kde-bindings mailing list=0A>>Kde-bindings@kde.org=0A>>https:= //mail.kde.org/mailman/listinfo/kde-bindings=0A>>=0A>>=0A>>=0A>>=0A>>=0A>>_= ______________________________________________=0AKde-bindings mailing list = Kde-bindings@kde.org https://mail.kde.org/mailman/listinfo/kde-bindings =0A= >=0A>=0A>-- =0ASoftware Manager & Engineer=0ATel: 01223 414180=0ABlog: http= ://www.ivimey.org/blog LinkedIn: http://uk.linkedin.com/in/ruthivimeycook/ = =0A>_______________________________________________=0A>Kde-bindings mailing= list=0A>Kde-bindings@kde.org=0A>https://mail.kde.org/mailman/listinfo/kde-= bindings=0A>=0A>=0A>=0A>=0A>=0A>___________________________________________= ____=0AKde-bindings mailing list Kde-bindings@kde.org https://mail.kde.org/= mailman/listinfo/kde-bindings --1494295045-1175456628-1373655347=:63508 Content-Type: text/html; charset=iso-8859-1 Content-Transfer-Encoding: quoted-printable

    Thank you for your suggestion. However, Qt-Jamb= i (http://qt-jambi.org/) looks = abandoned. There already was an attempt to use it through IKVM here - http://code.google.com/p/qt4dotn= et/ - also abandoned. Even if one were to revive it, its dependency on = the seemingly dead Qt-Jambi kills any future it might have. Besides, I beli= eve performance would be worse than with a SWIG-based solution.
<= br>
    Regards,
<= div style=3D"color: rgb(0, 0, 0); font-size: 16px; font-family: times new r= oman,new york,times,serif; background-color: transparent; font-style: normal;">    Dimitar


From: james <james@mansionfamily.plus.com>
<= span style=3D"font-weight: bold;">To: Dimitar Dobrev <dpldobr= ev@yahoo.com>; KDE bindings for other programming languages <kde-bind= ings@kde.org>
Sent: Friday, July 12, 2013 9:32 PM
S= ubject: Re: [Kde-bindings] Qt & SWIG

=0A =0A=0A =0A= =0A
=0A
What is Qt-J= ambi doing, or are they in=0A difficulty too?
=0A
=0A = Qt seems to shed bindings like they are going out of fashion.
=0A =
=0A I can imagine that's no problem for Phil with PySide, bit perh= aps=0A a little less NIH elsewhere would work.
=0A
=0A = I mean - maybe the Qt-Jambi system could be extended?  Even if it=0A= means going through IKVM?
=0A
=0A Or maybe the PySid= e stuff could be reused - even if the glue is=0A IronPython?
=0A =
=0A James
=0A
=0A
=0A On 12/07/2013 1= 3:41, Dimitar Dobrev wrote:
=0A
=0A
=0A
=0A=
=0A

=0A =
=0A
   =0A Hello, Ruth,
=0A =

=0A
= =0A
    Glad= =0A to hear from you again. I am sorry Qyoto didn't work out= =0A for you but I do agree SWIG would be a better solution, with better performance indeed. I'll= =0A try to find free time to work on it as soon as possible.= =0A However, I cannot make any promise yet.
=0A =

=0A =0A
    Bes= t=0A regards,
=0A
   =0A Dimitar
=0A
=0A
=0A
=0A
=0A
=0A =
=0A
From: Ruth= =0A Ivimey-Cook <ruth@ivimey.org>
=0A = To:=0A = kde-bindings@kde.org
=0A Sent:=0A Friday= , July 12, 2013 2:41 PM
=0A Subject:=0A Re: [Kde-bindings] Qt &am= p; SWIG
=0A
=0A

=0A
=0A
=0A
Dimitar=0A and others,
=0A =
=0A I evaluated using Qyoto for= a project I'm working=0A on and - with regret for all= the hard work Dimitar=0A had obviously put in - decid= ed against it, both=0A because it was buggy and becaus= e it was very slow.=0A When I investigated the speed i= ssue SMOKE relies=0A on textual matching of function s= ignatures to call=0A functions. Admittedly the hashes,= once matched,=0A are hashed and cached, but still...&= nbsp;  It also=0A involved at least 2 transitions= from managed to=0A unmanaged code, which IIRC are exp= ensive in=0A themselves.
=0A =
=0A People I know have used SWIG to good effect bu= t I=0A have no personal experience.
=0A =
=0A A statically linked shim file (not a= DLL, if=0A possible) - i.e. a set of functions coded = in=0A managed code that each make an unmanaged call to= =0A the "real" function would be the way I would=0A = expect. Coding this by hand would be painful, so a=0A = program to generate them is the obvious response.=0A = I believe this is the SWIG way.
=0A =
=0A If it were possible I would look into using= =0A something like an XML file containing the=0A = interface definition, maybe itself initially=0A = generated from the .h files, and which can then be=0A = adapted and enhanced to improve it. If the Qt=0A = and/or SWIG community were receptive this might=0A = become something people would support generally -=0A = e.g. including PyQt et al. - which would benefit=0A e= veryone.
=0A
=0A HTH
= =0A Ruth
=0A
=0A =
=0A Dimitar Dobrev wrote:
=0A =
=0A
=0A =
   
=0A
=     Dylan,
=0A =
=0A
    Than= k you for your=0A suggestion. I know about = CXXI but it=0A wouldn't be my choice for the followi= ng reasons:
=0A =     1. It is both=0A incomplete and= abandoned;
=0A =
    2. It=0A = relies on Reflection.Emit which is not=0A = supported on iOS; Qt will soon officially run=0A = on iOS and it'd be nice if the bindings worked on that=0A platform = too.
=0A
=0A
=    =0A = Regards,
=0A
   =0A Dimitar=0A    =0A

=0A
=0A =
=0A
=0A =
=0A <= hr size=3D"1"> =0A = From:=0A = "Moonfire, D." <d.moonfire@mfgames.c= om>
=0A To:=0A KDE bindings fo= r other programming=0A languages &= lt;kde-bindings@kde.org>=0A
=0A = Sent:=0A Thursday, July 11, 2013 9:06 PM<= br>=0A = Subject:=0A Re: [Kde-bindings] Qt= & SWIG
=0A
=0A =

=0A =
=0A =
On=0A = Thu, Jul 11, 2013 at 10:25 AM, Gour <gour@atmarama.net>=0A = wrote:
=0A On Thu, 11=0A = Jul 2013 06:31:43 -0700 (PDT)
=0A = Dimitar Dobrev <dpld= obrev@yahoo.com>=0A=0A wrote:
= =0A
=0A = > 3. I don't want to have=0A a= nything to do with SMOKE any more=0A so = if you'd
=0A > like to take this p= ath, you'd=0A be on your own.
=0A =
=0A = Isn't it pity that there is no more=0A i= nterest in having Qt bindings for
=0A = the .NET/Mono? :-(
=0A
= =0A
=0A =
=0A There was an announcement some year= s=0A back on one of the Mono blogs about an= =0A interop layer for C++ (https://github.c= om/mono/cxxi).=0A=0A It was never mentio= ned again and I think=0A a grue ate it, but = it looked like a=0A really nice set of libra= ries if someone=0A maintained it beyond the = initial proof=0A of concept. I also don't kn= ow how=0A tightly it is tied to Mono itself = and if=0A a cross-platform version could be = done=0A with it.
=0A =
=0A Looking at the code, they= were also=0A using Qt as the example in the= ir POC.
=0A
=0A = - Dylan
=0A
=0A =
=0A_______________________________________________=0A Kde-bindings mailing list
=0A = Kde-bindings@k= de.org
=0A htt= ps://mail.kde.org/mailman/listinfo/kde-bindings
=0A =
=0A
=0A =
=0A
=0A =
=0A
=0A
=0A =
=0A
=0A
_______=
________________________________________=0AKde-bindings mailing list=0AKde-bindings@kde.org=0Ahttps://mail.kde.org/mailman/listinfo/kde-bind=
ings=0A
=0A
=0A =
=0A
=0A
-- =0ASoftware Manager & Engineer=0ATel: 01223 41=
4180=0ABlog: http://www.ivimey.=
org/blog=0ALinkedIn: http://uk.linkedin.com/in/ruthivimeycook/ 
=0A =
=0A
=0A
=0A = _______________________________________________
=0A = Kde-bindings mailing list
=0A Kde-bindings@kde.org
=0A https://mail.kde.org/mailman/listinfo/kde-bindings
=0A =
=0A
=0A
=0A =
=0A =0A =0A =0A
=0A =
=0A =
=0A
=0A
_______=
________________________________________=0AKde-bindings mailing list=0AKde-bindings@kde.org=0Ahttps://mail.kde.org/mailman/listinfo/kde-bind=
ings=0A
=0A
=0A =0A
=0A = =0A=0A

--1494295045-1175456628-1373655347=:63508-- --===============8693829507379249802== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ Kde-bindings mailing list Kde-bindings@kde.org https://mail.kde.org/mailman/listinfo/kde-bindings --===============8693829507379249802==--