Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

Update TPF proposal for Parrot embed

  • Loading branch information...
commit 8cc7f13b30809d21554f3dbb4e278ffe6fd4f51f 1 parent ced733d
@leto authored
Showing with 21 additions and 13 deletions.
  1. +21 −13 TPF/Improve_Parrot_Embedding.pod
34 TPF/Improve_Parrot_Embedding.pod
@@ -49,8 +49,8 @@ Code coverage for the Embed/Extend API can be found at:
According to the code coverage stats for Parrot SVN r48100, the code coverage
-of src/embed.c is 65.2%, src/extend.c is 71.2% and src/extend-vtable.c is 5.3%.
-All of these will be raised to at least 95% by writing the appropriate tests.
+of src/embed.c is 65.2%, src/extend.c is 71.2% and src/extend_vtable.c is 5.3%.
+All of these will be raised to at least 98% by writing the appropriate tests.
The embed API documentation in docs/embed.pod contains many parts which are missing
documentation, such as the "Lexicals", "Type Signatures" and "Constants" sections.
@@ -60,24 +60,32 @@ L<>
=head2 Project Details
-A more detailed description.
+Currently only about 5 of over 180 functions in src/extend_vtable.c have
+test coverage. This will likely require around 50 tests fully cover
+each function, but this number can vary depending on the size of a test. The
+majority of these tests are simply calling a variety of VTABLE functions
+on PMCs, so each test has roughly the same structure. These tests will be
+added to t/src/extend_vtable.t (a new test file) and written in Perl 5.
-If you aren't the primary maintainer of the project you want funding
-for, show that you have approval from the primary maintainer.
+The test coverage for src/embed.c and src/extend.c is much higher, so fewer
+tests will be required, but these tests will be more complicated due to the
+necessity of testing corner cases. Much of the uncovered code in src/embed.c
+relates to dealing packfiles and bytecode, error handling with I/O and using
+non-default runcores. These tests will be added to t/src/embed.t and
+t/src/extend.t, respectively, and written in Perl 5.
-=head2 Inch-stones
+The documentation part of this grant should be straight-forward, but anything
+that needs to be clarified will be put to the parrot-dev mailing list.
-If your grant is going to take longer than a week it's useful to break
-down your project into small chunks. This helps everybody track of
-progress, and lets you see if your project schedule is practical!
+=head2 Inch-stones
-Try and think in "inch-stones" rather than "mile-stones". Breaking down
-your grant into many small goals makes it harder to overlook
-difficulties, and easier to see progress as you complete your grant.
=head2 Project Schedule
-How long will the project take? When can you begin work?
+I expect to be able to work about 5-10 hours per week, starting in October,
+so it does not conflict with Google Summer of Code. I expect that at this
+pace, this grant will take about 2-3 months to finish.
=head2 Completeness Criteria
Please sign in to comment.
Something went wrong with that request. Please try again.