|
From: | Lasse Schuirmann |
Subject: | Re: Possible GSoC Project: AOT "bytecode" compiler for octave |
Date: | Sat, 22 Feb 2014 15:19:54 +0100 |
Am 12.02.2014 16:11 schrieb "Lasse Schuirmann" <address@hidden>:
>
> On Wed, 2014-02-12 at 09:47 -0500, Jordi Gutiérrez Hermoso wrote:
> > On Wed, 2014-02-12 at 15:01 +0100, Lasse Schuirmann wrote:
> >
> > > I also have successfully serialized a tree_statement_list that
> > > contained a comment with some rather generic methods I wrote. I am
> > > relatively sure that this would work well with the JIT compiler
> > > since this is on the evaluation side only.
> > [snip]
> > > I would like to participate on the google summer of code with this project
> > > if you think that would be useful.
> >
> > This sounds useful. Can you show us your patches?
> >
> > - Jordi G. H.
> >
> >
>
> Of course. My general approach for serialization is hosted here in a git
> repository:
> https://bitbucket.org/sils1297/serialization-test
>
> A patch for octave is appended to this email. Please do not judge me by
> this code, it was meant to be an experiment.
>
> If you patch your version of octave with this patch, create a directory
> named "tmp" and execute octave in the parent directory of tmp, the
> version will save a serialized version of every statement to tmp/tmpA
> (B, C, ...). You will find an example execution below my signature.
>
> Serialization should work with comments (and nothing else). I did not
> test deserialization with octave yet.
>
> Greetings,
>
> Lasse Schuirmann
>
> Example:
> ~/prog/octave/build$ ./run-octave --no-gui
> octave:1> x=1 # a comment!
> tmp/tmpA
> x = 1
> octave:2> exit
> tmp/tmpB
>
> ~/prog/octave/build$ cd tmp
> ~/prog/octave/build/tmp$ hexdump -c tmpA
> 0000000 001 001 \0 \0 \0 \0 \0 \0 \0 001 377 377 377 377 377 377
> 0000010 377 377 \0 \0 001 001 \0 \0 \0 002 \0 \0 \0 \0 001 001
> 0000020 \0 \0 \0 \0 \0 \0 \0 003 \0 \0 \0 \f \0 \0 \0 \0
> 0000030 \0 \0 \0 a c o m m e n t ! \n
> 0000
Hello,
since this "sounds useful" I will start doing the paperwork for the GSoC soon. If there is anything else that is not provided here please ask. A list of my bugfixes and other related work is at bottom. I appreciate any feedback to any of my code!
I also would like to know if there is anyone willing to mentor this project I proposed. If you need code samples, take a look on the bitbucket repository (or ask for more).
On the IRC my nickname is sils1296. I am currently a little busy so I cannot hang around every day.
Greetings,
Lasse Schuirmann
--- my work with octave until now ---
I submitted a few patches and worked especially on getting octave compiled with 64 bit indexing enabled:
https://savannah.gnu.org/bugs/?41163
https://savannah.gnu.org/bugs/?41145
I also provided another unrelated patch here:
https://savannah.gnu.org/bugs/?32885
As I read through the code to learn about the interpreter and evaluator I worked out this patch:
https://savannah.gnu.org/patch/index.php?8267
--- octave unrelated work related to this project ---
I am currently working on a performance optimization project in C++ on an embedded system. I hope I will get more experience in writing efficient code this way.
[Prev in Thread] | Current Thread | [Next in Thread] |