Perl 6
perl6 tasks: Revision 23

This page used to contain Rakudo-specific items. That content is now here.

Now this page contains Perl6-generic TODO items. That means, mostly, places where the established Synopsis could be made more explicit, and larger tasks involving the DRAFT synopsis.

Established Synopsis (non-draft) TODO

  • all spec: .iterator versus .Iterator
  • S02 radix literals elaborate "default radix" behavior.
    • is the :16(0b0) :16(0d0) peculiar to :16, or generic behavior if number is legal in the "default" radix e.g. :12(0b0)?
    • does the statement about "default radix" apply only to :16(...) or also :16<...>?
    • maybe worth elaborating what :N[0xdeadbeef] would do under "decimal" restriction
      • ...or relaxing that restriction
      • ...and perhaps making clear whether :N[4,$x] is legal and thus it's functional like :N(...)
  • S03 zip and parallel array traversal
    • see S07 section below WRT .eoi
    • Probably no reason why it should not take single Iterators as well as lists and DWIM
      • that is zip((1,2,3);$iterator) should probably interleave (1,2,3) with $iterator.get results
      • but still treat zip((1,2,3); ($iterator,"foo","bar")) as (1,$iterator;2,"foo";3,"bar)
    • The intent is probably that zip stops before calling .get on any Iterator for this pass when any .eoi != False
      • This needs to be clear in spec
      • This requires peekability of both .eoi == True and .eoi == Inf
      • Behavior when .eoi == undef ("may terminate, cannot tell") needs to be explicit
      • Or we could drop the specification that infinite lists are detected/aborted
        • we allow other things to be infinite, why not zip?
    • Is the Iterator or the zip/operator code responsible for implementing (...,*) repeating last element?
  • S04 gather/take
    • Define behavior of nested gather/takes
      • Is there caller.take and context(...).take as per .leave
      • Can you label gathers and use LABEL.take
  • S09 Compact Structures
    • Define packing behavior of class A is int8 { has $.b int8 }; my @a of A;
    • Define packing behavior of class A is B is C ....
    • Define packing/data storage behavior for extra attributes added with run-time class composition
  • S12 Disambiguate second sentence in line 69
  • S12 Clear up "declaration's scope" in line 82 (e.g. not the has/our in decl)
  • S12 Can := be used in attribute pseudo-assignment?

DRAFT Synopsis

  • (in progress) split up S32
  • S32/* review prototypes esp WRT return types
    • lots of Int/Str where maybe should be Any
    • perhaps some missing return type variants e.g. List push/unshift (for feeds)
    • needs attention from someone who has followed p6l closely
  • S07 carefully decide whether generic item iterator "flattens" like the generic array iterator
  • S07 Should probably implement .eoi to peek Iterator
  • S07 Need way to test for Iterators known to never normally terminate (for zip)
    • suggest .eoi be allowed to return Inf to indicate this

Upload Files

Click "Browse" to find the file you want to upload. When you click "Upload file" your file will be uploaded and added to the list of attachments for this page.

Maximum file size: 50MB

 
 
 
File Name Author Date Uploaded Size

Save Page As

Enter a meaningful and distinctive title for your page.

Page Title:

Tip: You'll be able to find this page later by using the title you choose.

Page Already Exists

There is already a page named XXX. Would you like to:

Save with a different name:

Save the page with the name "XXX"

Append your text to the bottom of the existing page named: "XXX"

Upload Files

Click "Browse" to find the file you want to upload. When you click "Add file" this file will be added to the list of attachments for this page, and uploaded when you save the page.

 
 
 
Add Tags

Enter a tag and click "Add tag". The tag will be saved when you save the page.

Tag: 

Suggestions: