[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-bindings
Subject:    Re: [Kde-bindings] Qt & SWIG
From:       Dimitar Dobrev <dpldobrev () yahoo ! com>
Date:       2013-07-12 12:41:50
Message-ID: 1373632910.92938.YahooMailNeo () web122402 ! mail ! ne1 ! yahoo ! com
[Download RAW message or body]

[Attachment #2 (multipart/alternative)]




    Hello, Ruth,

    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 better performance indeed. I'll try to \
find free time to work on it as soon as possible. However,I cannot make any promise \
yet.

    Best regards,
    Dimitar



________________________________
 From: Ruth Ivimey-Cook <ruth@ivimey.org>
To: kde-bindings@kde.org 
Sent: Friday, July 12, 2013 2:41 PM
Subject: Re: [Kde-bindings] Qt & SWIG
 


Dimitar and others,

I evaluated using Qyoto for a project I'm working on and - with
      regret for all the hard work Dimitar had obviously put in -
      decided against it, both because it was buggy and because it was
      very slow. When I investigated the speed issue SMOKE relies on
      textual matching of function signatures to call functions.
      Admittedly the hashes, once matched, are hashed and cached, but
      still...   It also involved at least 2 transitions from managed to
      unmanaged code, which IIRC are expensive in themselves. 

People I know have used SWIG to good effect but I have no personal
      experience.

A statically linked shim file (not a DLL, if possible) - i.e. a
      set of functions coded in managed code that each make an unmanaged
      call to the "real" function would be the way I would expect.
      Coding this by hand would be painful, so a program to generate
      them is the obvious response. I believe this is the SWIG way.

If it were possible I would look into using something like an XML
      file containing the interface definition, maybe itself initially
      generated from the .h files, and which can then be adapted and
      enhanced to improve it. If the Qt and/or SWIG community were
      receptive this might become something people would support
      generally - e.g. including PyQt et al. - which would benefit
      everyone.

HTH
Ruth


Dimitar Dobrev wrote:

    
> Dylan,
> 
> Thank you for your suggestion. I know about CXXI but it wouldn't be my choice for \
> the following reasons: 1. It is both incomplete and abandoned;
> 2. It relies on Reflection.Emit which is not supported on iOS; Qt will soon \
> officially run on iOS and it'd be nice if the bindingsworked on that platform too. 
> Regards,
> Dimitar    
> 
> 
> 
> ________________________________
> From: "Moonfire, D." <d.moonfire@mfgames.com>
> To: KDE bindings for other programming languages <kde-bindings@kde.org> 
> Sent: Thursday, July 11, 2013 9:06 PM
> Subject: Re: [Kde-bindings] Qt & SWIG
> 
> 
> 
> On Thu, Jul 11, 2013 at 10:25 AM, Gour <gour@atmarama.net> wrote:
> 
> On Thu, 11 Jul 2013 06:31:43 -0700 (PDT)
> > Dimitar Dobrev <dpldobrev@yahoo.com> wrote:
> > 
> > > 3. I don't want to have anything to do with
                    SMOKE any more so if you'd
> > > like to take this path, you'd be on your own.
> > 
> > Isn't it pity that there is no more interest in
                    having Qt bindings for
> > the .NET/Mono? :-(
> > 
> There was an announcement some years back on one of the
                Mono blogs about an interop layer for C++ \
(https://github.com/mono/cxxi). It was never mentioned again and I think a grue ate \
it, but it looked like a really nice set of libraries if someone maintained it beyond \
the initial proof of concept. I also don't know how tightly it is tied to Mono itself \
and if a cross-platform version could be done with it.
> 
> Looking at the code, they were also using Qt as the
                example in their POC.
> 
> - Dylan
> 
> _______________________________________________
> Kde-bindings mailing list
> Kde-bindings@kde.org
> https://mail.kde.org/mailman/listinfo/kde-bindings
> 
> 
> 
> 
> 
> _______________________________________________
Kde-bindings mailing list Kde-bindings@kde.org \
https://mail.kde.org/mailman/listinfo/kde-bindings 


-- 
Software Manager & Engineer
Tel: 01223 414180
Blog: http://www.ivimey.org/blog LinkedIn: http://uk.linkedin.com/in/ruthivimeycook/ 
_______________________________________________
Kde-bindings mailing list
Kde-bindings@kde.org
https://mail.kde.org/mailman/listinfo/kde-bindings


[Attachment #5 (text/html)]

<html><body><div style="color:#000; background-color:#fff; font-family:times new \
roman, new york, times, serif;font-size:12pt"><div><br><span></span></div><div \
style="color: rgb(0, 0, 0); font-size: 16px; font-family: times new roman,new \
york,times,serif; background-color: transparent; font-style: normal;"><span \
class="tab">&nbsp;&nbsp;&nbsp; Hello, Ruth,</span></div><div style="color: rgb(0, 0, \
0); font-size: 16px; font-family: times new roman,new york,times,serif; \
background-color: transparent; font-style: normal;"><br><span \
class="tab"></span></div><div style="color: rgb(0, 0, 0); font-size: 16px; \
font-family: times new roman,new york,times,serif; background-color: transparent; \
font-style: normal;"><span class="tab">&nbsp;&nbsp;&nbsp; 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 \
</span><span class="tab">solution, with better performance indeed. I'll try to find \
free time to work on it as  soon as possible. However, I cannot make any promise \
yet.</span></div><div style="color: rgb(0, 0, 0); font-size: 16px; font-family: times \
new roman,new york,times,serif; background-color: transparent; font-style: \
normal;"><br><span class="tab"></span></div><div style="color: rgb(0, 0, 0); \
font-size: 16px; font-family: times new roman,new york,times,serif; background-color: \
transparent; font-style: normal;"><span class="tab">&nbsp;&nbsp;&nbsp; Best \
regards,</span></div><div style="color: rgb(0, 0, 0); font-size: 16px; font-family: \
times new roman,new york,times,serif; background-color: transparent; font-style: \
normal;"><span class="tab">&nbsp;&nbsp;&nbsp; Dimitar</span><span \
class="tab"><br></span></div><div><br></div>  <div style="font-family: times new \
roman, new york, times, serif; font-size: 12pt;"> <div style="font-family: times new \
roman, new york, times, serif; font-size: 12pt;"> <div dir="ltr"> <hr size="1">  \
<font face="Arial" size="2">  <b><span style="font-weight:bold;">From:</span></b> \
Ruth Ivimey-Cook &lt;ruth@ivimey.org&gt;<br> <b><span style="font-weight: \
bold;">To:</span></b> kde-bindings@kde.org <br> <b><span style="font-weight: \
bold;">Sent:</span></b> Friday, July 12, 2013 2:41 PM<br> <b><span \
style="font-weight: bold;">Subject:</span></b> Re: [Kde-bindings] Qt &amp; SWIG<br> \
</font> </div> <div class="y_msg_container"><br><div id="yiv4563507648">  

    
  
  <div>
    <div class="yiv4563507648moz-cite-prefix">Dimitar and others,<br>
      <br>
      I evaluated using Qyoto for a project I'm working on and - with
      regret for all the hard work Dimitar had obviously put in -
      decided against it, both because it was buggy and because it was
      very slow. When I investigated the speed issue SMOKE relies on
      textual matching of function signatures to call functions.
      Admittedly the hashes, once matched, are hashed and cached, but
      still...&nbsp;&nbsp; It also involved at least 2 transitions from managed to
      unmanaged code, which IIRC are expensive in themselves. <br>
      <br>
      People I know have used SWIG to good effect but I have no personal
      experience.<br>
      <br>
      A statically linked shim file (not a DLL, if possible) - i.e. a
      set of functions coded in managed code that each make an unmanaged
      call to the "real" function would be the way I would expect.
      Coding this by hand would be painful, so a program to generate
      them is the obvious response. I believe this is the SWIG way.<br>
      <br>
      If it were possible I would look into using something like an XML
      file containing the interface definition, maybe itself initially
      generated from the .h files, and which can then be adapted and
      enhanced to improve it. If the Qt and/or SWIG community were
      receptive this might become something people would support
      generally - e.g. including PyQt et al. - which would benefit
      everyone.<br>
      <br>
      HTH<br>
      Ruth<br>
      <br>
      <br>
      Dimitar Dobrev wrote:<br>
    </div>
    <blockquote type="cite">
      <div style="color:#000;background-color:#fff;font-family:times new roman, new \
york, times, serif;font-size:12pt;"><span class="yiv4563507648tab">&nbsp;&nbsp;&nbsp; \
                <br>
        </span><span class="yiv4563507648tab">&nbsp;&nbsp;&nbsp; Dylan,<br>
          <br>
        </span><span class="yiv4563507648tab">&nbsp;&nbsp;&nbsp; </span><span \
class="yiv4563507648tab">Thank you  for your suggestion. </span>I know about CXXI but \
it wouldn't  be my choice for the following reasons:<br>
        <span class="yiv4563507648tab">&nbsp;&nbsp;&nbsp; 1. It is both incomplete \
                and abandoned;</span><span class="yiv4563507648tab"><br>
        </span><span class="yiv4563507648tab">&nbsp;&nbsp;&nbsp; 2. It relies on \
Reflection.Emit  which is not supported on iOS; Qt will soon officially run on
          iOS and it'd be nice if the bindings</span><span class="yiv4563507648tab">
          worked on that platform too.<br>
          <br>
        </span><span class="yiv4563507648tab">&nbsp;&nbsp;&nbsp; Regards,<br>
        </span><span class="yiv4563507648tab">&nbsp;&nbsp;&nbsp; Dimitar</span><span \
class="yiv4563507648tab"> &nbsp;&nbsp;  </span>
        <div><br>
        </div>
        <div style="font-family:times new roman, new york, times, \
                serif;font-size:12pt;">
          <div style="font-family:times new roman, new york, times, \
serif;font-size:12pt;">  <div dir="ltr">
              <hr size="1"> <font face="Arial" size="2"> <b><span \
style="font-weight:bold;">From:</span></b>  "Moonfire, D." <a rel="nofollow" \
class="yiv4563507648moz-txt-link-rfc2396E" ymailto="mailto:d.moonfire@mfgames.com" \
target="_blank" href="mailto:d.moonfire@mfgames.com">&lt;d.moonfire@mfgames.com&gt;</a><br>
  <b><span style="font-weight:bold;">To:</span></b> KDE
                bindings for other programming languages
                <a rel="nofollow" class="yiv4563507648moz-txt-link-rfc2396E" \
ymailto="mailto:kde-bindings@kde.org" target="_blank" \
href="mailto:kde-bindings@kde.org">&lt;kde-bindings@kde.org&gt;</a> <br>  <b><span \
style="font-weight:bold;">Sent:</span></b>  Thursday, July 11, 2013 9:06 PM<br>
                <b><span style="font-weight:bold;">Subject:</span></b>
                Re: [Kde-bindings] Qt &amp; SWIG<br>
              </font> </div>
            <div class="yiv4563507648y_msg_container"><br>
              <div id="yiv4563507648">
                <div class="yiv4563507648gmail_quote">On Thu, Jul 11,
                  2013 at 10:25 AM, Gour <span dir="ltr">&lt;<a rel="nofollow" \
ymailto="mailto:gour@atmarama.net" target="_blank" \
href="mailto:gour@atmarama.net">gour@atmarama.net</a>&gt;</span>  wrote:<br>
                  <blockquote class="yiv4563507648gmail_quote" style="margin:0 0 0 \
.8ex;border-left:1px #ccc solid;padding-left:1ex;">  On Thu, 11 Jul 2013 06:31:43 \
-0700 (PDT)<br>  Dimitar Dobrev &lt;<a rel="nofollow" \
ymailto="mailto:dpldobrev@yahoo.com" target="_blank" \
href="mailto:dpldobrev@yahoo.com">dpldobrev@yahoo.com</a>&gt;  wrote:<br>
                    <br>
                    &gt; 3. I don't want to have anything to do with
                    SMOKE any more so if you'd<br>
                    &gt; like to take this path, you'd be on your own.<br>
                    <br>
                    Isn't it pity that there is no more interest in
                    having Qt bindings for<br>
                    the .NET/Mono? :-(<br>
                  </blockquote>
                </div>
                <br>
                There was an announcement some years back on one of the
                Mono blogs about an interop layer for C++ (<a rel="nofollow" \
target="_blank" href="https://github.com/mono/cxxi">https://github.com/mono/cxxi</a>).
  It was never mentioned again and I think a grue ate it,
                but it looked like a really nice set of libraries if
                someone maintained it beyond the initial proof of
                concept. I also don't know how tightly it is tied to
                Mono itself and if a cross-platform version could be
                done with it.<br>
                <br>
                Looking at the code, they were also using Qt as the
                example in their POC.<br>
                <br>
                - Dylan<br>
              </div>
              <br>
              _______________________________________________<br>
              Kde-bindings mailing list<br>
              <a rel="nofollow" ymailto="mailto:Kde-bindings@kde.org" target="_blank" \
                href="mailto:Kde-bindings@kde.org">Kde-bindings@kde.org</a><br>
              <a rel="nofollow" target="_blank" \
href="https://mail.kde.org/mailman/listinfo/kde-bindings">https://mail.kde.org/mailman/listinfo/kde-bindings</a><br>
  <br>
              <br>
            </div>
          </div>
        </div>
      </div>
      <br>
      <fieldset class="yiv4563507648mimeAttachmentHeader"></fieldset>
      <br>
      <pre>_______________________________________________
Kde-bindings mailing list
<a rel="nofollow" class="yiv4563507648moz-txt-link-abbreviated" \
ymailto="mailto:Kde-bindings@kde.org" target="_blank" \
href="mailto:Kde-bindings@kde.org">Kde-bindings@kde.org</a> <a rel="nofollow" \
class="yiv4563507648moz-txt-link-freetext" target="_blank" \
href="https://mail.kde.org/mailman/listinfo/kde-bindings">https://mail.kde.org/mailman/listinfo/kde-bindings</a>
 </pre>
    </blockquote>
    <br>
    <br>
    <pre class="yiv4563507648moz-signature">-- 
Software Manager &amp; Engineer
Tel: 01223 414180
Blog: <a rel="nofollow" class="yiv4563507648moz-txt-link-freetext" target="_blank" \
                href="http://www.ivimey.org/blog">http://www.ivimey.org/blog</a>
LinkedIn: <a rel="nofollow" class="yiv4563507648moz-txt-link-freetext" \
target="_blank" href="http://uk.linkedin.com/in/ruthivimeycook/">http://uk.linkedin.com/in/ruthivimeycook/</a> \
</pre>  </div>

</div><br>_______________________________________________<br>Kde-bindings mailing \
list<br><a ymailto="mailto:Kde-bindings@kde.org" \
href="mailto:Kde-bindings@kde.org">Kde-bindings@kde.org</a><br><a \
href="https://mail.kde.org/mailman/listinfo/kde-bindings" \
target="_blank">https://mail.kde.org/mailman/listinfo/kde-bindings</a><br><br><br></div> \
</div> </div>  </div></body></html>



_______________________________________________
Kde-bindings mailing list
Kde-bindings@kde.org
https://mail.kde.org/mailman/listinfo/kde-bindings


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic