»ö« 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. |
|||
00:01
replore joined
00:05
thilp joined
00:09
thilp left
00:11
replore left,
ingy joined
00:13
k0ala joined
00:14
k0ala left
00:16
wknight8111 left
00:24
xinming left
00:26
fgomez left
00:27
adu left
00:30
isBEKaml left
00:31
xinming joined
00:54
tyatpi joined
01:02
ingy left
01:06
scott_ joined,
scott_ is now known as Guest360
01:12
[particle]1 joined,
fgomez joined
01:13
alvis left
01:15
[particle] left
01:16
lorn_ left
01:17
Chillance left
02:21
DreamingInCode left
02:22
fgomez left,
tokuhiro_ joined
02:30
fgomez joined
02:31
jaldhar joined
|
|||
dalek | kudo/map2: ecdcc40 | pmichaud++ | src/ (2 files): Refactor firing of FIRST phasers a bit. There may be a problem an already-in-progress iterator or other source (problem exists in the code being replaced as well). |
02:38 | |
02:38
jaldhar left
02:40
jaldhar joined
02:53
tokuhiro_ left,
leprevost joined
03:01
crab2313 joined
03:03
scott_ joined,
benabik_ joined
03:04
scott_ is now known as Guest85960
03:05
sftp_ joined,
benabik left,
sftp left,
benabik_ is now known as benabik,
flussence joined,
Guest360 left
03:06
risou joined,
ocharles joined
03:08
_ilbot joined
03:09
Facefox left
03:12
libertyprime left,
libertyprime joined
03:14
Facefox joined
03:32
thou left
03:36
jaldhar left
03:37
jaldhar joined
03:39
crab2313 left
03:46
leprevost left
04:46
corburn left
05:06
replore joined
05:09
b1rkh0ff left
|
|||
diakopter | .u 171 | 05:13 | |
phenny | diakopter: Sorry, no results for '171'. | ||
diakopter | .u \d171 | ||
phenny | U+100B3 LINEAR B IDEOGRAM B171 (𐂳) | ||
U+2A171 CJK UNIFIED IDEOGRAPH-2A171 (𪅱) | |||
U+E019A VARIATION SELECTOR-171 (󠆚) | |||
diakopter | eh | ||
.u \da | |||
phenny | U+0020 SPACE ( ) | ||
U+0021 EXCLAMATION MARK (!) | |||
U+0022 QUOTATION MARK (") [...] | 05:14 | ||
05:23
b1rkh0ff joined
|
|||
diakopter | phenny: phooey | 05:31 | |
moritz | \o | 05:35 | |
diakopter | good morning | ||
moritz ywans | |||
good localtime diakopter | |||
sorear | o/ | 05:37 | |
05:37
adu joined
05:40
drbean left
|
|||
diakopter | r: my @a = 4; say @a.DUMP | 05:40 | |
p6eval | rakudo 559c40: OUTPUT«Array<-1253585100>(:items(Mu), :nextiter(ListIter<-1253587167>(:reified(▶Mu), :rest(RPA<-1253587177>(Array<-1253593339>(:items(RPA<-1253626056>(▶4)), :nextiter(▶Mu)))), :list(Array<-1253585100>))))» | ||
05:40
drbean joined
|
|||
diakopter scratches his head | 05:41 | ||
n: my @a = 4; say @a.DUMP | |||
p6eval | niecza v18-2-gea3d97a: OUTPUT«Unhandled exception: Unable to resolve method DUMP in type Array at /tmp/_uIdssNpuJ line 1 (mainline @ 4)  at /home/p6eval/niecza/lib/CORE.setting line 3911 (ANON @ 3)  at /home/p6eval/niecza/lib/CORE.setting line 3912 (module-CORE @ 558)  at /home/… | ||
moritz | diakopter: it's just for debugging rakudo's lists and iterators | 05:45 | |
05:45
drbean left
05:46
drbean joined
|
|||
diakopter | rn: say \\.gist; say \.gist | 05:46 | |
p6eval | rakudo 559c40: OUTPUT«Any()Any()» | ||
..niecza v18-2-gea3d97a: OUTPUT«\(\("Any()"))\("Any()")» | |||
diakopter | rakudo's capture .gist is empty it seems | 05:48 | |
05:48
alvis joined
|
|||
diakopter | r: say \().gist; say \().DUMP | 05:49 | |
p6eval | rakudo 559c40: OUTPUT«Capture.new( list => ().list, hash => EnumMap.new())» | ||
05:57
kaleem joined
06:02
shachaf left
06:06
mucker joined
06:12
cognominal___ joined
06:13
wtw joined,
wtw left,
wtw joined
06:15
shachaf joined
06:16
cognominal_ left
06:17
geekosaur joined
06:26
pyrimidine left,
adu left
06:27
adu joined
06:28
sunnavy joined
06:30
sunnavy left,
sunnavy joined
07:02
replore left
07:06
cj left,
brrt joined
07:07
cj joined
07:12
stephenlb left
|
|||
moritz | std: enum X is export <A B C>; | 07:47 | |
p6eval | std f179a1b: OUTPUT«ok 00:00 40m» | ||
moritz | std: enum X <A B C> is export; | 07:48 | |
p6eval | std f179a1b: OUTPUT«===SORRY!===Two terms in a row at /tmp/Fp1DMnNHjw line 1:------> enum X <A B C> ⏏is export; expecting any of: infix or meta-infix infixed function statement modifier loopParse failedFAILED 00:00 42m» | ||
dalek | ast: 1a247e8 | moritz++ | S (2 files): fix enum export test, and fudge a new test for rakudo |
07:49 | |
07:59
fhelmberger joined
|
|||
moritz | nr: say Nil === Nil | 08:01 | |
p6eval | niecza v18-2-gea3d97a: OUTPUT«Unhandled exception: No value for parameter '$l' in 'infix:<===>' at /home/p6eval/niecza/lib/CORE.setting line 0 (infix:<===> @ 1)  at /tmp/QmdW8XaLSX line 1 (mainline @ 3)  at /home/p6eval/niecza/lib/CORE.setting line 3911 (ANON @ 3)  at /home/p6ev… | ||
..rakudo 559c40: OUTPUT«True» | |||
moritz | nieczabug? | ||
08:19
crab2313 joined
08:21
kurahaupo left
08:26
dakkar joined
08:30
adu left,
adu joined,
adu left
08:38
birdwindupbird joined
08:40
kurahaupo joined
08:56
bruges left
08:57
bruges joined
08:59
crab2313 left
09:11
fgomez left
|
|||
dalek | kudo/nil-assign: f2145d4 | moritz++ | src/Perl6/Metamodel/BOOTSTRAP.pm: set up Nil in bootstrap |
09:23 | |
kudo/nil-assign: 7486672 | moritz++ | src/ (3 files): propagate Nil to C land |
|||
kudo/nil-assign: 066916c | moritz++ | src/ (2 files): oops, Nil needs to be Iterable |
|||
kudo/nil-assign: 9103333 | moritz++ | src/binder/container.c: special-case assigning Nil |
|||
moritz | somehow this breaks the backtrace printer | 09:26 | |
09:26
b1rkh0ff left
09:29
birdwind1pbird joined
|
|||
jnthn | morning-ish o/ | 09:30 | |
moritz | \o jnthn | ||
jnthn | How does it break it, ooc? | 09:31 | |
moritz | method message not found on Any | ||
it seems we return Any a bit too often from the setting | 09:32 | ||
jnthn | Maybe there's something like: my $foo = bar(); return $foo | 09:35 | |
And now a Nil that was getting passed along is evaporating. | 09:36 | ||
moritz | yes, I suspect something like that too | ||
List.at_pos returns Nil when the key does not exist | 09:37 | ||
09:40
birdwindupbird left
|
|||
moritz | r: my $x ||= Mu | 10:04 | |
p6eval | rakudo 559c40: ( no output ) | ||
moritz | r: my $x = 3; $x &&= Mu | ||
p6eval | rakudo 559c40: ( no output ) | ||
moritz | oh | 10:06 | |
in my branch, my $x = Nil produces a Mu in $x | 10:07 | ||
not Any | |||
jnthn | ->of is the type constraint. | ||
moritz | yes | ||
how do I get the default type instead? | 10:08 | ||
does that go through whence? | 10:09 | ||
10:11
Guest85960 left
|
|||
jnthn | hm. I'm not sure we even store it...besides setting it as the initial value of the scalar. | 10:12 | |
moritz | oh. | ||
so much for the LFH part :-) | |||
(Nil assignment is still in LHF.markdown) | 10:13 | ||
jnthn | Oh. :) | ||
I guess that the default wants to live on the container desctiptor. | |||
*descriptor | |||
dalek | kudo/nil-assign: 71a5632 | moritz++ | src/core/metaops.pm: //= and friends should be able to handle Mu |
10:14 | |
moritz | fwiw that makes most of the spectests pass again | ||
10:15
fgomez joined
10:20
fgomez left
|
|||
moritz | just three files fail, t/spec/S02-types/nil.rakudo, t/spec/S03-operators/assign.rakudo and t/spec/S03-operators/flip-flop.rakudo | 10:23 | |
all of them exit prematurely | 10:24 | ||
10:34
cognominal___ is now known as cognominal
|
|||
dalek | p/altnfa: 2dc71bc | jnthn++ | src/QRegex/NFA.nqp: Don't screw up <!alpha>. |
10:47 | |
p/altnfa: 0920483 | jnthn++ | src/QRegex/NFA.nqp: Fix before handling in NFA generation. |
|||
11:04
brrt left
11:12
ab5tract joined
11:28
JimmyZ_ joined
|
|||
dalek | p/altnfa: 80306ff | jnthn++ | src/QRegex/P6Regex/Actions.nqp: Fix handling of complex char classes; gets bigint test file to pass on altnfa. |
11:58 | |
p/altnfa: fd66f4f | jnthn++ | src/QRegex/P6Regex/Actions.nqp: Ensure alt_nfa IDs are sufficiently unique. |
|||
p/altnfa: 5f35dc9 | jnthn++ | src/QRegex/NFA.nqp: Ensure zerowidth subrules really do terminate LTM. |
|||
moritz | phenny: de en "alt"? | ||
phenny | moritz: "old" (de to en, translate.google.com) | ||
moritz | shouldn't you be writing a *new* NFA? :-) | 11:59 | |
jnthn | :P | ||
We now get to around line 3000 of CORE.setting parse again :) | |||
moritz | so about 1/4th through | 12:00 | |
jnthn | Yeah | ||
Well, before my commits last night, we made it to about line 20. And before today only to line 42. So, improvement... :) | |||
hmm, maybe it was 72 actually | 12:01 | ||
moritz | aye :-) | ||
quite some progress | |||
jnthn: I have a static sub (get_thrower) in src/ops/perl6.ops, and want to reuse it in the binder | 12:02 | ||
jnthn: where should I put it? | |||
I want to throw more typed exceptions from C | 12:05 | ||
12:06
daxim joined
|
|||
JimmyZ_ | moritz++, it's easy to do i10n | 12:08 | |
12:08
jaldhar left
|
|||
jnthn | moritz: Make it unstatic, prefix it Rakudo_ and put it in a .c file in src/binder/ - if there's no appropraite one create a new exceptions.c and exceptions.h | 12:09 | |
12:09
jaldhar joined
|
|||
jnthn | And be sure to #include the exceptions.h in bind.c and the ops | 12:09 | |
12:10
tyatpi left
12:13
brrt joined
|
|||
moritz tries if it still compiles | 12:15 | ||
jnthn | Making it to 6000ish now. | 12:20 | |
12:20
bluescreen10 joined
|
|||
moritz | \o/ | 12:21 | |
double it once more, and you're there :-) | |||
12:24
crab2313 joined
|
|||
jnthn | std: method foo() { self!_foo() } | 12:27 | |
p6eval | std f179a1b: OUTPUT«Potential difficulties: 'method' declaration outside of class at /tmp/2KX6dZ962a line 1:------> method foo() ⏏{ self!_foo() }ok 00:00 41m» | ||
pmichaud | good morning, #perl6 | 12:31 | |
jnthn | o/ pmichaud | ||
moritz | good am, pm | ||
pmichaud | ooc, when FIRST/NEXT/LAST phasers were implemented, was there any discussion about assymmetry between the execution order of FIRST and LAST ? | 12:32 | |
12:32
tyatpi joined
|
|||
pmichaud | ...and I guess NEXT, too? | 12:32 | |
jnthn | pmichaud: As in, declaration order vs reverse order? | 12:33 | |
pmichaud | as in... | 12:34 | |
FIRST blocks are executed after PRE blocks, but NEXT/LAST blocks are executed before/after POST blocks | |||
currently we have NEXT/LAST executed after POST | |||
12:34
thou joined
|
|||
pmichaud | and I think it pretty much has to be that way, leading me to wonder if FIRST should occur before PRE to keep proper nesting. | 12:35 | |
jnthn | Ah... | ||
jnthn waves hands | |||
pmichaud | or at least to keep it symmetric | ||
or, even more directly: NEXT and LAST occur _after_ a block has exited, so I wonder if FIRST should occur before a block is entered. | 12:36 | ||
12:37
thou left
|
|||
pmichaud | anyway, I was just curious; I'll leave things as they are for now :) | 12:37 | |
jnthn | How would that work? | ||
moritz | it would be helpful to have use cases | ||
jnthn | You'd not have captured the lexical scope. | ||
pmichaud | I don't know... I just know there's an assymmetry there :) | ||
jnthn | *nod* | ||
pmichaud | *asymmetry | ||
12:38
thou joined
|
|||
dalek | p/altnfa: 631269d | jnthn++ | src/QRegex/NFA.nqp: Reflect that <alpha> also matches _ in the NFA we generate for it. |
12:47 | |
kudo/altnfa: 539cf11 | jnthn++ | src/Perl6/Grammar.pm: Move term:sym<type_declarator> higher up. |
|||
12:51
mucker left,
thou left
|
|||
jnthn | Way past line 8000 now | 12:53 | |
Gotta go to Stockholm. | |||
back this evening. | |||
moritz | have fun! | ||
pmichaud | picking up your Nobel Prize already? Seems a bit premature. :-) | ||
jnthn | :P | ||
Nah, just to teach TDD :) | |||
12:54
Chillance joined
|
|||
moritz | I'm almost done getting a typed exception for assignment type check failure | 12:54 | |
now I just need to eliminate all the typos :-) | 12:55 | ||
(which each takes the full 4 minute recompilation cycle) | |||
12:56
PacoAir joined
|
|||
pmichaud | ...where is the &warn handler defined? | 12:59 | |
(not the part that throws warnings, the part that catches and displays them) | |||
it's interacting badly with my new list code | |||
moritz | probably in Exception.pm | 13:00 | |
handle_control or so | 13:01 | ||
13:02
fgomez joined
|
|||
pmichaud | print_control, maybe? | 13:02 | |
moritz | sounds like it, yes | 13:03 | |
13:06
[particle]1 is now known as [particle]
13:08
Psyche^ joined
|
|||
pmichaud | $err.print: Backtrace.new($ex.backtrace, 0).nice(:oneline); | 13:08 | |
...what, exactly, is that line doing? | 13:09 | ||
(Exception.pm, line 157) | |||
moritz | it tries to extract the one best line to report as a calling location of the warning | 13:10 | |
pmichaud | we're passing a Backtrace to Backtrace.new, though? | 13:11 | |
moritz | well | ||
$ex.backtrace is the RPA that is parrot's idea of a backtrace | |||
13:11
Patterner left,
Psyche^ is now known as Patterner
|
|||
moritz | an RPA of hashes, iirc | 13:11 | |
and from that we create a Perl 6 Backtrace object | 13:12 | ||
pmichaud | method backtrace() { Backtrace.new(self) } | ||
am I looking in the wrong place? | |||
moritz | yes | ||
$ex is a parrot exception | |||
pmichaud | ah | ||
moritz | (feel free to rename the variable if that makes it less confusing for you) | ||
pmichaud | yes, for some reason I assumed it was an Exception. okay, it makes more sense now. | 13:13 | |
moritz | I can see how that leads to confusion :-) | ||
pmichaud | okay, I'm guessing the problem I'm having is somehow related to | ||
my class Backtrace is List { | |||
didn't know we had other subclasses of List :) | |||
PerlJam | It's too bad there isn't some sort of hungarian notation to distinguish parroty things from nqply things. | 13:14 | |
pmichaud | well, we can certainly come up with a convention for parroty versus perl6y | ||
13:15
mtk left,
mtk joined
|
|||
pmichaud | --ll-exception helps | 13:18 | |
moritz | though iirc Backtrace doesn't fiddle with List's internals | ||
13:18
mucker joined
|
|||
moritz | or maybe it does for construction | 13:18 | |
pmichaud | it might be related to its use of next/last in the constructor | 13:19 | |
the problem I'm having is definitely occuring in the constructor | |||
which is why I'm getting an infinite loop, as Backtrace.new is throwing an exception that is then being caught that is then trying to be handled by something that calls Backtrace.new that .... | |||
it doesn't appear to be a Backtrace/List issue directly; I don't see any worrisome fiddling by Backtrace. | 13:20 | ||
moritz | you might remember some of the "fun" I had at the Oslo hackathon straightening out errors from the backtrace printer | ||
pmichaud | the exception I'm getting is from Parrot: | 13:21 | |
Multiple Dispatch: No suitable candidate found for 'is_equal', with signature 'PP->I' | |||
so somewhere there's a comparison being done between a pair of PMCs that shouldn't be :-) | 13:22 | ||
moritz | sounds like a coercion is missing around a comparison op | ||
pmichaud | ...wish I could find out which one :-) | ||
moritz | well, coercion of arguments to comparison op missing | ||
pmichaud | (yes, I can... looking at generated source now.) | 13:23 | |
called from Sub 'reify' pc 462202 (src/gen/CORE.setting.pir:182144) (src/gen/CORE.setting:5028) | |||
.... it would really help if there was a faster way to determine _which_ Sub 'reify' that is. :-/ | 13:24 | ||
oh, I guess CORE.setting.5028 tells me | 13:25 | ||
13:25
fgomez left
|
|||
moritz | which reminds me that p6 level backtraces don't include the package name either | 13:25 | |
though iirc I put all the necessary infrastructure in place | 13:26 | ||
pmichaud | aha! | ||
found it | |||
type = getattribute exception, 'payload' | 13:27 | ||
copy-paste error... 'payload' should be 'type' there. | |||
moritz | is that from control_print? | 13:28 | |
pmichaud | no, it's in my new MapIter code. | ||
It's the exception handler for last/next/redo exceptions. | |||
moritz | no wonder I didn't notice it before :-) | 13:29 | |
pmichaud | I'm guessing this is the first time I've run into code that does last/next/redo :) | ||
(in this branch) | 13:30 | ||
dalek | kudo/nom: 531b9d8 | moritz++ | / (4 files): move C infrastructure for typed exception to a separate file I want to reuse it later in the binder |
||
kudo/nom: ffdcdf9 | moritz++ | src/ (2 files): typed exception for assignment type check failure |
|||
[Coke] | jnthn: are you on 32bit or 64bit windows? | 13:33 | |
13:47
cognominal_ joined,
cognominal left,
kaleem left
13:49
cognominal_ left,
cognominal joined
|
|||
dalek | ast: 6625f6f | moritz++ | S32-exceptions/misc.t: test X::TypeCheck::Assignment |
13:50 | |
13:50
drbean left
13:51
mikemol joined,
drbean joined
14:03
adu joined
14:05
mucker left
14:11
drbean left
14:12
fgomez joined,
drbean joined
|
|||
[Coke] | sorear, colomon: I need c# help - does this github.com/ServiceStack/ServiceStack.Redis look like a library or an app? the docs are unclear, and I am confused. | 14:14 | |
14:15
adu left
14:16
gorman joined
14:17
adu joined
|
|||
gorman | Hi, anyone have any good open source repos for perl? I want to read some perl | 14:17 | |
daxim | modules.perl6.org/ | ||
if you're looking for perl5, join #perl-help on irc.perl.org | 14:18 | ||
gorman | ah, that's a great link, thanks :D | 14:19 | |
14:19
PacoAir left
14:20
drbean left
|
|||
moritz | rosettacode also has quite some nice Perl 6 code | 14:20 | |
I'm pretty sure there's a link to it from perl6.org or perl6.org/community/ | |||
daxim | rosettacode.org/wiki/Category:Perl_6 | 14:21 | |
14:21
drbean joined
14:24
PacoAir joined,
PacoAir left
14:26
lorn joined
14:31
fgomez left
|
|||
dalek | kudo/nom: b2fa325 | moritz++ | src/core/Exception.pm: small exception tweak |
14:43 | |
14:54
leprevost joined
14:55
kaare_ joined
|
|||
colomon | [Coke]: looks like a library to me, at a quick glance | 15:02 | |
15:12
spider-mario joined
15:13
wtw left
15:21
tonginbox joined
|
|||
tonginbox | help | 15:21 | |
moritz | hello tonginbox. What do you need help with? | ||
tonginbox | i am new in here, just want to learn perl6 what should i start | 15:23 | |
moritz | tonginbox: perl6.org/ has many pointers to resources | ||
TimToady | which one works best depends on what kind of learner you are | 15:24 | |
and your background | |||
tonginbox | good question, TimToady | ||
TimToady | what languages are you familiar with | ||
? | |||
tonginbox | i am experienced dev on java and c# | ||
diakopter | have you used C# 4.0 dynamic? | 15:26 | |
(just curious) | |||
tonginbox | no i just use c# and .net mvc for web dev. | ||
TimToady | we have an implementation on .net, as it happens | 15:27 | |
15:27
crab2313 left
|
|||
TimToady | I don't think we have any tutorial specially tailored for people coming from an OO background yet | 15:28 | |
tonginbox | ok | ||
TimToady | there's the book moritz et al. are working on | ||
moritz | though "Using Perl 6" might still suit you | ||
tonginbox | ok | 15:29 | |
TimToady | there are the specs, which are pretty ferocious, but some people like reading 'em | ||
there are lots of ways to learn by example, such as rosettacode.org | |||
15:29
majrmovies joined
|
|||
TimToady | or by looking at existing modules | 15:29 | |
moritz | and of course you're welcome to ask here if you can't find answers by reading or experimenting | 15:30 | |
TimToady | unfortunately rosettacode is somewhat impoverished in Java and C# code | ||
dalek | kudo/nom: 8c91e19 | moritz++ | src/Perl6/Actions.pm: also forbid nqp:: with "use FORBID_PIR" |
||
TimToady | I guess those folks are too busy making a living :) | ||
tonginbox | rosettacode is the good one i will explore there first to get farmilier with perl6 | ||
shall i use perl6 on linux? can you suggest? | 15:31 | ||
now i'm on win. | |||
TimToady | you can use either niecza or rakudo on either linux or windows | ||
tonginbox | and i don't mind use linux coz has some exp on ubuntu and archlinux | ||
moritz | well, most of us are using it on linux, so there the experience is usually a bit smoother | ||
TimToady | niecza runs on mono, so you'd have some familiarity with the .netty bits | 15:32 | |
15:32
fgomez joined
|
|||
tonginbox | yes that's my concern if most ppl use linux then i should use it, i don't want to be alone you know. | 15:32 | |
TimToady | well, jnthn develops rakudo on windows, but sorear develops niecza on linux (I think) | 15:33 | |
I personally like linux better than windows, but maybe that's just me :) | |||
diakopter | I like Windows because it has my favorite text editor | 15:35 | |
15:36
shinobicl joined
|
|||
diakopter | come to think of it, that's by far the biggest reason | 15:36 | |
jnthn uses the same one | |||
TimToady | another consideration is which timezone you live in | 15:37 | |
diakopter | tonginbox: there are a few Perl 6 implementations you can try out. | ||
tonginbox | ok | 15:38 | |
TimToady | the main niecza developer is in the Pacific time zone, but most of the rakudo developers are in the EU | ||
perl6: say "hi" | |||
p6eval | rakudo b2fa32, niecza v18-2-gea3d97a, pugs: OUTPUT«hi» | ||
TimToady | there're three right there | ||
moritz | of which only rakudo and niecza are being actively developed | 15:39 | |
TimToady | pugs is being inactively developed :) | ||
15:40
gorman left
|
|||
pmichaud | (aside) at some point soon we might want a different phrase besides "actively developed" :-) | 15:40 | |
something that indicates movement beyond initial development | |||
TimToady | actively convergent :) | 15:41 | |
diakopter | perlito is active, but pretty behind | ||
TimToady | and it's not clear yet whether it will be convergent | ||
pmichaud | looking at perl6.org/getting-started/, it might be useful to update that page with some of the items mentioned above | 15:42 | |
i.e., rosetta code isn't mentioned on the getting-started page | 15:43 | ||
15:43
tonginbox left
|
|||
pmichaud | that page looks like it could use a bit of an update/refactor, imho | 15:44 | |
15:44
kurahaupo left
|
|||
TimToady | hmm, I was wrong about C# and Java, they both have about as many entries as Perl 6 does on RC | 15:45 | |
so that will be useful for comparison to tonginbox, I hope | 15:46 | ||
15:58
JimmyZ_ left
16:00
kurahaupo joined
16:07
brrt left
16:11
kaleem joined
16:12
mucker joined
16:16
thelazydeveloper joined
16:32
kaleem_ joined
16:33
araujo left
16:34
kaleem left
16:36
kaleem_ left
16:39
fglock joined
|
|||
fglock | o/ | 16:39 | |
16:51
araujo joined
16:53
ab5tract left,
PacoAir joined
16:54
japhb left
16:59
GlitchMr joined,
tyatpi left
17:00
dakkar left
17:09
araujo left
17:12
tyatpi joined
|
|||
sorear | good * #perl6 | 17:14 | |
fglock | sorear: o/ | 17:19 | |
17:20
araujo joined,
araujo left,
araujo joined
17:23
leprevost left,
araujo left,
stepnem left
17:26
birdwind1pbird left
17:30
araujo joined,
araujo left,
araujo joined
17:35
jaldhar left,
_jaldhar joined,
sergot joined
|
|||
sergot | hi o/ | 17:35 | |
tadzik | hello sergot | 17:36 | |
17:40
japhb joined
17:42
fhelmberger left
17:47
stepnem joined
|
|||
sorear | o/ | 17:48 | |
17:58
stepnem left
|
|||
[Coke] | colomon++ #danke | 18:02 | |
18:03
stepnem joined
|
|||
sjohnson | sorear: hi | 18:14 | |
tadzik: *fat face emoticon* | |||
sorear | hello sjohnson. | 18:15 | |
[Coke] | since jnthn++ is always talking about lovely food... just got some dates, with almonds in them, covered in chocolate, from a coworker who just traveled to saudi arabia. MMMM. | 18:19 | |
18:20
majrmovies is now known as majrmovies_,
majrmovies_ is now known as _majrmovies
18:21
_jaldhar left
|
|||
moritz | [Coke]: sounds good | 18:25 | |
18:31
tyatpi left
|
|||
tadzik | ( ° ー°)<( Hello sjohnson! )> | 18:34 | |
sjohnson | heheh | 18:36 | |
sorear | [Coke]: isn't that illegal? | 18:37 | |
18:42
daxim left
18:43
tyatpi joined
18:45
cognominal_ joined
18:48
cognominal left
18:50
mucker left
|
|||
moritz | erm, what should be illegal? | 18:50 | |
TimToady | candies are generally considered okay to bring in | ||
and I'd say this is more like candy than like fruit | 18:51 | ||
moritz | fresh fruit might be problematic | ||
TimToady | generally most "processed" things are okay if they're in their package | ||
but probably not meats | 18:52 | ||
18:52
mucker joined
|
|||
TimToady | someone might steal your sausage and feed it to a cow! | 18:52 | |
which might make them mad, and we want happy cows | |||
sjohnson wants to eat a cheeseburger now | 18:56 | ||
19:02
mucker left
19:03
ingy joined
19:06
aindilis left
19:13
birdwindupbird joined
19:18
aindilis joined
|
|||
moritz | r: 1 = 2 | 19:33 | |
p6eval | rakudo 8c91e1: OUTPUT«===SORRY!===Method 'lvalue' not found for invocant of class 'Integer'» | ||
moritz submits rakudobug | |||
r: 1e0 = 2 | 19:34 | ||
p6eval | rakudo 8c91e1: OUTPUT«===SORRY!===Method 'lvalue' not found for invocant of class 'Float'» | ||
moritz | r: 1.0 = 2 | ||
p6eval | rakudo 8c91e1: OUTPUT«Cannot assign to a non-container in block <anon> at /tmp/4FS7Qw_leC:1» | ||
GlitchMr | r: '1.0' = 2 | 19:36 | |
p6eval | rakudo 8c91e1: OUTPUT«===SORRY!===Method 'lvalue' not found for invocant of class 'String'» | ||
GlitchMr | r: ['1.0'] = 2 | 19:37 | |
p6eval | rakudo 8c91e1: ( no output ) | ||
GlitchMr | ... what? | ||
n: ['1.0'] = 2 | |||
p6eval | niecza v18-2-gea3d97a: OUTPUT«Unhandled exception: Writing to readonly scalar at /tmp/uSfeCIjdwP line 1 (mainline @ 2)  at /home/p6eval/niecza/lib/CORE.setting line 3911 (ANON @ 3)  at /home/p6eval/niecza/lib/CORE.setting line 3912 (module-CORE @ 558)  at /home/p6eval/niecza/lib… | ||
moritz | [] returns an Array; I guess rakudo just calls its STORE method or so | 19:38 | |
GlitchMr | r: < 1.0 2.0 > = 2 | ||
p6eval | rakudo 8c91e1: OUTPUT«Cannot assign to a non-container in method STORE at src/gen/CORE.setting:4637 in block <anon> at /tmp/eE5ghGnPlL:1» | ||
GlitchMr | r: < 1.0 2.0 >.WHAT | 19:39 | |
p6eval | rakudo 8c91e1: ( no output ) | ||
GlitchMr | r: print < 1.0 2.0 >.WHAT | ||
p6eval | rakudo 8c91e1: OUTPUT«use of uninitialized variable $v of type Parcel in string context in block <anon> at /tmp/WBRXORM4oQ:1» | ||
19:46
mikemol_ joined
19:48
fglock left,
mikemol left
19:49
shinobicl left
|
|||
dalek | kudo/nom: e75a0ae | moritz++ | src/ (2 files): typed exception for assignment to non-container |
19:51 | |
ast: 61b24d9 | moritz++ | S32-exceptions/misc.t: test X::Assignment::RO, and add tests for RT #113534 |
|||
ast: 343c92a | moritz++ | fudge: [fudge] make it recognize throws_like |
|||
19:56
brrt joined
19:59
kboga joined
|
|||
dalek | ast: 7d80d8b | moritz++ | S02-types/subset.t: test RT #113434, subset type conformance |
20:01 | |
jnthn | evenin' | 20:02 | |
[Coke] | sorear: illegal or not, it's DELICIOUS. NOMNOMNOM | 20:03 | |
moritz | \o jnthn. How was teaching? | ||
kboga | hi #perl6 | 20:04 | |
jnthn | moritz: It wasn't today :) | ||
moritz: Today I was just traveling up to Stockholm | |||
Teaching is tomorrow and Fri | |||
Thus why I had some tuits for LTM stuff earlier ;) | 20:05 | ||
moritz | jnthn: oh, ok | ||
hi kboga | |||
hacking rakudo's C in limited ways is not as scary as I initially thought | 20:06 | ||
jnthn | It ain't bad, once you C what to do :) | 20:07 | |
moritz slaps jnthn with a large saucepun | 20:08 | ||
r: try my Int $x = Str; say $!.perl | 20:10 | ||
p6eval | rakudo 8c91e1: OUTPUT«X::TypeCheck::Assignment.new(symbol => "\$x", operation => "assignment", got => Str, expected => Int)» | ||
moritz | r: try my Int $x = "foo"; say $!.perl | 20:11 | |
p6eval | rakudo 8c91e1: OUTPUT«X::TypeCheck::Assignment.new(symbol => "\$x", operation => "assignment", got => "foo", expected => Int)» | ||
jnthn | woo :) | ||
What else could operation be? | |||
moritz | it's inherited from X::TypeCheck | ||
could be binding, return value, assignment right now | |||
jnthn | Ah. Feels a little like duplication given that is encoded in the type too | 20:12 | |
moritz | well, there are two different use cases here | ||
the first is "catch me only assignment type check failures" | 20:13 | ||
for that the subclass is easier | |||
the second is "catch any type check failure, and tell me what it is that failed" | |||
for that the attribute is easier | |||
tadzik | good evening | ||
moritz | that said I'm not fixed on that particular design | ||
\o tadzik | |||
tadzik | moritz: o/ | ||
jnthn | moritz: Fair point. | 20:14 | |
hi tadzik | |||
moritz | tomorrow is a holliday, and I have Friday off too | ||
kboga | hi moritz, jnthn, tadzik | ||
tadzik | same here | ||
time for university projects! \o/ | |||
spider-mario | now it seems that rakudo segfaults on exit when I trigger an assignment-to-non-container exception | 20:18 | |
> my $foo = 'foo'; $foo R~= 'foo'; | |||
Cannot assign to a non-container | |||
> ^D | |||
zsh: segmentation fault perl6 | |||
20:19
GlitchMr left
|
|||
moritz | here I get | 20:23 | |
Null PMC access in get_pmc_keyed() | |||
(with a different trigger for the same bug) | 20:24 | ||
20:24
adu left
|
|||
moritz | ah, I can reproduce the segfault too | 20:25 | |
[Coke] | moritz: hey, question for you onthe grant. | 20:32 | |
hooks for localization? | 20:33 | ||
moritz | [Coke]: I had mixing roles with the translated messages in the back of my mind | 20:37 | |
*mixing in | |||
[Coke]: but I haven't really experimented with it yet | |||
jnthn | That seems workable...plus you could do it as an extra layer of setting. | 20:38 | |
moritz | jnthn: oh, that's actually a better idea | 20:39 | |
or instead of mixins, one could augment the classes (not pretty, I know) and add method message-sv() { ... }; message-de() { ... } | 20:41 | ||
and have the backtrace printer picke the message-$lang if available, and fall back to message() | |||
$ ./perl6 --setting=DE -e 'sub f() { $^x }' | 20:46 | ||
===SORRY!=== | |||
Platzhaltervariablen können keine bestehenden Signaturen überschreiben | |||
at -e:1 | |||
tadzik | oooo | ||
PerlJam | moritz: what about X::Whatever delegate to DE::X::Whatever or EN::X::Whatever ? | 20:47 | |
(if it exists) | |||
moritz | PerlJam: that way every exception type would need to be aware of l10n | ||
PerlJam: but if we load an alternate setting, or modify the backtrace printer, we don't need that | 20:48 | ||
PerlJam | ok | ||
sorear | wouldn't it make a lot more sense to use something similar to gettext? | 20:49 | |
moritz | sorear: IMHO yes | ||
sorear wonders if moritz actually has a DE.setting | 20:50 | ||
moritz | sorear: but when I proposed to use something more like a template system instead of interpolating variables into strings I was universally shot down | ||
Tene | search.cpan.org/~toddr/Locale-Maket.../TPJ13.pod is a nice article with recommendations on localization libraries. | ||
spider-mario | moritz : if I had participated to the vote, you wouldn’t have been *universally* shot down | 20:51 | |
20:51
_majrmovies left
|
|||
moritz | sorear: gist.github.com/2884688 | 20:52 | |
PerlJam | I don't quite see the difference between interpolating vars into strings and using a template system except that the in the former something that is arguably "data" is represented by code. | 20:53 | |
moritz | PerlJam: the question is how easy it is to replace the template | ||
spider-mario | templates are more easily translated | 20:54 | |
moritz | PerlJam: which is tied to the question whether something is data or code | ||
PerlJam | Easier to do in datafiles than in code IMHO | ||
moritz | aye | ||
sorear | moritz: You should have done it while I was awake, I would have backed you up | ||
:) | 20:55 | ||
PerlJam | moritz: There are at least 3 people awake right now who would probably be okay with you shrugging off the universe and using a template system :-) | 20:56 | |
moritz | well, it would have been helpful to get such feedback not only in hindsight | 20:57 | |
kboga | Is it in nqp possible to get multiple return values from a function? (besides taking the Q:PIR route) | 21:05 | |
21:06
kaare_ left
|
|||
moritz isn't aware of a non-Q:PIR way, but that doesn't have to mean anything | 21:06 | ||
21:07
mikemol_ left,
alvis left
|
|||
kboga | Hmm, I've tried eliminating the Q:PIR blocks in HLL/Grammar.pm but one was more resilient than the others :) | 21:08 | |
jnthn | So, here's the line of CORE.setting that we now fail at: | ||
(in altnfa) | |||
has $.when = 'in Perl 6'; | 21:09 | ||
[Coke] | altnfa? | ||
jnthn | [Coke]: Making alternations do LTM properly | ||
The reason this fails is...interesting :) | |||
Ah, and we're not doing what STD does in terms of longest prefix handling | 21:11 | ||
21:13
libertyprime left
|
|||
jnthn | Anyways, it turns out when is a terminator, and ends with <.end_keyword>, which matched the space after the when, and thus it was a longer prefix than the normal variable declaration rule. | 21:13 | |
21:13
libertyprime joined
21:16
brrt left
|
|||
dalek | kudo/altnfa: a9e6d32 | jonathan++ | src/Perl6/Grammar.pm: Tweak some special variables to terminate LTM where STD does. Avoids mis-parses. |
21:17 | |
jnthn | Now we almost get up to 11,000ish. | 21:18 | |
sorear | spectests? | ||
21:19
libertyprime left
|
|||
jnthn | sorear: Line in CORE.setting | 21:20 | |
sorear: I'm havin' to fix the grammar up (or sometimes the grammar engine :)) now I've enabled | doing LTM semantics. | |||
21:20
libertyprime joined
|
|||
jnthn | sorear: Which a bunch of the time has been looking at STD for the rules we fail on and adopting STDisms. Which is quite reassuring... | 21:21 | |
21:21
libertyprime left
21:22
libertyprime joined
|
|||
dalek | kudo/altnfa: bdfffc6 | jonathan++ | src/Perl6/Grammar.pm: Couple of term re-orderings since we're just getting off with the declaration order tie-break for the moment and...we now complete the build. |
21:25 | |
tadzik | yay! | 21:26 | |
jnthn | bah | 21:27 | |
But every spectest fails | |||
===SORRY!=== | |||
Could not find v6 in any of: ... | |||
21:28
birdwindupbird left
|
|||
jnthn | oh, token version is full of "oh noes LTM violation" hacks... | 21:28 | |
dalek | kudo/altnfa: f6dceba | jonathan++ | src/Perl6/Grammar.pm: Fix token version so it wins in 'use v6'. |
21:36 | |
21:40
s1n left
|
|||
jnthn | Gee, my laptop runs the spectests slow... No regressions anywhere in S02 though. | 21:40 | |
tadzik | yeah, *your* laptop runs spectests slow... ;) | 21:41 | |
jnthn | My laptop managed to BSOD twice within a presentation a few weeks back. It'd never done so before, and it's never done so since. However, the presentation it did it in not only had a $boss present, but also $boss from $big-client. | 21:45 | |
So within an hour of the presentation I had a "so, we need to buy you a new latop" mail :) | |||
tadzik | :) | 21:46 | |
jnthn | Didn't take them up on it yet, though. | ||
Hm. S05 is the first place some regressions show up. 3 tests files have issues. | 21:47 | ||
WOW. | 22:02 | ||
Those 3 S05 test files with regressions, along with 1 file in S32 (which may actually be due to missing changes) are the only regressions I have | 22:03 | ||
Disclaimer: non-ICU build. | |||
sorear | Does buying new laptops actually make BSODs less frequent? | ||
jnthn | sorear: Highly unlikely. But shhh :P | 22:04 | |
oh, all three S05 regressions have the same underlying cause and it looks dead easy to fix... | 22:07 | ||
grrr...it was meant to look tricky to fix so I'd go to bed like I should... | |||
geekosaur | sorear, only, I suspect, because it means a clean install and most BSODs seem to come from leftover garbage in the registry | 22:08 | |
22:11
tyatpi left
|
|||
sorear | geekosaur: I wonder how that causation works... | 22:11 | |
22:12
tyatpi joined
|
|||
spider-mario | <jnthn> My laptop managed to BSOD twice within a presentation a few weeks back. It'd never done so before, and it's never done so since. However, the presentation it did it in not only had a $boss present, but also $boss from $big-client. | 22:21 | |
well, the more people there are watching you use your computer, the worse it will behave | |||
22:21
alester left
|
|||
spider-mario | maybe computers are shy | 22:21 | |
22:23
libertyprime left,
mikemol joined
22:24
libertyprime joined
|
|||
dalek | p/altnfa: 8cdbe8f | jonathan++ | src/QRegex/NFA.nqp: Be careful not to call .nqpattr on things that doesn't support it. Fixes the three S05 regressions in altnfa in Rakudo. |
22:24 | |
22:25
libertyprime left
|
|||
jnthn | moritz, tadzik, pmichaud: Testing of altnfa branches (need the NQP and Rakudo one) is very welcome. Particularly if you have ICU. A run of the-cheese-I-forgot-how-to-spell would also be interesting. :) | 22:25 | |
Sleep time, night o/ | |||
22:28
bluescreen10 left,
benabik left
22:29
spider-mario left,
libertyprime joined
|
|||
geekosaur | one of the ways it works is that, the larger a given hive is, the longer it will be locked while programs query or modify it... but drivers also store their configuration in the registry, and if a hive is locked when a driver needs it Bad Things happen. (drivers should probably not be written such that they get into this situation, but not all driver authors seem to understand that) | 22:34 | |
at one point microsoft started vetting drivers before permitting them, but that was just too big a job for any one company, even Microsoft | 22:35 | ||
sergot | good night o/ | 22:38 | |
22:38
sergot left
22:42
libertyprime left
22:43
libertyprime joined
22:46
libertyprime left
22:47
libertyprime joined
22:51
libertyprime left
|
|||
flussence | that's a great explanation (and absolutely horrible) | 22:51 | |
22:51
libertyprime joined
|
|||
[Coke] | jnthn++ | 22:59 | |
22:59
PacoAir left
|
|||
geekosaur | and that's just one of the thimgs that comes up. some things don't lock when they should, some have race conditions, some have time constraints, there are a lot of crappy coders in the world, and the registry code actually tries to work around all of this but as a hive gets bigger it gets harder and harder to compensate for lousy code | 22:59 | |
and many programs don't clean up after themselves, so the hives grow more than they need to | 23:00 | ||
TimToady | .o(why does this remind me of all the dotfiles in my hope directory...) | 23:01 | |
geekosaur | (and then there are the programs that store their state in the wrong hive; a lot of stuff ends up in a system registry hive and thereby potential access conflict with drivers etc. when it really doesn't belong there. microsoft has tried to make this more difficult but had to relax it for backward compatibility with backward programs...) | 23:02 | |
indeed | |||
win7 has been microsoft's best chance to date to say "screw it, we're breaking your crap programs so they stop breaking our OS" | |||
TimToady, with one difference: imagine that, for some reason, Unix had to leave /etc world writable in the same way. individual files are secure, but any program can drop files in, including in subdirectories intended for exclusive use by system services | 23:06 | ||
and Microsoft has been trying to change this for years (decades even) but keeps having to open things back up because some badly behaved program is perceived as being so important that ti must be allowed to work, no matter that it screws with things it has no business touching | 23:08 | ||
geekosaur wonders how much of the big UI changes in win8 are intended to be a psychological "things change. NOW." aimed at the crap programmers who keep doing things they oughtn't | 23:10 | ||
23:11
thelazydeveloper left
23:16
kboga left
23:25
kurahaupo left,
itz joined
23:26
kboga joined,
sporous left,
whiteknight joined
23:27
sporous joined,
whiteknight is now known as Guest35719
|
|||
kboga | phenny: tell jnthn The altnfa test output you requested (nqp test & rakudo spectest) with ICU: gist.github.com/2885393 | 23:33 | |
phenny | kboga: I'll pass that on when jnthn is around. | ||
23:43
aloha joined
23:49
timotimo is now known as timonator
23:52
libertyprime left,
libertyprime joined
23:55
Chillance left
|