Switch branches/tags
Nothing to show
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
64 lines (58 sloc) 2.47 KB
"Low Hanging Fruit"
This file contains tasks that should be relatively small and easy. If
you want to start hacking on the 6model implementation on .Net, this
is a great way to jump in! Questions? Try catching jnthn on #perl6
on freenode.
Run optimizer when -O is passed
At the moment, is enabled/disabled by commenting stuff
out in compile.pir. So it's easier to try things with/without it, add
a -O flag that, when passed, runs the optimizer.
Simple Configure System
DIFFICULTY: Easy-Intermediate
SKILLS: Perl, Makefiles
At the moment, people on non-Windows systems have to manually hack in
some aliases to get a working build. To improve things:
1) Create a build directory with a
2) Create a that looks for msbuild or xbuild and picks
the one that exists. It should do similar for csc vs gmcs. (In
general, msbuild/csc will be available on Windows, and xbuild/
gmcs will be elsewhere, since those are the Mono variants). It
should then substitute for these into using some
placeholder scheme to generate a Makefile that will work.
3) If none of msbuild or xbuild are in the path, warn that no build
tool is available. Same for csc and gmcs. Try and make the message
helpful as to what the user might need. :-)
Foundation for .WHO support
DIFFICULTY: Intermediate
At the moment, there is no link between a type object and its
underlying package (generally, an NQPStash). This task lays the
foundation for getting that in place. To do this:
1) Add a WHO field to SharedTable (follow how .WHAT and .HOW look).
2) Write get_who and set_who ops that take in a RakudoObject and
get and set the STable.WHO (the set one takes in a second
3) Edit and make .WHO use the get_who op (see .WHAT and
.HOW for examples).
Constant Table Dupe Elimination
DIFFICULTY: Intermediate
We have a constant table. This is good. However, in the program:
The "foo" ends up in the constants table twice. This is not good.
Take a look in multi sub dnst_for(PAST::Val $val) { ... } and see
about eliminating the duplication. It happens for integer and
numeric constants too. If you use some weird unique string you can
easily look at x.cs to see it only appears once, not once per usage.