»ö« 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. |
|||
diakopter | nom: my $i; for 1..1000000 { $i++ } | 00:01 | |
p6eval | nom af0d2e: OUTPUT«(timeout)» | 00:02 | |
colomon | perl6: "foobar".subst(/o/, "e", :g).say | ||
00:02
replore joined
|
|||
p6eval | rakudo af0d2e, niecza v10-34-gb08643d: OUTPUT«feebar» | 00:02 | |
..pugs: OUTPUT«Error eval perl5: "if (!$INC{'Pugs/Runtime/Match/HsBridge.pm'}) { unshift @INC, '/home/p6eval/.cabal/share/Pugs-6.2.13.16/blib6/pugs/perl5/lib'; eval q[require 'Pugs/Runtime/Match/HsBridge.pm'] or die $@;}'Pugs::Runtime::Match::HsBridge'"*** '<HANDLE>' trapped b… | |||
soh_cah_toa | isn't there a character class or rule for spaces? i thought it was <space> and \s doesn't work anymore | 00:04 | |
00:07
stepnem left
|
|||
colomon | pretty sure \s still works fine | 00:09 | |
and the class is <ws>, maybe? | |||
soh_cah_toa | it doesn't seem to work in the replace string of a substitution | ||
colomon | "replace string" | 00:10 | |
? | |||
benabik | You can't replace with "generic whitespace" | ||
soh_cah_toa | replacement | ||
00:10
stepnem joined
|
|||
soh_cah_toa | i can't add space to a string? | 00:10 | |
benabik | s/blah/\s/ ? | ||
colomon | you can't add a character class to a string! | ||
benabik | You can, but you have to specify _what_ whitespace to add. | ||
soh_cah_toa | oh, right | ||
benabik | s/blah/ / | ||
soh_cah_toa | yeah, didn't think about that | 00:11 | |
using \x20 is fine though which makes sense | |||
colomon | nom: say "this is a test".subst(/<ws>/, 'X', :g) | ||
p6eval | nom af0d2e: OUTPUT«XthisXXisXXaXXtestX» | ||
colomon | !!!! | ||
soh_cah_toa | that's odd that it placed X at the start and end of the string | 00:12 | |
benabik | ? | ||
colomon | niecza: | ||
[8:11pm] p6eval: nom af0 | |||
niecza: say "this is a test".subst(/<ws>/, 'X', :g) | |||
p6eval | niecza v10-34-gb08643d: OUTPUT«thisXisXaXtest» | ||
colomon | nom bug, I think | ||
benabik | nom: say "this is a test".subst(/\s/, 'X', :g) | ||
p6eval | nom af0d2e: OUTPUT«thisXisXaXtest» | ||
benabik | I wonder if it's a differing definition of <ws> | ||
colomon | b: say "this is a test".subst(/<ws>/, 'X', :g) | 00:13 | |
p6eval | b 1b7dd1: OUTPUT«XthisXXisXXaXXtestX» | ||
colomon | seems like, but how odd | 00:14 | |
benabik | ws is... <!ww> [ \s+ | <.unv> ]* | 00:16 | |
So it is a zero width match at the edge of words? | |||
colomon | that seems.... bad | 00:17 | |
benabik | Maybe it's related to nom not doing LTM | ||
00:25
whiteknight left
00:26
whiteknight joined
00:28
lichtkind left
00:31
Chillance left
00:33
tokuhiro_ left
00:40
daniel-s left
00:41
dual left
00:53
quester_ joined
01:01
S11001001 joined
01:15
daniel-s joined
|
|||
S11001001 | moritz: I have a little nitpick for the perl6.org front page: "Using Perl 6" is not open source. | 01:18 | |
01:20
whiteknight left
|
|||
dalek | osystem: be84f95 | soh_cah_toa++ | spec.pod: Fixed several grammar errors in spec.pod. |
01:36 | |
osystem: e0167e0 | soh_cah_toa++ | spec.pod: Added an example META.info file to spec.pod. Also added 'author' field to 'Optional Fields' section. |
|||
osystem: ff14d24 | soh_cah_toa++ | META.list: Added Test::Builder to list. Also updated URL for Digest::SHA256 since I renamed the repo name. |
|||
01:45
quester_ left
01:57
ggoebel left
02:02
ggoebel joined
02:04
sivoais left,
sivoais joined
02:08
S11001001 left
|
|||
snarkyboojum | I guess S11001001 was referring to the non-free fonts? You can always use different fonts. | 02:28 | |
sorear | colomon: what nom is doing seems to be more correct than what niecza is doing. | 02:39 | |
colomon: what niecza is doing = subst ignores zero-length matches | 02:40 | ||
colomon: I guess there are three choices here. Ignore zero-length matches alltogether (niecza), use exactly one zero-length match (nom), use arbitrarily many (infinite loop) | |||
colomon: I suspect I was thinking of the zero-infinity rule when I set niecza's behavior | 02:41 | ||
benabik: it's not related at all to ltm | |||
benabik: <ws> is supposed to match zero width at the edge of words | |||
niecza: say ?("a+b" ~~ /a <.ws> '+' <.ws> b/) | 02:42 | ||
p6eval | niecza v10-34-gb08643d: OUTPUT«Bool::True» | ||
sorear | that is ws' design function | ||
it is designed to DWIM "optional whitespace" in grammars | |||
soh_cah_toa: if you want to match one space of any kind, use \s. If you want to match a positive number of spaces, use \s+. | 02:43 | ||
soh_cah_toa: <.ws> is mostly for parsing programming languages | |||
soh_cah_toa | sorear: right. i was trying to use that to add a space in the replacement string of a substitution which, obviously, makes no sense ;) | 02:44 | |
sorear | soh_cah_toa: I'd like to know what you were thinking at the tiem. | ||
soh_cah_toa | sorear: something like "foobar" ~~ s/oo/oo \s/ | 02:45 | |
sorear | you can just use s/oo/oo / | ||
you don't even need \x20 | |||
soh_cah_toa | sorear: well, not without :ss, right? | 02:46 | |
or does :ss not default for substitutions? | |||
sorear | soh_cah_toa: huh? :ss has nothing to do with this | ||
02:46
wolfman2000 joined
|
|||
soh_cah_toa | sorear: adding space in a regex doesn't add a literal space unless sigspace is used | 02:46 | |
sorear | soh_cah_toa: s/(this is a regex)/(this is a literal string)/ | 02:47 | |
soh_cah_toa | sorear: ah, i see | ||
sorear | soh_cah_toa: write s[regex] = 'literal string' if it makes you feel better | ||
regexes are only used for matching, not constructing replacements | |||
soh_cah_toa | oh yeah, i forgot about that new syntax | ||
sorear: has regexes always been like that? in p5 too? i can't believe i've never realized until now | 02:48 | ||
wow, that's a total noob mistake :\ | 02:49 | ||
sorear | soh_cah_toa: yes, the right side of s/// has never been a regex | ||
in Perl 5 it's essentially a double quoted string | |||
soh_cah_toa | i guess i never knew that b/c p5 tends to blur the lines between strings and regexes | ||
sorear | Perl 5 even makes it more confusing because you have to write s/(\d)\1/$1/ | 02:50 | |
on the left side, a backreference is \1, on the right it's $1 | |||
soh_cah_toa | yeah | 02:52 | |
Tene | sorear: you can use $1 in regex for backreference. | 02:53 | |
at least, I've done it often, and it seems to work in tests. perlre says you should use \1 though. | 02:54 | ||
03:08
_jaldhar left
03:10
jaldhar joined
04:03
alvis left,
ggoebel left
04:12
soh_cah_toa left,
envi joined
04:38
kaleem joined
04:56
dual joined
05:16
sftp left
05:35
koban joined
06:05
quester_ joined
|
|||
quester_ | perl6: say "X" x 22 | 06:07 | |
p6eval | pugs, rakudo af0d2e, niecza v10-34-gb08643d: OUTPUT«XXXXXXXXXXXXXXXXXXXXXX» | ||
quester_ | perl6: say "X" x 22.0 | ||
p6eval | rakudo af0d2e: OUTPUT«(timeout)» | 06:08 | |
..pugs, niecza v10-34-gb08643d: OUTPUT«XXXXXXXXXXXXXXXXXXXXXX» | |||
06:10
PacoLinux left
|
|||
quester_ | Rakudo bug? FWIW, I found this while tracking down why the first example in Chapter 3 of Using Perl 6 no longer works; it hangs up at the line printf $format, .key, 'X' x ($unit * .value); apparently due to $unit being a Rat | 06:12 | |
snarkyboojum | quester_: looks like it - shouldn't give a 'maximum recursion depth exceeded' imho | 06:13 | |
sorear | odd bug | ||
snarkyboojum | b: say "X" x 22.0 | 06:14 | |
p6eval | b 1b7dd1: OUTPUT«XXXXXXXXXXXXXXXXXXXXXX» | ||
snarkyboojum | used to work | ||
nomgression :) | |||
quester_ | Yes, that's what it looks like. Changing it to "X" x 22.0.Int is a workaround. | 06:18 | |
06:34
SHODAN joined
|
|||
snarkyboojum | quester_: log it! | 06:37 | |
06:39
wamba joined
|
|||
snarkyboojum | I wonder if it has anything to do wit 'multi infix:<x>($s, $n) { $s.Stringy x $n.Numeric }' | 06:42 | |
with* | |||
06:44
grondilu joined
|
|||
grondilu failed compiling rakudo: pastebin.com/fQ9W6e36 | 06:45 | ||
:( | 06:46 | ||
sorear | snarkyboojum: seems very likely | 06:49 | |
06:49
koban left
|
|||
sorear | grondilu: Try again. | 06:49 | |
quester_ | snarkyboojum: Yes, it does. I changed it to ... $n.Int and recompiled and "X" x 22.0 now works. Um, how would I "log it"...? | ||
snarkyboojum | I think just email [email@hidden.address] | 06:50 | |
grondilu | sorear: after a pull? | ||
sorear | grondilu: | ||
no | |||
maybe try updating gcc | |||
quester_ | snarkyboojum: Ah, so. Thank you. | ||
grondilu | oh | ||
06:50
molaf joined
|
|||
sorear | the error you have indicates a gcc bug, hardware failure, (or possibly OS problem) | 06:51 | |
compiler crashes are never the fault of your code | |||
grondilu | my gcc is 4:4.6.1-2 and the most recent available in my Debian repo is 4:4.6.1-3. I doubt that's worth updating, is it? | 06:52 | |
sorear | check the changelog | ||
grondilu | ok, I'll do that | 06:53 | |
sorear | also you should try the build again | 06:54 | |
if it fails twice in the same place, it's not a hardware problem | 06:55 | ||
snarkyboojum | can I ask a dumb question - what are all these Str:D types in core rakudo and EnumMap:D: etc? | 06:56 | |
sorear | defined | ||
snarkyboojum | in method signatures etc | ||
oic | |||
sorear | it's kind of like Str $x where *.defined | ||
mberends | grondilu: have you tried 'make install' instead of 'make install-dev' ? | ||
snarkyboojum | dang - when did that happen - does it check for definedness or something? | 06:57 | |
nice | |||
sorear | but much faster and semantically lower level | ||
snarkyboojum | v. cool | ||
grondilu | mberends: no | ||
sorear waits for grondilu's result on "just try it again, same way" | 06:58 | ||
grondilu | the compiling actually fails before the make, at the configure. I have no idea why it does compile suffs at this stage, btw. | ||
sorear | grondilu: configuring Rakudo will download and compile Parrot automatically | 06:59 | |
grondilu | ~ /j perl | 07:07 | |
oops | |||
mberends | grondilu: to eliminate some possible problems, try cloning Rakudo again into separate directory and try perl Configure.pl --gen-parrot there. | 07:08 | |
07:09
Trashlord joined
|
|||
grondilu | instead, isn't there a "make clean" command or something? | 07:10 | |
grondilu is quite low on disk and doesn't want to waste space | |||
TiMBuS | git clean | 07:11 | |
(dont do this) | |||
actually, since you seem to be doing that from scratch | 07:12 | ||
git clean is probably a good idea | 07:13 | ||
snarkyboojum | grondilu: you can always do a rm -rf parrot/; make clean; perl Configure.pl --gen-parrot; make install or similar | ||
TiMBuS | you can do thae above, or do git clean -fdx which resets the entire tree to a clena git clone | 07:14 | |
grondilu | snarkyboojum: there is no makefile in my directory :-/ | ||
TiMBuS | hence | ||
grondilu will just do a git clean | 07:15 | ||
mberends | grondilu: git clean -dfx | ||
grondilu will just do a git clean -dfx | |||
well, that was fast. It just removed nqp/ and parrot/ | 07:16 | ||
snarkyboojum | there won't be a Makefile till you've run Configure.pl | ||
mberends | grondilu: there is a chance that some of your memory may be intermittently unreliable, thus causing corruptions to you C compiler. Those faults can appear randomly, depending on what else was already occupying RAM. | 07:17 | |
snarkyboojum | could also be solar flares :) | ||
grondilu | mberends: I tried to compile twice, as suggested above. Failed twice. | 07:18 | |
TiMBuS | the angry arm of the sun reaches out and touches your ram. | 07:19 | |
07:19
hanekomu joined
|
|||
TiMBuS | well if a git clean fails, something is pretty wrong | 07:19 | |
sorear | I thought that solar flares didn't result in particles of sufficiently high energy to penetrate magnetosphere, atmosphere, and roof | ||
mberends considers getting a tinfoil hat | 07:20 | ||
sorear | (they can cause serious damage to satellites and power lines though) | ||
my head is already shielded by >1cm of bone, I don't think tinfoil would help at all | 07:21 | ||
TiMBuS | the sun is hot and angry and could just murder you if it wants to[1]. 1: that scene in fantasia where the sun melts jack frost. | ||
snarkyboojum | I wear a Magneto style helmet at all times | 07:22 | |
TiMBuS | further evidence: that angry sun in super mario that keeps swooping at you | ||
07:25
espadrine left
|
|||
quester_ | Submitted RT [perl #100552] "Recursion depth exceeded in x operator". Good night (or $localtime of your choice) everyone. | 07:25 | |
07:26
quester_ left
|
|||
mberends | grondilu: if flaky RAM may be your problem, a temporary workaround might be to re-start the computer and change the programs you have resident before you run perl Configure.pl. That way the C compiler will use different hardware memory addresses. Have other programs ever experienced random faults on your computer? Another approach is to install another OS on a LiveUSB: Debian and Ubuntu are good at that. | 07:29 | |
07:30
alvis joined
|
|||
grondilu | Other random faults on my computer? No. | 07:31 | |
mberends has used an 8GB MicroSD card as system drive for the past month. | |||
snarkyboojum | mberends: was that dog slow? | ||
mberends | snarkyboojum: the speed is well matched to the user ;) | 07:32 | |
snarkyboojum | mberends: :P | ||
mberends | snarkyboojum: RAM caches so much, that there are only a few delays | 07:33 | |
07:34
grondilu left
|
|||
snarkyboojum | aww - hope he got it working | 07:34 | |
mberends will visit a cable provider today to consider an 80Mbit internet connection for €20/month | 07:35 | ||
cotto | mberends, see if you can get me one of those too. If I could get that price, figuring out where to get Euros wouldn't be a big deal. | 07:38 | |
mberends | cotto: I'll ask. NY is a bit beyond southern .NL, though ;) | 07:40 | |
07:43
pjcj_ left
|
|||
cotto | mberends, so there's probably no hope for Redmond, WA | 07:45 | |
07:46
DarthGandalf left
|
|||
mberends | cotto: move over here, on this street there are several houses for sale ;) | 07:47 | |
07:48
koban joined
07:49
pjcj joined
|
|||
mberends | The big cable push is to get subscribers for the premium HD sports TV channels, which do not interest me. The flagship contract is €60/month, no thanks. | 07:49 | |
07:52
im2ee joined
|
|||
im2ee | Hiho! :) | 07:53 | |
07:59
flussence left,
flussence joined
|
|||
jnthn | morning, #perl6 | 08:03 | |
moritz | good morning | 08:06 | |
TiMBuS | multi infix:<x>($s, $n) { $s.Stringy x $n.Numeric } -> multi infix:<x>(Str:D $s, Int:D $repetition) oh, lol | 08:14 | |
moritz | oh | 08:15 | |
TiMBuS | that should uh. probably be $n.Int? unless these days "string" x 1.5 returns "stringstr" | 08:16 | |
moritz | TiMBuS: you're correct. I'm testing the fix. | ||
08:17
mj41 joined
|
|||
moritz | nom: say 'string' x 1.5 | 08:17 | |
will recursive infinitely, I think | |||
p6eval | nom af0d2e: OUTPUT«(timeout)» | ||
TiMBuS | b: say 'string' x 1.5 | ||
p6eval | b 1b7dd1: OUTPUT«string» | ||
TiMBuS | oh come on | ||
in this modern day and age i gotta manually halve my strings | 08:18 | ||
moritz | .oO( 'long string' x pi ) |
08:20 | |
jlaire | .oO( '-' x 1i eq '|' ) |
08:21 | |
TiMBuS | web.archiveorange.com/archive/v/5H3...uMTs2ydpWS see now heres a valid reason to combine strings and math. if only perl6 had the foresight for this usage. | 08:24 | |
moritz | nom: say 0.6.round(0.5) | 08:25 | |
p6eval | nom af0d2e: OUTPUT«(timeout)» | ||
TiMBuS | laughed | ||
best solution: stars = float(str(round(float(star_sum)/num_raters,1)).split(’.')[0]) + {’0′:0, ‘1′:0, ‘2′:0, ‘3′:0.5, ‘4′:0.5, ‘5′:0.5, ‘6′:0.5, ‘7′:0.5, ‘8′:1.0,’9′:1.0}[str(round(float(star_sum)/num_raters,1)).split(’.')[1]] | 08:26 | ||
08:27
pmichaud left,
bbkr left
08:28
bbkr joined,
pmichaud joined
08:30
mj41 left
|
|||
moritz | jnthn++ # iterator performance improvements | 08:31 | |
mux wonders how perl6 iterators look like | |||
moritz: any link to point me at? | |||
en.wikibooks.org/wiki/Perl_6_Progra...#Iterators ? | 08:32 | ||
TiMBuS | i tried to find the perl6 iterator, but every time i peeked, it moved a step away. | ||
sorear sleep | |||
mux | sorear: g'night | ||
08:36
mj41 joined
08:41
sayu joined,
hanekomu left
|
|||
snarkyboojum | should you be able to call MAIN() manually? It seems that it should be treated semi-specially by the compiler at runtime - Rakudo let's you run it manually. | 08:42 | |
I guess it's just a sub | 08:43 | ||
in my case | |||
dalek | ast: 7f5a2ae | moritz++ | integration/advent2009-day04.t: eval-safeguard another failing dispatch |
||
moritz | snarkyboojum: yes, it's a sub | 08:44 | |
08:44
daxim joined,
dakkar joined
|
|||
bbkr_ | rakudo: nextsame # MAIN sub :) | 08:45 | |
p6eval | rakudo af0d2e: OUTPUT«No dispatcher in scope in block <anon> at /tmp/A3VthrUdgS:1 in <anon> at /tmp/A3VthrUdgS:1» | ||
bbkr_ | hm, fixed? last time it segfaulted :) | ||
moritz | yep, surprisingly sane | ||
hey, that would be a good name or tagline for a blog | 08:46 | ||
surprisinglysane.perl6.org :-) | |||
08:48
Bzek joined,
im2ee left
|
|||
snarkyboojum | surprisinglyinsane.perl6.org | 08:50 | |
08:51
mj41 left
08:54
sayu left
09:00
sirmacik left
|
|||
Woodi | rakudo: class A { has %!h = { 'a' => 1, 'b' => 2 }; my @a = %!h.keys } | 09:04 | |
p6eval | rakudo af0d2e: OUTPUT«Can only use repr_get_attr_obj on a SixModelObject in <anon> at /tmp/Pa9g1uHMSo:1 in block <anon> at /tmp/Pa9g1uHMSo:1 in <anon> at /tmp/Pa9g1uHMSo:1» | ||
Woodi | rakudo: class A { my %h = { 'a' => 1, 'b' => 2}; my @a = %h.keys } | ||
p6eval | rakudo af0d2e: ( no output ) | ||
Woodi | 'my' version works... should be ? class is just package ? | 09:05 | |
jnthn | hm, should probably catching using %!h outside of a place with self at compile time... | 09:09 | |
And yes, sure the my version works. Aside from when it's a hash constructor, { ... } always implies a lexical scope. | 09:10 | ||
09:11
jlaire left
|
|||
Woodi | [%@]!h with initialization and usage outside methods do not work, posted rt. | 09:11 | |
$ work | |||
jnthn | Well, initialization is fine, but you're not really assigning. | 09:13 | |
Usage in the class body should always be detected and complained about though. | |||
Woodi | i have use case where i need code in class body: method generation from hash keys | 09:14 | |
that was 'clousere' in perl5 | |||
09:15
jlaire joined
09:16
masak joined
|
|||
masak | good greetings, channel of #perl6. | 09:16 | |
phenny | masak: 02 Oct 22:33Z <sorear> tell masak I have a new crazy dream: p5 in p6 using the macro infrastructure, probably with a few ad-hoc extensions. | ||
masak is intrigued | |||
...but it might also be a case of overestimating macros ;) | 09:17 | ||
jnthn | Woodi: Yes but you can't use attributes there as they exist per instance and in the class body you don't have one. | ||
Woodi: What's wrong with "my"? | 09:18 | ||
masak | sorear: by the way, 3q for telling us what Asian sound-based abbreviations peeve you out :P | ||
三Q | 09:19 | ||
I also like the name "Surprisingly sane" for a blog post. ;) | |||
Woodi | jnthn: 'my' in class body do not look object-like :) | 09:20 | |
probably i should use package varible | 09:22 | ||
but it mess with class names... | |||
jnthn | Woodi: What are you trying to do, write Java in Perl 6? :) | ||
The point is whether something solves the problem at hand, not if it looks "object-like" | 09:23 | ||
Unless you want the thing to be visible to the outside world, using "our" is scoping it too widely. | |||
Woodi | rakudo: package A { class A {} } | 09:24 | |
p6eval | rakudo af0d2e: ( no output ) | ||
Woodi | it works ok. i got problems before with 'package Name;'... | ||
masak | what kind of problems? | 09:27 | |
09:27
PacoLinux joined
|
|||
Woodi | rakudo: package A { my %h = { 'a' => 1, 'b' => 2 }; class A {for %h.keys -> $n {say $n} } } | 09:27 | |
p6eval | rakudo af0d2e: OUTPUT«ab» | ||
jnthn | nom: package A; | ||
p6eval | nom af0d2e: OUTPUT«===SORRY!===This appears to be Perl 5 code. If you intended it to be Perl 6 code, please use a Perl 6 style package block like "package Foo { ... }", or "module Foo; ...". at line 1, near ""» | ||
Woodi | this looks OK | ||
09:27
orafu left
|
|||
jnthn | masak: Those problems maybe ;) | 09:28 | |
09:28
orafu joined
|
|||
Woodi | b: package A { my %h = { 'a' => 1, 'b' => 2 }; class A {for %h.keys -> $n {say $n} } } | 09:28 | |
p6eval | b 1b7dd1: OUTPUT«===SORRY!===Illegal redeclaration of symbol 'A'» | ||
jnthn | Oh. :) | ||
Woodi | probably i write module for b... | ||
jnthn | Yeah, b didn't really do nested packages. | ||
Or at least, not so well. | |||
Woodi | yes. i think today i will stick to 'my' version. later will port to nom :) | 09:29 | |
masak: problem was that i used S11 not S10... looks in Perl6 package can contain few modules, so lvl up from v5 :) | 09:32 | ||
09:33
am0c^ left
|
|||
masak | Woodi: I don't quite follow you there. | 09:34 | |
Woodi | masak: looks class eq package in perl6. i think in perl5 package is near the same as module | 09:36 | |
no, class eq module in v6 | |||
masak | more like class ⊂ module | 09:37 | |
Woodi | hmm | ||
jnthn | Classes can do what modules can, and then add some stuff. | ||
09:38
sirmacik joined
|
|||
moritz | nom: say ClassHOW ~~ ModuleHOW | 09:38 | |
p6eval | nom af0d2e: OUTPUT«Could not find sub &ModuleHOW in block <anon> at /tmp/x_afRHT5L_:1 in <anon> at /tmp/x_afRHT5L_:1» | ||
Woodi | ok, but from package developer (syntactically) module and class is the same | ||
moritz | nom: module A { }; say A.HOW | ||
p6eval | nom af0d2e: OUTPUT«Method 'gist' not found for invocant of class 'Perl6::Metamodel::ModuleHOW' in sub say at src/gen/CORE.setting:4953 in block <anon> at /tmp/2IZ8wpM4sT:1 in <anon> at /tmp/2IZ8wpM4sT:1» | ||
09:39
pernatiy left
|
|||
Woodi | package developer ppint of view* | 09:39 | |
whatever :) | |||
moritz | nom: say Perl6::Metamodel::ClassHOW ~~ Perl6::Metamodel::ModuleHOW | ||
p6eval | nom af0d2e: OUTPUT«Could not find symbol 'Perl6::Metamodel::&ClassHOW' in sub die at src/gen/CORE.setting:416 in block <anon> at /tmp/o9fTvqAXtB:1 in <anon> at /tmp/o9fTvqAXtB:1» | ||
09:39
replore left
|
|||
jnthn | moritz: Those are all in Metamodel:: | 09:39 | |
Woodi goes to vim | |||
jnthn | moritz: However, that isn't true. | ||
moritz: Because it's factored as roles, not inheritance. | 09:40 | ||
09:40
pernatiy joined
|
|||
jnthn | class composes all the same roles that module does, and then some more :) | 09:40 | |
masak | roles++ | ||
Woodi: I'm not sure what statement you were trying to approximate, but I suspect such an assertion might hinder more than it helps. | |||
jnthn | Also, I guess I'm going to have to make meta-objects pretend they're Mu, aren't I... :S | ||
masak | Woodi: a class is not just another module, it's a very special type of module. | ||
jnthn: preferably. | 09:41 | ||
unless there's a compelling reason not to. | |||
jnthn | masak: Level purity :P | ||
masak: Thing is, we can't really make it true all levels down | |||
tadzik | good morning #perl6 | 09:42 | |
jnthn | masak: Which means even if I fix it for .HOW, then .HOW.HOW will still exhibit the same kind of issue. | ||
tadzik | nom: #= HAI CAN HAS STDIO?  class C { }; say C.WHY | ||
p6eval | nom af0d2e: OUTPUT«Block::Declarator<-105050119877563243>» | ||
tadzik | nom: #= HAI CAN HAS STDIO?  class C { }; say C.WHY.content | ||
p6eval | nom af0d2e: OUTPUT«HAI CAN HAS STDIO? » | ||
tadzik | there we are | ||
it should stringify to the content, I agree on that | |||
jnthn | tadzik: Yeah, preferably. | 09:43 | |
masak | good moritz tadzik | ||
09:43
jerome_ left
|
|||
tadzik | good morning Carl | 09:43 | |
09:44
jerome_ joined
|
|||
masak | tadzik: did you put an umlaut on my last name somewhere? | 09:44 | |
tadzik | masak: yep | ||
masak | why? :) | ||
tadzik | masak: in the list of authors on the Perl 6 book ebook | ||
because it belongs there | |||
masak looks | |||
tadzik | it was on the cover | ||
moritz | jnthn: fwiw I eval()ed the compile time dispatch failures for rakudo/optimizer | 09:45 | |
tadzik | masak: github.com/perl6/book/downloads/ | ||
heh, seems that Calibre stripped it down anyway | |||
maybe it's better inside, if that even went inside the .mobi and not inside this silly metadata.opf | |||
masak | I was just wondering because in the 2011.07 version, the umlaut is on the wrong 'a'. :/ | 09:46 | |
so someone meant to be considerate, and it backfired. | |||
jnthn | moritz: Great...how do the tests look now? | 09:47 | |
moritz | jnthn: two error reporting tests fail | ||
jnthn | moritz: All win apart from undef.t? | ||
Ah | |||
Legitimately? | |||
tadzik | masak: umlaut on the wrong a would result in 'masaak', right? | ||
moritz | well, one of them (for single dispatch) wants the parameter name in the error message | 09:48 | |
jnthn | :S | ||
moritz | doesn't sound too wrong | 09:49 | |
jnthn | Guess we can do it. | ||
Not sure how's best yet. | 09:50 | ||
moritz | but IMHO it wouldn't hurt to relax those tests for compile time checking | ||
masak | tadzik: well, the umlaut on 'a' in Swedish makes it a completely different vowel, which to your Polish ears would make my name sound like 'mesak'. | 09:53 | |
moritz | another wants the nominal type of the parameter to appear | ||
tadzik | oh | ||
masak | and yes, putting the umlaut on the wrong vowel would make it come out like 'masek'. :/ | ||
moritz | and aa would be more like a long 'o' | ||
09:56
envi left
|
|||
masak | yeah. except I see that spelling more in Norway and Denmark. | 09:59 | |
we have it as 'å'. | |||
moritz | I know aa the ASCII transliteration of å | 10:10 | |
funny thing is, å and thus aa sorts after z in Norwegian | 10:11 | ||
jnthn | Same in Swedish, iirc | 10:17 | |
Or at least in the dictionary I think they come at the end. | |||
mberends | whether å sorts after z is a collation matter; there are hundreds of collations, some accent sensitive and others accent insensitive. | 10:22 | |
rakudo: say 'å' > 'z'; | 10:23 | ||
p6eval | rakudo af0d2e: OUTPUT«Bool::False» | ||
moritz | well, most languages have a kinda stanard collation | ||
and the nn and nb colation says å comes last | |||
nom: my $a = [1, 2, 3]; .say for @$a | 10:25 | ||
p6eval | nom af0d2e: OUTPUT«123» | ||
moritz | jnthn++ | ||
dalek | ast: 8a543d3 | moritz++ | S (4 files): rakudo unfudging |
10:26 | |
moritz | rakudo: subset Pod6::Text of Str; say 'markdown' ~~ Pod6::Text | 10:32 | |
p6eval | rakudo af0d2e: OUTPUT«Bool::True» | ||
dalek | ast: 1f36ea3 | moritz++ | S12-subset/subtypes.t: test that subet with :: in the name works (RT #89708) |
10:34 | |
kudo/nom: eb8d302 | moritz++ | src/core/Stringy.pm: string repetition should coerce to Int, not just Numeric. TiMBuS++ |
10:35 | ||
moritz | rakudo: my @odd = 1,3,5 ... 8; say @odd[^4] | 10:37 | |
p6eval | rakudo af0d2e: OUTPUT«(timeout)» | ||
tadzik | rakudo: my @odd = 1,3,5 ... *; say @odd[^4] | 10:38 | |
p6eval | rakudo af0d2e: OUTPUT«1 3 5 7» | ||
tadzik | odd | ||
moritz | since it has a non-* limit, the sequence generator think it's a finite sequence | ||
tadzik | aye | ||
moritz | and the array assignment tries to reify it all | ||
BOOM | |||
rakudo: my $s = sub foo { return sub is rw { 1; } }; $s.().WHAT.say | 10:39 | ||
p6eval | rakudo af0d2e: OUTPUT«===SORRY!===Malformed block at line 1, near "rw { 1; } "» | ||
moritz | std: my $s = sub foo { return sub is rw { 1; } }; $s.().WHAT.say | ||
p6eval | std 8b331d2: OUTPUT«===SORRY!===Malformed block at /tmp/PifY0rlWaT line 1:------> my $s = sub foo { return sub is ⏏rw { 1; } }; $s.().WHAT.say expecting any of: routine_def traitParse failedFAILED 00:01 122m» | ||
dalek | ast: b518730 | moritz++ | S12-class/augment-supersede.t: test for RT #76600, augmenting a class should not re-apply roles |
10:44 | |
ast: 439f6e0 | moritz++ | S12-subset/subtypes.t: test for RT #76834 |
10:47 | ||
jnthn | moritz: btw, I'm curious if the iterator improvements help mandelbrot. If you have a chance to try, would be interested to see if it makes a difference. | 10:54 | |
moritz: Note I didn't merge that change into optimizer yet. | |||
moritz | jnthn: 44.4s on nom | 10:59 | |
as opposed to about 49s before | |||
tadzik | I get plenty of spectest failures | 11:03 | |
gist.github.com/1258894 | |||
jnthn | nom: say (16 * 60 + 14) / 44.4 | 11:06 | |
p6eval | nom eb8d30: OUTPUT«21.9369369369369» | ||
moritz | tadzik: looks like your copy of roast is stuck | 11:09 | |
tadzik | I'll give it a look | ||
oh, indeed, thanks | |||
23 commits behind | |||
11:09
itz__ left
|
|||
jnthn | .oO( mmm...slow roast... ) |
11:10 | |
11:11
itz joined
|
|||
masak .oO( it's rusted in place ) | 11:12 | ||
in Swedish, the verbs for "roast" and "rust" are homonyms. | 11:13 | ||
tadzik | are there any other evil ways for setting an attribute than nqp::bindattr? | 11:14 | |
flussence | weird, I had the same stuck roast problem today. | 11:16 | |
tadzik | that's what you get when you're adding tests and suddenly you fall asleep :) | ||
11:17
SHODAN left
|
|||
masak | tadzik: maybe have a separate roast checkout where you add tests? | 11:17 | |
moritz | tadzik: rw accessors, methods :-) | 11:18 | |
tadzik | masak: I used to, but figured that I don't need two separate repos. Also, it's nice to just 'make spectest' and run the tests before you push them | ||
flussence | oh, my bad, it was because I was messing around with my rebuild script to not run `make spectest`. The makefile usually handles the pull itself there. | 11:19 | |
tadzik | moritz: keyword 'evil' :) I'm trying to eliminate methods as 'set_docs', 'set_docee' before someone tries to use them | ||
11:19
SHODAN joined
|
|||
moritz | tadzik: make them private? | 11:21 | |
tadzik | moritz: how am I going to call them then? :) | ||
masak | sotto voce :P | 11:22 | |
tadzik | see traits.pm:82 | ||
dalek | kudo/nom: 356fe7a | tadzik++ | / (2 files): Stringify Pod::Block::Declarator to its content |
11:25 | |
11:25
jerome_ left
11:32
SHODAN left
11:34
SHODAN joined
11:40
Patterner left,
replore_ joined
11:42
Psyche^ joined,
Psyche^ is now known as Patterner
11:56
mishin joined,
mishin left,
mberends left,
snarkyboojum left
11:57
snarkyboojum joined,
snarkyboojum left,
snarkyboojum joined,
pernatiy left
11:59
mberends joined
12:00
jerome_ joined
12:02
woosley joined,
koban left
12:19
ggoebel joined
|
|||
masak suddenly realizes that it's the author of HPMoR who wrote yudkowsky.net/rational/the-simple-truth | 12:22 | ||
12:25
bluescreen10 joined,
tokuhiro_ joined
12:27
colomon left
12:38
donri left,
leprevost joined
|
|||
moritz | I never can remember when I should use "but" and when I should use "does" when mixing in stuff into an object | 12:40 | |
is there any mnemonic or so? | |||
masak | "but" works like "does", BUT it clones the object first :) | 12:43 | |
moritz | :-) | 12:44 | |
I'll try that | |||
masak | also, I find it makes absolutely no sense to claim that '42 does Something', whereas '42 but Something' feels perfectly fine. | 12:47 | |
moritz | only if you read it as a declaration | 12:48 | |
masak | no, I read it as an imperative statement. | ||
or simply as an operator. | 12:49 | ||
[Coke] | rakudo: say 314+433+5 | 12:50 | |
p6eval | rakudo 356fe7: OUTPUT«752» | 12:51 | |
[Coke] | rakudo: say 314+433+5, " tickets" | ||
p6eval | rakudo 356fe7: OUTPUT«752 tickets» | ||
moritz | [Coke]: btw my search shows the number of tickets in the title | ||
on the RT homepage, simply click on the 'perl6' queue link | |||
says Found 752 tickets | 12:52 | ||
[Coke] | moritz: yes, but I start on the home page, as I have access to 4 different queues. | ||
wow, the qpsmtpd queue is smaller, but even less well tended. | 12:53 | ||
moritz: I also have a more tractable list of 265 tickets that I look for things to close in. Which reminds me... | |||
aloha, seen robrt? | 12:54 | ||
aloha | [Coke]: Sorry, I haven't seen robrt. | ||
12:54
GlitchMr joined
|
|||
[Coke] | rt question: I'm trying to search by "things that haven't been updated since may 1st". I've added | 12:55 | |
12:55
grondilu joined
|
|||
[Coke] | AND Updated < '2011-05-01' | 12:55 | |
grondilu has finally managed to compile rakudo :) | |||
[Coke] | to the search criteria, but am still getting things that were updated yesterday. any pointers? | ||
grondilu: \o/ | 12:56 | ||
grondilu | :) | ||
masak | grondilu: welcome to the circle of erudite rakudites! :) | 12:57 | |
grondilu | thanks. Now all I have to do is to read and read again the specs. Hopefully I'll get to master Perl6 before I die. | 12:58 | |
[Coke] | aloha, seen obra? | ||
aloha | [Coke]: obra was last seen in #perl6 54 days 9 hours ago leaving the channel. | ||
12:58
pernatiy joined
13:00
colomon joined
|
|||
[Coke] opens a ticket with [email@hidden.address] | 13:03 | ||
[Coke] also cannot search for "not like testsneeded" - it gets confused if a ticket has more than one tag. | |||
masak | grondilu: a tip from someone who has read and re-read the spec: it helps to try things out by writing code. either while you're reading the spec, or shortly thereafter. just write something you enjoy writing. | 13:07 | |
13:09
DarthGandalf joined
13:17
xPixelDesignx joined
13:18
woosley left
13:21
envi_ joined
|
|||
grondilu | hum... 'make test' exited with 'make: *** [CORE.setting.pbc] Erreur 137' | 13:23 | |
I guess it's not critical as it is only a test, right? | |||
masak | uhm. | ||
could you nopaste that whole make output, please? | 13:24 | ||
grondilu | masak: 'nopaste'? | 13:25 | |
masak | gist.github.com/ for example. | 13:26 | |
somewhere you can dump a bit of text and link to it. | |||
it's called 'nopaste' because it's used instead of pasting large amounts of text to the channel. :) | 13:27 | ||
grondilu | pastebin.com/6R4Q5mp6 | ||
I thought you meant 'could you not paste...' | 13:28 | ||
13:28
jaldhar left,
jaldhar joined
13:29
kaleem left
13:31
PacoLinux left
13:32
grondilu left,
_jaldhar joined
13:33
jaldhar left
13:35
_jaldhar left,
_jaldhar joined
13:39
wamba left
13:41
_jaldhar left
|
|||
masak | hm, I don't see the error message in that paste :/ | 13:42 | |
13:42
SHODAN left
13:45
_jaldhar joined
13:46
sftp joined
13:48
PacoLinux joined
13:50
_jaldhar left
13:52
risou_awy is now known as risou
13:53
PacoLinux_ joined
13:58
_jaldhar joined
14:01
xPixelDesignx left
|
|||
daxim | nopaste is a dumb word. when I'm emperor of the world, I'm going to abolish it in favour of "paste service" | 14:02 | |
14:05
wolfman2000 left
|
|||
masak | done! | 14:06 | |
here at #perl6, your emperor-of-the-world wishes come true early! :) | |||
the correct term is now "paste service". | 14:07 | ||
jnthn | Please can you paste service me a rationale for this? :P | ||
masak | jnthn: don't look at me, I'm just following the emperor's orders... | 14:08 | |
sjn | daxim: what kind of pastes will you be serving then? :) | ||
14:10
MayDaniel joined,
MayDaniel left,
MayDaniel joined
|
|||
masak | of course, the word carries fond memories for me from my early Pugs debugging days... irclog.perlgeek.de/perl6/2005-03-18#i_-760321 | 14:10 | |
moritz | wohoo, a line with a negative ID | 14:11 | |
masak | yeah. it's that old. | ||
consider this bug that I found back in 2005 a very early premonition of Rakudo's lexpad-related bugs. | 14:12 | ||
moritz | ... and the pastebot domain is now for sale :( | ||
masak | <autrijus> so obviously the pad is broken | ||
<masak> ah, obviously :) | |||
haha, that 2005 masak is sooo out of his depth! | 14:13 | ||
moritz | masak: you seem to have a fondness for bugs that involve broken pads :-) | ||
14:13
huf left
|
|||
masak | *they* have a fondness for *me*! | 14:13 | |
jnthn | Was that "obviously" as in, what "clearly" normally means in math proofs? ;) | ||
masak | jnthn: it was "obviously" as in "wow, I'm talking with autrijus!" | 14:14 | |
jnthn | :) | ||
masak | it feels odd to read that and realize how much has happened since then in Perl 6 land. | 14:15 | |
14:18
huf joined
|
|||
colomon | anyone know how to open a file for writing in Niecza? open($filename, :w) doesn't seem to do it. | 14:18 | |
masak | hm, never had that use case. | 14:19 | |
colomon: seems it doesn't know about the :w option: github.com/sorear/niecza/blob/mast...ting#L2062 | 14:21 | ||
colomon | masak: kind of looks like it doesn't know about writing at all? | 14:22 | |
hurumph | |||
14:22
im2ee joined
|
|||
masak | mberends: very interesting to read your tetris code! mberends++ | 14:23 | |
im2ee: dobradzien! :P | 14:24 | ||
masak overgeneralizes language | |||
ingy hugs the 2005 masak | 14:26 | ||
14:28
huf left
14:29
huf joined
|
|||
masak , 6 years later, feels a seemingly acausal warmth weave through him | 14:29 | ||
14:30
MayDaniel left
|
|||
colomon tries to hack in open :w mode.... | 14:31 | ||
14:32
alester joined
|
|||
colomon | huh. got it to open the file, but it doesn't write to it... | 14:32 | |
sorear: ping? | 14:34 | ||
flussence | colomon: try doing .close manually, might be the same problem as rakudo... | 14:35 | |
colomon | flussence: I suspect the problem is say doesn't know how to handle a filehandle | ||
flussence | oh | 14:36 | |
colomon | I can sort of see what's going on with the treader definition, but not how it all fits together. Makes implementing twriter hard. | 14:37 | |
14:37
shinobicl joined
|
|||
colomon | afk # driving home from service center | 14:38 | |
14:38
colomon left
|
|||
masak | that wouldn't be the paste service center, would it? :P | 14:44 | |
14:52
PacoLinux left
|
|||
masak | found an old quote by audreyt: "the line between silly jokes and serious realities in p6l is so blurred it's a fog" | 14:59 | |
also from 2005 :) | |||
15:01
mishin joined
|
|||
im2ee | masak, hej! :) | 15:01 | |
15:03
daxim left
15:04
daxim joined
|
|||
sorear | good * #perl6 | 15:08 | |
mberends | masak: thanks :) I hope we get your system to run Gtk with Niecza soon. | 15:09 | |
good * sorear | |||
masak | *, sorear | 15:10 | |
mberends: me too. | |||
15:11
Holy_Cow joined
|
|||
masak | mberends: interesting how you're capitalizing your subroutine names. I'm guessing that's a .Net influence... | 15:11 | |
15:13
colomon joined
|
|||
masak | jnthn: wow, you have to see this! web.archive.org/web/20060407044836/...amodel.png | 15:14 | |
back when Perl 6 had not only Object but Class, too! | 15:15 | ||
I can happily say I grok that picture better today than I did back then. | 15:17 | ||
mostly thanks to jnthn, our demiurge :P | |||
bits of what's found on the left feels like things that ended up in our HOWs. | 15:18 | ||
jnthn | HOW is the metaverse, yes :) | 15:19 | |
That diagram looks familiar :) | |||
masak | wow, and the private attr sigil was the colon. :) | 15:20 | |
jnthn | Though the Class class happily went away :) | ||
sorear | even the name dates it... | ||
im2ee | nom: say "abc".split('').join('!'); | ||
p6eval | nom 356fe7: OUTPUT«a!b!c» | ||
jnthn | hmm...it confuses me in various ways :) | 15:21 | |
masak | me too :) | ||
im2ee: consider using .comb instead, for great justice. :) | |||
TimToady | and 5 fewer characters | 15:22 | |
masak | nom: say "abc".comb.join('!') | ||
p6eval | nom 356fe7: OUTPUT«a!b!c» | ||
im2ee | masak, fantastic, thanks. :) | ||
15:24
zby_home joined
15:30
tokuhiro_ left,
risou is now known as risou_awy
15:31
risou_awy is now known as risou
|
|||
jnthn | walk & | 15:31 | |
masak | im2ee didn't ask here on the channel, so I'll ask for him: what are the current known-working ways to make use a SQL database from Perl 6? | 15:32 | |
moritz | Nil | 15:33 | |
masak | both mystifying and a bit depressing, if so. | 15:34 | |
im2ee | Hm, i have problem with log in mysql db, but i have just saw solution i p5. :) | ||
15:34
pernatiy left
|
|||
im2ee | So, i probably will use it. And i hope i'll write mysql module, or something like that, for p6 . :) | 15:35 | |
TimToady | that's the spirit | 15:36 | |
im2ee | TimToady, i'm begginer in p6, but i have a dream to become a professional. :) | 15:37 | |
TimToady | std: foo"bar" | ||
p6eval | std 8b331d2: OUTPUT«===SORRY!===Two terms in a row (listop with args requires whitespace or parens) at /tmp/3fMWyJz5tE line 1:------> foo⏏"bar" expecting any of: POST argument list bracketed infix infix or meta-infix postfix | 15:38 | |
..postfix_prefi… | |||
TimToady | im2ee: just keeping banging your head against the wall, and eventually it will start to crumble | ||
sorear | your head or the wall? | ||
TimToady | yes | 15:39 | |
I mean, Bool::True | |||
sorear | colomon: hi | ||
masak | sorear: from experience, both. | 15:40 | |
TimToady | moritz: yes, eqv should also autothread; all normal user-visible operators should autothread | ||
moritz | TimToady: and how would I compare two type objects? | 15:41 | |
TimToady | === works fine | ||
moritz | no | ||
not if one of them is Mu or Junction | |||
TimToady | *except* for Junction and Mu | ||
well, and ~~ is special | 15:42 | ||
moritz | well, how would I compare two type objects if I don't know in advance if one of them might be Mu or Junction, or not? | ||
TimToady | .isa(Junction) | ||
declare your type Any, and then you can know in advance :) | 15:43 | ||
also, we don't have to autothread undefined junctions | |||
moritz | .isa also consider subtyping, which is not always what I want | ||
TimToady | nothing much derives from Junction | 15:45 | |
and testing things for Mu is generally not a good idea | |||
~~ :(Mu:U) or some such might work | 15:46 | ||
sorear | erm, moritz is asking about *type objects* | ||
not things | |||
TimToady | yes, I know | ||
sorear | sub my_func(Mu:U $x1, Mu:U $x2) { ... ... if (???) { ... } } | ||
I recommend $x1.HOW === $x2.HOW | |||
15:47
daxim left
|
|||
TimToady | identity is determined by .WHICH, not by .HOW | 15:47 | |
which is why S03 recommends that | |||
15:47
risou is now known as risou_awy
|
|||
TimToady | also, there's the S12:1598-specced Mu:T to play with | 15:49 | |
and Mu can certainly define its own === that can decide whether to delegate to Junction or not | 15:50 | ||
there are various places to cut the gordian knot, but in the middle of the normal operators is not acceptable to me | |||
I'm fine if certain methods like .gist are on the non-autothreading side | 15:51 | ||
15:51
kaare_ joined,
shinobicl left
|
|||
TimToady | and the WH macros are certainly on that side | 15:51 | |
but the typical user is going to want === and eqv to autothread most of the time | 15:52 | ||
(in my estimation) | 15:53 | ||
I realize there aren't many typical users wandering around here just yet... :) | |||
in my head, it's really the Any type that maps most closely to what other OO languages call Object | 15:54 | ||
Mu is an outer container of concepts | |||
that don't necessarily have a one-to-one mapping to objects in the classical sense | 15:55 | ||
colomon | sorear: any thoughts on open files to write to them in niecza? I tried gist.github.com/1259443 and that seems to open a file okay, but $file.say fails silently instead of working. | 15:58 | |
sorear | colomon: you also need a TextWriter class with a say method. | 15:59 | |
the code you pasted looks fine | |||
(as long as you made the other &open a multi too) | 16:00 | ||
masak decommutes | |||
colomon | (yes, of course) | ||
16:00
masak left
16:01
espadrine joined
|
|||
colomon | Ah, I see the TextReader class now. (I really have to get my ack fixed to looking in the .setting files by default.) | 16:02 | |
sorear | I'm a little suprised it "silently failed" though | ||
colomon | If it crashed without a message, I wouldn't have noticed it. | 16:04 | |
(since it was in a .t file I was calling from prove) | |||
16:05
GlitchMr left
16:10
espadrine left
|
|||
TimToady | jnthn: re irclog.perlgeek.de/perl6/2011-10-02#i_4512490, S05:1121 already claims match on an undefined value fails | 16:17 | |
jnthn | TimToady: ah, that's the kinda comment I was looking for and somehow missed. | 16:19 | |
TimToady: Applies to backrefs too? | |||
TimToady | but use of $1 where there's only one () should probably produce a compile-time error anyway | ||
jnthn | It could probably do that, yes. | 16:20 | |
TimToady | backrefs are just normal variables, as far as that is concerned, yes | ||
jnthn | Though for now making it at least fail to match will be an improvement. | ||
TimToady | the compile error would be in the category "This can't possibly work" | 16:21 | |
jnthn | OK, I figured out how to fix it, was just a little thrown off that we've done the same in b, and wanted to be sure how it would be. I was expecting just a nom regression. | ||
TimToady | or maybe in the category, "You are a recovering Perl 5 programmer, I perceive" :) | ||
jnthn | ;) | ||
TimToady | hmm | 16:22 | |
std: /(.)\1/ | |||
p6eval | std 8b331d2: OUTPUT«===SORRY!===Unsupported use of the 1-based special form '\1' as a backreference; in Perl 6 please use the 0-based variable '$0' instead at /tmp/SyhzrylExF line 1:------> /(.)\1⏏/Check failedFAILED 00:01 120m» | ||
TimToady | std: /(.)$1/ | ||
p6eval | std 8b331d2: OUTPUT«ok 00:01 121m» | ||
TimToady | what I thought... | ||
>>todo | 16:24 | ||
sorear | niecza: /(.)\1/ | ||
p6eval | niecza v10-34-gb08643d: OUTPUT«===SORRY!===Unsupported use of the 1-based special form '\1' as a backreference; in Perl 6 please use the 0-based variable '$0' instead at /tmp/KweFaGMRFO line 1:------> /(.)\1⏏/Action method backslash:oldbackref n… | ||
TimToady | do other people's irssi's color extra things in a buggy way like mine does? I see bac<red>kreferen</red>ce | 16:26 | |
moritz | nope, fine here | ||
jnthn | looks fine to me too | ||
moritz | only the === and the second / is red here | ||
TimToady | maybe something else I'm highlighting is doing it bogusly | ||
thanks | |||
oh, maybe it's trying to highlight the Perl 6 and missing | 16:27 | ||
that's probably it | 16:28 | ||
moritz wants a ==== that doesn't autothread | |||
TimToady wants to shoot moritz, in the nicest possible way | |||
moritz | is it really too much to ask for an identity operator that actually tells me if the LHS is the same as the RHS, without any DWIM? | 16:29 | |
TimToady is not sure | 16:30 | ||
the point of having a conceptual space outside of Any is to fuzz the concept of identity, so it's not at all clear on what metalevel beyond .WHICH to define it | 16:32 | ||
moritz | well, .WHICH doesn't autothread | 16:33 | |
TimToady | if you want something that always means .WHICH === .WHICH, you can define one, but it doesn't seem terribly useful to me outside of implementing junctions and such, and a hazard for newbies | ||
moritz | being able to reliably compare type objects is very useful for any kind of meta stuff, including testing | 16:34 | |
TimToady | you can certainly define an === that works on Junction:T args | 16:36 | |
jnthn | Junction === Junction could certainly still be made to work. | ||
(with :U) | |||
TimToady | no, :T :) | ||
as specced | |||
jnthn | grr, stop changing stuff just after I get it implemented!! :P | ||
TimToady | it's been there a while | 16:37 | |
jnthn | I know, it still landed just after I got done implementing :U/:D. | ||
It's probably been there long enough to make me think it isn't about to change yet again by now though. | |||
TimToady | :P | ||
in fact, can just be Mu:T === Mu:T I think | 16:39 | ||
jnthn | Wait, what? | 16:40 | |
Oh, you mean infix:<===>(Mu:T, Mu:T) ? | |||
sorear | What? | ||
TimToady | yes | ||
sorry for the shorthand | |||
jnthn | oh, phew....I thought we were about to have Mu:T being an entity we can pass around first class :) | ||
sorear | ...how is that supposed to work? | ||
jnthn | (Which I guess we could, but...) | 16:41 | |
TimToady | it's a candidate that only matches on type objects | ||
jnthn | It depends on the others being :D (is it still that?) I guess | ||
sorear | TimToady: oh you mean making === a multi? | ||
TimToady | well, yes, nearly all P6 ops are multis... | 16:42 | |
jnthn: MyType:T is officially just a subset type, like :U and :D | 16:44 | ||
that doesn't mean we can't cheat on it here and there | |||
jnthn | Well, we kinda have to in the dispatcher if we want decent performance :) | ||
TimToady | or define them in primitive terms | ||
jnthn | But yes, if they show up somewhere where they have to be first class they can vivify subset types. | 16:45 | |
sorear | Has anyone figured out how the whole Failure-mixed-into-types thing works yet? | ||
TimToady | so Mu:T is first-class only in the sense that other subset types are | ||
jnthn | Well, the ones you declare with subset most certainly are :) | ||
TimToady | sorear: I think of it as mixing in a bottom type | 16:46 | |
which is probably insane in various ways, but that's how I think of it currently | |||
sorear | TimToady: I don't understand the mixning. :) | 16:48 | |
TimToady | it's probably more like Haskell's Error type | ||
more like typed bottom-ish values that can still officially fit into a typed container | 16:49 | ||
but tell the world, "I am undefined because of non-computability" | 16:50 | ||
as opposed to "I am undefined because I was never initialized" | |||
sorear | what is the type of a Failure? | ||
haskell can get away with this because of type erasure | 16:51 | ||
16:52
Chillance joined,
kaleem joined
17:00
lateau_ joined
17:01
lateau_ left
17:04
lateau_ joined
17:08
localhost left
17:09
localhost joined
|
|||
dalek | ecza/serialize: f1f89cc | sorear++ | / (5 files): Reimplement blocks and inlining |
17:11 | |
17:13
dakkar left
17:16
envi_ left
17:20
shinobicl joined
17:22
wolfman2000 joined
|
|||
dalek | ecza/serialize: 6c3002f | sorear++ | lib/ (2 files): Fix Frame.code/protopad/RUN_ONCE interaction |
17:32 | |
17:33
bbkr left
17:40
kmwallio joined
|
|||
dalek | ecza/serialize: 7bea562 | sorear++ | lib/Kernel.cs: Fix LIPackage.Get code generation |
17:46 | |
17:48
benabik left
|
|||
moritz | nom: role R { }; module M does R { } | 17:49 | |
p6eval | nom 356fe7: OUTPUT«===SORRY!===Method 'add_role' not found for invocant of class 'Perl6::Metamodel::ModuleHOW'» | ||
moritz | jnthn: when would the error in traits.pm line 107 be triggered? | 17:50 | |
17:52
rindolf joined,
kmwallio left
|
|||
jnthn | nom: module M { }; class C does M { } | 17:55 | |
p6eval | nom 356fe7: OUTPUT«===SORRY!===C cannot compose M because it is not composable» | ||
jnthn | moritz: Should probably check the other way around too. | ||
unless pir::can($doee.HOW, 'add_role') { die ... ~ "does not support having roles composed into it" } or some such. | 17:56 | ||
17:57
wamba joined
|
|||
dalek | ecza/serialize: 04630ce | sorear++ | / (3 files): Improve variable existence detection |
18:10 | |
18:13
benabik joined
18:16
masak joined
|
|||
masak | buona sera, #perl6. | 18:16 | |
[Coke] | robert addressed my RT issues. (search on lastupdated, not updated) (restrict on CF.perl6.{Tag}, not CF.{Tag}) | 18:18 | |
portuguese? | |||
18:19
sures joined
18:20
sures left
|
|||
flussence | niecza's caught up quite a bit with those extra tests enabled - github.com/flussence/specgraphs/ra.../impls.png | 18:21 | |
dalek | ecza/serialize: aaeae45 | sorear++ | / (2 files): Implement embeddedblock, fix crash on 10th variable in a sub |
18:22 | |
[Coke] | flussence: what is that, almost double? | 18:23 | |
flussence | 7919 up from 3813 | ||
sorear | flussence: the teal zone has to be nom? | ||
sorear leaves | |||
flussence | yes | ||
[Coke] | rakudo: say 7919/3813 | ||
p6eval | rakudo 356fe7: OUTPUT«2.07684238132704» | ||
[Coke] | rakudo: our Str a | 18:25 | |
p6eval | rakudo 356fe7: OUTPUT«===SORRY!===In "our" declaration, typename Str must be predeclared (or marked as declarative with :: prefix) at line 1, near " a"» | ||
sorear | std: our Str a | ||
p6eval | std 8b331d2: OUTPUT«===SORRY!===Multiple prefix constraints not yet supported at /tmp/k9Lxlm7UTU line 1:------> our Str ⏏aMalformed our at /tmp/k9Lxlm7UTU line 1:------> our Str ⏏a expecting any of: multi_declarator typen… | ||
[Coke] | std: our Str a | ||
p6eval | std 8b331d2: OUTPUT«===SORRY!===Multiple prefix constraints not yet supported at /tmp/uKcu3mUID2 line 1:------> our Str ⏏aMalformed our at /tmp/uKcu3mUID2 line 1:------> our Str ⏏a expecting any of: multi_declarator typen… | ||
mberends | flussence: the 7919 includes over 1400 skipped tests that 'prove' does considers passes. | ||
s/does// | |||
masak | [Coke]: no, Spanish, I hope. | 18:26 | |
[Coke]: Portuguese would be 'bom tarde', I think. | 18:27 | ||
[Coke] | spanish is "buen~os tardes", methinks. | ||
18:27
supernovus joined,
lateau_ left
|
|||
[Coke] | perhaps it's italian? ;) | 18:27 | |
it is. | 18:28 | ||
masak | oh! :) | 18:29 | |
[Coke] | (er, and if that's evening, es "noches", no "tardes". whoops.) | ||
masak | romance fail :P | ||
[Coke] | close enough. ;) | ||
supernovus | Probably a dumb question, but what is the difference between the Str and Stringy methods? I don't remember seeing Stringy prior to nom... but have used Str methods quite often... | ||
18:30
lateau_ joined,
MayDaniel joined
|
|||
[Coke] | std: my $x =3; say ++++$x | 18:32 | |
p6eval | std 8b331d2: OUTPUT«ok 00:01 122m» | ||
[Coke] | rakudo: my $x =3; say ++++$x | ||
p6eval | rakudo 356fe7: OUTPUT«Cannot assign to a readonly variable or a value in sub prefix:<++> at src/gen/CORE.setting:2241 in block <anon> at /tmp/ufoahxjRzU:1 in <anon> at /tmp/ufoahxjRzU:1» | ||
[Coke] | niecza my $x =3; say ++++$x | 18:33 | |
niecza: my $x =3; say ++++$x | |||
p6eval | niecza v10-34-gb08643d: OUTPUT«5» | ||
[Coke] | who's right? | ||
masak | dunno. | 18:34 | |
[Coke] | I'm going with rakudo, based on RT 74912 | ||
18:34
lateau_ left,
_jaldhar left
18:35
_jaldhar joined
|
|||
masak | supernovus: Stringy is a role. think of Numeric for numbers. Num ~~ Numeric, and Str ~~ Stringy | 18:35 | |
jnthn | Guess if we want consistency with postfix:<++> then Rakudo is right. | ||
[Coke] | rakudo: my %h; sub h { say "srsly wtf" }; enum Foo %h; | 18:36 | |
p6eval | rakudo 356fe7: OUTPUT«Could not find sub &Foo in block <anon> at /tmp/PypFDQseNO:1 in <anon> at /tmp/PypFDQseNO:1» | ||
[Coke] | moritz: can we close 67942 % tests ? | ||
18:36
_jaldhar is now known as jaldhar
|
|||
[Coke] | phenny: ask moritz if we can close 67942 % tests ? | 18:38 | |
phenny | [Coke]: I'll pass that on when moritz is around. | ||
18:39
GlitchMr joined
18:40
araujo left
|
|||
[Coke] | rakudo: say 'aa' ~~ /(.)$1/; say $0.to | 18:40 | |
p6eval | rakudo 356fe7: OUTPUT«=> <a> 0 => <a>1» | ||
supernovus | masak: Yeah, I was just reading through the specs again, and spotted Stringy in there. The flexibility in Perl 6 is certainly awesome :-) | ||
18:41
araujo joined
|
|||
[Coke] | rakudo: 14:40 < [Coke]> rakudo: say 'aa' ~~ /(.)$1/; say $0.to | 18:42 | |
14:40 <+p6eval> rakudo 356fe7: OUTPUT«=> <a> 0 => <a>1» | |||
p6eval | rakudo 356fe7: OUTPUT«===SORRY!===Confused at line 1, near "14:40 < [C"» | ||
[Coke] | grr. | ||
subset ComplexNumeric of Numeric where { ($_ ~~ Real) || ($_ ~~ Complex) }; my ComplexNumeric $x = 1; say $x.perl; $x = 1i; say $x.perl | |||
rakudo: subset ComplexNumeric of Numeric where { ($_ ~~ Real) || ($_ ~~ Complex) }; my ComplexNumeric $x = 1; say $x.perl; $x = 1i; say $x.perl #also grr! | 18:43 | ||
p6eval | rakudo 356fe7: OUTPUT«1Complex.new(0, 1)» | ||
[Coke] | rakudo: subset ComplexNumeric of Numeric where { ($_ ~~ Real) }; my ComplexNumeric $x = 1; say $x.perl; | ||
p6eval | rakudo 356fe7: OUTPUT«1» | ||
18:45
mishin left
|
|||
dalek | kudo/nom: 59d442b | Coke++ | t/spectest.data: track failure mode. |
18:46 | |
moritz | o/ | 18:48 | |
phenny | moritz: 18:38Z <[Coke]> ask moritz if we can close 67942 % tests ? | ||
18:50
soh_cah_toa joined
|
|||
masak | moin, moritz | 18:51 | |
sjohnson | :) | ||
masak | supernovus: if by that you mean that we have many types in CORE, then yes :P | ||
18:55
MayDaniel left
|
|||
moritz | std: my %h; enum Foo %h; | 18:57 | |
p6eval | std 8b331d2: OUTPUT«===SORRY!===Illegal redeclaration of symbol 'Foo' (see line 1) at /tmp/l6giZF50zq line 1:------> my %h; enum Foo⏏ %h;Undeclared routine: 'h' used at line 1Check failedFAILED 00:01 122m» | ||
moritz | WTF? | 18:58 | |
why is Foo redeclared, and why does it try to call h()? | |||
18:58
am0c joined
|
|||
sjohnson | cause it's perl6's madness monday today | 18:58 | |
18:59
wolfman2000 left
|
|||
masak | moritz: more to the point, how did you discover this? :P | 19:02 | |
[Coke] | RT #67942 | 19:03 | |
moritz | [Coke]: I'm convinced that the new response is wrong also | ||
[Coke] | moritz: hokay. | ||
moritz | a sane response would be "value of %h not known at compile time" or so | ||
[Coke] | Most of the time, I'm just saying "this has changed" and don't know enough perl6 to know if it's for the better. ;) | ||
dalek | ast: 20b8292 | moritz++ | S02-types/capture.t: RT #78496, Pair.Capture |
19:04 | |
[Coke] | colomon: ping. | ||
phenny: ask colomon if RT# 69382 is still an issue. | |||
phenny | [Coke]: I'll pass that on when colomon is around. | ||
masak | [Coke]: I do that too. :) | 19:05 | |
[Coke] | masak: FYI, I'm explicitly ignoring your tickets in the queue. ;) | ||
(and regex, and rule, and ... a few other things.) | |||
19:06
leprevost left
|
|||
[Coke] | Leaves me with a more tractable subset of tickets to wander through. | 19:06 | |
masak | :P | ||
I'll take that as a compliment. | |||
dalek | ast: e65bacd | moritz++ | S03-operators/repeat.t: infix x with fractional numbers |
19:09 | |
moritz | < 750 tickets! \o/\o/\o/ | ||
std: <a b>[-1] | 19:10 | ||
p6eval | std 8b331d2: OUTPUT«===SORRY!===Unsupported use of [-1] subscript to access from end of array; in Perl 6 please use [*-1] at /tmp/KmgYHBihNe line 1:------> <a b>[-1]⏏<EOL>Parse failedFAILED 00:01 119m» | ||
moritz | nom: <a b>[-1] | ||
p6eval | nom 59d442: ( no output ) | ||
jnthn | I'm guessing that enum parses as the modulo operator and a call to h | 19:14 | |
e.g. enum (Foo % h) | |||
moritz | but why then would it be a redeclaration of Foo? | 19:15 | |
colomon | sorear: oh, there's already a TextWriter class, it just doesn't really do much of anything | 19:16 | |
phenny | colomon: 19:04Z <[Coke]> ask colomon if RT# 69382 is still an issue. | ||
moritz | nom: eval { die "foo" }; say $!.backtrace | ||
jnthn | I was guessing at Rakudo's interpretation, not STDs. | ||
p6eval | nom 59d442: OUTPUT«Nominal type check failed for parameter '$code'; expected Str but got Block instead in sub eval at src/gen/CORE.setting:420 in block <anon> at /tmp/2MUIZd9krB:1 in <anon> at /tmp/2MUIZd9krB:1» | ||
moritz | nom: try { die "foo" }; say $!.backtrace | ||
p6eval | nom 59d442: OUTPUT«Method 'backtrace' not found for invocant of class 'Exception' in block <anon> at /tmp/miMmj_4Qli:1 in <anon> at /tmp/miMmj_4Qli:1» | 19:17 | |
jnthn | STD may be doing it by backtracking over the type reg or something. | ||
rindolf | Hi all. perl Configure.pl --gen-parrot fails here - paste.debian.net/133888/ | 19:21 | |
dalek | ecza: 5239f11 | mberends++ | examples/gtk-webbrowser.pl: Add a lightweight (text only) Gtk.HTML based web browser example |
||
rindolf | Can anyone help? | 19:22 | |
[Coke] | rindolf: what version of git do you have? | ||
moritz | rindolf: how old is your rakudo? | 19:23 | |
it tries to build a parrot 2.11 | |||
[Coke] | oh. yah, 2.11 is pretty ancient parrot. | ||
moritz | the current rakudo depends on parrot 3.8.something | ||
rindolf | [Coke]: git? | 19:25 | |
[Coke] | rindolf: answer moritz's question first. | 19:26 | |
(and yes, it's checking out a copy of parrot via git for you.) | |||
rindolf | moritz: it's Date: Sat Jan 1 22:49:26 2011 +0200 | ||
- hmmm... | |||
moritz | rindolf: that won't make you happy at all | 19:27 | |
[Coke] | "there's your problem." | ||
moritz | rindolf: git fetch; git checkout nom; perl Configure --gen-parrot | ||
rindolf | moritz: OK. | ||
moritz: hmmm... github mislead me. I thought that "fork" meant "Fork it!", but it's my own fork. | |||
supernovus | nom: my @a = 1,2,3; @a.splice(1,1); | 19:28 | |
p6eval | nom 59d442: OUTPUT«Method 'splice' not found for invocant of class 'Array' in block <anon> at /tmp/sTUNw2OZjm:1 in <anon> at /tmp/sTUNw2OZjm:1» | ||
19:28
Holy_Cow left
|
|||
rindolf | OK, it seems to be a bug. | 19:29 | |
In github. | |||
moritz | what does git remote -v say? | ||
[Coke] | rakudo: class A::B { has $.s = "hey" }; my $q = "B"; my $l = gather { take "A::$q".new; }; $l[0].s.say | ||
p6eval | rakudo 59d442: OUTPUT«Method 's' not found for invocant of class 'Str' in block <anon> at /tmp/qOmsyeOrqt:1 in <anon> at /tmp/qOmsyeOrqt:1» | ||
moritz | [Coke]: "string".new just creates a new, empty Str object | 19:30 | |
lookup by name would be ::("A::$q").new | |||
[Coke]: or in other words, rakudo is right here | 19:32 | ||
[Coke] | moritz: don't care, just ticket spelunking. ;) | ||
19:32
kaleem left
19:33
araujo left
|
|||
[Coke] | rt.perl.org/rt3/Ticket/Display.html?id=77178 was the ticket. I've gotta get back to dayjob. | 19:33 | |
19:33
araujo joined
|
|||
moritz | [Coke]: thanks, closing that one | 19:36 | |
[Coke] | moritz: \o/ ! | 19:38 | |
19:44
daniel-s left
|
|||
dalek | kudo/nom: 7823a4c | moritz++ | src/core/Exception (2 files): give Exception a backtrace method |
19:47 | |
19:48
GlitchMr left
|
|||
moritz | nom: .say for gather { loop { take 1 } } | 19:48 | |
p6eval | nom 59d442: OUTPUT«(timeout)» | ||
moritz | why doesn't this print lots of 1s before timing out? | ||
19:50
MayDaniel joined
19:53
packetknife joined
|
|||
flussence | insufficient laziness? | 19:54 | |
[Coke] | shouldn't that be "insufficient eagerness" ? | ||
PerlJam | flussence: perhaps too much laziness. | ||
diakopter | std: .say for gather { loop { take 1 } } | 19:55 | |
p6eval | std 8b331d2: OUTPUT«===SORRY!===Confused at /tmp/Bmw4GxOg9G line 1:------> .say for gather { loop { take 1 }⏏ } expecting horizontal whitespaceParse failedFAILED 00:01 121m» | ||
diakopter | std: .say for gather { loop { take 1 } } | ||
moritz | huh, what's wrong with it? | ||
p6eval | std 8b331d2: OUTPUT«===SORRY!===Confused at /tmp/l8xXNJCY0f line 1:------> .say for gather { loop { take 1 }⏏ } expecting horizontal whitespaceParse failedFAILED 00:01 121m» | ||
flussence | nom: .say for (gather { loop { take 1 } }).[5] | ||
p6eval | nom 59d442: OUTPUT«1» | ||
PerlJam | std may t hink you need a ; | ||
moritz | std: loop { } | ||
p6eval | std 8b331d2: OUTPUT«ok 00:01 118m» | ||
moritz | std: .say for gather { loop { take 1 }; } | 19:56 | |
p6eval | std 8b331d2: OUTPUT«ok 00:01 121m» | ||
moritz | TimToady: I think it's a stdbug that you need that ; | ||
PerlJam too | |||
flussence | nom: my $a = 0; .say for gather { loop { take 1; last if ++$a > 50 } } | ||
p6eval | nom 59d442: OUTPUT«Method 'eager' not found for invocant of class 'Integer' in sub coro at src/gen/CORE.setting:3900 in method reify at src/gen/CORE.setting:3870 in method reify at src/gen/CORE.setting:3653 in method reify at src/gen/CORE.setting:3653 in method gimme at src/ge… | ||
flussence | er | ||
diakopter | niecza: .say for gather { loop { take 1 }; } | ||
p6eval | niecza v10-35-g5239f11: OUTPUT«(timeout)1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111xE2x90 | 19:57 | |
moritz thinks there's something rotten in the state of rakudo/nom | |||
jnthn | moritz: ? | 19:58 | |
moritz | nom: .say for gather { loop { take 1 } } | ||
p6eval | nom 7823a4: OUTPUT«(timeout)» | ||
moritz | jnthn: I'd expect that one to print lots of 1's before timeouting | 19:59 | |
20:00
espadrine joined
|
|||
jnthn | same | 20:00 | |
dalek | ecza: 241a2d8 | mberends++ | examples/gtk-tetris.pl: refactoring - no functional changes |
||
mberends | oops, shoulda said sorear++ for the refactoring tips | 20:02 | |
sjohnson | perl6: sprintf("just another %u hacker", (5 + 1)).perl | ||
oops. | |||
p6eval | pugs, rakudo 7823a4, niecza v10-35-g5239f11: ( no output ) | ||
sjohnson | perl6: sprintf("just another perl %u hacker", (5 + 1)).perl.say | 20:03 | |
p6eval | pugs: OUTPUT«\"just another perl 6 hacker"» | ||
..rakudo 7823a4, niecza v10-35-g5239f11: OUTPUT«"just another perl 6 hacker"» | |||
sjohnson | mad skillz | ||
masak | :D | ||
[Coke] | 748 tickets, minus 36 that needtests. | 20:06 | |
jnthn | \o/ | ||
masak | impressive. | ||
jnthn | say (gather { loop { say 42; take 1 } }).iterator.infinite | 20:07 | |
nom: say (gather { loop { say 42; take 1 } }).iterator.infinite | |||
p6eval | nom 7823a4: OUTPUT«Bool::False» | ||
20:07
packetknife left
|
|||
mberends | masak: I realized after your comment that the PascalCase style in gtk-tetris.pl was caused by the method names in the Gtk libraries. It looked wrong to conflict with them. | 20:07 | |
[Coke] | moritz++ | ||
masak | mberends: ah, gtk. | ||
mberends: guessed it was something like that. | |||
mberends: I'm not condemning it. in fact I supposed it was a conscious choice made from weighing the two options. | 20:08 | ||
mberends | masak: yeah, it was conscious. An earlier style looked worse. | ||
masak | :) | ||
mberends++ | |||
jnthn | moritz: Slightly worried it may be somewhat related to my MapIter work yesterday. | 20:09 | |
moritz | jnthn: it isn't | ||
jnthn | moritz: Oh? | ||
OK. | |||
moritz: You already tried undoing that? | |||
moritz | jnthn: that was my first idea as well, and I compiled rakudo with the revision before your MapIter patch | 20:10 | |
and it still doesn't print anything | |||
colomon | moritz++ | ||
jnthn | moritz: OK | ||
moritz -> sleep | |||
20:10
rindolf left
20:15
soh_cah_toa left,
mj41 joined
|
|||
masak | dobranacht, moritz. dream of bots automatically writing roast tests and closing bugs. | 20:16 | |
20:18
kmwallio joined
|
|||
masak | rakudo: say "rah ", "tata tah " xx 2, "ta tam!" for ^3; say "yeah!" | 20:20 | |
p6eval | rakudo 7823a4: OUTPUT«rah tata tah tata tah ta tam!rah tata tah tata tah ta tam!rah tata tah tata tah ta tam!yeah!» | ||
20:20
molaf left
|
|||
masak | hm. | 20:20 | |
masak wonders how to get the spaces right | |||
20:21
rgrau joined
|
|||
masak | rakudo: say "rah ", "tata tah" xx 2, " ta tam!" for ^3; say "yeah!" | 20:21 | |
p6eval | rakudo 7823a4: OUTPUT«rah tata tah tata tah ta tam!rah tata tah tata tah ta tam!rah tata tah tata tah ta tam!yeah!» | ||
masak | yeah! | ||
rakudo: say "rah ", ("tata tah", "ta tam").roll(3), "!" for ^3; say "yeah!" | 20:22 | ||
p6eval | rakudo 7823a4: OUTPUT«rah tata tah ta tam tata tah!rah ta tam ta tam ta tam!rah ta tam ta tam ta tam!yeah!» | ||
masak | ending was a bit weak. | ||
mberends | masak: now you've done it. I'll dream of the Christmas Drummer Boy song. | 20:23 | |
masak | oops. | ||
if you want, I can sabotage your mental jukebox with something else. | 20:24 | ||
mberends | lol | ||
masak | rakudo: say "At first I was afraid, I was petrified..." | ||
p6eval | rakudo 7823a4: OUTPUT«At first I was afraid, I was petrified...» | ||
jnthn | .oO( t-t-t-t-telephone ) |
||
masak | auugh. | ||
mberends | lol xx 2 | ||
jnthn | .oO( Friday...Frriiiiday ) |
||
masak | make... it... stop... | ||
[Coke] | .oO(bananaphone!) |
||
masak | gnnn | ||
jnthn | oh no | ||
:P | 20:25 | ||
masak | [Coke]: was that *really* necessary? there's nothing that trumps the bananaphone! :P | 20:26 | |
now we're all stuck with it for the evening... | |||
jnthn | nom: say 'ring' xx 4, 'bananaphone' for ^2 | 20:27 | |
p6eval | nom 7823a4: OUTPUT«ring ring ring ringbananaphonering ring ring ringbananaphone» | ||
jnthn | oh, not enough rings...and spaces | ||
masak | there's 7 "ring"s. | 20:28 | |
jnthn | yes...yes there is... | 20:29 | |
masak | nom: say "ring" xx 7, '! bananaphone!' for ^2 | ||
p6eval | nom 7823a4: OUTPUT«ring ring ring ring ring ring ring! bananaphone!ring ring ring ring ring ring ring! bananaphone!» | ||
20:30
MayDaniel left
|
|||
jnthn | masak++ # faithful rendition of bananaphone | 20:34 | |
.oO( you know those times when you're not sure if it should be ++ or -- ... :-) ) |
|||
masak bows elaborately | 20:35 | ||
20:35
wolfman2000 joined
|
|||
[Coke] | masak: thankfully, I'm more of a carrier. | 20:35 | |
jnthn | OK, deciding that we consider GatherIter to be infinite by default fixes this case, but not the others. It'll take more digging than I have brane for today. | ||
(where this case is the one that hangs) | 20:36 | ||
or a pmichaud++ to show up and tell us how it should be. | |||
20:36
dual left
|
|||
[Coke] | "is perl6 happy with RT as a bug tracker" ? | 20:36 | |
masak | rakudo: class wolfman { method greet { say "greetings, {self.^name}$.version!" } }; (wolfman.new but role { has $.version = 2000 }).greet | ||
p6eval | rakudo 7823a4: OUTPUT«greetings, wolfman+{<anon>}2000!» | 20:37 | |
[Coke] | so asks your bugadmin. | ||
masak | dang :) | ||
wolfman2000 | and afternoon to you too masak. | ||
not here long: wireless in my present area is not great. | |||
masak | [Coke]: I sure am! | ||
[Coke]: it's very easy to open tickets! | |||
[Coke] | masak: that's far too enthusiastic. | 20:38 | |
20:38
icwiener joined
|
|||
masak | ok, sorry. | 20:38 | |
flussence | .oO( RT is our bug tracker? I thought that was masak... ) |
||
masak | [Coke]: I kinda like it. it's alright. | ||
[Coke] | he's the bug OPENER. :P | ||
masak | occasionally I close them too. | ||
but I try not to make a habit of it. | |||
:P | |||
20:40
Bzek left,
Bzek joined,
wolfman2_ joined
|
|||
masak | but really, the bugs are there whether or not there's tickets for them. I just happen to like there being tickets for them. :) | 20:41 | |
and the reason I find a percentage of them first is that I'm a bit of a masakist. | |||
[Coke] | You've been hanging around ingy too much. | 20:42 | |
masak | I wouldn't mind hanging around him more :) | ||
20:43
wolfman2000 left
|
|||
masak .oO( acme-masakism ) | 20:43 | ||
20:43
wolfman2000 joined
|
|||
masak | rakudo: say (((class wolfman {}).new but role {}) but rolw {}).^name | 20:44 | |
p6eval | rakudo 7823a4: OUTPUT«Could not find sub &rolw in block <anon> at /tmp/YffAmDSFex:1 in <anon> at /tmp/YffAmDSFex:1» | ||
masak | rakudo: say (((class wolfman {}).new but role {}) but role {}).^name | ||
p6eval | rakudo 7823a4: OUTPUT«wolfman+{<anon>}+{<anon>}» | ||
wolfman2000 | having fun with my joining and leaving? | ||
masak | that, and anon roles. | 20:45 | |
I think I get how they work now. | |||
wolfman2000 | glad my bad wireless can be of service | ||
jnthn | Well, at least if it serves you badly it's making it up by serving masak well :) | 20:46 | |
20:46
wolfman2_ left,
zby_home left
|
|||
masak | rakudo: class wireless { has $.1uality = 'bad'; has $.service = 'yes' }; given wireless.new { say "Can the {.quality} {.^name} be of service?"; say .service ?? "yes!" !! "no!" } | 20:47 | |
p6eval | rakudo 7823a4: OUTPUT«===SORRY!===Unable to parse blockoid, couldn't find final '}' at line 1» | ||
wolfman2000 | :P | ||
masak | rakudo: class wireless { has $.quality = 'bad'; has $.service = 'yes' }; given wireless.new { say "Can the {.quality} {.^name} be of service?"; say .service ?? "yes!" !! "no!" } | 20:48 | |
jnthn | Your wireless. Same quality as masak's typing :) | ||
p6eval | rakudo 7823a4: OUTPUT«Can the bad wireless be of service?yes!» | ||
masak | jnthn: oh, 1hut 7p. :P | ||
20:50
alester_ joined,
alester left,
alester_ is now known as alester
20:51
felher left,
alester left,
felher joined,
Trashlord left
20:52
Trashlord joined,
TiMBuS left
20:53
shinobicl left,
TiMBuS joined
20:59
wolfman2000 left
21:04
sivoais left
21:07
orafu left
21:08
HarryS left,
preflex left,
sorear left,
geekosaur left,
silug left
|
|||
flussence | nom: enum A is export <one two>; | 21:08 | |
p6eval | nom 7823a4: OUTPUT«===SORRY!===No applicable candidates found to dispatch to for 'trait_mod:<is>'. Available candidates are::(Mu $type, Any $size, Any $nativesize):(Attribute $attr, Any $rw):(Attribute $attr, Any $readonly):(Routine $r, Any $rw):(Routine $r, Any $default):(Parame… | ||
flussence | b: enum A is export <one two>; | ||
21:08
geekosaur joined
|
|||
p6eval | b 1b7dd1: OUTPUT«Could not find sub &export in main program body at line 22:/tmp/1lg1ozekm6» | 21:08 | |
21:08
sorear joined
|
|||
flussence | niecza: enum A is export <one two>; | 21:08 | |
p6eval | niecza v10-36-g241a2d8: ( no output ) | ||
21:09
preflex joined
|
|||
flussence | doesn't work in rakudo? | 21:09 | |
21:10
kaare_ left
21:11
silug joined
21:13
shinobicl joined
21:15
HarryS joined,
HarryS left
21:22
kmwallio left
21:25
packetknife joined
21:26
senobmeht left
|
|||
masak | dobranatt, #perl6. | 21:30 | |
21:30
masak left
21:31
benabik left
21:32
packetknife left,
athomason joined
|
|||
im2ee | Dobranoc #perl6 ! :) | 21:37 | |
21:38
im2ee left
21:41
packetknife joined
|
|||
dalek | d: 20ae3bd | larry++ | STD.pm6: parse whitespace after loop {}, moritz++ |
21:42 | |
21:47
shinobicl left
|
|||
colomon | niecza: enum A is export <one two>; say "Alive!" # member:flussence | 21:49 | |
p6eval | niecza v10-36-g241a2d8: OUTPUT«Alive!» | ||
flussence | .oO( the more I work on Text::Wrap, the more it looks like a big ball of mud... ) |
21:53 | |
perl6: say ('aaaaabaaaaa' ~~ /^(\N*) b/).perl; | 22:00 | ||
p6eval | niecza v10-36-g241a2d8: OUTPUT«#<match from(0) to(6) text(aaaaab) pos([#<match from(0) to(5) text(aaaaa) pos([].list) named({}.hash)>].list) named({}.hash)>» | ||
..rakudo 7823a4: OUTPUT«Match.perl(orig => "aaaaabaaaaa", from => 11, to => -3, ast => Mu, list => ().list, hash => EnumMap.new())» | |||
..pugs: OUTPUT«Error eval perl5: "if (!$INC{'Pugs/Runtime/Match/HsBridge.pm'}) { unshift @INC, '/home/p6eval/.cabal/share/Pugs-6.2.13.16/blib6/pugs/perl5/lib'; eval q[require 'Pugs/Runtime/Match/HsBridge.pm'] or die $@;}'Pugs::Runtime::Match::HsBridge'"*** '<HANDLE>' trapped b… | |||
flussence | b: say ('aaaaabaaaaa' ~~ /^(\N*) b/).perl; | ||
p6eval | b 1b7dd1: OUTPUT«Match.new( from => 0, orig => "aaaaabaaaaa", to => 6, positional => [ Match.new( from => 0, orig => "aaaaabaaaaa", to => 5, ), ],)» | ||
flussence | nom: say ('aaaaabaaaaa' ~~ /^(\w*) b/).perl; | ||
p6eval | nom 7823a4: OUTPUT«Match.perl(orig => "aaaaabaaaaa", from => 11, to => -3, ast => Mu, list => ().list, hash => EnumMap.new())» | ||
flussence | nom: say ('aaaaabaaaaa' ~~ /^(a*) b/).perl; | ||
p6eval | nom 7823a4: OUTPUT«Match.perl(orig => "aaaaabaaaaa", from => 0, to => 6, ast => Mu, list => (Match.perl(orig => "aaaaabaaaaa", from => 0, to => 5, ast => Mu, list => ().list, hash => EnumMap.new()),).list, hash => EnumMap.new())» | ||
flussence | nom: say ('aaaaabaaaaa' ~~ /^(\S*) b/).perl; | 22:01 | |
p6eval | nom 7823a4: OUTPUT«Match.perl(orig => "aaaaabaaaaa", from => 11, to => -3, ast => Mu, list => ().list, hash => EnumMap.new())» | ||
flussence | nom: say ('aaaaabaaaaa' ~~ /^(<[a..z]>*) b/).perl; | ||
p6eval | nom 7823a4: OUTPUT«Match.perl(orig => "aaaaabaaaaa", from => 11, to => -3, ast => Mu, list => ().list, hash => EnumMap.new())» | ||
flussence | hm. not sure how to work around that... | 22:02 | |
22:03
S11001001 joined
|
|||
sorear | hello S11001001 | 22:04 | |
S11001001 | sorear: greetings | ||
sorear | 2011.10.02.18.01.59 -!- S11001001 [~sirian@c-71-232-60-227.hsd1.ma.comcast.net] has joined #perl6 | 22:05 | |
2011.10.02.18.18.32 < S11001001> moritz: I have a little nitpick for the perl6.org front page: "Using Perl 6" is not open source. | |||
2011.10.02.19.08.58 -!- S11001001 [~sirian@c-71-232-60-227.hsd1.ma.comcast.net] has quit [Quit: bye bye] | |||
S11001001 | aye | ||
sorear | We couldn't figure out what you meant and you left too quickly for us to ask. Don't do that please. :) | ||
S11001001 | sorry, was leaving coffeeshop where I said that | 22:06 | |
anyway, I meant that by restricting commercial distribution, it doesn't meet the open source definition (point 1), nor the FSF free software definition or DFSG | 22:07 | ||
(the README states it is under by-nc-sa) | |||
sorear | Moritz thought you were referring to non-free fonts | 22:08 | |
S11001001 | that is also a problem, but probably not enough to prevent calling it open source | 22:09 | |
22:10
sunnavy left,
athomason left
|
|||
flussence | hm. not sure how to work around that... | 22:11 | |
ww | |||
22:11
ingy left
|
|||
flussence | I'm getting better progress with niecza in Text-Tabs-Wrap right now... just need to figure out why unexpand() returns whitespace strings :( | 22:12 | |
«Unhandled Exception: Unable to resolve method ctxzyg in class Str» | 22:16 | ||
flussence is slightly scared by that method name | |||
22:17
mikemol left
22:18
bluescreen10 left,
bluescreen10 joined
22:19
mikemol joined
22:22
carlin joined
|
|||
flussence | perl6: say ($_ for 1..4).perl; | 22:24 | |
p6eval | rakudo 7823a4: OUTPUT«(1, 2, 3, 4).list» | 22:25 | |
..niecza v10-36-g241a2d8: OUTPUT«Nil» | |||
..pugs: OUTPUT«***  Unexpected "for" expecting operator or ")" at /tmp/uN8Zepa9IR line 1, column 9» | |||
flussence | sorear: ^ bug? | ||
22:26
bluescreen10 left
22:30
mj41 left
|
|||
sorear | flussence: NYI. | 22:34 | |
flussence | ah, ok then | ||
22:48
replore_ left,
envi_ joined
23:00
rgrau left
|
|||
snarkyboojum didn't realise that Using Perl 6 used an NC license | 23:02 | ||
23:05
sivoais joined
23:08
mkramer1 joined
23:10
mkramer left
23:13
ingy joined,
sunnavy joined,
whiteknight joined
23:14
jferrero left
23:15
mikemol left,
mikemol joined
|
|||
tadzik | good night #perl6 | 23:18 | |
colomon | o/ | 23:20 | |
sorear | bye tadzik | ||
23:22
icwiener left
|
|||
tadzik | hey, but I just came in! | 23:23 | |
:) | |||
it was just too late for 'good evening', I thought | |||
snarkyboojum | laku noc! | 23:24 | |
23:27
wamba left
23:31
jlaire left
23:33
aloha left
23:34
aloha joined,
tokuhiro_ joined
23:37
jlaire joined
23:40
benabik joined
23:44
envi_ left
|
|||
dalek | ecza/serialize: 5239f11 | mberends++ | examples/gtk-webbrowser.pl: Add a lightweight (text only) Gtk.HTML based web browser example |
23:44 | |
ecza/serialize: 241a2d8 | mberends++ | examples/gtk-tetris.pl: refactoring - no functional changes |
|||
ecza/serialize: 68ddcb5 | sorear++ | / (9 files): Merge branch 'master' of github.com:sorear/niecza into serialize |
|||
ecza/serialize: 297c615 | sorear++ | src/ (4 files): mergeback src/niecza |
|||
23:44
supernovus left
23:48
cooper left
23:50
packetknife left
23:51
packetknife joined
23:54
envi_ joined
23:57
replore joined
|