Skip to content

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also compare across forks.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also compare across forks.
Commits on Dec 28, 2012
@moritz moritz catch p5 regex adverbs after s/// a11bad6
@moritz moritz [ROADMAP] add two missing language features 69bbd1a
@moritz moritz work around missing sink context from traits
fixes "is assoc"
Commits on Dec 29, 2012
@moritz moritz run tests for "is assoc" trait c7479c3
@jnthn jnthn Mark %structural as non-assoc. 7d3e01f
Commits on Dec 30, 2012
@moritz moritz throw typed exception for non-associative operators 13e8052
Commits on Jan 02, 2013
@jnthn jnthn Teach compile time bind analysis about (|) sig.
It now recognizes such a signature as accepting anything, and thus
certain to be a successful match.
@jnthn jnthn Check proto as well as candidates in optimizer.
This fixes issues where we could end up inlining calls to candidates
that would never be reachable due to restrictions in the proto. Also,
we catch some such issues at compile time now.
@jnthn jnthn Fix incorrect exp proto. 799d759
@jnthn jnthn Improve error reporting when proto is to blame. bd41d2f
@FROGGS FROGGS possible fix for multi-method import bug
This patch allows you to import multi methods from several modules.
It merges the dispachtee lists. Two identical dispatchee signatures
dont clash yet, since I am unable to compare signatures.
@moritz moritz remove "SAFE" setting f5037ef
Commits on Jan 03, 2013
@FROGGS FROGGS fixed typos of X::Import::Redeclaration's message
The list of symbols at the end only makes sense to print if they were not mentioned before.
@FROGGS FROGGS Merge branch 'nom' of into froggs_mergemulti 8ae44d9
@FROGGS FROGGS throw X::Import::OnlystarProto
Only if both sides have an onlystar proto the merge is allowed.
Commits on Jan 04, 2013
@FROGGS FROGGS added test file import-multi.t
These tests cover the import and merging of multi subs and traits.
@moritz moritz delete old perl6doc files 70262f8
@moritz moritz fix DateTime.Date (RT #114758)' 6d4b902
Commits on Jan 05, 2013
@FROGGS FROGGS Merge branch 'nom' of into froggs_mergemulti 1685f09
@moritz moritz RT #109586: .pick on a large range has too little entropy
fixed by using nqp::rand_I instead of Num.rand
@FROGGS FROGGS Merge branch 'nom' of into froggs_mergemulti ad93780
Commits on Jan 06, 2013
@moritz moritz crude implementation of "require ::($modulename) <importlist>
only works for a single chunk, e.g. "require Test::($name) <&symbols>" does not work
@moritz moritz document environment variables
patch by flussence++
Commits on Jan 07, 2013
@moritz moritz implement the rest of require + indirect lookup c072f82
@moritz moritz require + indirect names deserves a ChangeLog entry ffde430
Commits on Jan 09, 2013
@moritz moritz RT #116288: $$bytes) now retruns $bytes btyes, if available d2d2c85
@jnthn jnthn Bump NQP_REVISION. 57989bc
@jnthn jnthn Remove some ops that are now core ones. b36616b
@jnthn jnthn Some BUILDPLAN handling updates. af76e6d
@jnthn jnthn Fix $obj.Some::Role::meth(...).
Previously, it did not convey the correct self, since it relied on the
punning mechanism, which must invoke on the pun. Now it's fixed to do
the right thing.
@jnthn jnthn Make try/CATCH exception case result in Nil.
This brings it in line with the try without explicit CATCH case.
Commits on Jan 10, 2013
@jnthn jnthn Fix a broken case of autosink.
$ will not be a top-level callmethod, but will actually wrap
it in something to do Perl 6 type coercion if the method returns some
other object. This we need p6type in the autosink list too.
@jnthn jnthn Failure.sink should not throw if handled. 45c445a
@jnthn jnthn Remove bogus defined test in sink handling.
This means that Failure is now correctly sunk.
@jnthn jnthn Implement whatever star cases of splice. 099d0ec
@jnthn jnthn Bump NQP_REVISION to get REPL fix. 4eca84f
@jnthn jnthn Fix sequences with Junction endpoints. 3c475e3
Commits on Jan 11, 2013
@FROGGS FROGGS fix for .write( Buf )
Before one got: No such method get_string for invocant of type str
@FROGGS FROGGS proper try to get the string as utf8
If the recieved data cant be decoded to utf8 it will stay
a binary bytestream. This allows one to recv utf8-strings
and/or binary data.
@FROGGS FROGGS allow to decode a Buf to a binary Str
This is needed for IO::Socket.write.
@FROGGS FROGGS .recv will return a Buf in binmode, Str otherwise
So you wont end up with binary data in a Str. If binmode is
turned off, the received data will be an utf8 encoded string.
An exception is thrown if it is unable to do so.
@jnthn jnthn Update precedence of setops to match updated spec. 8edd740
@jnthn jnthn Merge branch 'nom' into froggs_mergemulti e08b311
@jnthn jnthn Eliminate $*W mentions in
This was always a hack, unrequired for a while now.
@jnthn jnthn Fix hash/array binding constraints. f083685
@jnthn jnthn Simplify and make multi merging a bit more robust.
Better duplicate elimination, and more reliable determination of what
is/isn't a dispatcher. Passes all the same tests.
@jnthn jnthn Merge branch 'froggs_mergemulti' into nom fec0ef8
@jnthn jnthn Remove out of date comment. fda63ce
@jnthn jnthn Update ChangeLog. 463daf0
@jnthn jnthn Make Junction.Str return...a Str!
Previously, it would form a Junction with everything Str'd. Thing is,
things that (fairly) expect to get back a Str when they call .Str will
then explode when they try to unbox it. This brings us in line with
Niecza's semantics, so at the very least it's convergence...
@jnthn jnthn Specialize compilation of defor to fix bugs.
This makes defor use a call to .defined, not go via the Parrot v-table
function. There were some inconsistencies there somehow for roles and
modules; this makes sure defor will never give results inconsistent
with .defined.
@jnthn jnthn Fix (my %) over-sharing. bd9bc6f
@jnthn jnthn Add missing parameterize method.
Fixes bug with providing args to an imported parameteric role.
Commits on Jan 12, 2013
@FROGGS FROGGS fix for .write( Buf )
Before one got: No such method get_string for invocant of type str
@FROGGS FROGGS proper try to get the string as utf8
If the recieved data cant be decoded to utf8 it will stay
a binary bytestream. This allows one to recv utf8-strings
and/or binary data.
@FROGGS FROGGS allow to decode a Buf to a binary Str
This is needed for IO::Socket.write.
@FROGGS FROGGS .recv will return a Buf in binmode, Str otherwise
So you wont end up with binary data in a Str. If binmode is
turned off, the received data will be an utf8 encoded string.
An exception is thrown if it is unable to do so.
@FROGGS FROGGS Merge branch 'froggs_multibyte' of into frog…
Commits on Jan 16, 2013
@jnthn jnthn Bump NQP_REVISION to get ** fix. efac0f1
@svatsan svatsan updated tai-utc 179fd4b
@svatsan svatsan Updated release guide d0e16da
@svatsan svatsan [Release] Bump NQP_REVISION 0de5379
@svatsan svatsan [Release] Bump VERSION 59c2982
Commits on Jan 17, 2013
@svatsan svatsan [Release] Add 2013.01 Rakudo compiler release announcement. 69b53cf
@svatsan svatsan Remove Sonoma from suggested pm names 3ee51ac
@moritz moritz Merge pull request #94 from svatsan/rel-2013.01
Rakudo compiler release 2013.01
Commits on Jan 18, 2013
@jnthn jnthn Add some missing compose calls.
Prevents some weird errors when trying to look through CORE.
@jnthn jnthn Get NQPCursorRole non-explodey fix. 98a4a8a
@timo timo a levenshtein implementation in nqp dcf49e6
@timo timo when a parent class doesn't exist, throw X::Inheritance::UnknownParent d8cc616
@timo timo when a parent class isn't known, search through all blocks (WIP) 0dad898
@timo timo these hacks are no longer needed ad8449f
@timo timo this code caused strange exceptions:
Method 'ast' not found for invocant of class 'String'
@timo timo some ineffective faffing about. d270cb1
@timo timo fix the rethrow and message. thanks jnthn++ 3825b6f
Commits on Jan 19, 2013
@timo timo reinstate the give-up-early code. fcc4e4e
@timo timo whitespace fixes for UnknownParent exception. 119e3ba
@timo timo new threshold logic for levenshtein
it's complicated, so it must be good, right?
@timo timo changing the case of a letter costs 0.5 9d605f7
@timo timo switching two adjacent letters costs 1 instead of 2. 8f0e920
@timo timo factor out $achar, $bchar 80fc56a
@timo timo hyphens and underscores are cheap. 6e2ef03
@timo timo skip the name of the class itself. 0d60f32
@timo timo quote all the symbols in UnknownParent exception. c05a587
@timo timo fix the seen array cd74784
@timo timo the lower bound code is flawed in some way. 6c48f3b
@timo timo add an empty line after the suggestions. 128ad79
@timo timo changing sigils is cheap, too. 1a77e66
@timo timo the bound check was wrong. e29f2c9
@timo timo factored out levenshtein evaluator code e220768
@timo timo suggest variables for X::Undeclared. 20d38ca
@jnthn jnthn Fix parsing of 'say "$a!"'. e80cfd6
@timo timo suggest similar named routines for undeclared routines. e3ec003
@timo timo a dot was missing. a76e80d
@timo timo factor out candidate selection heuristic. 134be29
@jnthn jnthn Merge pull request #95 from timo/levenshtein
Use Levenshtein to suggest variables/routines/superclasses
@timo timo don't ask "did you mean" for 0 suggested routines. 108e37f
@FROGGS FROGGS Merge pull request #96 from timo/levenshtein
don't ask "did you mean" for 0 suggested routines.
Commits on Jan 20, 2013
@timo timo abort after finding 20 results of any quality. bebe8f9
@timo timo factor out suggest_typename d8df9e5
@timo timo added X::Parameter::InvalidType with suggestions. 0fd030a
@timo timo abort after 1000 fails, too. 22e7c10
@timo timo actually abort after 1000 tries now. 933d422
@timo timo Throw Inheritance::SelfInherit. 84271dd
@coke coke Merge pull request #98 from timo/levenshtein
More Levenshtein stuff:types in parameters. code cleanups. Self-Inherit error.
@jnthn jnthn Update 6model header and bump NQP_REVISION.
This tracks the REPR API change, and will allow Rakudo to make use of
it (will happen in future commits).
@jnthn jnthn Add missing dependency. 2752787
@jnthn jnthn Start using new REPR compose protocol. 35b2a92
Commits on Jan 21, 2013
@FROGGS FROGGS RT #116224, Str.match and Str.subst set $/
In case the pattern is a regex match() and subst() will set $/.
If it cant match, $/ will be a #<failed_match>.
Setting $/ is protected by "try" because it might be readonly.
Commits on Jan 22, 2013
@FROGGS FROGGS Merge branch 'froggs_multibyte' of into nom a26956d
Commits on Jan 23, 2013
@FROGGS FROGGS proper return value for smartmatching against a substitution
We will return True if there was a match, otherwise False.
If the rhs is not a substitution, we still will call ACCEPTS
and return its result.
@FROGGS FROGGS allow the use of $()
... which is a shorthand for $($/.ast // ~$/).
@FROGGS FROGGS fix, so that $(0) isnt treated like $() 7707e42
Commits on Jan 24, 2013
@moritz moritz attempt to fix $socket.get with non-ASCII characters 0b5899a
@masak masak [core/] implemented 943ecc5
@masak masak switched .truncated-to to enum
The exception type X::Temporal::Truncation also goes away,
being replaced by ordinary parameter type checking.
@masak masak [core/] implemented b49cbe0
@timo timo Constructor::Positional tells what class it came from. b5a63c6
@FROGGS FROGGS Merge pull request #99 from timo/positional_new_error
Constructor::Positional tells what class it came from.
@FROGGS FROGGS bump nqp rev for $(...) in regexes d97ad43
Commits on Jan 25, 2013
@FROGGS FROGGS pass type object to exception X::Constructor::Positional 6b0cea6
@timo timo use @.suggestions.join instead of nqp::join. 014f8ca
@timo timo add a token typo_typename and use it in "my" declarations. 9a889fd
@timo timo throw the sorry anyway, since we did match a longname. 0ceef80
@timo timo suggest names for --> Unknown, too. b97fb88
@timo timo suggest Types, too for Undeclared::Symbols. 25d87ef
@timo timo throw a sorry instead of an exception, remove old error. 0ae1e8d
@jnthn jnthn Merge pull request #100 from timo/typename_suggestions
Typename suggestions: in signatures, declarations, return types, ...
Commits on Jan 26, 2013
@jnthn jnthn Fix degenerate /< hello >/. c356d8e
@timo timo unfold junctions at compile time sometimes. 433dca6
@timo timo build a new "is_from_core". 8f80e88
@timo timo fixed junction ops, fixed is_from_core, added %!foldable_junction 58646f3
@timo timo the optimisation works for while/until, too. cccd1cb
Commits on Jan 27, 2013
@timo timo a bit prettier code. 6b78bbc
@timo timo allow any and all, use a hash for the outer check. caa06c2
@timo timo simplify can_chain_junction_be_warped. 81dc550
@timo timo bail out before doing any analysis
analysis in this case doesn't contribute anything helpful
to the process, unlike the "call to &foo with arguments (bar)
will never work" for example.
@timo timo remove any/all again due to flattening woes 58dd3c7
@timo timo why not make this a level 2 optimization? :) 9494956
@arnsholt arnsholt Start integrating with native size support in NQP. f7a5a2f
@jnthn jnthn Merge pull request #101 from timo/junction-opt
Partially inline junctions in bool context at compile time
@moritz moritz mark some numeric operators as pure a1bcaa6
Commits on Jan 28, 2013
@arnsholt arnsholt Fix braino. NativeHOW sent bad data to the REPR compose. c7fe112
Commits on Jan 29, 2013
@moritz moritz reverse order of <perl vendor site> dirs in @*INC
we do not have to repeat all of the mistakes Perl 5 has made.
@arnsholt arnsholt Merge branch 'nom' into dyncall-sized-num e079812
Commits on Jan 30, 2013
@moritz moritz update ChangeLog b3fc32a
@jnthn jnthn Bump NQP_REVISION for REPL improvements. 9dfa827
@jnthn jnthn Support lexical type introspection. 0fd4ee8
@jnthn jnthn Better REPL exception reporting; updates. 9ec0a59
Commits on Jan 31, 2013
@moritz moritz first shot at constant folding
so far it does nothing, but also breaks nothing. It seems that the multi dispatch call optimization comes first, and interferes with this one
@moritz moritz move constant folding code to the correct location; some small fixes cd64560
Commits on Feb 01, 2013
@moritz moritz Merge remote branch 'origin/nom' into constant-folding 03cce4d
@moritz moritz constant folding cleanup
* catch it when the routine to be folded errors out
* make sure to preseve namedness of named arguments
* remove debug output
=> all spectests pass!
@moritz moritz update ChangeLog 33d8dd0
@jnthn jnthn Updates to work with latest NQP additions. 5e5a76f
@arnsholt arnsholt Make NativeHOW set float as well as integer bitsize.
Since NativeHOW is used for all native types (int, num, str) we don't know a
priori whether we're setting the bitwidth of an int of a float. So we set
@moritz moritz Do not inline stuff that warns 8f39611
@moritz moritz mark more subs and ops as pure 6d5dc67
Commits on Feb 02, 2013
@arnsholt arnsholt Update sixmodelobject.h. 80dc914
Commits on Feb 03, 2013
@moritz moritz Calculate each year's Rakudo releases
also fill up the dates for 2013.
Commits on Feb 05, 2013
@FROGGS FROGGS move $( ~ ) into variable token
Contextualizers do work and litvar.t is parseable now.
@FROGGS FROGGS bump NQP revision 0dda4c8
Commits on Feb 06, 2013
@moritz moritz constant-fold some range operators
the others cause the setting compilation to fail when constant-folded. Not sure yet why.
Commits on Feb 07, 2013
@jnthn jnthn Merge remote-tracking branch 'origin/dyncall-sized-num' into nom e59ba28
@jnthn jnthn Bump NQP_REVISION for natives improvements. fc3f0d8
@FROGGS FROGGS remove circumfix:sym<sigil>
This was already moved to method variable.
Commits on Feb 09, 2013
@jnthn jnthn Make sure we call compose_repr early enough.
Should always call it before the first intantiation.
@jnthn jnthn Fix anonymous state variable regression. 7ad6e63
@colomon colomon Add Cool.set and Cool.bag. d76f9b2
@jnthn jnthn Update to build on latest NQP.
REPR API additions force a fresh sixmodelobject.h, so also needed to
do an NQP_REVISION bump.
Commits on Feb 11, 2013
@moritz moritz Small preparation to allow paths with spaces ebf80f9