»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg p6eval perl6: ... | irclog: irc.perl6.org/ | UTF-8 is our friend!
Set by sorear on 4 February 2011.
sorear the whole thing is kind of strange 00:04
because the very existance of IntStr invalidates the optimizer's ability to assume that an Int will never be a Str 00:05
cognominal_ When one changes the semantic of a language, it is bound to mess with the optimizer :) 00:08
… which assumes so much about the semantic
japhb sorear, I let your comment rumble around the back of my head for a while, and I still am not sure which behavior you think we should have. 00:23
I've been banging my head against the wall trying to get a fully consistent version of $dual.Int --> Int, while jnthn++ seems to have been wondering what is so hard with $dual.Int --> $dual 00:24
jnthn japhb: I think IntStr probably needs to override .Numeric, .Real and .Int to return the pure Int nature of the thing. 00:57
phenny jnthn: 11 Nov 23:56Z <cognominal_> tell jnthn an oddity with the span of an infix EXPR match gist.github.com/cdc05adc82ad98272ea7
jnthn cognominal_: Yes, see in the debugger widen_EXPR or so, to see how I dealt with that.
cognominal_ cool 00:58
cognominal_ why do you need that in the debugger? 01:02
jnthn cognominal_: The debugger is pretty good at knowing what the "current thing" is 01:03
cognominal_: It highlights it to show you where you are 01:04
cognominal_ I definitively should look it closely 01:05
jnthn 'night, #perl6 01:08
cognominal_ usually debugger are at the granulariy of the statement so I did not expect your "expression widening" be relevant 01:08
diakopter nr: sub sayf($fmt, *@args) { printf "$fmt\n", |@args }; sayf "%s 3", 5 01:56
p6eval rakudo 72a27f, niecza v22-19-gd874a8e: OUTPUT«5 3␤»
japhb phenny, tell jnthn Yep, I'd come to the same conclusion too -- except that I also think *Str need to override all the string-related things so that their first parent (Int, Num, etc.) doesn't try to handle stringification. I also had to choose a booleanization mode, and a few other details I've forgotten at the moment. And then there's RatStr and ComplexStr, which are going to be interesting beasts. Ah well, I'll keep pounding my head o 07:21
phenny japhb: I'll pass that on when jnthn is around.
japhb n it until it makes sense. :-)
moritz \o 08:01
diakopter o/
diakopter reads Code Optimization: Effective Memory Usage ... with fascination 08:05
dalek ecza: 202e700 | sorear++ | / (10 files):
Top removal: basic smart constructors, symbol table
08:14
sorear \o/ below 50 08:36
dalek ecza: 48d66de | sorear++ | lib/ (4 files):
Top removal: more smart constructors
FROGGS sorear: below fifty what? 08:41
hi, btw
;o)
sorear FROGGS: references to Compartment.Top, the global variable that holds a reference to the current setting 08:44
I've been trying to allow the niecza runtime to use two settings concurrently; this has been a _very_ hairy yak
started at >700
FROGGS ohh, okay, cool 08:45
I thought you want to give up the work on niecza? (not that I want that) 08:46
sorear dunno. we're in a bit of a codependency situation atm 08:48
FROGGS what do you mean? 08:48
moritz niecza depends on sorear, and sorear depends on niecza? :-) 08:49
FROGGS hehe
kresike hello all you happy perl6 people 09:15
dalek ecza: cde23d6 | sorear++ | lib/ (6 files):
Use InvokeMethod/InvokeSub whereever feasable instead of GetInferiorRoot directly
09:16
dalek ecza: c80570d | sorear++ | lib/ (7 files):
misc top removal: MakePair, LHF
09:33
jnthn morning, #perl6 09:47
phenny jnthn: 07:21Z <japhb> tell jnthn Yep, I'd come to the same conclusion too -- except that I also think *Str need to override all the string-related things so that their first parent (Int, Num, etc.) doesn't try to handle stringification. I also had to choose a booleanization mode, and a few other details I've forgotten at the moment. And then there's RatStr and ComplexStr, which are going to be interesting beasts. Ah well, I'll keep pounding my head o
jnthn phenny: tell japhb Well, RatStr and ComplexStr don't have the unboxing stuff to worry about, at least... 09:52
phenny jnthn: I'll pass that on when japhb is around.
dalek ecza: 532462b | sorear++ | / (4 files):
Bring compartment stack management under compiler control
09:56
sorear sleep& 09:57
FROGGS sleep well 10:00
grondilu Say I would like to define an arrow like syntax for anonymous functions: "x->x**2" instead of -> $x { $x**2 }. Can I do that with a macro? 10:18
moritz eventually you will, once 'is parsed' is implemented 10:20
grondilu ok 10:21
tadzik good morning #perl6 10:47
moritz \o tadzik
felher o/ 10:48
FROGGS hi tadzik
moritz with a bit of luck I should have teh internets at home again tonight
jnthn moritz: yay! 10:49
masak O frabjous day! Callooh! Callay! 10:52
(antenoon, #perl6) 10:53
tadzik hello hello
masak "Macros are functions that are called by the compiler during compilation. Within these functions the programmer has access to compiler APIs. For example, it is possible to generate, analyze and typecheck code." -- I like that description. 10:54
it's from scalamacros.org/ -- Scala's macros are factored quite differently from Perl 6's, for various reasons.
masak but the above could still apply to Perl 6 as well. I should spend some time thinking about the "analyze" and "typecheck" aspects. 10:54
moritz it would be great if that resulted in some better abstraction within the compiler 10:56
ie routines (maybe methods in World) for typechecking
maybe we already have that, and I haven't really noticed 10:57
tadzik multi macros :>
moritz but somehow I feel we have lots of stuff inside the compiler that might be APIfied
masak tadzik: multi macros should already work, it's just that we need better AST introspection to do anything more with them than dispatch on number of args. 10:58
tadzik yeah
masak moritz: World was already a great step in that direction, IMO.
first time I looked at World: "whoa, a Perl 6 API".
moritz aye 10:59
jnthn Note that the type checking we do today happens at CHECK time. 11:02
Well, just after CHECK time really.
Otherwise you couldn't analyze post-declared calls, for example... Or something may happen to invalidate an assumption you made. 11:03
Given we typically consider programs relatively mutable until CHECK time is done, macro application time is probably a bit early for type checking.
masak maybe the quasi block could contain a CHECK block? :) 11:06
jnthn That could work better
So long as it's a plain CHECK, and not a QCHECK
sergot hi o/
tadzik sergot: o/ 11:07
jnthn o/ sergot
jnthn waits for the QCHECK reprimand :D
sergot tadzik: should I keep working on modules.perl6.org? :)
tadzik oh, that'd be nice :) 11:08
but, are those cronjobs running?
sergot tadzik: yes, they're running 11:09
tadzik hrm
I don't see my TAP module there 11:10
sergot Because I didn't connect it with ecosystem. :(
It's the first thing I should do. 11:11
tadzik ah
so projects.json is not updated?
sergot No, it's not. I'll do this. :) 11:12
tadzik you can probably just copy it over from /home/tjs/somethingsomething 11:13
tadzik or I'll have to update permissions for that. 11:13
masak jnthn: sorry, I forgot to reprimand you in due time, and the reprimand timed out. :) 11:30
jnthn
.oO( phew! )
masak jnthn: but here's your obligatory Q*bert: en.wikipedia.org/wiki/Q*bert
jnthn Gee, that's older than me :P 11:31
masak good old NES days. 11:33
FROGGS looks like 1982 was a pretty cool year^^ 11:42
masak jnthn: I think all CHECK blocks inside quasis should be QCHECK blocks. so we might as well drop the Q.
moritz has lots of spectest failures 11:54
oh, wrong branch
rindolf FROGGS: why? 11:57
dalek rlito: 66ec858 | (Flavio S. Glock)++ | TODO-perlito5:
Perlito5 - TODO update
13:20
FROGGS rindolf: that Q*bert game was made in 1982 like me 13:43
rindolf FROGGS: ah. 13:44
dalek rlito: 7bc739e | (Flavio S. Glock)++ | / (6 files):
Perlito5 - parser - add 'Perlito5::AST::Given'
13:45
rindolf FROGGS: ah, my younger sister was born in 1982 too. 13:58
FROGGS ;o)
tadzik heh, my older sister is from 1972 14:04
FROGGS well, mine from 1980 and 1976 14:05
but doesnt matter, 1982++ ;o)
tadzik what about 1983? ;) 14:05
FROGGS well, 1982++ actualy is 1983 14:07
moritz r: 1982++
p6eval rakudo 72a27f: OUTPUT«Cannot assign to a non-container␤ in sub postfix:<++> at src/gen/CORE.setting:3077␤ in block at /tmp/hw5STbAiFC:1␤␤»
masak nqp: 1981++ 14:08
p6eval nqp: OUTPUT«Error while compiling block : Error while compiling op postinc: Post-increment can only work on a variable␤current instr.: '' pc 43971 (src/stage2/QAST.pir:15393) (src/stage2/QAST.nqp:2331)␤»
tadzik cool error message
dalek rlito: 376e088 | (Flavio S. Glock)++ | TODO-perlito5:
Perlito5 - TODO update
14:16
kresike bye folks 16:13
masak o/
moritz \o 16:21
masak moritz! \o/ 16:23
moritz: got internet yet?
rindolf moritz: \o/ 16:26
moritz masak: at work, yes. At home: haven't checked yet 16:30
masak ah. 16:31
moritz -> home
isBEKaml hello, #perl6! 16:48
masak isBEKaml! \o/ 16:49
isBEKaml masak: Hi.. I'm still having issues with cygwin builds of parrot and rakudo. :|
I've asked on #parrot, it looks like a slow channel these days. 16:50
masak ok. 16:52
I wish I could help, but I know very little about cygwin, unfortunately.
you said an earlier version of Parrot builds for you, but not Parrot HEAD?
isBEKaml Well, the problem goes both ways. I've had some success building parrot from cmd prompt, but nqp just conks out looking for a shell script. 16:53
isBEKaml but with cygwin, it doesn't even go on to build. 16:53
aye, that was from cmd prompt. I didn't try 4.7 on cygwin.
isBEKaml path issues: /usr/bin/sh: line 0: cd: srcpmc: No such file or directory 16:56
that was from nqp on cmd prompt.
it ate the backslash.
from gmake clean: /usr/bin/sh: C:strawberryperlbinperl.exe: command not found 16:57
:)
masak hm. no idea. :/ 17:00
isBEKaml I'm manually editing the Makefile to use '\\' instead of '\'. Let's see how that goes. 17:05
masak isBEKaml++ # perseverence 17:06
diakopter isBEKaml: I've tried several times over the past year to build parrot on cygwin, all with failure
s/year/two years/
isBEKaml diakopter: ah, so I'm not the only one with issues. I hear rurban++ develops on cygwin for parrot. 17:07
I don't know how that works for him.
diakopter that's because he *is* cygwin
(ok, I exaggerate) 17:08
isBEKaml well, boo - I just remembered that Make has the ability to convert '/' to platform specific separators 17:12
masak .oO( category error detected near 'he [rurban] *is* cygwin'... ) 17:16
rurban parrot build OOTB in my cygwins 17:17
diakopter rurban: which windows? 17:17
rurban can you send me your cygwin failures 17:18
I test on XP and Win7
isBEKaml rurban: gist.github.com/4055922
rurban isBEKaml: looks like a text mount or strange PerlIO setting 17:19
is this FAT?
isBEKaml now it fails on dyncall with nqp build on cmd: gist.github.com/4060617
rurban: no, NTFS 17:20
rurban I see, wrong tools in your path
gmake is not the cygwin make, its the strawberry or mingw make
isBEKaml rurban: gmake is what I use on cmd prompt. 17:21
rurban: I use make on cygwin.
rurban this cannot work, /usr/bin must be at the front of your PATH
isBEKaml gmake came with strawberry.
rurban del .\libdyncall_s.a will not work on cygwin
there is only rm, no del. wrong toolchain. 17:22
isBEKaml rurban: I see the confusion. The libdyncall issue came from windows cmd prompt. It has nothing to do with cygwin.
rurban yes
isBEKaml rurban: the cygwin issue is what I gave you earlier. 4055922
rurban I regularly smoke cygwin and mingw on my windows vm's 17:23
even with msvc8 and activeperl
isBEKaml rurban: I don't know what's wrong with my steps in building on cygwin. I do a fresh git clone, perl Configure pointing to current dir for install (without icu) and make. BAM! 17:24
diakopter msvc2010 works for me, msvc2012 doesn't
diakopter also, I can't build parrot with strawberry last time I tried 17:25
isBEKaml rurban: also, `which make` gives me /usr/bin/make. 17:26
rurban hmm, I also no problem at src/string/api.c :461 CONST_STRING(interp, "");
japhb diakopter, link to the code/memory optimization article? 17:27
phenny japhb: 09:52Z <jnthn> tell japhb Well, RatStr and ComplexStr don't have the unboxing stuff to worry about, at least...
isBEKaml I couldn't find anything wrong there, either. Could it be some line ending thing here?
CRLF <-> LF? but I have core.autocrlf git config to true (by default, this is msysgit)
diakopter japhb: it's a pdf of a hacked .chm of an out-of-print book 17:28
s/hacked/pirated/
rurban isBEKaml: can you try with cygwin tools only? cygwin git, cygwin make and so on. looks like a mingw problem 17:29
isBEKaml rurban: I'll try - I really should get down to removing unnecessary tools from my machine.
rurban no, only sanify your PATH and/or install the missing cygwin tools 17:30
japhb diakopter, awww. I love that kind of stuff. Too bad it's not readily available. :-( 17:31
diakopter I was going to buy it on Amazon, but it's... $450. 17:32
isBEKaml rurban: okay, I have cygwin autoconf tools, and perl. I'll install git. cygwin tools are first on $PATH followed by other stuff like mingw, strawberry... 17:33
japhb diakopter, woah. That's ... REALLY steep. My college textbooks weren't nearly that bad. 17:34
isBEKaml diakopter: 450 dollars for a book?
rurban maybe it was git
diakopter rurban: do you know of anyone who uses parrot on cygwin (regularly)?
(other than yourself, of course)
isBEKaml rurban: that would mean a fresh checkout :( slow connection here.
PerlJam r: role R { }; my @a := Array.new but R; @a[0] = 42; # known? 17:35
p6eval rakudo 72a27f: OUTPUT«elements() not implemented in class 'Mu'␤ in method REIFY at src/gen/CORE.setting:5995␤ in method REIFY at src/gen/CORE.setting:6250␤ in method reify at src/gen/CORE.setting:5403␤ in method gimme at src/gen/CORE.setting:5768␤ in method exists at src/gen/CORE.s…
rurban me and I get regular bug reports on the cygwin list
PerlJam r: my @a := Array.new; @a[0] = 42;
p6eval rakudo 72a27f: ( no output )
PerlJam r: my @a := Array.new; @a[0] = 42; say @a;
p6eval rakudo 72a27f: OUTPUT«42␤»
diakopter rurban: where is this cygwin list?
rurban Michael Schaap is one name from cygwin. dir.gmane.org/gmane.os.cygwin 17:38
isBEKaml rurban: No, same issue. :( 17:39
diakopter omg; stupidest forum search form ever. change a sorting option and re-search, it doesn't take you back to page 1 of the result. 17:40
rurban can you gist your cygcheck -s -v -r > cygcheck.out (as in cygwin.com/problems.html)
diakopter how could anyone possibly expect a search form to behave that way
rurban you mean this one: search.gmane.org/?query=parrot&....os.cygwin ? 17:41
diakopter right.
I was on page 2 of that
then clicked "Newest First"
then clicked "Search >>"
it took me to page 2 of Newest First 17:42
rurban This is xapian, which normally keeps your settings on the next pages
diakopter that's a terrible usability decision
in my not-so-humble opinion, that is 17:43
isBEKaml rurban: here: gist.github.com/4060778
rurban It might be a xapian bug. I had similar problem on some xapian templates by myself. 17:44
diakopter I don't see any parrot errors reported since 2010-05-03 17:45
rurban diakopter: yes, since then it was pretty stable. Most problem came from attempts to do something without the parrot-devel package. like starting parrot. 17:46
I fixed most upstream, but I would still call parrot packaging non-stable and non-conformant 17:47
diakopter ok. I'll interpret the lack of feedback as lack of use
rurban isBEKaml: I see no apparent problem in your cygcheck. do you run this in mintty or which term?
isBEKaml rurban: xterm 17:48
rurban diakopter: I'm not so sure. When there were problems I got immediate feedback. Since I fixed the problem no complaints anymore
diakopter oh, here's one: github.com/parrot/parrot/issues/241 17:49
rurban The cygwin xterm or another one?
isBEKaml cygwin xterm
OOTB
I haven't really configured cygwin much after an install. 17:50
rurban I only know of several fatal perl bugs (upstream problems), not yet parrot. I'll recheck again 17:51
isBEKaml: I never really tested 64bit windows 17:53
isBEKaml rurban: I'll do a fresh checkout and try again. I'll report back in tomorrow (slow connection and everything, takes out about 2 hrs for a full checkout) 17:54
(parrot should really cut down on the 100+ branches on github)
rurban Windows is much much faster on kvm 17:56
I just compiled parrot afresh, no problems
Oh, you are in Calcutta. That must be pretty late now 17:57
isBEKaml|2 rurban: India, yes. It's about midnight here. 18:00
(Mumbai) 18:01
rurban Mumbai is a bit nearer. I'm pretty sure there's something wrong with your system, not with parrot. The rakudo build error looks strange though, using gmake on cygwin 18:02
isBEKaml|2 rurban: No, the rakudo error is different. Like I said, it's nothing to do with cygwin - I only used cmd prompt when I couldn't build anything out of cygwin. 18:03
isBEKaml rurban: I'll clean the paths and run them again tomorrow. 18:13
rindolf Hi all, can I use ASCII dashes/hyphens ("-") inside Perl 6 identifiers? I recall that I can. 19:13
cognominal rn: my $a-b'c = "hi"; say $a-b'c 19:21
p6eval rakudo 72a27f, niecza v22-24-g532462b: OUTPUT«hi␤»
cognominal rindolf: I think the dahs and quotes are allowed only in "internal" positions, not in the beginning nor at the end of the part that follows the sigils. 19:23
rn: my $a--b''c = "hi"; say $a--b''c
p6eval niecza v22-24-g532462b: OUTPUT«===SORRY!===␤␤Two terms in a row at /tmp/mFP6_d1_L9 line 1:␤------> my $a--⏏b''c = "hi"; say $a--b''c␤␤Parse failed␤␤»
..rakudo 72a27f: OUTPUT«===SORRY!===␤Confused␤at /tmp/X20qFMyjK2:1␤»
cognominal Apprently you can't use two in a row either. 19:24
rindolf rn: my $hello-world = "Hi There"; say $hello-world; 19:25
p6eval rakudo 72a27f, niecza v22-24-g532462b: OUTPUT«Hi There␤»
diakopter I just tried to copy text on my laptop and paste it on my phone. I feel stupid. 20:38
masak you're not. 20:39
I get this meme with increasingly regular intervals.
it's just that the devices aren't connected enough for your use case yet.
diakopter c'mon synergy2, make an app... 20:40
masak the guy who tried to copy-and-paste from his computer to the back of an envelope, however... :)
geekosaur wonders how long before the existing shared pasteboards add that
masak I like the point that www.modernperlbooks.com/mt/2012/11/...ation.html makes. 20:56
I like making APIs inside my programs, even if I'm the only one ends up consuming them. 20:57
PerlJam In Moose-land it's possible for a role to apply a method modifier to the class that consumes it. How is this done in Perl 6? 21:04
jnthn Presumably using a module that implements method modifiers. 21:06
doy (role method modifiers)-- 21:07
PerlJam okay.
jnthn Roles are meant to be composable units of reusability.
diakopter roles jnthn a biscuit 21:08
jnthn There's little reusable about a role that couples to a class as tightly as a method modifier in the role would.
Short of the role being parametric on the method name, but then why not put the semantic on the method itself by implementing a trait... 21:09
lue [looking up method modifiers] Is it fair for me to think of method modifiers as [similar to] phasers? 21:11
sorear o/ 21:16
jnthn lue: No, more in the space of callsame etc.
o/ sorear 21:17
PerlJam jnthn: I was playing around with how I would turn an Array into a fixed size Array and the solution that occurred first was to make a FixedSize role that could be mixed in to Array where the FixedSize role would have an at_pos() method that does the size check then calls nextsame to execute Array.at_pos
masak lue! \o/
lue: I think method modifiers are things like 'before', 'after' and 'around', a la Moose. 21:18
tadzik which are awesome, imho :)
lue Ah. I'm looking at Moose::Manual::MethodModifiers, and it didn't at first strike me how it was useful. If it's like callsame though, I'd think using, well, callsame would be a good idea.
jnthn PerlJam: Something like that could work, yes. Though there's lots of other ways to do that kinda thing. 21:19
masak lue: well, people keep wanting the method modifiers, too. 21:20
jnthn PerlJam: I know somebody is looking into that at the moment.
PerlJam jnthn: making fixed size arrays? 21:21
jnthn PerlJam: Yes.
PerlJam: Somebody who got in contact with TPF wanting to do something on Rakudo as their open source community service thingy as part of their college. They got passed along to me; I've of course mentioned #perl6 is an awesome place to drop by, but didn't see them here yet... 21:22
lue I can see where method modifiers are useful, but I think I'm failing to see why you'd put them in a role (as opposed to putting the modifier's code in the method itself), except to do something something like around 'sub1' => &wrapper; around 'sub2' => &wrapper; etc.
lue now of course stumbles upon the Moose manual's "Wrapping multiple methods at once" section 21:23
doy the main reason that people use method modifiers in roles in moose is to wrap methods in other roles, not necessarily to wrap methods in classes 21:24
because that avoids requiring manual conflict resolution 21:25
but... that's really not a great way to solve that problem
PerlJam In my example, the Array class has an at_pos method that is used for indexing into the array. To make a fixed size array, I'd want at_pos to behave exactly as it does, but add some code before it that does the checking. Hence what led me to think of method modifiers. 21:26
lue
.oO(Then again, my one case for useful modifiers could also be done with macros...)
jnthn Everything can be done with macros! Just ask masak :D 21:27
PerlJam lue: that was my second idea that I haven't explored yet :)
lue Maybe if I used Perl 5 I'd understand method modifiers better, but I keep on trying to find a situation where there's no other (P6) solution...
jnthn PerlJam: The role approach is the sane one, imho
PerlJam r: my @a := Array.new; say @a.perl; role R { }; my @b := Array.new but R; say @a.perl; 21:30
p6eval rakudo 72a27f: OUTPUT«Array.new()␤Array.new()␤»
PerlJam r: my @a := Array.new; @a[0] = 42; say @a.perl; role R { }; my @b := Array.new but R; @b[0] = 5; say @b.perl;
sorear lue: method modifiers in p5 are a convenience too, but more of one, because 'callsame' is harder to use in p5
p6eval rakudo 72a27f: OUTPUT«Array.new(42)␤elements() not implemented in class 'Mu'␤ in method REIFY at src/gen/CORE.setting:5995␤ in method REIFY at src/gen/CORE.setting:6250␤ in method reify at src/gen/CORE.setting:5403␤ in method gimme at src/gen/CORE.setting:5768␤ in method exists at …
sorear lue: largely because context flows inward 21:31
PerlJam ah.
jnthn PerlJam: Hmmm...
PerlJam did that binding not work correctly?
jnthn PerlJam: I'm not sure what happene.d
PerlJam: It really shoulda worked... 21:32
lue OK. I see it still could be a convenience in P6, my mind was stuck in "when do I *need* it?" land. 21:33
PerlJam builds the rakudo debugger for the first time 21:34
timotimo i wonder: when should a macro chapter for the perl 6 book be written? 21:36
PerlJam timotimo: whenever masak has time :)
timotimo not that i'm volunteering, but why should we force masak to do it? :P
sorear lue: "after" in p5 looks like this: sub foo { my $self = shift; my @res; if (!defined wantarray) { $self->SUPER::foo(@_) } elsif (wantarray) { @res = $self->SUPER::foo(@_) } else { @res = scalar $self->SUPER::foo(@_) }; do stuff; return wantarray ? @res : $res[0] } 21:37
doy callsame is harder in p5 also because SUPER:: is broken (the method is resolved based on the package the call is compiled in, not the package the current method is installed into)
so anything involving SUPER:: just won't work in roles 21:38
lue looking up wantarray in the specs, I just found a use of 􏿽xA2a. What should that be replaced with? 21:42
masak lue: where did you find ¢a?
lue in S08. [I can find line number in a second if you want.] 21:43
S08:221 21:44
masak looks
there simply isn't a "capture sigils". 21:45
I guess captures aren't important enough to have their own sigil. a bit like sets and bags.
I do believe ¢ occurs in STD.pm6, though.
oh, that's $¢
lue So would replacing it with a $ be good? 21:50
masak yes. that always works, regardless of data type. 21:51
even arrays and hashes :)
lue Not quite sure what the @% is supposed to be just below that either. 21:52
(ascii version of 􏿽xA2?)
timotimo is there a good replacement example for the book to replace the outdated "substr has three- and four-parameter versions"?
sorear $¢ needs to go, btw
masak oh yay! why?
sorear it is the _only_ thing in Perl 6 that cnanot be written in ASCII
masak timotimo: there's a substr-rw in both Rakudo and Niecza, I belive. 21:53
sorear timotimo: I think substr still has afour-parameter version?
masak sorear: that's what I've been saying for years. :)
timotimo i thought it was removed from the specs?
diakopter assents
timotimo the point of the section seemed to be "look, one of the versions binds the first parameter as rw, the other one doesn't"
lue
.oO(I like the look of the 􏿽xA2, it's a shame it's not on most people's keyboards. There aren't a lot of ascii chars left for [s||tw]igils)
21:59
benabik ¢ is Opt-4 on OS X 22:00
sorear also, this is a utf-8 channel 22:01
benabik hopes he's using UTF8...
sorear you are, lue isn't 22:02
lue Huh, I see benabik and my cent signs correctly. /me checks settings
sorear and irssi stupidly is just replacing all of lue's characters with question marks
doy i can see both benabik's and lue's ¢ just fine
sorear whatever client doy is using is handling this better than $ancient_irssi 22:03
jnthn My irssi renders both fine, fwiw.
benabik I can see both, but it marks lue with [incompatible encoding]
it = Colloquy
diakopter there's all those P5 special ones - like $` 22:04
lue I think I fixed it. ¢ 22:08
dalek ok: c3af22b | timo++ | src/roles.pod:
Improve sentence based on issue77
22:09
flussence yep, that's a ¢ now 22:10
sorear lue: wfm 22:12
masak lue++ # utf-8 22:14
lue xchat-- for it's default "IRC" encoding.
s/it's/its/ 22:15
dalek ok: 8a1cd47 | timo++ | src/operators.pod:
Use reworded sentence from #75
22:21
masak 'night, #perl6 22:25
tadzik good knight
jnthn 'night, #perl6 22:38
sorear knight jnthn 22:39
cognominal rn: constant $indiana_pi = 3; constant indiana_tau = 2 * $indiana_pi 23:02
p6eval rakudo 72a27f, niecza v22-24-g532462b: ( no output )
japhb cognominal++ # Reminding me to add a Tom Petty station to Pandora 23:20
cognominal I thought that sigiless constant were compile time and sigilwith run tine, I was wrong. S03 says they are both compile time 23:36
sorear you can also have sigilful and sigilless runtime variables 23:38
my \foo = 2+2; # run time