[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 18:55:47
Message-ID: 1373655347.63508.YahooMailNeo () web122402 ! mail ! ne1 ! yahoo ! com
[Download RAW message or body]

[Attachment #2 (multipart/alternative)]




    Thank you for your suggestion. However, Qt-Jambi (http://qt-jambi.org/) \
looks abandoned. There already was an attempt to use it through 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 than with a \
SWIG-based solution.

    Regards,
    Dimitar



________________________________
 From: james <james@mansionfamily.plus.com>
To: Dimitar Dobrev <dpldobrev@yahoo.com>; KDE bindings for other \
                programming languages <kde-bindings@kde.org> 
Sent: Friday, July 12, 2013 9:32 PM
Subject: Re: [Kde-bindings] Qt & SWIG
 


What is Qt-Jambi doing, or are they in difficulty too?

Qt seems to shed bindings like they are going out of fashion.

I can imagine that's no problem for Phil with PySide, bit perhaps
      a little less NIH elsewhere would work.

I mean - maybe the Qt-Jambi system could be extended?  Even if it
      means going through IKVM?

Or maybe the PySide stuff could be reused - even if the glue is
      IronPython?

James


On 12/07/2013 13:41, Dimitar Dobrev wrote:


> 
> 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
> 
> 
> 
> 
> 
> _______________________________________________
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"><br><div><span class="tab">&nbsp;&nbsp;&nbsp; Thank \
you for your suggestion. However, Qt-Jambi</span> (<a \
href="http://qt-jambi.org/">http://qt-jambi.org/</a>) looks abandoned. \
There already was an attempt to use it through IKVM here - <a \
href="http://code.google.com/p/qt4dotnet/">http://code.google.com/p/qt4dotnet/</a> \
- 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 than with a SWIG-based \
solution.</div><div><br></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; \
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> james \
&lt;james@mansionfamily.plus.com&gt;<br> <b><span style="font-weight: \
bold;">To:</span></b> Dimitar Dobrev &lt;dpldobrev@yahoo.com&gt;; KDE \
bindings for other programming languages &lt;kde-bindings@kde.org&gt; <br> \
<b><span style="font-weight: bold;">Sent:</span></b> Friday, July 12, 2013 \
9:32 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="yiv9620782388">  

    
  
  <div>
    <div class="yiv9620782388moz-cite-prefix">What is Qt-Jambi doing, or \
are they in  difficulty too?<br>
      <br>
      Qt seems to shed bindings like they are going out of fashion.<br>
      <br>
      I can imagine that's no problem for Phil with PySide, bit perhaps
      a little less NIH elsewhere would work.<br>
      <br>
      I mean - maybe the Qt-Jambi system could be extended?&nbsp; Even if \
it  means going through IKVM?<br>
      <br>
      Or maybe the PySide stuff could be reused - even if the glue is
      IronPython?<br>
      <br>
      James<br>
      <br>
      <br>
      On 12/07/2013 13:41, Dimitar Dobrev wrote:<br>
    </div>
    <blockquote type="cite">
      <div class="yiv9620782388moz-text-html" lang="x-western">
        <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="yiv9620782388tab">&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="yiv9620782388tab"></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="yiv9620782388tab">&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="yiv9620782388tab">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="yiv9620782388tab"></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="yiv9620782388tab">&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="yiv9620782388tab">&nbsp;&nbsp;&nbsp;  Dimitar</span><span \
class="yiv9620782388tab"><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 <a \
rel="nofollow" class="yiv9620782388moz-txt-link-rfc2396E" \
ymailto="mailto:ruth@ivimey.org" target="_blank" \
href="mailto:ruth@ivimey.org">&lt;ruth@ivimey.org&gt;</a><br>  <b><span \
style="font-weight:bold;">To:</span></b>  <a rel="nofollow" \
class="yiv9620782388moz-txt-link-abbreviated" \
ymailto="mailto:kde-bindings@kde.org" target="_blank" \
href="mailto:kde-bindings@kde.org">kde-bindings@kde.org</a> <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="yiv9620782388y_msg_container"><br>
                <div id="yiv9620782388">
                  <div>
                    <div class="yiv9620782388moz-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="yiv9620782388tab">&nbsp;&nbsp;&nbsp; <br>
                        </span><span \
class="yiv9620782388tab">&nbsp;&nbsp;&nbsp; Dylan,<br>  <br>
                        </span><span \
class="yiv9620782388tab">&nbsp;&nbsp;&nbsp; </span><span \
class="yiv9620782388tab">Thank you for your  suggestion. </span>I know \
                about CXXI but it
                        wouldn't be my choice for the following \
                reasons:<br>
                        <span class="yiv9620782388tab">&nbsp;&nbsp;&nbsp; \
                1. It is both
                          incomplete and abandoned;</span><span \
                class="yiv9620782388tab"><br>
                        </span><span \
class="yiv9620782388tab">&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="yiv9620782388tab"> worked on that  platform \
too.<br>  <br>
                        </span><span \
class="yiv9620782388tab">&nbsp;&nbsp;&nbsp;  Regards,<br>
                        </span><span \
class="yiv9620782388tab">&nbsp;&nbsp;&nbsp;  Dimitar</span><span \
class="yiv9620782388tab">  &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="yiv9620782388moz-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="yiv9620782388moz-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="yiv9620782388y_msg_container"><br>
                              <div id="yiv9620782388">
                                <div class="yiv9620782388gmail_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="yiv9620782388gmail_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="yiv9620782388mimeAttachmentHeader"></fieldset>  <br>
                      <pre>_______________________________________________
Kde-bindings mailing list
<a rel="nofollow" class="yiv9620782388moz-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="yiv9620782388moz-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="yiv9620782388moz-signature">-- 
Software Manager &amp; Engineer
Tel: 01223 414180
Blog: <a rel="nofollow" class="yiv9620782388moz-txt-link-freetext" \
target="_blank" href="http://www.ivimey.org/blog">http://www.ivimey.org/blog</a>
                
LinkedIn: <a rel="nofollow" class="yiv9620782388moz-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 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>
      </div>
      <br>
      <fieldset class="yiv9620782388mimeAttachmentHeader"></fieldset>
      <br>
      <div class="yiv9620782388moz-text-plain" \
style="font-family:-moz-fixed;font-size:14px;" lang="x-western">  \
<pre>_______________________________________________ Kde-bindings mailing \
list <a rel="nofollow" class="yiv9620782388moz-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="yiv9620782388moz-txt-link-freetext" target="_blank" \
href="https://mail.kde.org/mailman/listinfo/kde-bindings">https://mail.kde.org/mailman/listinfo/kde-bindings</a>
 </pre>
      </div>
    </blockquote>
    <br>
  </div>

</div><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