<div dir="ltr"><div>Hi.<br><br></div>I'm currently working on some bug fixes. I prepared my plan for the the project. Please add your comments for the proposal <br></div><div class="gmail_extra"><br><br><div class="gmail_quote">
On Wed, Mar 19, 2014 at 7:38 PM, Tharindu Lakmal <span dir="ltr"><<a href="mailto:tmtlakmal@gmail.com" target="_blank">tmtlakmal@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div dir="ltr"><div><br></div><div>Thanks for the comment.. <br><br></div><div>I'm working on bug fixes and trying to upload a patch asap.<br><br></div><div>My LibreOffice Plugin was not a fully tested or a better formatted one. It was done as an experiment. It's repository was a mess with many gibberish. I added the important files into a separate repository.<br>

<br></div><div>old one - <a href="https://github.com/tmtlakmal/EasyTuteLO" target="_blank">https://github.com/tmtlakmal/EasyTuteLO</a><br></div><div>new one - <a href="https://github.com/tmtlakmal/EasyTuteLibreOffice" target="_blank">https://github.com/tmtlakmal/EasyTuteLibreOffice</a><br>

<br></div><div>I'm working on a Haskell implementation and will send you a working code before the selection process ends up.<br><br></div><div>Regards<br></div><div><br><br></div></div><div class="gmail_extra"><div>
<div class="h5"><br><br>
<div class="gmail_quote">On Wed, Mar 19, 2014 at 4:54 PM, Stephan Bergmann <span dir="ltr"><<a href="mailto:sbergman@redhat.com" target="_blank">sbergman@redhat.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<div>On 03/19/2014 10:44 AM, Tharindu Lakmal wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
I'm Lakmal From University of Moratuwa, Sri Lanka. I like to contribute<br>
for the topic Haskell UNO Language Binding. I'm looking for a mentor for<br>
the project.<br>
<br>
I read about your description about the project and browsed through many<br>
details around the topic. I had written a libreoffice plugin a few<br>
months ago using pyuno. It made me easier to find the details about UNO<br>
bindings.<br>
<br>
I like to get some advice from you about 1 st and third options.<br>
<br>
As I got to know,  FFI  doesn't provide direct support for C++, but<br>
there exist many code generators and methods to do that.<br>
<br>
The following links added me another option to call pyuno library<br>
through Haskell. Better if I can get an opinion on that<br>
<br>
<a href="http://www.haskell.org/haskellwiki/Cxx_foreign_function_interface" target="_blank">http://www.haskell.org/<u></u>haskellwiki/Cxx_foreign_<u></u>function_interface</a><br>
<a href="https://john-millikin.com/articles/ride-the-snake/" target="_blank">https://john-millikin.com/<u></u>articles/ride-the-snake/</a><br>
<br>
By the way I would like to get some opinion about pros and cons of<br>
option 1(FFI) and 3(Remote Protocol).<br>
<br>
I'll prepare the proposal asap and get your feedback also.<br>
</blockquote>
<br></div>
Hi Lakmal,<br>
<br>
Great to see you interested in this topic.  A few notes:<br>
<br>
* Doing a UNO Remote Protocol (URP) bridge might be easier than an FFI bridge in that you do that in an external, purely Haskell process (and the documentation of URP might be somewhat better than the documentation of Binary UNO, which you need to interface with in the FFI case).  In the end, a "real" UNO binding would support both, but it would of course be fine to concentrate on one of them, at least initially.<br>


<br>
* FFI being C rather than C++ should not be a problem, as the Binary UNO code that it needs to interact with is just C (although partially implemented in C++).  (One UNO concept is the "Binary UNO hub" that bridges between different language bindings, which each provide a bridge between that language binding and Binary UNO, so if e.g., some C++ code calls a UNO method implemented in Java, that call goes via the C++-to-Binary-UNO and then via the Binary-UNO-to-JNI bridge.)<br>


<br>
* You mention Python, but I wouldn't make a bridge between Haskell and PyUNO, but rather between Haskell and Binary UNO.  I see no advantage in the former, just more layers of indirection that complicate matters.<br>


<br>
* Great to read you already did a LO plugin.  Is the code available somewhere to have a look at it?<br>
<br>
* To be eligible for LO GSoC, you'd need to do some Easy Hacks first.<br>
<br>
* Do you also have experience with Haskell itself?<span><font color="#888888"><br>
<br>
Stephan<br>
</font></span></blockquote></div><br><br clear="all"><br></div></div><div class="">-- <br><font style color="#333300" face="arial, helvetica, sans-serif"><b><i>Lakmal Muthugama,</i></b></font><div><font style color="#333300" face="arial, helvetica, sans-serif"><i>Undergraduate,</i></font></div>

<div><font style color="#333300" face="arial, helvetica, sans-serif"><i>Department of Computer Science and Engineering,</i></font></div></div><div class=""><div><font style color="#333300" face="arial, helvetica, sans-serif"><i>University of Moratuwa,</i></font></div>

<div><font style color="#333300" face="arial, helvetica, sans-serif"><i>Sri Lanka.</i></font></div>
</div></div>
</blockquote></div><br><br clear="all"><br>-- <br><font style="background-color:rgb(255,255,255)" face="arial, helvetica, sans-serif" color="#333300"><b><i>Lakmal Muthugama,</i></b></font><div><font style="background-color:rgb(255,255,255)" face="arial, helvetica, sans-serif" color="#333300"><i>Undergraduate,</i></font></div>
<div><font style="background-color:rgb(255,255,255)" face="arial, helvetica, sans-serif" color="#333300"><i>Department of Computer Science and Engineering,</i></font></div><div><font style="background-color:rgb(255,255,255)" face="arial, helvetica, sans-serif" color="#333300"><i>University of Moratuwa,</i></font></div>
<div><font style="background-color:rgb(255,255,255)" face="arial, helvetica, sans-serif" color="#333300"><i>Sri Lanka.</i></font></div>
</div>