Autrijus,
I un-TODO-ed the tests, and built you a TODO list of what I saw as outstanding issues. I did my best to differentiate between bugs in the implementation and un-implemented features.
Enjoy ;)
- Stevan
t/builtins/
- die.t
The stringified version of $! is printing Haskell type information.
- grep.t
The "grep {} @list" form does not work correctly.
- map.t
The "map {} @list" form does not work correctly.
- sort.t
This form "@a.sort:{ $^a <=> $^b }" seems to sort alphabetically and leaves a <SubBlock<anon>> on the end of the return list.
This form "@a.sort:{ $^a cmp $^b }" seems to sort correctly, but leaves a <SubBlock<anon>> at the begining of the return list.
This form "sort { $^a <=> $^b } @a" does not do anything.
- undef.t
There are some tests within the block starting at line 121 which test for dangling references.
There are a number of other TODO tests in this file, but most are valid TODOs.
t/builtins/list/
- join.t
The form "@list.join(', ')" does not work correctly.
- reverse.t
The test group on line 36 illustrates a possible problem with this code:
my $b = @a.reverse;
Should $b become an Array reference? Or will it be a string? Especially when @a only has a single element. This may be just a simple issue with the return context of reverse().
- zip.t
I did not un-TODO these tests, but there are some odd ones in here you might want to look at.
t/data_types/
- array.t
The following things are broken in this test.
Auto-flattening lists like this:
my @array3 = (@array1, @array2);
Slices with arrays like this:
my @array6 = @[EMAIL PROTECTED];
Arrays with trailing commas:
@array10 = (1, 2, 3,)
- array_ref.t
Lists with trailing commas again:
$array_ref8 = [ 1, 2, 3, ]
- hash.t & hash_ref.t
lvalue has assignment with unquoted keys:
%hash1<three> = 3; $hash_ref1<three> = 3;
slice assignment (see line 65 in both)
t/operators/
- inc.t
both hash and array auto-incrementing does not work
@a[0]++ %a{'key'}++
- precedence.t
I did not un-TODO these, but there are some at the bottom of the file you might like to look at.
t/statements/
- for.t
The "for @list, sub { ... }" form does not work
- given.t
I did not un_TODO these, but there are some edge cases in here you might want to look at.
- if.t
if with no parens and closure as cond param fails.
- loop.t
Declaring a 'my' variable in the loop does not work
loop (my $j = 0; $j < 10; $j++) { $count++; } # parse fail
- try.t
This has the same error as die.t in that the $! value is a Haskell type and not perl
t/subroutines/
- sub_named_params.t
Take a look here, but I am not un-TODOing since I dont know how far along this has been developed.
- sub_return_values.t
There is a problem with sub return values see this mail for more details:
http://www.nntp.perl.org/group/perl.perl6.compiler/276