-
Notifications
You must be signed in to change notification settings - Fork 1
P6C update concat and bitwise operators #10
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
From @allisonThis patch updates the following operators and their assignment _ becomes ~ (concatenation) Unary +^ (bitwise negation, a.k.a. ones complement) is not implemented I've added two test files, bitwise.t and concat.t, which go in t/op/ (My code for bitwise string operators was greatly simplified when Leo Allison |
From @allisonp6c_update_concat_bitwise.patchIndex: languages/perl6/P6C/Addcontext.pm
===================================================================
RCS file: /cvs/public/parrot/languages/perl6/P6C/Addcontext.pm,v
retrieving revision 1.21
diff -u -r1.21 Addcontext.pm
--- languages/perl6/P6C/Addcontext.pm 27 Nov 2003 19:43:20 -0000 1.21
+++ languages/perl6/P6C/Addcontext.pm 17 Dec 2003 01:07:07 -0000
@@ -40,13 +40,13 @@
# type => [list-of-ops].
my %opmap =
( # Ops that work differently for different scalar types:
- PerlUndef => [ qw(| & ~ // ..),
+ PerlUndef => [ qw(| & +^ ~^ // ..),
# Unfortunately, these work differently on ints and nums:
qw(+ - * / % **)],
PerlInt => [ qw(<< >>) ],
- PerlString => [ qw(_) ],
+ PerlString => [ qw(~) ],
# NOTE: Actually, according to apo 3, boolean operators
# propagate values in their surrounding context (even though
@@ -900,7 +900,7 @@
@ PerlArray
* PerlArray
$ PerlUndef
- _ PerlString
+ ~ PerlString
? bool
+ PerlNum);
}
Index: languages/perl6/P6C/IMCC.pm
===================================================================
RCS file: /cvs/public/parrot/languages/perl6/P6C/IMCC.pm,v
retrieving revision 1.30
diff -u -r1.30 IMCC.pm
--- languages/perl6/P6C/IMCC.pm 27 Nov 2003 19:43:20 -0000 1.30
+++ languages/perl6/P6C/IMCC.pm 17 Dec 2003 01:07:11 -0000
@@ -1341,16 +1341,6 @@
use P6C::Util ':all';
use P6C::Context;
-# Create generic code for $a op $b.
-sub simple_binary {
- my $x = shift;
- my $ltmp = $x->l->val;
- my $rtmp = $x->r->val;
- my $dest = newtmp 'PerlUndef';
- my $op = imcc_op($x->op);
- code("\t$dest = $ltmp $op $rtmp\n");
- return $dest;
-}
# '=' assignment op.
sub do_assign {
@@ -1392,12 +1382,14 @@
'>>' => \&simple_binary,
'<<' => \&simple_binary,
- '|' => \&simple_binary,
- '&' => \&simple_binary,
- '~' => \&simple_binary,
+ '+&' => \&simple_binary,
+ '~&' => \&simple_binary_pasm,
+ '+|' => \&simple_binary,
+ '~|' => \&simple_binary_pasm,
+ '+^' => \&simple_binary,
+ '~^' => \&simple_binary_pasm,
-# '_' => \&simple_binary, # PMC concat broken.
- '_' => \&do_concat,
+ '~' => \&do_concat,
'=' => \&do_assign,
'||' => \&do_logor,
'&&' => \&do_logand,
@@ -1413,7 +1405,7 @@
use vars '%op_is_array';
BEGIN {
- my @arrayops = qw(= .. x // ^^ && || _);
+ my @arrayops = qw(= .. x // ^^ && || ~);
push(@arrayops, ',');
@op_is_array{@arrayops} = (1) x @arrayops;
}
Index: languages/perl6/P6C/Parser.pm
===================================================================
RCS file: /cvs/public/parrot/languages/perl6/P6C/Parser.pm,v
retrieving revision 1.28
diff -u -r1.28 Parser.pm
--- languages/perl6/P6C/Parser.pm 27 Nov 2003 19:43:20 -0000 1.28
+++ languages/perl6/P6C/Parser.pm 17 Dec 2003 01:07:13 -0000
@@ -251,22 +251,23 @@
$VCLOSE = qr/<</;
$NAMEPART = qr/[a-zA-Z_][\w_]*/;
$COMPARE = qr{(?:cmp|eq|[gnl]e|[gl]t)\b|<=>|[<>=!]=|<|>};
- $CONTEXT = qr{[\%\@\$\&*_?]|\+(?!\+)};
+ $CONTEXT = qr{[\%\@\$\&*?]|\+(?!\+)|~(?![~\&\|\^])};
$MULDIV = qr{[\%*x]|/(?!/)};
$MATCH = qr{[=!]~};
$INCR = qr{\+\+|--};
- $PREFIX = qr{ [!~\\] | # logical negation '!', bitwise negation '~', create a reference '\'
+ $PREFIX = qr{ [!\\] | # logical negation '!', create a reference '\'
+ \+\^ | # unary bitwise XOR (bitwise negation)
\+(?!\+) | # posification '+', but not increment '++'
-(?![->]) # negation '-', but not decrement '--', but not dereference '->'
}x;
- $ADDSUB = qr{[-+_]};
+ $ADDSUB = qr{[-+~](?![\&\|\^])};
$BITSHIFT = qr{<<|>>};
$LOG_OR = qr{(?:x?or|err)\b};
$LOGOR = qr{\|\||\^\^|//};
- $BITOR = qr{(?:\|(?!\|)|~(?!~))};
- $BITAND = qr{&(?!&)};
+ $BITOR = qr{(?:\|(?!\|)|[~\+][\|\^])};
+ $BITAND = qr{(?:\+\&|~\&)};
$FILETEST = qr{-[rwxoRWXOezsfdlpSbctugkTBMAC]+\b};
- $ASSIGN = qr{(?:!|:|//|&&?|\|\|?|~|\^\^|<<|>>|$ADDSUB|$MULDIV|\*\*)?=};
+ $ASSIGN = qr{(?:!|:|//|&&?|\|\|?|\+[\&\|\^]|~[\&\|\^]|\^\^|<<|>>|$ADDSUB|$MULDIV|\*\*)?=};
# Used for flushing syntax errors
$FLUSH = qr/\w+|[^\s\w;}#'"]+/;
$NUMPART = qr/(?!_)[\d_]+(?<!_)/;
@@ -523,7 +524,7 @@
muldiv_op: /$MULDIV|$VOPEN$MULDIV$VCLOSE/o
addsub: <leftop: muldiv addsub_op muldiv>
-# addsub_op: '+' | '-' | '_'
+# addsub_op: '+' | '-' | '~'
addsub_op: /$ADDSUB|$VOPEN$ADDSUB$VCLOSE/o
bitshift: <leftop: addsub bitshift_op addsub>
Index: languages/perl6/P6C/IMCC/Binop.pm
===================================================================
RCS file: /cvs/public/parrot/languages/perl6/P6C/IMCC/Binop.pm,v
retrieving revision 1.14
diff -u -r1.14 Binop.pm
--- languages/perl6/P6C/IMCC/Binop.pm 27 Nov 2003 19:43:22 -0000 1.14
+++ languages/perl6/P6C/IMCC/Binop.pm 17 Dec 2003 01:07:14 -0000
@@ -10,7 +10,7 @@
use vars qw(@ISA %EXPORT_TAGS @EXPORT_OK);
@ISA = qw(Exporter);
@EXPORT_OK = qw(do_pow do_logand do_logor do_defined do_concat do_repeat
- do_range do_smartmatch imcc_op);
+ do_range do_smartmatch imcc_op simple_binary simple_binary_pasm);
%EXPORT_TAGS = (all => [@EXPORT_OK]);
sub do_pow ;
@@ -28,14 +28,49 @@
sub sm_expr_num ;
sub sm_expr_str ;
-# Remap operator names from P6 to IMCC.
+# Remap operator symbols from P6 to IMCC.
sub imcc_op {
my $op = shift;
-
return "~~" if ($op eq '^^');
- return "." if ($op eq '_');
+ return "." if ($op eq '~');
+ return "|" if ($op eq '+|');
+ return "&" if ($op eq '+&');
+ return "~" if ($op eq '+^');
+ return $op;
+}
+# Remap operator symbols from P6 to PASM opcodes
+sub pasm_op {
+ my $op = shift;
+ return "bands" if ($op eq '~&');
+ return "bors" if ($op eq '~|');
+ return "bxors" if ($op eq '~^');
return $op;
+}
+
+#
+# Create generic code for $a op $b.
+sub simple_binary {
+ my $x = shift;
+ my $ltmp = $x->l->val;
+ my $rtmp = $x->r->val;
+ my $dest = newtmp 'PerlUndef';
+ my $op = imcc_op($x->op);
+ code("\t$dest = $ltmp $op $rtmp\n");
+ return $dest;
+}
+
+#
+# Some p6 operators correspond to a single PASM opcode but don't
+# have PIR syntax.
+sub simple_binary_pasm {
+ my $x = shift;
+ my $dest = newtmp 'PerlUndef';
+ my $ltmp = $x->l->val;
+ my $rtmp = $x->r->val;
+ my $opcode = pasm_op($x->op);
+ code("\t$opcode $dest, $ltmp, $rtmp\n");
+ return $dest;
}
1;
Index: languages/perl6/P6C/IMCC/hype.pm
===================================================================
RCS file: /cvs/public/parrot/languages/perl6/P6C/IMCC/hype.pm,v
retrieving revision 1.5
diff -u -r1.5 hype.pm
--- languages/perl6/P6C/IMCC/hype.pm 27 Nov 2003 19:43:22 -0000 1.5
+++ languages/perl6/P6C/IMCC/hype.pm 17 Dec 2003 01:07:14 -0000
@@ -21,9 +21,9 @@
use vars '%optype';
BEGIN {
- my %opmap = (int => [ qw(>> << | & ~ ^^)],
+ my %opmap = (int => [ qw(>> << +| +& +^ ^^)],
num => [ qw(+ - * / % **)],
- str => [ qw(_) ]);
+ str => [ qw(~ ~| ~& ~^) ]);
while (my ($t, $ops) = each %opmap) {
@optype{@$ops} = ($t) x @$ops;
}
@@ -120,7 +120,7 @@
return hype_scalar_array(@_);
} else {
diag "Tried to hyper-operate two scalars";
- return P6C::Binop::simple_binary(@_);
+ return P6C::IMCC::Binop::simple_binary(@_);
}
}
Index: languages/perl6/P6C/Tree/String.pm
===================================================================
RCS file: /cvs/public/parrot/languages/perl6/P6C/Tree/String.pm,v
retrieving revision 1.8
diff -u -r1.8 String.pm
--- languages/perl6/P6C/Tree/String.pm 13 Oct 2003 17:00:52 -0000 1.8
+++ languages/perl6/P6C/Tree/String.pm 17 Dec 2003 01:07:15 -0000
@@ -153,9 +153,10 @@
my ($list) = @_;
my $type = 'PerlString';
if (@$list > 1) {
- my $val = new P6C::Binop op => '_', l => make_node(shift @$list), r => make_node(shift @$list);
+ # XXX: hardcoded P6 op, nasty
+ my $val = new P6C::Binop op => '~', l => make_node(shift @$list), r => make_node(shift @$list);
while (@$list) {
- $val = new P6C::Binop op => '_', l => $val, r => make_node(shift @$list)
+ $val = new P6C::Binop op => '~', l => $val, r => make_node(shift @$list)
}
return $val;
}
Index: languages/perl6/examples/qsort.p6
===================================================================
RCS file: /cvs/public/parrot/languages/perl6/examples/qsort.p6,v
retrieving revision 1.2
diff -u -r1.2 qsort.p6
--- languages/perl6/examples/qsort.p6 18 Feb 2003 13:25:13 -0000 1.2
+++ languages/perl6/examples/qsort.p6 17 Dec 2003 01:07:15 -0000
@@ -21,8 +21,8 @@
sub main() {
my @a = 1..(@ARGS[0] || 100);
qsort @a, 0, @a - 1;
- print @a ^_ "\n";
+ print @a >>~<< "\n";
@a = reverse @a;
qsort @a, 0, @a - 1;
- print @a ^_ "\n";
+ print @a >>~<< "\n";
}
Index: languages/perl6/t/compiler/aggregates.t
===================================================================
RCS file: /cvs/public/parrot/languages/perl6/t/compiler/aggregates.t,v
retrieving revision 1.1
diff -u -r1.1 aggregates.t
--- languages/perl6/t/compiler/aggregates.t 13 Oct 2003 17:00:57 -0000 1.1
+++ languages/perl6/t/compiler/aggregates.t 17 Dec 2003 01:07:15 -0000
@@ -9,7 +9,7 @@
my $a = (2,3,4);
my ($b, $c) = (2,3,4);
my ($d, $e, $f) = (5,6);
- print1(@a[0] _ ' ' _ @a[1] _ ' ' _ @a[2]);
+ print1(@a[0] ~ ' ' ~ @a[1] ~ ' ' ~ @a[2]);
print1($a);
print1($b);
print1($c);
@@ -33,9 +33,9 @@
sub main() {
my @a = (1,2,3,4);
my @b = @a[0,2];
- print1(@b[0] _ ', ' _ @b[1]);
- print1(@a[0] _ ', ' _ @a[2]);
- print1(@a[1] _ ', ' _ @a[3]);
+ print1(@b[0] ~ ', ' ~ @b[1]);
+ print1(@a[0] ~ ', ' ~ @a[2]);
+ print1(@a[1] ~ ', ' ~ @a[3]);
my @c = @a;
@a[2] = 5;
@c[0] = 6;
@@ -58,7 +58,7 @@
%x{a} = 'ay?';
%x{b} = 'be!';
%x{$x} = 'twenty-three';
- print1(%x{a} _', ' _%x{$b} _', ' _%x{23});
+ print1(%x{a} ~', ' ~%x{$b} ~', ' ~%x{23});
}
CODE
@@ -75,7 +75,7 @@
%x{b} = 'be!';
%x{$x} = 'twenty-three';
my @x = %x{'b', 'a', $x};
- print1(@x[0] _@x[1] _@x[2]);
+ print1(@x[0] ~@x[1] ~@x[2]);
my %y = %x;
%y{a} = 'ay!';
%x{b} = 'be?';
@@ -92,7 +92,7 @@
##############################
output_is(<<'CODE', <<'OUT', "Flattening");
sub foo {
- print1(@_[0]_' '_@_[2]);
+ print1(@_[0]~' '~@_[2]);
}
sub main() {
@@ -137,9 +137,9 @@
my @b = @a[@i];
my @c = @a[1..3];
my ($d, $e) = @a[1..3];
- print1(@b[0] _ ' ' _ @b[1] _ ' ' _ @b[2]);
- print1(@c[0] _ ' ' _ @c[1] _ ' ' _ @c[2]);
- print1($d _ ' ' _ $e);
+ print1(@b[0] ~ ' ' ~ @b[1] ~ ' ' ~ @b[2]);
+ print1(@c[0] ~ ' ' ~ @c[1] ~ ' ' ~ @c[2]);
+ print1($d ~ ' ' ~ $e);
}
CODE
Index: languages/perl6/t/compiler/basic.t
===================================================================
RCS file: /cvs/public/parrot/languages/perl6/t/compiler/basic.t,v
retrieving revision 1.2
diff -u -r1.2 basic.t
--- languages/perl6/t/compiler/basic.t 27 Nov 2003 19:43:25 -0000 1.2
+++ languages/perl6/t/compiler/basic.t 17 Dec 2003 01:07:15 -0000
@@ -6,7 +6,7 @@
##############################
output_is(<<'CODE', <<'OUT', "Basic hello.");
sub main() {
- print1("Hello, " _ "world");
+ print1("Hello, " ~ "world");
}
CODE
Hello, world
@@ -37,7 +37,7 @@
print1(2 * 3);
print1(6 / 2);
print1(2 % 3);
- print1(2 _ 3);
+ print1(2 ~ 3);
print1(2 ** 3);
print1(2 ** 3 ** 1);
print1(2 ** 1 ** 3);
@@ -65,7 +65,7 @@
print1 "ok 3" if (--$x == 2);
my $y = $x++;
print1 "ok 4" if ($x == 3 && $y == 2);
- print1 ("ok "_ ($x++ + $y++));
+ print1 ("ok "~ ($x++ + $y++));
print1 "ok 6" if ($x == 4 && $y == 3);
}
CODE
@@ -84,15 +84,15 @@
my $y = $x;
my @z = ($x, $y);
# actually above statement makes next fail -lt
- print1 (++$x _ ' ' _ $y);
+ print1 (++$x ~ ' ' ~ $y);
$x--;
- print ++$x _ ' ' _ $y _ "\n";
- print $x++ _ ' ' _ $y _ "\n";
- print $x _ ' ' _ $y++ _ "\n";
- print $x _ ' ' _ ++$y _ "\n";
- print @z[0]++ _ ' ' _ ++@z[1] _ "\n";
- print $x _ ' ' _ $y _ "\n";
- print @z[0] _ ' ' _ @z[1] _ "\n";
+ print ++$x ~ ' ' ~ $y ~ "\n";
+ print $x++ ~ ' ' ~ $y ~ "\n";
+ print $x ~ ' ' ~ $y++ ~ "\n";
+ print $x ~ ' ' ~ ++$y ~ "\n";
+ print @z[0]++ ~ ' ' ~ ++@z[1] ~ "\n";
+ print $x ~ ' ' ~ $y ~ "\n";
+ print @z[0] ~ ' ' ~ @z[1] ~ "\n";
}
CODE
3 2
@@ -110,9 +110,9 @@
sub main() {
print1(2 << 3);
print1(32 >> 3);
- print1(32 | 3);
- print1(31 & 3);
- print1(10 ~ 12); # 1010 ~ 1100 -> 0110 == 6
+ print1(32 +| 3);
+ print1(31 +& 3);
+ print1(10 +^ 12); # 1010 +^ 1100 -> 0110 == 6
}
CODE
16
@@ -256,19 +256,19 @@
my $a = 3;
if 1 {
my $a = 4;
- if 2 { my $a = 5; print1("a is " _ $a) }
- print1("a is " _ $a);
+ if 2 { my $a = 5; print1("a is " ~ $a) }
+ print1("a is " ~ $a);
}
- print1("a is " _ $a);
+ print1("a is " ~ $a);
if 1 {
my $a = 5;
- print1("a is " _ $a);
+ print1("a is " ~ $a);
}
- print1("a is " _ $a);
+ print1("a is " ~ $a);
if 1 {
$a = 6;
}
- print1("a is " _ $a);
+ print1("a is " ~ $a);
}
CODE
a is 5
Index: languages/perl6/t/compiler/call.t
===================================================================
RCS file: /cvs/public/parrot/languages/perl6/t/compiler/call.t,v
retrieving revision 1.1
diff -u -r1.1 call.t
--- languages/perl6/t/compiler/call.t 13 Oct 2003 17:00:57 -0000 1.1
+++ languages/perl6/t/compiler/call.t 17 Dec 2003 01:07:16 -0000
@@ -7,7 +7,7 @@
output_is(<<'CODE', <<'OUT', "subroutine call");
sub _fact($tot, $max, $n) {
if $n > $max {
- print1($max _ "! = " _ $tot);
+ print1($max ~ "! = " ~ $tot);
} else {
_fact $tot * $n, $max, $n + 1;
}
@@ -15,7 +15,7 @@
sub fact($n) {
unless 0 <= $n < 20 {
- print1("Sorry, can't take " _ $n _ " factorial");
+ print1("Sorry, can't take " ~ $n ~ " factorial");
} else {
_fact 1, $n, 1
}
@@ -38,7 +38,7 @@
##############################
output_is(<<'CODE', <<'OUT', "no args");
sub noargs() {
- print "ok " _ $i++ _ "\n";
+ print "ok " ~ $i++ ~ "\n";
}
sub main() {
@@ -62,7 +62,7 @@
}
sub noargs() {
- print "ok " _ $i++ _ "\n";
+ print "ok " ~ $i++ ~ "\n";
}
CODE
@@ -288,15 +288,15 @@
}
sub one($x) {
- print1('one ' _$x);
+ print1('one ' ~$x);
}
sub two($x, $y) {
- print1('two ' _$x _' ' _$y);
+ print1('two ' ~$x ~' ' ~$y);
}
sub three($x, $y, $z) {
- print1('three ' _$x _' ' _$y _' ' _$z);
+ print1('three ' ~$x ~' ' ~$y ~' ' ~$z);
}
sub main() {
Index: languages/perl6/t/compiler/exceptions.t
===================================================================
RCS file: /cvs/public/parrot/languages/perl6/t/compiler/exceptions.t,v
retrieving revision 1.1
diff -u -r1.1 exceptions.t
--- languages/perl6/t/compiler/exceptions.t 13 Oct 2003 17:00:57 -0000 1.1
+++ languages/perl6/t/compiler/exceptions.t 17 Dec 2003 01:07:16 -0000
@@ -18,7 +18,7 @@
die;
CATCH { default { 2 } }
}
- print $x _' ' _$y, "\n";
+ print $x ~' ' ~$y, "\n";
}
CODE
dying
Index: languages/perl6/t/compiler/for.t
===================================================================
RCS file: /cvs/public/parrot/languages/perl6/t/compiler/for.t,v
retrieving revision 1.1
diff -u -r1.1 for.t
--- languages/perl6/t/compiler/for.t 13 Oct 2003 17:00:57 -0000 1.1
+++ languages/perl6/t/compiler/for.t 17 Dec 2003 01:07:16 -0000
@@ -78,7 +78,7 @@
output_is(<<'CODE', <<'OUT', "For 1;1 -> 2;3");
sub main() {
for 11..20 ; 1..15 -> $a, $b ; $c, $d, $e {
- print1($a _ ' ' _ $c);
+ print1($a ~ ' ' ~ $c);
}
}
Index: languages/perl6/t/compiler/globals.t
===================================================================
RCS file: /cvs/public/parrot/languages/perl6/t/compiler/globals.t,v
retrieving revision 1.2
diff -u -r1.2 globals.t
--- languages/perl6/t/compiler/globals.t 27 Nov 2003 19:43:25 -0000 1.2
+++ languages/perl6/t/compiler/globals.t 17 Dec 2003 01:07:16 -0000
@@ -6,7 +6,7 @@
##############################
output_is(<<'CODE', <<'OUT', "globals");
sub foo() {
- print $x, " is ", @xs >>_<< ' ', "\n";
+ print $x, " is ", @xs >>~<< ' ', "\n";
$y = 0;
for @xs { $y = $y + $_ }
}
Index: languages/perl6/t/compiler/hyper.t
===================================================================
RCS file: /cvs/public/parrot/languages/perl6/t/compiler/hyper.t,v
retrieving revision 1.3
diff -u -r1.3 hyper.t
--- languages/perl6/t/compiler/hyper.t 27 Nov 2003 19:43:25 -0000 1.3
+++ languages/perl6/t/compiler/hyper.t 17 Dec 2003 01:07:16 -0000
@@ -6,7 +6,7 @@
##############################
output_is(<<'CODE', <<'OUT', 'Hyper 1');
sub parray(@y) {
- print1('(' _ @y[0] _ ', ' _ @y[1] _ ')');
+ print1('(' ~ @y[0] ~ ', ' ~ @y[1] ~ ')');
}
sub main() {
my @a = (1,2);
@@ -20,7 +20,7 @@
# print1(@a >>*<< @x + @b); # Array math not in 0.0.7
# IMCC clobbers too many registers with this:
# @y = @a >><<<< @a;
-# print1('(' _ @y[0] _ ', ' _ @y[1] _ ')');
+# print1('(' ~ @y[0] ~ ', ' ~ @y[1] ~ ')');
}
CODE
(8, 14)
@@ -51,7 +51,7 @@
##############################
output_is(<<'CODE', <<'OUT', 'Hyper 3');
sub parray(@y) {
- print1('(' _ @y[0] _ ', ' _ @y[1] _ ', ' _ @y[2] _ ')');
+ print1('(' ~ @y[0] ~ ', ' ~ @y[1] ~ ', ' ~ @y[2] ~ ')');
}
sub main() {
@@ -82,17 +82,17 @@
my @a = (1..3);
my @b = (4..9);
my @c = @a >>+<< @b;
- print @c >>_<< ' ',"x\n";
+ print @c >>~<< ' ',"x\n";
@c = @b >>+<< @a;
- print @c >>_<< ' ',"x\n";
+ print @c >>~<< ' ',"x\n";
@b = @b >>+<< @a;
- print @b >>_<< ' ',"x\n";
+ print @b >>~<< ' ',"x\n";
@b = (4..9);
@b >>+=<< @a;
- print @b >>_<< ' ',"x\n";
+ print @b >>~<< ' ',"x\n";
@b = (4..9);
@a >>+=<< @b;
- print @a >>_<< ' ',"x\n";
+ print @a >>~<< ' ',"x\n";
}
CODE
5 7 9 7 8 9 x
@@ -109,30 +109,30 @@
my @c;
@c = @a;
@c >>+=<< @b;
-print @c >>_<< ' ',"x\n";
+print @c >>~<< ' ',"x\n";
@c = @b;
@c >>+=<< @a;
-print @c >>_<< ' ',"x\n";
+print @c >>~<< ' ',"x\n";
@c = @a;
@c >>*=<< @b;
-print @c >>_<< ' ',"x\n";
+print @c >>~<< ' ',"x\n";
@c = @a;
@c >>**=<< @b;
-print @c >>_<< ' ',"x\n";
+print @c >>~<< ' ',"x\n";
@c = @a;
@c >>/=<< @b;
-print @c >>_<< ' ',"x\n";
+print @c >>~<< ' ',"x\n";
@c = @b;
@c >>%=<< @a;
-print @c >>_<< ' ',"x\n";
+print @c >>~<< ' ',"x\n";
@c = @b;
@c >>-=<< @a;
-print @c >>_<< ' ',"x\n";
+print @c >>~<< ' ',"x\n";
CODE
/7 9 4 x
7 9 4 x
Index: languages/perl6/t/compiler/qsort.t
===================================================================
RCS file: /cvs/public/parrot/languages/perl6/t/compiler/qsort.t,v
retrieving revision 1.2
diff -u -r1.2 qsort.t
--- languages/perl6/t/compiler/qsort.t 27 Nov 2003 19:43:25 -0000 1.2
+++ languages/perl6/t/compiler/qsort.t 17 Dec 2003 01:07:16 -0000
@@ -27,10 +27,10 @@
sub main() {
my @a = 1..10;
qsort @a, 0, @a - 1;
- print @a >>_<< "\n";
+ print @a >>~<< "\n";
@a = (10,9,8,7,6,5,4,3,2,1);
qsort @a, 0, @a - 1;
- print @a >>_<< "\n";
+ print @a >>~<< "\n";
}
CODE
10
Index: languages/perl6/t/compiler/string.t
===================================================================
RCS file: /cvs/public/parrot/languages/perl6/t/compiler/string.t,v
retrieving revision 1.1
diff -u -r1.1 string.t
--- languages/perl6/t/compiler/string.t 13 Oct 2003 17:00:57 -0000 1.1
+++ languages/perl6/t/compiler/string.t 17 Dec 2003 01:07:16 -0000
@@ -12,7 +12,7 @@
# qq + interpolation
print(qq|$speech $action $person\n"But you speak like a fool."\n|);
# obviously refering to those folks who think Perl6 is a "bad thing." :)
- print "\"pass " _ 'test"' _ "\n"; # backslash quotes + spacing
+ print "\"pass " ~ 'test"' ~ "\n"; # backslash quotes + spacing
}
CODE
"You have not seen, so I forgive your jest," said Gimli.
|
From @allison#!perl ############################## ############################## ############################## ############################## ############################## ############################## ############################## |
From @allison#!perl ############################## ############################## |
From @leoAllison Randal <bugs-perl6@bugs6.perl.org> wrote:
Applied, thanks.
Missing? leo |
From @allisonLeo wrote:
The directory needs to be added. We're gradually moving our way toward t/var Or, more extensively: We haven't gotten to moving all the tests yet, but I'll add new test Allison |
From @pdcawleyAllison Randal <al@shadowed.net> writes:
p6d? |
From @leoAllison Randal <al@shadowed.net> wrote:
I had a short look at the subdir hierarchy, looks good. If you don't have CVS write access, I'd vote for you getting it. In the
leo |
From @allisonPiers wrote:
The perl6-documentation list. Started around Nov. 2002, it had about 3 Allison |
From @allisonLeo wrote:
Excellent.
Yeah, that's on my Todo list. Hmmm... I should probably add the list to
I don't have it. Thanks. :) Allison |
From @pdcawleyAllison Randal <al@shadowed.net> writes:
I find that the best way to remember the answer to a question is to |
From dan@sidhe.orgAt 2:03 PM -0600 12/19/03, Allison Randal wrote:
Allison, if you've not gotten a perl.org account head over to --------------------------------------"it's like this"------------------- |
From @allisonDan wrote:
I'm "allison". Allison |
From dan@sidhe.orgAt 1:28 PM -0600 12/22/03, Allison Randal wrote:
Yes, yes you are. :) Full CVS checkin, or would you prefer to stick --------------------------------------"it's like this"------------------- |
From @allisonDan wrote:
At the moment I don't expect to work on much outside the perl 6 section Allison |
robert@perl.org - Status changed from 'new' to 'resolved' |
Migrated from rt.perl.org#24683 (status was 'resolved')
Searchable as RT24683$
The text was updated successfully, but these errors were encountered: