Parrot is a virtual machine designed to efficiently compile and execute bytecode for dynamic languages. Parrot currently hosts a variety of language implementations in various stages of completion, including Tcl, Javascript, Ruby, Lua, Scheme, PHP, Python, Perl 6, APL, and a .NET bytecode translator. Parrot is not about parrots, though we are rather fond of them for obvious reasons.

GSoC 2014 - Report 5

Hey everyone!

I will catch you up on my work this week. As I had mentioned in my last post (http://www.parrot.org/zyroz4), I have already started working on a new task (https://github.com/parrot/parrot/issues/1080).

Since, this work requires me to make changes to the Pmc2c compiler, I am required to code in Perl. I am however, new to Perl and thus, spent quite some time getting used to some basic coding in Perl this week.

GSoC 2014 - Report 4

Hey everyone!

Let me share the progress for this week.

I have successfully finished my task #1 that required me to add write barriers to the PMC methods (https://github.com/parrot/parrot/issues/1069).

For this task, I had finished most of the work last week itself (http://www.parrot.org/zyroz3).

This week I mostly verified all the WB annotations for one last time and it did help me to fix some bugs and incorrect WBs. All this work is now part of our latest release for Parrot 6.5.0 and we have achieved a speed improvement of around 2.5% - 5% through this task!

GSoC 2014 - Report 3

Hey everyone!

There is a lot of good news to share this week! Our GSoC task #1 (https://github.com/parrot/parrot/issues/1069) is a success!! :D

So, I have been spending a lot of time looking into and fixing 95 pmc files with a calculated number of 2230 methods for core PMCs alone...

GSoC 2014 - Report 2

Hey everyone!

I will be filling you in with what we have achieved in the last week.

So, rurban has fixed up the pmc2c compiler and it looks good to handle the write barriers. However, the rules that we had followed earlier to place these WBs in the PMCs have been changed to some extent for a better performance. You can have a look at them @ https://github.com/parrot/parrot/issues/1069.

My major work has involved verifying and correcting the annotations for the WBs in the methods for each PMC. There are about 95 .pmc files and I am about to reach the half way mark.

GSoC 2014 project - Kick off!

Hey everyone!

I am really happy to announce that my GSoC project has gotten underway! I would first like to thank everybody to have given me this wonderful opportunity to be part of the community.

My project's primary objective is to improve the performance of the method signatures. To get the hang of things and understand how method calls and GC work, I have started working on a task that requires me to optimize GC write barriers in the pmc's (https://github.com/parrot/parrot/issues/1069).

Re-added imcc optimizations

Summary

-O1 and -O2 were previously disabled with some more imcc options. I enabled and fixed all of them. Even -O2 is now stable.

Parrot-libgit2 Final Report

GSoC has come to an end finally and my project is done. The project was about implementing bindings to libgit2. I learned quite a bit about git internals, about how libraries are implemented, and parrot stuff.

I began with a better libgit2 header file parser which then creates the NCI low-level definitions. It was accurate enough so that I've had to update it only once since the mid-term data. There is a also a better unified buildsystem, though there are still rough edges around it.

app-parrot-create weekly report

At this week I was working for update tests and documentation on my project.
On the other hand I'm working on opened issues from dukeleto. Such as
https://github.com/letolabs/app-parrot-create/issues/12
https://github.com/letolabs/app-parrot-create/issues/11
https://github.com/letolabs/app-parrot-create/issues/10
https://github.com/letolabs/app-parrot-create/issues/9

I've done all task that we planed with dukeleto.
The future plans are going to work with issues that remain and deploy for enterprise work.

Final GSoC report

What's done?

A cross compiling nqp-js (running on top of parrot) passes all tests in nqp/t/nqp with the exception of test 49 (which does an equivalent of eval, which would be really tricky do in a cross compiler).
It also passes the serialization tests in nqp/t/serialization.
It also passes the same tests as nqp-parrot in nqp/t/qregex.
We use a custom harness for those to avoid compiling regex at runtime.

A standalone nqp-js (compiled with a cross compiling nqp-js and using a setting compiled by a cross compiling nqp-js) passes most of the tests in nqp/t/nqp (it fails 5 of them).

app-parrot-create weekly report

At this day I have done my work. The last task which I provided it's a build with perl 5 language.
https://github.com/letolabs/app-parrot-create/commit/941304621158a59a7b4...

This is a final week at GSoC, so I will plan to write more tests and update documentation.

The last version of my project you can test on http://gcc20.fsffrance.org:3000/

Future plans:
- update API, realization a garbage collector(automatical remove old content) on my app
- realization an automatical deploy system on WebServer

Syndicate content