Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP

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.
base fork: rakudo/rakudo
base: c8de2ebe5e
...
head fork: rakudo/rakudo
compare: vmarray
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"
9303692
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.
0f0bb50
@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.
f63c42d
@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.
763a621
@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.
cdb0fa6
@FROGGS FROGGS Merge branch 'nom' of github.com:rakudo/rakudo into froggs_mergemulti 8ae44d9
@FROGGS FROGGS throw X::Import::OnlystarProto
Only if both sides have an onlystar proto the merge is allowed.
15bb0c4
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.
758537f
@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 github.com:rakudo/rakudo 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
a930588
@FROGGS FROGGS Merge branch 'nom' of github.com:rakudo/rakudo 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
60c572c
@moritz moritz document environment variables
patch by flussence++
e67fa90
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: $socket.read($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.
b22982b
@jnthn jnthn Make try/CATCH exception case result in Nil.
This brings it in line with the try without explicit CATCH case.
e267037
Commits on Jan 10, 2013
@jnthn jnthn Fix a broken case of autosink.
$foo.bar() 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.
99c4f9c
@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.
8ca20db
@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
5d7b19b
@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.
2e3eb24
@FROGGS FROGGS allow to decode a Buf to a binary Str
This is needed for IO::Socket.write.
4a9708d
@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.
36a7d0f
@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 traits.pm.
This was always a hack, unrequired for a while now.
fec4986
@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.
fad34f8
@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...
46913d6
@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.
dfefd94
@jnthn jnthn Fix (my %) over-sharing. bd9bc6f
@jnthn jnthn Add missing parameterize method.
Fixes bug with providing args to an imported parameteric role.
c3f565d
Commits on Jan 12, 2013
@FROGGS FROGGS fix for .write( Buf )
Before one got: No such method get_string for invocant of type str
2d844dd
@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.
1c35c39
@FROGGS FROGGS allow to decode a Buf to a binary Str
This is needed for IO::Socket.write.
bf5d062
@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.
b72218a
@FROGGS FROGGS Merge branch 'froggs_multibyte' of github.com:rakudo/rakudo into frog…
…gs_multibyte
cefd18e
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
3a8d48a
Commits on Jan 18, 2013
@jnthn jnthn Add some missing compose calls.
Prevents some weird errors when trying to look through CORE.
ebb415d
@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'
5934f22
@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?
3487487
@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
8308596
@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.
5a895b4
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.
8356157
@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).
3c4fd0f
@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.
14c1a6f
Commits on Jan 22, 2013
@FROGGS FROGGS Merge branch 'froggs_multibyte' of github.com:rakudo/rakudo 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.
388c1bb
@FROGGS FROGGS allow the use of $()
... which is a shorthand for $($/.ast // ~$/).
1ed6e51
@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/Temporal.pm] implemented DateTime.delta 943ecc5
@masak masak switched .truncated-to to enum
The exception type X::Temporal::Truncation also goes away,
being replaced by ordinary parameter type checking.
7e10a0d
@masak masak [core/Temporal.pm] implemented Date.delta 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.
ebe7eb4
@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, ...
1553b11
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.
1d80976
@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
9c9d790
@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.
nwc10++
92c30bc
@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
622595b
@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!
14c9305
Moritz Lenz 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
both.
3b135f5
@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.
935c90c
Commits on Feb 05, 2013
@FROGGS FROGGS move $( ~ ) into variable token
Contextualizers do work and litvar.t is parseable now.
d77b765
@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.
cc7e3d3
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.
4fb07b1
Commits on Feb 09, 2013
@jnthn jnthn Make sure we call compose_repr early enough.
Should always call it before the first intantiation.
b39b6f2
@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.
a3869a0
Commits on Feb 11, 2013
@jnthn jnthn Chase !cursor_start changes. 7e22a79
Commits on Feb 13, 2013
@jnthn jnthn Bump to an NQP with a build fix. 5a12919
@moritz moritz RT #107992: make $_ writable in -n/-p code fdbba70
Commits on Feb 14, 2013
@moritz moritz speed up eqv for Buf 8369e63
@moritz moritz [Configure] stop on unknown command line options, [Coke]++ 1e85ffd
Commits on Feb 16, 2013
@moritz moritz try to track void context in the optimizer
does not work yet, it seems to consider all string literals in void context.
No idea why :(
a10db62
@moritz moritz be a bit less wrong about void context detection
still does not work at all :(
f41f314
@moritz moritz fix logic error in void context detection
still has quite a fe false positives
15219f7
@moritz moritz track declaration bits in the QAST d501814
@moritz moritz use %!worrying mechanism for string constants in void context 9244510
@moritz moritz give string literal QAST nodes a Match object 7636b79
@moritz moritz detect Int and Num literals in void context
Does not trigger yet, probably because they have no .node info.
Also replace the constant QAST node with a null op
c24440a
@moritz moritz give numeric constant QAST nodes a .node
now Int and Num literals warn in void context
89c7e57
@FROGGS FROGGS Apparent subscript will be treated as regex
Throw the same warning as STD does for things like
@var[0], $var{a} and $var<a> in regexes.
932bc53
@moritz moritz warn when inlining constant expressions in void context f6a731c
Commits on Feb 17, 2013
@moritz moritz steal match widening from rakudo-debugger
now "23 + 4" in sink context reports the whole expression, not just the operator
a5a3718
@moritz moritz Merge remote-tracking branch 'origin/optimizer-void-context' into nom df3a732
@moritz moritz update ChangeLog with new warnings d2795bb
@jnthn jnthn Support for nqp::const. 10dac76
@jnthn jnthn Some pir:: => nqp:: for the setting. b9ee89a
Commits on Feb 18, 2013
@moritz moritz warn about variables in sink context 018b73b
@moritz moritz add some type annotations to the Optimizer code 5101a54
Commits on Feb 19, 2013
@FROGGS FROGGS add array in regex interpolation feature
Arrays withinn regex will be treated as alternations of its elements.
Preceding | or || will change its behaviour, || means sequential alt-
ernation and | LTM, while the LTM is just a basic approach and needs
tweeking.
8e6fa0b
@moritz moritz Warn when pure expressions are used in sink context
even if the arguments are not constant, or the expression warns.
By explicit request from TimToady++ at
http://irclog.perlgeek.de/perl6/2013-02-18#i_6469204
80f788b
@moritz moritz awesomify sink context warning text 2f210be
Commits on Feb 20, 2013
@arnsholt arnsholt Add int64 type. 6392d64
Commits on Feb 21, 2013
@cotto cotto clean up some op definitions c3dc86e
@coke coke Merge pull request #105 from cotto/nom
clean up some op definitions
134b008
@moritz moritz /./ and rx/./ literals now match against $_ in sink context cd95e40
@moritz moritz avoid sinking of state initializers 5dfb733
@timo timo turn LTA error for coercive type declarations into NYI. 9c59a13
Commits on Feb 22, 2013
@moritz moritz update ChangeLog a763a18
@tadzik tadzik [release] bump NQP revision 256339c
@tadzik tadzik [release] bump VERSION c89dd87
@tadzik tadzik [release] Add a new release announcement 78d2a2a
@tadzik tadzik Update the release guide f67e101
@pmichaud pmichaud Some formatting updates to 2013.02 announcement. 42f8ead
@moritz moritz [docs] update the download step in the release guide 483ce86
Commits on Feb 23, 2013
@FROGGS FROGGS interpolation of e.g. regexes in arrays in regexes c255f1d
@moritz moritz bump VERSION and NQP_REVISION to 2013.02.1
this gets us non-broken native call suport
952d407
@FROGGS FROGGS force regexes in array to match at pos 0 only ff2ceee
@moritz moritz switch type name gistification from Type() to (Type) cfee628
Commits on Feb 24, 2013
@jnthn jnthn Fix an incorrect package name.
Not sure how this ever worked before; fixes the failing tests.
c8f3979
@FROGGS FROGGS bump nqp revision 80f798b
@moritz moritz Merge remote-tracking branch 'origin/agressive-sink-warnings' into nom b205e66
Commits on Feb 25, 2013
@jnthn jnthn Tweak an error message; TimToady++. 4d9c34a
@moritz moritz [docs] release announcements in markdown
* update release_guide
* add a template for the announcement for next month, provided by uvtc++

the format we use is quite close to markdown already, and writing it
in proper markdown makes them display nicely on github, and easier to
translate to HTML
0f97038
Commits on Feb 26, 2013
@jnthn jnthn Updates to work with latest HLL::Compiler.
Makes things a little cleaner, by not coupling to the backend stages
at all. Should cut out one bit of what the --target=pbc support had
to update.
b10e2ba
Commits on Feb 27, 2013
@jnthn jnthn Be sure to use line info cache. c2910e2
Commits on Feb 28, 2013
@arnsholt arnsholt Start VMArrayHOW, expose it in the grammar. c54039f