»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'p6: say 3;' or rakudo:, std:, or /msg camelia p6: ... | irclog: irc.perl6.org | UTF-8 is our friend! | feather will shut down permanently on 2015-03-31 Set by jnthn on 28 February 2015. |
|||
tony-o | .tell timotimo here is a more concise gist of the problem: gist.github.com/tony-o/ad52076865a21edec940 | 00:08 | |
yoleaux | tony-o: I'll pass your message to timotimo. | ||
tony-o | thanks yoleaux | ||
00:17
Ben_Goldberg joined
00:20
BenGoldberg left
00:23
laouji joined
00:38
laouji left
00:39
laouji joined
00:43
laouji left
00:47
jack_rabbit left
00:48
laouji joined
01:07
khisanth_ is now known as Khisanth
01:22
gfldex left
01:24
Ben_Goldberg is now known as BenGoldberg
|
|||
eli-se | haha | 01:38 | |
I made someone believe comments have runtime cost in C++. | |||
BenGoldberg | You're an evil person. | 01:42 | |
01:46
tinyblak joined
|
|||
BenGoldberg | m: "Just another Unocide hacker,".trans( "\x20..\x7f" => "\xff00..\xff7f" ).say; | 01:47 | |
camelia | rakudo-moar 143f62: OUTPUT«JustanotherUnocidehacker,» | ||
colomon | I’ve felt like committing Unocide at times.... | 01:51 | |
01:51
tinyblak left
|
|||
BenGoldberg | Umm, freudian slip? | 01:56 | |
BenGoldberg is still giggling, though | |||
tony-o | looks intentional :-) | ||
ah | |||
01:57
tinyblak joined
|
|||
BenGoldberg | Not intentional when I typed it, but I did see it and choose not to fix it when I copied/pasted from where I'm chatting with camelia | 01:57 | |
geekosaur | see also: wtf8 | 02:00 | |
colomon | Just googled, so I know what wtf8 really is, but it feels like my reaction to discovering that Microsoft had its own, incompatiable set of multibyte encodings. | 02:04 | |
02:12
noganex_ joined
|
|||
TimToady | m: say grep Whatever, 1,2,3; | 02:13 | |
camelia | rakudo-moar 143f62: OUTPUT«» | ||
TimToady | m: say grep *, 1,2,3; | ||
camelia | rakudo-moar 143f62: OUTPUT«1 2 3» | ||
TimToady | m: say (Whatever + 3)(10) | 02:14 | |
camelia | rakudo-moar 143f62: OUTPUT«13» | ||
TimToady | that...should fail | ||
I think I have a fix, by accident | |||
eli-se | I just noticed my interpreter is copyable, so I can trivially implement backtracking of arbitrary code! | ||
02:15
noganex left
|
|||
TimToady | trivial for you :) | 02:15 | |
eli-se | At least, within a single stack frame. | 02:16 | |
time to sleep, bye! | 02:17 | ||
02:17
eli-se left
02:26
tinyblak left
02:43
tinyblak joined
02:45
tinyblak_ joined
02:48
tinyblak left
02:55
davido_ left
02:56
davido_ joined,
jack_rabbit joined
02:57
Zoffix joined
|
|||
dalek | c: d971ef5 | skids++ | lib/Language/syntax.pod: Typo fix. |
02:58 | |
03:00
hobbs left
03:16
hobbs joined
03:34
adu joined
|
|||
dalek | c: abf90a7 | skids++ | lib/Language/setbagmix.pod: Fix description of (>+) and (<+) "arguments" -> "elements" and order of $a,$b |
03:47 | |
TimToady | >+ ? | 03:53 | |
03:53
skids left
|
|||
TimToady | oh, bag ops | 03:54 | |
04:04
FROGGS__ joined
04:06
Sqirrel left
|
|||
dalek | kudo/nom: 292ef66 | TimToady++ | src/Perl6/Actions.nqp: allow ~~ to autoprime on * but not on WhateverCode Also, prevent Whatever and WhateverCode type objects from being used as autoprimers. |
04:06 | |
kudo/nom: d76ea82 | TimToady++ | src/Perl6/Actions.nqp: add a few commatraps |
|||
ast: 4faae07 | TimToady++ | S0 (2 files): check revised semantics for Whatever vs ~~ |
04:07 | ||
04:07
FROGGS_ left
|
|||
dalek | ecs: 6074ad5 | TimToady++ | S02-bits.pod: revised semantics for ~~ wrt Whatever We now allow Whatever to autoprime a ~~, but not WhateverCode. |
04:09 | |
04:17
jack_rabbit left
|
|||
TimToady | m: say (1,1e0).map: * ~~ Int | 04:20 | |
camelia | rakudo-moar 143f62: OUTPUT«No such method 'count' for invocant of type 'Bool' in method reify at src/gen/m-CORE.setting:9586 in block at src/gen/m-CORE.setting:9494 in method reify at src/gen/m-CORE.setting:9469 in block at src/gen/m-CORE.setting:9494 in method…» | ||
04:21
hobbs left
|
|||
TimToady | m: say (1,1e0).map: * ~~ Int | 04:21 | |
camelia | rakudo-moar d76ea8: OUTPUT«True False» | ||
04:22
jack_rabbit joined
04:23
adu left
04:25
hobbs joined
|
|||
TimToady | .tell lucasb Fixed it for ya: irclog.perlgeek.de/perl6/2015-04-06#i_10393460 | 04:25 | |
yoleaux | TimToady: I'll pass your message to lucasb. | ||
TimToady | m: say (Whatever + 3)(10) | 04:27 | |
camelia | rakudo-moar d76ea8: OUTPUT«use of uninitialized value of type Whatever in numeric context in block <unit> at /tmp/rnDB6qw0qD:1Cannot find method 'postcircumfix:<( )>' in block <unit> at /tmp/rnDB6qw0qD:1» | ||
TimToady | fixed that for me :) | ||
04:51
hobbs left
04:52
hobbs joined
05:07
Sqirrel joined
05:13
kaare_ joined
05:43
BenGoldberg left
06:36
kurahaupo1 left
06:45
risou is now known as risou_awy,
risou_awy is now known as risou
06:55
andreoss joined
|
|||
andreoss | is there still a chance to see a video of TimToady's talk at fosdem or it's gone missing completely ? | 06:58 | |
06:59
jack_rabbit left
|
|||
vendethiel | computer, message. | 07:08 | |
yoleaux | 5 Apr 2015 22:07Z <eli-se> vendethiel: I implemented sleep with Boost.Asio! | ||
vendethiel | grats, eli-se | ||
07:27
andreoss left
07:32
risou is now known as risou_awy,
risou_awy is now known as risou
07:46
jferrero left
|
|||
timotimo | o/ | 07:46 | |
yoleaux | 00:08Z <tony-o> timotimo: here is a more concise gist of the problem: gist.github.com/tony-o/ad52076865a21edec940 | ||
timotimo | .botsnack | ||
yoleaux | :D | ||
07:49
Ven joined
07:59
jack_rabbit joined,
RabidGravy joined
|
|||
Ven | m: say grep *, 0, 1, 2, 3; | 08:06 | |
camelia | rakudo-moar d76ea8: OUTPUT«0 1 2 3» | ||
08:06
jack_rabbit left
08:19
jferrero joined
08:21
fishpig joined
08:22
fishpig left
08:25
fishpig joined,
fishpig left
08:28
rindolf joined
08:31
darutoko joined
08:32
Ven left
|
|||
[Tux] | Inline::Perl5 till broken | 08:35 | |
still | |||
08:36
andreoss joined
|
|||
nwc10 | jnthn: for NFG, I'm wonder if a viable "hybrid" approach is to implement >1 "global" NFG table. So, when comparing two strings, if they share the same table, memcmp() and be done | 08:45 | |
08:45
KCL_ joined
|
|||
nwc10 | and only actually use 2 or 3 if the first table is heavily used | 08:46 | |
but, as we found with Perl 5 hashing, attempting to build something that reacts when it detects that it's "under attack" actually gives new things to attack | 08:47 | ||
jnthn | nwc10: Trouble is that makes every string a pointer bigger, to point to the table. | ||
nwc10 | yes, I sort of realised that as I was typing. At least "will need a pointer, so that we know when to GC the common tables" | 08:48 | |
jnthn | But generally, we should make this work first in the easiest way possible so we can assemble a decent test suite, before we go on to smarter schemes. | ||
nwc10 | "simplest thing that could possibly work" | ||
[then you typed that] | |||
"simplest thing that could possibly work" is a global table | |||
08:48
KCL left
|
|||
jnthn | Right, which is hwy I'm starting there | 08:49 | |
timotimo | i'm still aching to have something in place that reduces the number of duplicate MVMString instances ... | ||
jnthn | Also, we could cap the number of allowed combiners. | ||
There's precedent for that in the Unicode standard. | |||
nwc10 | the *other* thing about attacks, is to figure out theoretical attacks that would take out a single table, but would be successfully mitigated by something more sophisticated | ||
timotimo | which can also lead to faster comparisons, as MVMString tries pointer compare first | ||
nwc10 | IIRC it's 32 | ||
timotimo | my lord ... the combinatorics ... | 08:50 | |
nwc10 | at least, for one of the specified interchance formats | ||
jnthn | Well, the actual answer is that Unicode itself doesn't spec a limit, but the safe text streaming thing in the annex about normalization forms picked 30. | ||
nwc10 | but, I think that there are enough permutaitons of "1 base character" and "1 combining thingybob" to get you well beyond 8G | ||
ah 30, not 32 | 08:51 | ||
timotimo | right, 1+1 already gives you a metric ton of combinations :S | ||
nwc10 | but if $num_base_chars * $num_single_combining_things is a metric ton of pain | ||
jnthn | I suspect 30 'cus 32 bytes is a conveneient computer size, and for normalization you need the base char, the combiners, and the next base char... | ||
nwc10 | then the 30 limit doesn't hlep you | ||
jnthn | Well, we don't have to pick as high as 30. | ||
:) | |||
nwc10 | but we're not allowed zero? | 08:52 | |
jnthn | m: uniint | ||
camelia | rakudo-moar d76ea8: OUTPUT«5===SORRY!5=== Error while compiling /tmp/LLHkVqVAw1Undeclared routine: uniint used at line 1. Did you mean 'unlink'?» | ||
jnthn | m: unival | ||
camelia | rakudo-moar d76ea8: OUTPUT«5===SORRY!5=== Error while compiling /tmp/lRIvWktrYhCalling unival() will never work with any of these multi signatures: (Str $str)  (Int $code)at /tmp/lRIvWktrYh:1------> 3<BOL>7⏏5unival» | ||
jnthn | m: uniprop | ||
camelia | rakudo-moar d76ea8: OUTPUT«5===SORRY!5=== Error while compiling /tmp/4yMX_OK4G8Calling uniprop() will never work with any of these multi signatures: (Str $str, Any |c)  (Int $code, Stringy $propname = { ... })at /tmp/4yMX_OK4G8:1------> 3<BOL>7⏏5uniprop…» | ||
jnthn | m: uniprop(65, 'Canonical_Combining_Class') | ||
camelia | ( no output ) | ||
jnthn | m: uniprop(65, 'Canonical_Combining_Class').say | ||
camelia | rakudo-moar d76ea8: OUTPUT«0» | ||
jnthn | m: (^0x10FFFF).grep({ uniprop($_, 'Canonical_Combining_Class') }).elems.say | 08:53 | |
camelia | rakudo-moar d76ea8: OUTPUT«(timeout)» | 08:54 | |
jnthn | aww! | ||
m: (^0xFFFF).grep({ uniprop($_, 'Canonical_Combining_Class') }).elems.say | |||
camelia | rakudo-moar d76ea8: OUTPUT«2661» | ||
jnthn | m: (^0x2FFFF).grep({ uniprop($_, 'Canonical_Combining_Class') }).elems.say | ||
camelia | rakudo-moar d76ea8: OUTPUT«8993» | ||
jnthn | wow | 08:55 | |
m: (^0x1FFFF).grep({ uniprop($_, 'Canonical_Combining_Class') }).elems.say | |||
camelia | rakudo-moar d76ea8: OUTPUT«8993» | ||
jnthn | m: (0xE0000..0xEFFFF).grep({ uniprop($_, 'Canonical_Combining_Class') }).elems.say | ||
camelia | rakudo-moar d76ea8: OUTPUT«337» | ||
jnthn | m: say 8993 + 337 | ||
camelia | rakudo-moar d76ea8: OUTPUT«9330» | ||
08:56
Ven joined
|
|||
jnthn | That's how many combiners there are, but that doesn't mean the calculation is anyting like 9330 ** 30 | 08:56 | |
Because you have to do a partial sort as part of NFD. | |||
nwc10 | m: 2**34 / 9330 | 08:57 | |
camelia | ( no output ) | ||
nwc10 | m: say 2**34 / 9330 | ||
jnthn | But I dunno how to do an easy calculation to figure out how much that guts it down :) | ||
camelia | rakudo-moar d76ea8: OUTPUT«1841357.897535» | ||
nwc10 | how many things are there that they can combine with? | 08:58 | |
jnthn | The rest :) | ||
nwc10 | it's going to be less than 1841357.897535 | ||
you can do things like stick a combiner on a han character? | |||
jnthn | m: say 0x2FFFF + 0xFFFF # guesstimate based on assigned planes | 08:59 | |
camelia | rakudo-moar d76ea8: OUTPUT«262142» | ||
jnthn | Yes, you can put them on anything. | ||
nwc10 | 365 days a year? Not just on April 1st? :-( | 09:00 | |
This is making me think that I should put some beer in the fridge. Obviously, as much as will fit. | |||
jnthn | Well, I guess you could sanely put a Combining Enclosing Circle Backslash on a 友 which I guess is "no friends allowed" or something :P | 09:03 | |
m: say "友\x20E0" | 09:04 | ||
camelia | rakudo-moar d76ea8: OUTPUT«友⃠» | ||
jnthn | Aww | ||
oh, or maybe my font is just clueless about that one | |||
nwc10 | m: say chr 0x53cb ~ chr 0x20E3 | 09:06 | |
camelia | rakudo-moar d76ea8: OUTPUT«Cannot convert string to number: trailing characters after number in '21451⏏⃣' (indicated by ⏏) in method Int at src/gen/m-CORE.setting:15894 in method Int at src/gen/m-CORE.setting:7049 in sub chr at src/gen/m-CORE.setting:5931 in bl…» | ||
nwc10 | m: say chr(0x53cb) ~ chr(0x20E3) | ||
camelia | rakudo-moar d76ea8: OUTPUT«友⃣» | ||
09:06
telex left
|
|||
nwc10 | m: say chr(78) ~ chr(0x20E3) | 09:07 | |
camelia | rakudo-moar d76ea8: OUTPUT«N⃣» | ||
nwc10 | OK, my terminal doesn't like putting COMBINING ENCLOSING KEYCAP round the 友 | ||
but the IRC log in Firefox shows it | |||
I hope "友" isn't rude | |||
09:08
telex joined
|
|||
nwc10 | anyway, yes, this illustrates your point - "anything with anything" | 09:08 | |
09:09
gfldex joined
|
|||
jnthn | No, 友 just means "friend" :) | 09:10 | |
Today seems to be continued Easter relaxation; will some good tuits tomorrow and Wednesday :) | 09:11 | ||
09:12
espadrine_ joined
09:14
Rounin joined
|
|||
nwc10 | We had snow. (And sunshine) | 09:14 | |
09:26
sirdancealot left
09:30
diana_olhovik joined
09:32
sirdancealot joined
09:44
mohij joined,
Ven left
09:47
Ven joined
|
|||
Ven | o/, #perl6. | 09:50 | |
I'm still in the process of considering stuff to remove from the perl6 tutorial (because it's useless), and want to consider other things to add. I have a list of things I *could* be talking about: gist.github.com/vendethiel/5332f431236490f39ffa | 09:51 | ||
I also really need to rewrite the intro to feel less "rushed", and be more like a tutorial. Maybe this'll be less fitting for learnxiny.com, but I love the code-as-documentation format... | 09:52 | ||
(I'm really asking for feedback here, and say, examples of tutorials that just blew your mind because they were so good) | |||
nwc10 | we have more snow. | 09:55 | |
Zoffix | Ven, I really liked the pace of JQuery Succinctly: www.syncfusion.com/resources/techpo...ry.org0513 | ||
(it's free to download; you just have to give them random info) | |||
It doesn't bog you down with useless facts and info, yet gives enough material for you to understand what's going on. | 09:56 | ||
09:57
Ven left
10:01
Ven joined
|
|||
Ven | Zoffix: will read, thanks | 10:02 | |
masak | good noon, #perl6 | ||
Ven | that's definitely an issue with perl/perl6. the "baby perl" | ||
o/, masak | |||
jnthn | nwc10: Snow and sun sounds kinda fun...here mostly rain and cloud. | ||
Ven | you need to get a "simple enough" base language to build up from there :) can't throw some [Zeq] »xx». | 10:03 | |
nwc10 | jnthn: it's also quite cold, particularly in the wind | 10:04 | |
10:04
eli-se joined
|
|||
Ven | (I already got feedback from tim bunce at apw14 that it was too dense, and I can definitely see where that's coming from). I've received a few issues on github that have pointed out very specific issue, twas good | 10:04 | |
nwc10 | (I was getting a bit cold changing Andrea's mum's cars tyres yesterday. Summer tyres - I think that explains the snow) | ||
jnthn | Hah! So timing | 10:09 | |
nwc10 | such snow | 10:11 | |
tyres! | |||
jnthn | lanch & | 10:14 | |
10:21
lancew joined
|
|||
[Tux] | masak, API is completely incompatible and you do not support ESCapes | 10:22 | |
masak | [Tux]: I'm just saying I don't have a big affection for my CVS module. | ||
[Tux] | I *will* have a look. Some parts are already supported in what I created (:trim -> :allow-white-space) | 10:24 | |
:skip-header -> :skip=n | 10:25 | ||
I like you :strict | |||
r | |||
masak | I've forgotten all the details :) | 10:26 | |
lancew | Hi all, has anyone had experience recently of installing Template::Mojo? I'm getting an install error ( pastebin.com/iHgPkRt1 ). | 10:27 | |
masak | I think it's because github.com/tadzik/Template-Mojo/bl.../META.info should have a source-url | 10:29 | |
tadzik: `Panda::Project $bone` -- oh, you! | |||
:D | |||
10:31
espadrine_ left
|
|||
dalek | pan style="color: #395be5">perl6-examples: 197b08c | paultcochrane++ | / (3 files): Remove category attr from Example() class A Category containes Examples, it isn't necessary for the Examples to duplicate this information. |
10:31 | |
pan style="color: #395be5">perl6-examples: 9e92e09 | paultcochrane++ | lib/Pod/Htmlify.pm6: Remove extra "categories/" prefix to example link path |
|||
pan style="color: #395be5">perl6-examples: 4c7ea1b | paultcochrane++ | / (2 files): Create summary page of subcategories |
|||
masak | tadzik: github.com/tadzik/Template-Mojo/pull/18 | ||
lancew: with the above pull request, Template::Mojo should install fine | |||
nwc10 | jnthn: "I heard you liked remotes so I baked you a patch at [email@hidden.address] | 10:32 | |
"Use the PROVE macro instead of a literal `prove` in the generated Makefiles." | |||
lancew | masak: Fantastic, thanks. I'm trying to test drive Bailador and Template::Mojo is a pre-requisite. :-) | ||
nwc10 | GitLab, whom I'd never heard of, bought Gitorious | 10:33 | |
masak | lancew: if I were savvy enough with panda, I might even instruct you how to download Template::Mojo from github.com/masak/Template-Mojo , which has the patch already applied | ||
(but I'm not that savvy. you might have some luck trying stuff yourself, though.) | 10:34 | ||
lancew | :-) | ||
10:36
FROGGS__ is now known as FROGGS
|
|||
FROGGS | jnthn: as you might have (not) seen, I've merged the 'param is rw' stuff, also for jvm | 10:37 | |
jnthn: though we have both on moar and jvm problems with unsignedness | |||
t/04-nativecall/15-rw-args.t has a todo test about that | 10:38 | ||
10:38
eli-se left
10:43
diana_olhovik left
|
|||
lancew | masak: ==> Installing Template::Mojo ; ==> Successfully installed Template::Mojo | 10:45 | |
masak: thx | |||
tadzik | masak: a full bowl of puns :) | 10:48 | |
colomon | lizmat++ | ||
11:07
eli-se joined
11:25
lancew left
11:26
Ven left
11:28
Ven joined
11:31
daxim left
11:33
risou is now known as risou_awy,
risou_awy is now known as risou
11:47
root joined,
root is now known as Guest46990
11:48
Guest46990 left,
laouji left
11:53
sirdancealot left
|
|||
RabidGravy | are there any modules on the list that just provide roles? | 12:08 | |
psch | RabidGravy: OO::Actors provides a declarator that creates classes that have a role mixed in | 12:12 | |
it's not quite only a role, but might fit whatever you're looking for | 12:13 | ||
RabidGravy | let's look | ||
Ven | (also OO::Monitor) | 12:17 | |
nwc10 | jnthn: ^^ should be gitlab.com/nwc10/nqp.git | 12:18 | |
12:18
lichtkind joined
|
|||
jnthn | FROGGS: I get some fail in 15-rw-args.t but let be re-build latest stuffs before I pester you about that. :) | 12:19 | |
FROGGS: Hmm. "Native call expected argument that references a native integer, but got P6opaque" | 12:21 | ||
I think I have latest everything but let me do clean builds | |||
awwaiid | "Substitution now supports assignment meta-op, e.g. s[\d+] += 2" *mindblown* | 12:22 | |
(catching up) | |||
12:22
andreoss left
|
|||
FROGGS | jnthn: I have no local changes and it passes :/ | 12:25 | |
jnthn | FROGGS: Oh, somehow an earlier nqp pull failed, so almost certianly false alarm. | 12:30 | |
tadzik | RabidGravy: roles are pretty much core | 12:36 | |
RabidGravy | it was more of a question is if one was to make something that provides a role or roles for user classes to consume is there a naming convention | 12:38 | |
tadzik | ah, hmm | 12:40 | |
I don't think there's any; my github.com/tadzik/ClassX-StrictConstructor/ is a role and I had no complaints about it :) | |||
12:41
tinyblak_ left
|
|||
RabidGravy | I guess these are things that will emerge as the ecosystem flourishes | 12:42 | |
psch | i'm not sure what kind of convention there could be | ||
if anything i'd say "if you're unsure call it FooRole" | |||
RabidGravy | well like Role::Foo or something | ||
psch | oh, a top level role namespace for the ecosystem | 12:43 | |
RabidGravy | yeah perhaps, it might allow for some future organisation based on what kind of thing it provides | 12:44 | |
or is that too prescriptive for the time being | |||
psch | fwiw, i think the OO::Actors approach is great, exposing a declarator that always applies the role to the declared class makes it clear there's something special happening | ||
FROGGS | RabidGravy: since Roles are things one can *do*, they potentially should be verbs | ||
psch | of course it wouldn't work with anything that wants multiple roles applied, unless you create that declarator in-project | 12:48 | |
tadzik | there's no naming convention for classes, I don't think there's a need to have one for roles | ||
RabidGravy | on the flip side having "class Foo does Role::Zub { .... }" seems somewhat redundant | ||
tadzik | oh, there's an idea to use different word types | 12:49 | |
so grammar makes sense, like 'class Dog does Wagging' or something | |||
or Storable | 12:50 | ||
or something | |||
RabidGravy | yeah verb-like for roles, noun-like for classes | 12:52 | |
jnthn | FROGGS: Yeah, with latest NQP it works fine. Sorry for the false alarm :) | 12:57 | |
FROGGS | jnthn: no problem :o) | 12:58 | |
13:01
tinyblak joined
13:14
raiph joined
|
|||
jnthn | fwiw, I'd rather we don't evolve a convention of putting Role in the name of roles. | 13:18 | |
It's annoying enough in .Net when exceptions get Exception on the end... | |||
psch meant it more as a last resort | |||
but i can see having it happen at all means people adopt it when it might be unneccessary | 13:19 | ||
masak | IMNSHO, roles should be named such that `does <rolename>` reads nicely. | 13:20 | |
jnthn | +1 | 13:23 | |
shoppin' | |||
FROGGS | aye, that is what I tried to say too | 13:24 | |
13:52
dustinm` left,
tinyblak left,
ilbot3 left,
mattp__ left,
|Tux| left,
Exodist left,
sunnavy left,
japhb left,
yeltzooo9 left,
aindilis left,
lestrrat left,
lnr left,
MilkmanDan left,
nebuchadnezzar left,
anocelot left,
Guest72861 left,
Timbus left,
go|dfish left,
ashleydev left,
apejens left,
hobbs left,
colomon left,
[Tux] left,
kst left,
pnu left,
dalek left,
Hor|zon left,
Juerd left,
sergot left,
bcode left,
geekosaur left,
charsbar_ left,
Ulti left,
cibs left,
raiph left,
Akagi201_ left,
camelia left,
Foxcool left,
gfldex left,
RabidGravy left,
breinbaas left,
gcole left
13:53
tbrowder left,
rhr_ left,
KCL_ left,
Sqirrel left,
davido_ left,
Vlavv_ left,
eiro left,
ASQRD left,
kodok left,
yoleaux left,
Peter__R left,
[ptc] left,
petercommand left,
ugexe left,
larks left,
rjbs left,
ruoso left,
DrForr left,
d^_^b left,
mathw left,
cosimo left,
BooK left,
mst left,
leedo left,
cursork left,
kaare_ left,
rivarun left,
molaf left,
pecastro left,
haroldwu left,
pmichaud left,
zoosha left,
vytas left,
PerlJam left,
sivoais left,
Rounin left,
jferrero left,
Zoffix left,
cdc left,
ggherdov left,
xxx left,
ingy left,
slavik left,
egrep left,
simcop2387 left,
tadzik left,
mephinet left,
retupmoca left,
awwaiid left,
avalenn left,
fernando___ left,
oetiker left,
lichtkind left,
mohij left,
btyler left,
coffee` left,
isacloud left,
danaj left,
renormalist left,
Grrrr left,
itz left,
psch left,
bartolin_ left,
Bucciarati left,
moritz left,
krunen left,
integral left,
jnthn left,
prammer left,
timotimo left,
telex left,
dj_goku left,
pierrot left,
f3ew left,
robinsmidsrod left,
[particle] left,
Woodi left,
sftp left,
broquaint left,
nwc10 left,
rudi_s left,
_sri_ left,
kshannon left,
SHODAN left,
eli-se left,
xiaomiao left,
vendethiel left,
Possum left,
huf left,
ponbiki left,
Maddingue left,
yakudza left,
jercos left,
FROGGS left,
Khisanth left,
rmgk left,
wtw left,
baest_ left,
atta left,
silug left,
labster left,
TimToady left,
[Coke] left,
estrabd left,
Util left,
risou left,
tinita_ left,
jschulz left,
vike left,
hahainternet left,
burnersk left,
danstoner left,
woshty left,
Humbedooh left,
osfameron left,
DarthGandalf left,
profan left,
nine_ left,
literal left,
avar left,
ab5tract left,
jfried left,
rindolf left,
jantore left,
Patterner left,
yvan1 left,
esaym153 left,
hoelzro left,
flussence left,
Mouq left,
nbrown left,
JimmyZ left,
ribasushi left,
masak left,
arnsholt left,
b2gills left,
Gothmog_ left,
shinohai left,
krakan left,
felher left,
El_Che left,
mls left,
sorear left,
Spot__ left,
stux|RC-only left,
BinGOs left,
yogan left,
skarn left,
clkao left,
pRiVi left,
smi1er left,
Ven left,
torbjorn left,
pochi left,
xinming left,
Alina-malina left,
ShimmerFairy left,
revdiablo left,
iv left,
Celelibi left,
agentzh left,
jdv79 left,
eternaleye left
13:57
lucasb joined,
Sqirrel joined,
Ulti joined,
charsbar_ joined,
geekosaur joined,
bcode joined,
sergot joined,
Juerd joined,
Hor|zon joined,
dalek joined,
pnu joined,
kst joined,
[Tux] joined,
colomon joined,
hobbs joined,
tinyblak joined,
Celelibi joined,
eternaleye joined,
muraiki joined,
raiph joined,
lichtkind joined,
eli-se joined,
mohij joined,
Rounin joined,
gfldex joined,
telex joined,
KCL_ joined,
rindolf joined,
jferrero joined,
RabidGravy joined,
kaare_ joined,
FROGGS joined,
Zoffix joined,
davido_ joined,
rivarun joined,
xiaomiao joined,
dj_goku joined,
Khisanth joined,
btyler joined,
vendethiel joined,
Patterner joined,
molaf joined,
rmgk joined,
wtw joined,
Akagi201_ joined,
pierrot joined,
baest_ joined,
card.freenode.net sets mode: +v dalek,
yvan1 joined,
coffee` joined,
camelia joined,
esaym153 joined,
Vlavv_ joined,
eiro joined,
vytas joined,
cdc joined,
breinbaas joined,
Possum joined,
gcole joined,
ASQRD joined,
Foxcool joined,
isacloud joined,
ggherdov joined,
tbrowder joined,
xxx joined,
ingy joined,
huf joined,
pecastro joined,
hoelzro joined,
f3ew joined,
rhr_ joined,
robinsmidsrod joined,
haroldwu joined,
[particle] joined,
slavik joined,
danaj joined,
Woodi joined,
flussence joined,
egrep joined,
shinohai joined,
pmichaud joined,
atta joined,
silug joined,
zoosha joined,
Mouq joined,
nbrown joined,
sftp joined,
rudi_s joined,
JimmyZ joined,
labster joined,
ribasushi joined,
TimToady joined,
[Coke] joined,
broquaint joined,
estrabd joined,
card.freenode.net sets mode: +v camelia,
renormalist joined,
Grrrr joined,
itz joined,
simcop2387 joined,
kodok joined,
Util joined,
PerlJam joined,
psch joined,
masak joined,
yoleaux joined,
BooK joined,
cosimo joined,
mathw joined,
d^_^b joined,
DrForr joined,
ruoso joined,
rjbs joined,
ugexe joined,
petercommand joined,
larks joined,
[ptc] joined,
Peter__R joined,
nwc10 joined,
bartolin_ joined,
leedo joined,
mst joined,
cursork joined,
risou joined,
arnsholt joined,
tinita_ joined,
tadzik joined,
mephinet joined,
sivoais joined,
ponbiki joined,
retupmoca joined,
awwaiid joined,
avalenn joined,
jschulz joined,
Bucciarati joined,
b2gills joined,
vike joined,
moritz joined,
hahainternet joined,
burnersk joined,
Gothmog_ joined,
krunen joined,
danstoner joined,
card.freenode.net sets mode: +v yoleaux,
Maddingue joined,
_sri_ joined,
fernando___ joined,
integral joined,
krakan joined,
jantore joined,
yakudza joined,
felher joined,
woshty joined,
jercos joined,
oetiker joined,
El_Che joined,
Humbedooh joined,
kshannon joined,
jnthn joined,
SHODAN joined,
BinGOs joined,
mls joined,
prammer joined,
timotimo joined,
yogan joined,
sorear joined,
osfameron joined,
skarn joined,
DarthGandalf joined,
clkao joined,
Spot__ joined,
pRiVi joined,
smi1er joined,
literal joined,
stux|RC-only joined,
profan joined,
nine_ joined,
avar joined,
ab5tract joined,
jfried joined
13:58
lnr joined,
isacloud left,
dustinm` joined,
ilbot3 joined,
mattp__ joined,
|Tux| joined,
Exodist joined,
sunnavy joined,
japhb joined,
yeltzooo9 joined,
aindilis joined,
lestrrat joined,
MilkmanDan joined,
nebuchadnezzar joined,
anocelot joined,
Guest72861 joined,
Timbus joined,
go|dfish joined,
ashleydev joined,
apejens joined,
cibs joined,
Ven joined,
torbjorn joined,
pochi joined,
xinming joined,
Alina-malina joined,
ShimmerFairy joined,
revdiablo joined,
iv joined,
agentzh joined,
jdv79 joined
|
|||
lucasb | Network problems? | 13:59 | |
geekosaur | freenode burped | ||
14:00
dustinm` left
|
|||
RabidGravy | is it possible to use panda to install from a local directory? | 14:01 | |
14:01
dustinm` joined
|
|||
psch | RabidGravy: panda install can take at least '.' as argument afair. i don't know if it understands absolute or relative paths though | 14:02 | |
14:02
sirdancealot joined,
isacloud joined
|
|||
RabidGravy | psch, perfect | 14:02 | |
14:07
Ven left,
mr-foobar joined
14:15
skids joined
|
|||
masak | found a bug. gist.github.com/masak/3a8ab0dc74d6c6c25287 | 14:18 | |
reporting it now, unless someone says it's already in RT. | 14:19 | ||
14:28
Ven joined
|
|||
hoelzro | o/ #perl6 | 14:33 | |
psch | hoelzro \o | 14:35 | |
14:43
pyrimidine joined
|
|||
lucasb | m: $_ = '42'; s/(\d+)/<$0>/; .say | 14:44 | |
camelia | rakudo-moar d76ea8: OUTPUT«<42>» | ||
lucasb | echo 42 | perl6 -pe 's/(\d+)/<$0>/' #=> "<>" | ||
colomon | masak: not disagreeing that it’s a bug, but that syntax (which I do vaguely remember) seems terribly unfortunate in this example | ||
lucasb | masak: ^^ $0 doesn't get assigned the value? | ||
14:48
mr-foobar left
14:49
mr-foobar joined
14:51
molaf_ joined
14:54
molaf left
14:55
araujo joined,
araujo left,
araujo joined
|
|||
lucasb | m: $_ = 42; say "numba: $0" if /(\d+)/ | 14:56 | |
camelia | rakudo-moar d76ea8: OUTPUT«numba: 42» | ||
14:56
espadrine_ joined
|
|||
lucasb | m: $_ = 42; s/\d+/xxx/ | 14:56 | |
camelia | rakudo-moar d76ea8: OUTPUT«use of uninitialized value of type Any in string context in block <unit> at /tmp/0koduqGXwI:1Error while creating error string: No exception handler located for warn» | ||
lucasb | I get a different error on my console: "Cannot call 'subst-mutate'; none of these signatures match ..." | 14:57 | |
I mean, plain match can coerce to string, but substitution can't coerce to string. | 14:58 | ||
14:58
raiph left,
rurban_ joined
|
|||
lucasb | Maybe it makes sense; you can't substitute a substring inside something that is not a string. The compiler would have to change the type of the variable. | 14:59 | |
15:01
Rounin left
|
|||
psch | m: say 42.subst(/\d+/, "xxx") | 15:07 | |
camelia | rakudo-moar d76ea8: OUTPUT«xxx» | ||
psch | lucasb: something seems inconsistent here. to me, s/// is mostly an operator form of .subst (or the other way around) | ||
except s/// is the op form of subst-mutate, to be explicit | 15:08 | ||
s/// dying on numeric input complains about not having a dispatch candidate for Int when run with --ll-exception, although the proto is with Cool | 15:09 | ||
maybe "we don't mutate" is enough reason, although i don't buy the "[it] would have to change the type" argument | 15:11 | ||
because we don't need to change the type to mutate, we need to change it to match in the first place | 15:12 | ||
15:13
diana_olhovik joined
15:14
Ven left
15:15
raiph joined
|
|||
psch | oh, now i see lucasb++ saw the dispatch failure too | 15:17 | |
TimToady | surely the mutating form should be trying to replace the contents of the variable, not fiddling with what's inside the variable | 15:18 | |
s:g/variable/container/ | 15:19 | ||
15:32
Ven joined
|
|||
TimToady | fwiw, subst-mutate is the only method in core that attempts to declare $self is rw: | 15:35 | |
15:36
ggoebel joined
15:37
kinslayer joined
|
|||
TimToady | but it's in the Str class, so doesn't know how to dispatch Int | 15:38 | |
TimToady will play with moving subst-mutate to Cool | |||
15:41
Ven left
|
|||
lucasb | psch, TimToady: Thanks for taking a look at it. (I was away) | 15:43 | |
TimToady | now fails deep in find_best_dispatchee when trying to match Junctions, but I think it doesn't try that unless the naïve binding has already failed | 15:49 | |
15:49
eli-se left
|
|||
TimToady | (and that's a failure trying to compile the setting, so maybe a circularity issue) | 15:50 | |
15:51
KCL_ left,
telex left
15:52
telex joined,
noganex_ left
15:53
KCL_ joined
15:59
Ven joined
|
|||
Ulti | the new multi line REPL doesn't play so well with my slang it gets stuck forever waiting for a statement to end :( | 15:59 | |
16:01
sirdancealot left
|
|||
psch | Ulti: what's your slang? | 16:02 | |
Ulti | github.com/MattOates/BioInfo/blob/...ioInfo.pm6 | 16:03 | |
psch | BioInfo is on panda? | 16:07 | |
hm, BioPerl6 is, but that's apparently something different | 16:08 | ||
Ulti: if the problem is where i'd expect it you can terminate a statement with ')', '}' or ']' | 16:09 | ||
but that's obviously bogus | |||
and shouldn't be like it | |||
i'm thinking i should pull what i merged for moreinput from nom again, 'cause i keep running into walls trying to get it further | 16:10 | ||
16:12
eli-se joined
|
|||
psch | and it's of limited usefulness in the current state anyway :/ | 16:14 | |
if it even breaks stuff it maybe should actually leave again | 16:19 | ||
maybe just hide it behind a RAKUDO_EXPERIMENTAL_MULTILINE_REPL env var? | 16:23 | ||
16:24
raiph left
|
|||
[Coke] | news.perlfoundation.org/2015/04/wen...-to-n.html lizmat++ | 16:25 | |
PerlJam | woolfy++ too | 16:26 | |
pmichaud | good morning, #perl6 | 16:29 | |
TimToady | likewise | ||
PerlJam | buenos dias pmichaud | ||
16:34
Sqirrel left
16:39
Sqirrel joined
|
|||
dalek | kudo/nom: 4c1f570 | TimToady++ | src/core/Cool.pm: Cool.subst-mutate wrapper to handle coercion We can't simultaneously maintain coercion and 'rw' on the invocant to Str.subst-mutate. So we do the two-step shimmy instead. |
16:40 | |
psch | anyway, one problem with moreinput as-is seems to happen because statementlist doesn't match correctly, which i'm not sure i can unravel | 16:41 | |
input like «if 0 { 0 }\nelse { 1 }» complains about "Undeclared routine: else", and from looking at target parse that's because the it doesn't get the else in the same statement (or statementlist) as the if | 16:43 | ||
16:44
raiph joined,
virtualsue joined
|
|||
japhb | WenZPerl++ # All the white camel-icious behavior | 16:47 | |
ugexe | is a lot of nativecall stuff not working currently? for instance, openssl gives a cannot unbox nativeref errors. I just want to make sure i havne't screwed something else up | 16:48 | |
16:49
baest_ is now known as baest
16:51
mohij left
|
|||
dalek | ast: 6f63ff8 | TimToady++ | S05-substitution/subst.t: add test for s/// on non-string |
16:54 | |
kinslayer | hi | 16:59 | |
RabidGravy | m: sub foo( Any:T $foo ) { say $foo }; foo("bar"); | ||
camelia | rakudo-moar d76ea8: OUTPUT«bar» | ||
RabidGravy | Am I missing something or shouldn't that be a fail because not a type object | ||
kinslayer | I tried to get some json into a hash with JSON::Tiny but it didnt wonna work, or I couldn't figure out how to query what I got. Any suggestions on what I could do instead | 17:00 | |
pmichaud | ":T" ? Shouldn't that be ":U" ? | ||
m: sub foo ( Any:U $foo ) { say $foo }; foo("bar") | 17:01 | ||
camelia | rakudo-moar d76ea8: OUTPUT«Parameter '$foo' requires a type object, but an object instance was passed in sub foo at /tmp/nmbNQi4EYQ:1 in block <unit> at /tmp/nmbNQi4EYQ:1» | ||
ugexe | kinslayer: no one knows what you did in the first place | ||
kinslayer | I used from-json in JSON::Tiny but I dont know how that works for queries | 17:02 | |
RabidGravy | pmichaud, I was just going by what it suggested in S06 | ||
pmichaud | RabidGravy: looking | ||
RabidGravy: Oh. I think :T is not yet implemented | 17:03 | ||
RabidGravy | kinslayer, what you mean by "queries"? | ||
kinslayer | I try to get part os the object with something like object{'room'} | ||
but it returns (Any) | |||
PerlJam | kinslayer: can you show us the code (and data) ? | 17:04 | |
RabidGravy | pmichaud, I'll go with :U until that time. I just want literally foo(Str) and not allow foo(Str.new) e.g. | ||
TimToady | don't paste here, use a site like gist.github.com and paste the URL here | ||
pmichaud | :U should work for that. | ||
RabidGravy | yeah it does | 17:05 | |
pmichaud | might be worth filing a rakudobug for :T | ||
(if one doesn't already exist) | |||
kinslayer | lpaste.net/130251 | ||
PerlJam | kinslayer: it's best if you show us all of the code. | 17:06 | |
kinslayer: or at least the bits that don't work like you expect | |||
TimToady | like, how you're actually trying to access the structure | 17:07 | |
FROGGS | RabidGravy: btw, :U currently does what :T should do | ||
kinslayer | lpaste.net/130251 | 17:08 | |
RabidGravy | FROGGS, yeah I gathered that from the message :) | ||
kinslayer | that should be all of the code I used JSON::Tiny | ||
ugexe | 'rooms' isnt a hash key | ||
its 'room' | |||
next time, try %json.perl to see the data structure | 17:09 | ||
FROGGS | RabidGravy: and :U should do a little bit more than what it does today, calling .defined on the object in question | ||
TimToady | ugexe: ooh, a fishing rod :) | 17:10 | |
kinslayer | ugexe: I was pretty sure I wrote rooms but seems I messed that up, but I might have other problems | ||
TimToady | kinslayer: this is programming; other problems are almost guaranteed :) | 17:11 | |
RabidGravy | :) | ||
kinslayer | timtoady: yeah but not in this case now it just works so just a typo. | ||
PerlJam | kinslayer: btw, are you a "kin slayer" or just a "kins layer" ? | 17:12 | |
FROGGS | m: my uint8 $a = 200; say $a | ||
camelia | rakudo-moar d76ea8: OUTPUT«-56» | ||
kinslayer | kinslayer is from Wheel of Time | ||
PerlJam: so prob. kin slayer :D | 17:13 | ||
TimToady | .oO("Will kith not slay their kin for me?" --Guinevere) |
||
RabidGravy | or 'kin slayer for those not-heavy metal fans | 17:14 | |
skids | \m/ | 17:15 | |
TimToady | is that hair over your face? | ||
17:15
raiph left
|
|||
PerlJam | skids is doing a cousin it impersonation? | 17:16 | |
[Coke] | why not zoidberg? | 17:17 | |
TimToady | could just be facing the other way | ||
kinslayer | I started programming in perl and did stuff in other langs but perl 6 is really awesome :D | ||
PerlJam | kinslayer: we like to think so too :) | ||
TimToady | but we're known to be prejudiced in the matter | ||
skids | Mètāl Sâlüte | 17:18 | |
PerlJam | [Coke]: zoidberg would need an em with an extra leg. | ||
kinslayer | PerlJam: I like the idea of "better is better" :D | ||
PerlJam | (which I'm sure is available in unicode *somewhere* ;) | 17:19 | |
17:19
ggoebel left
|
|||
PerlJam | [Coke]: though also ... if zoidberg, where did his eyes go? | 17:20 | |
[Coke] | can't umlaut an m, sadly. :) | 17:21 | |
TimToady | well, you could chop off ㎜ | 17:22 | |
17:23
inokenty joined
|
|||
psch | m: say "m\x0308" | 17:24 | |
camelia | rakudo-moar 4c1f57: OUTPUT«m̈» | ||
nine_ | FROGGS: nqp commit 7533c6bd870167cc89a9a5eb3cb0aebc945c23ed broke Inline::Perl5 and I cannot see how Inline::Perl5 may be at fault. | 17:25 | |
FROGGS | nine_: how can I reproduce the failure? | 17:26 | |
skids | ꖶꖶ | 17:29 | |
mm | |||
nine_ | FROGGS: just trying to install Inline::Perl5 is enough. | ||
FROGGS | k | ||
nine_ | FROGGS: I suspect that it's the same cause like < ugexe> is a lot of nativecall stuff not working currently? for instance, openssl gives a cannot unbox nativeref errors. I just want to make sure i havne't screwed something else up | 17:30 | |
FROGGS | hmmm | ||
lemme see | |||
[Coke] | \m̈/ . o O (ah, just can't do it on my mac keyboard easily. psch++) | ||
17:31
rurban_ left
17:35
gargamel left
17:36
Psyche^ joined
|
|||
FROGGS | nine_: it seems to be a precomp issue :S | 17:38 | |
17:40
Patterner left
|
|||
nine_ | FROGGS: sounds like not fun | 17:42 | |
FROGGS | yeah, trying to hunt it down now | 17:43 | |
17:45
virtualsue_ joined
17:46
virtualsue left,
virtualsue_ is now known as virtualsue
17:48
Hyer joined
|
|||
Hyer | I was going to learn a little P6 by porting my scrabble-cheating program | 17:48 | |
17:48
Ven left
|
|||
japhb | So I see a change to coercing multi candidates in the Rakudo git log. Can someone point to the discussion, or summarize the change/reasoning? | 17:48 | |
17:49
Ven joined
|
|||
Hyer | I can't find any definitive documentation on how, given a user-input pattern $p, I can find strings matching the contents of $p interpreted as a pattern | 17:49 | |
when I try /<$pat>/, Rakudo fails if $pat contains character classes, maybe because of their "<" delimiters | 17:51 | ||
but I cannot verify whether this is a problem with Rakudo, or with my P6 code | |||
dalek | p: b52f49a | FROGGS++ | tools/build/MOAR_REVISION: bump moar rev to unbreak Inline::Perl5 |
||
Hyer | anyone want to take a stab at this? I'd appreciate any help | ||
PerlJam | Hyer: show the code :) | 17:52 | |
dalek | kudo/nom: c314f4f | FROGGS++ | tools/build/NQP_REVISION: bump nqp/moar rev to unbreak Inline::Perl5 |
||
FROGGS | nine_: ^^ | ||
psch | m: my $pat = '<[abc]>'; say "a" ~~ $pat | ||
camelia | rakudo-moar 4c1f57: OUTPUT«False» | ||
psch | m: my $pat = '<[abc]>'; say "a" ~~ /$pat/ | ||
camelia | rakudo-moar 4c1f57: OUTPUT«Nil» | ||
Hyer | sure, let me simplify a bit and then paste | ||
japhb | Looks like a good time to rebuild-all, thanks FROGGS++ | ||
psch | m: my $pat = '<[abc]>'; say "a" ~~ /<$pat>/ | ||
camelia | rakudo-moar 4c1f57: OUTPUT«「a」» | ||
17:53
Ven left
|
|||
Hyer | Code incoming ------------------------------------- | 17:55 | |
use v6; | |||
FROGGS | O.o | 17:56 | |
Hyer | my $dictfile = "C:/Users/Tom/Downloads/corncob_lowercase.txt"; | ||
PerlJam | Hyer: please use a paste site like gist.github.com | ||
FROGGS | Hyer: don't paste here | ||
Hyer | OK | ||
dalek | osystem: 74ebc9e | (Jonathan Stowe)++ | META.list: add EventEmitter to the modules list |
18:00 | |
osystem: 2c69578 | (Zoffix Znet)++ | META.list: Merge pull request #41 from jonathanstowe/master add EventEmitter to the modules list |
|||
masak | colomon: re "syntax seems unfortunate" -- the code was golfed from a bigger one-liner where that choice of syntax made more sense | ||
Hyer: if you want to show more than two lines of code, please put it in gist.github.com or similar, then paste the URL | 18:01 | ||
RabidGravy | ^ totally noddy module but more of a challenge to others to improve upon it ;-) | 18:04 | |
masak | for non-Brits: "noddy" = "trivial" ;) | 18:11 | |
18:12
awwaiid left
|
|||
RabidGravy | now back to the, er, non-trivial ones I'm procrastinating | 18:16 | |
masak .oO( nonnoddy ) | 18:19 | ||
RabidGravy | big earsy | 18:21 | |
18:23
awwaiid joined
|
|||
PerlJam | .oO( bugs? thumper? ) |
18:23 | |
nine_ | FROGGS: works again :) Thanks! | ||
RabidGravy | noddy != big ears | ||
FROGGS | \o/ | ||
18:24
kinslayer left
|
|||
nine_ | .tell |Tux| FROGGS++ fixed the MoarVM regression that affected Inline::Perl5 | 18:24 | |
yoleaux | nine_: I'll pass your message to |Tux|. | ||
RabidGravy | en.wikipedia.org/wiki/Big_Ears_(character) | ||
Hyer | psch: I am trying | 18:26 | |
my $in="<[be]>*"; my $pat = '^'~$in~'$'; say so "ebb" ~~ /$pat$/; | |||
psch | m: my $in = "<[be]>*"; my $pat = '^' ~ $in ~ '$'; say so "ebb" ~~ /<$pat>/ | 18:27 | |
camelia | rakudo-moar c314f4: OUTPUT«True» | ||
psch | Hyer: you've missed interpolating your variable inside the pattern | 18:28 | |
or rather "inside the regex quote operator" | 18:29 | ||
18:29
ggoebel joined
|
|||
masak | Hyer: in Perl 6, strings don't accidentally interpolate as regexes. they interpolate as literal strings by default. this is for your own safety. | 18:29 | |
PerlJam was interested in seeing code that illustrated ... <Hyer> when I try /<$pat>/, Rakudo fails if $pat contains character classes | 18:30 | ||
Hyer | My best understanding was that /<$pat>/ would cause variable interpolation of $pat | 18:32 | |
PerlJam | ... as part of the regex and not just a literal string | 18:33 | |
masak | Hyer: that's a correct understanding. | ||
FROGGS | well, variables are interpolated in any case... | 18:34 | |
the <...> just tell whether you want to interpolate to regex rules or to a literal string | |||
s/literal// | |||
psch | m: my $in = "<[be]>*"; my $pat = '^' ~ $in ~ '$'; say so "ebb" ~~ /<$pat>/; say "^<[be]>*$" ~~ /$pat/ | 18:35 | |
camelia | rakudo-moar c314f4: OUTPUT«5===SORRY!5=== Error while compiling /tmp/FmAW3PByOGNon-variable $ must be backslashedat /tmp/FmAW3PByOG:1------> 3 say so "ebb" ~~ /<$pat>/; say "^<[be]>*7⏏5$" ~~ /$pat/ expecting any of: argument list double q…» | ||
psch | m: my $in = "<[be]>*"; my $pat = '^' ~ $in ~ '$'; say so "ebb" ~~ /<$pat>/; say '^<[be]>*$' ~~ /$pat/ | ||
camelia | rakudo-moar c314f4: OUTPUT«True「^<[be]>*$」» | ||
nwc10 | t/spec/S05-substitution/subst.rakudo.moar is made of sin (and one more test than it planned) | 18:37 | |
Hyer | psch: trying your last m: in recent Rakudo gives error 'Non-variable $ must be backslashed' | ||
psch | Hyer: in my last i replaced " with ', because " interpolates | 18:38 | |
Hyer | ah, I see that now | ||
I will try to see how my code is different, just don't have the Perl Eye anymore | 18:40 | ||
psch -- change "ebb" to "seb" in your example -- still says it matches | 18:44 | ||
18:45
zakharyas joined
|
|||
[Tux] rebuilds ... | 18:45 | ||
[Tux] finds it increasingly difficult to choose between finishing Text::CSV and writing sheets for the presentation about it | 18:46 | ||
hoelzro | we have an official docker image now: registry.hub.docker.com/_/rakudo-star/ | ||
psch | m: my $in = "<[be]>*"; my $pat = '^' ~ $in ~ '$'; say "seb" ~~ /<$pat>/; | 18:47 | |
camelia | rakudo-moar c314f4: OUTPUT«「eb」» | ||
psch | hm, the anchors don't take? | ||
jnthn | std: class T{}; class S is T{} | 18:48 | |
camelia | std 28329a7: OUTPUT«5===SORRY!5===Unable to parse class definition at /tmp/dHaATxS2mM line 1 (EOF):------> 3class T{}; class S is T{}7⏏5<EOL>Parse failedFAILED 00:01 136m» | ||
Hyer | looks like the start anchor doesn't take, the end does, but I'm not 100% sure | 18:49 | |
18:52
zakharyas left
|
|||
PerlJam | m: my $in = "<[be]>*"; my $pat = '^' ~ $in ~ '$'; say "sebo" ~~ /<$pat>/; | 18:52 | |
camelia | rakudo-moar c314f4: OUTPUT«Nil» | ||
PerlJam | m: my $in = "<[be]>*"; my $pat = '^' ~ $in ~ '$'; say "ebo" ~~ /<$pat>/; | ||
camelia | rakudo-moar c314f4: OUTPUT«Nil» | ||
PerlJam | Aye, looks like | 18:53 | |
Hyer | psch, PerlJam: thanks for your time and patience | ||
dalek | ast: 8d44426 | jnthn++ | S32-exceptions/misc.t: Test for RT #71034. |
18:54 | |
RabidGravy | hoelzro, I'd better get on with what I'm doing so I can start the Docker client on my TODO list then ;-) | 18:55 | |
hoelzro | RabidGravy: docker client? | 18:56 | |
RabidGravy | yeah like e.g fig but in p6 | 18:57 | |
masak | jnthn: re irclog.perlgeek.de/moarvm/2015-04-06#i_10397602 -- I confess I didn't consider the metaclass in this. if there's no safe way to say "no funny metaclass has been applied", then I agree we cannot throw this error. | 18:58 | |
jnthn: my thinking was that yes, method calls are generally too late-bound, but a method call to a type object would be more predictable, and for all intents and purposes more like a sub call (and therefore analyzable like one) | 18:59 | ||
jnthn | masak: Well, it's going to be non-trivial to implement, and thanks to the cross-compilation unit limintation rather less useful than one may hope. | ||
masak: I'd rather we try and make the error you get in the general case be more meaningful. | 19:00 | ||
masak | I did consider the cross-compilation unit angle, and decided that's fine. even within one compilation unit (which is likely to be the normal case), it's a useful error to get. | ||
anyway, feel free to reject the ticket. | 19:01 | ||
jnthn | Will sleep on it and maybe do so tomorrow :) | 19:02 | |
jnthn mebbe bbl, otherwise tomorrow (with tuits! :)) | 19:03 | ||
masak | maybe 'night, jnthn | ||
skids | m: say ( "sebb" ~~ /<after s>ebb/ ); $/<after>.perl.say; | 19:04 | |
camelia | rakudo-moar c314f4: OUTPUT«「ebb」 after #<failed match>Match.new(orig => "sebb", from => 3, to => 1, ast => Any, list => (), hash => EnumMap.new())» | ||
masak .oO( Maybe[Night] ) | |||
ugexe | FROGGS: your last commit fixed the problem i was having installing other nativecall modules as well | 19:05 | |
19:05
spider-mario joined
|
|||
FROGGS | ugexe: yeah, nine_++ already guessed that... but nice to get a confirmation on that :o) | 19:06 | |
19:09
sirdancealot joined
|
|||
dalek | p: 35c589e | FROGGS++ | tools/build/MOAR_REVISION: bump moar for fix for RT #124185 |
19:20 | |
kudo/nom: ae68631 | FROGGS++ | tools/build/NQP_REVISION: bump moar for fix for RT #124185 |
|||
japhb | Ackpth! perl6-m is now taking ~3x longer to start (locally). | ||
Can anyone else confirm? | |||
RabidGravy | dunno, the one macine with latest is a celeron, the one with older is an i7 wouldn't be a fair comparison | 19:24 | |
19:25
eternaleye left
19:26
eternaleye joined
19:31
Sqirrel left
|
|||
japhb | RabidGravy: Yeah, understood. | 19:34 | |
torbjorn | jnthn: regarding the OSDC, would you be fine with doing *all* your posted stuff? :) | 19:35 | |
RabidGravy | :) | ||
japhb | I went from ~200-300ms (depending on exact build, whether lazy serialization was working, and so on) to ~610-635ms. | ||
FROGGS | japhb: and there are no dangling processes currently? | 19:36 | |
japhb | Not that I can see, but I am getting some VM pressure from Chrome. Let me shoot that process and see if it's just a matter of an unhappy memory manager | ||
19:37
Sqirrel joined,
beastd joined
|
|||
[Tux] | nine_, FROGGS, will the performance also return? | 19:42 | |
19:43
kaare_ left
|
|||
FROGGS | [Tux]: I... don't think I've todo something with a performance loss... | 19:43 | |
japhb | OK, cleared out a boatload of RAM, trying again ... | 19:44 | |
[Tux] | neither do I, but it is sad to see performance loss where other parts are said to speed up | ||
FROGGS | hmmm | ||
japhb | Yeah, best I can get right now for 'time perl6-m -e 0' is .602s | ||
[Tux] | drop happened between 20150223 and 20150305 | 19:45 | |
FROGGS | februrary? O.o | ||
[Tux] | bedtime. we had a 20 km hike today. tired now | ||
japhb | [Tux]: The startup time problem is more recent. | ||
Like in the last week or less, I think | |||
[Tux] | japhb, it is not startup time that dropped | ||
japhb | Ah, is this the lexicalref performance loss? | 19:46 | |
FROGGS | [Tux]: then please report some code that was faster back then when you get a chance | ||
[Tux] | github.com/Tux/CSV/blob/master/README <= code did not change | ||
japhb | FROGGS: I thought there was a known drop, which timotimo++ had tried to fix, but got stuck, and jnthn had not had time yet to figure out the problem. Mind you, I could have missed where it was resolved. | 19:47 | |
[Tux] | github.com/Tux/CSV/blob/master/csv-ip5xs.pl <= that is all the code | ||
$ time perl6 csv-ip5xs.pl </tmp/hello.csv | 19:48 | ||
went from 6 seconds to 15 | |||
anyway. really bedtime now | |||
FROGGS | japhb: ahh, the native ref introduction wrt lexical something... that rings a bell | ||
[Tux]: gnight | |||
japhb | I'm weirded out by the sudden startup slowdown though. That just doesn't make a ton of sense to me. | 19:51 | |
Could it be that with panda/eleven merged, we're following startup CUR paths we didn't hit before, that are in need of some TLC? | |||
FROGGS | japhb: I'm at 0.315s on a core i5 laptop | 19:52 | |
japhb: the CUR::Installation stuff only gets involved when you actually load a module you installed via panda | |||
japhb | FROGGS: What did you get with 2015.03? And have you installed a few modules with panda/eleven in your latest build? | ||
FROGGS | let me install something... | 19:53 | |
19:54
lichtkind left
|
|||
timotimo | japhb: the known drop would probably not be that visible in startup speed, i think | 19:54 | |
timotimo visited the local zoo today | |||
japhb | Ah, gotcha | 19:55 | |
Good zoo? | |||
japhb has been to too many bad zoos, and not enough really good ones. | |||
timotimo | i'm not sure what makes a good or bad zoo | ||
i haven't been to many zoos in my adult life | 19:56 | ||
japhb | timotimo: Takes good care of the animals, gives them lots of space and time off from constant humans, separates predators and prey enough not to scare the bejeesus out of the prey, and so on. | ||
timotimo | ah | ||
in that case, it's a ... medium zoo? | 19:57 | ||
japhb | Fair enough./ | ||
timotimo | there's a very visible size difference between old cages/areas and new ones | ||
the predators and prey animals are properly separated as far as i could tell | |||
19:58
darutoko left
|
|||
timotimo | i couldn't see any indication of not good caring | 19:59 | |
two of the three polar bears were sort of stuck in an infinite loop of behavior, which scared me | |||
but instead of worrying too much about something i can't do anything about, i was able to distract myself by looking at the cute animals they had there | 20:00 | ||
FROGGS | japhb: confirmed, the startup time increases the module module I install into a CUR::Installation repo :/ | ||
japhb: and tbh, I expected penalties like that | |||
20:01
spider-mario left
|
|||
timotimo | you mean "the more modules you install"? | 20:01 | |
so it could be json parse time? | |||
FROGGS | I'll think about a solution | ||
timotimo: aye and aye | |||
timotimo | we have basically JSON::Tiny in there, right? | ||
because that thing is sort of ... slow | 20:02 | ||
FROGGS | correct | ||
timotimo | dreadfully so :( | ||
skids | Aren't the dep md5s stored in the binary compunit? Why is json being parsed for other-than-panda purposes? | 20:03 | |
*sha256s | |||
FROGGS | it could also be about IO::Path stuff, because IMO it absolutifies paths to the installed files | ||
20:03
spider-mario joined
|
|||
FROGGS | skids: to locate a comp unit by dist name, author and version | 20:03 | |
skids | I thought that was done during precomp and cached in the CU by sha256? | 20:04 | |
FROGGS | but your script does not get precompiled, so you have at least one entry point | 20:05 | |
skids | ah. | ||
japhb | Why aren't scripts precompiled? | ||
skids | Well, they are if you do it by hand. | 20:06 | |
FROGGS | japhb: for one because we don't have automatic precompilation | ||
japhb | Sigh. | ||
FROGGS | and we can only load precompiled modules as of now | ||
japhb mentally increments the number of times he's wanted precomp -> caching | |||
FROGGS | I mean, you can precompile a script but then you have to load it as: perl6 -Mmyscript -e1 | 20:07 | |
japhb | Gotcha. | ||
OK, so that's back to the question of why we're parsing JSON at startup. This feels like the kind of thing that wants to be something (much) faster. | 20:08 | ||
FROGGS | aye | ||
the solution we are aiming for is to a) not output json but a perl 6 hash, and b) precompile that hash and load it as long the precomped file is valid | 20:09 | ||
with a fallback to the hash's source file | |||
20:11
Hyer left
|
|||
japhb | Hmmm | 20:11 | |
Is that likely to land before 2015.04? | 20:12 | ||
FROGGS | hmmm, the chances are good I think | 20:13 | |
japhb | Ah, that's good at least. | 20:14 | |
skids | Could we just throw the parse-to-json-objects in a BEGIN statement in a surrogate module and constant-fold it? | 20:16 | |
timotimo | how much moreinput do we actually have? | ||
20:19
mohij joined
|
|||
japhb | skids: Not a bad idea, that. | 20:19 | |
20:24
ggoebel left
|
|||
ugexe | in the future, will module uninstallation be handled by CompUnits as well? | 20:25 | |
we already have some manifest/uninstall stuff, but not sure if its something we should bother with further | 20:26 | ||
skids | ugexe: what you're too good for rm /share/perl6/site/?? ? :-) | ||
psch | timotimo: the state of moreinput in nom is "it should work if it's one block that gets broken up by newlines", more or less | 20:27 | |
FROGGS | ugexe: since CUR's handle installation they should also handle uninstallation if that is possible for that CUR | ||
ugexe | well its hard to know i need to delet '/share/perl6/site/37' if i want to unisntall panda | ||
skids agrees | 20:28 | ||
ugexe | and usage messages like: /home/nickl/.rakudobrew/moar-nom/install/share/perl6/site/37 [--notests] [--nodeps] install [<modules> ...] -- Install the specified modules | 20:29 | |
FROGGS | deleting such a file would not be enough anyway... you need to unregister it as well | ||
psch | timotimo: i'm stuck, because it's still a bit of a mystery to me how exactly statementlist keeps track of nesting | 20:30 | |
ugexe | right | ||
timotimo | ah | 20:32 | |
psch | (at least i think that's why i'm stuck. it's a bit hard to tell with these things sometimes...) | 20:35 | |
timotimo | oh, crap, installation busts usage messages? i thought we had wrapper scripts for that, but it could very well be that those just exec a new perl6 perhaps? | ||
AFK for a bit | 20:36 | ||
skids | Wait, where is panda installing the uncompiled source nowadays? | 20:37 | |
japhb | Oh, as a further push to "we should land a performance fix for the startup problem before 2015.04" -- I just realized that startup increasing based on number of modules installed is going to make startup after installing Task::Star rather painful. | ||
FROGGS | skids: also to site/ | 20:38 | |
skids: look at site/MANIFEST | |||
20:39
diana_olhovik left
|
|||
skids | Wait ouch the souce is in decimal file names as well? | 20:39 | |
I guess with auths you have to but. | |||
FROGGS | well, the idea is that storing things is up to the used CUR | 20:43 | |
RabidGravy | on a rough test startup is only a tad slower than a week ago | 20:46 | |
japhb | RabidGravy: Highly dependent on how many modules you have installed. | ||
FROGGS | RabidGravy: well, without any module installed it is at 0.315s, and with 27 dists (116 files) it is at 0.485s | 20:47 | |
RabidGravy | with the same modules | 20:48 | |
japhb | I also wonder if this is defeating lazy deserialization again (pulling in too many lazy dynvars) | ||
TimToady | what's a lazy dynvar? | 20:51 | |
FROGGS | a dynamic variable that's initialized on first use | 20:52 | |
we have proxies in rakudo that replace themself | 20:53 | ||
TimToady | if these proxies are themselves dynamic, could be be replacing them over and over in different dynamic scopes? or are they primarily in PROCESS or GLOBAL? | 20:54 | |
*could we be | |||
FROGGS | they live in PROCESS or GLOBAL | 20:55 | |
japhb | TimToady: See 'git grep INITIALIZE_DYNAMIC' for a list | ||
(That doesn't say where the are, just which dynamics we're doing this to.) | 20:56 | ||
TimToady | I wonder if maybe we're overusing the one-per-frame cache | ||
japhb | TimToady: one-per-frame cache? | 20:57 | |
TimToady | see try_cache_dynlex in frame.c | 20:58 | |
20:59
rindolf left
|
|||
TimToady | at one point we were looking things up 20 frames deep on average, and that cache reduced it (at one time) to about 5 frames average | 20:59 | |
but I'm sure we can do better | |||
especially if we're filling up the caches with the "wrong" dynvars | |||
21:01
tbrowder left
|
|||
TimToady | we really only need to station a (larger) cache at each frame that actually sets a dynvar, and the rest of the frames could just pass along a pointer to that frame's cache | 21:01 | |
so you'd only ever visit the frames that actually set a dynvar | |||
and there would "always" be room to cache any dynvar there | 21:02 | ||
so it might scale a lot better with heavy dynvar use | |||
japhb | Yeah, agreed. With only one dynvar cache slot per frame, I can easily see that getting full along fairly deep frame stacks real darn quick. | 21:04 | |
TimToady | and if the names are authoritative enough, you never even have to look into lexpads, you just follow each cache to the next one till you find the dynvar, hoist it to the top-level cache if you decide it's "hot" | ||
japhb | (Where by 'deep' I mean two-digit depth) | ||
TimToady | anyway, that's one of my lines in my personal todo file | 21:06 | |
21:08
skids left
21:14
dolmen joined
21:34
dolmen left
21:41
noganex joined,
kjs_ joined
21:43
fhelmberger joined
21:47
adu joined
21:48
fhelmberger left,
adu left
21:54
tinyblak left
21:55
kjs_ left
21:59
hobbs left
22:03
hobbs joined,
hobbs left,
hobbs joined
22:05
mohij left
22:15
RabidGravy left
22:19
virtualsue_ joined
22:21
virtualsue left,
virtualsue_ is now known as virtualsue
|
|||
masak | m: my @a = 1, 2, 3; say @a.perl | 22:24 | |
camelia | rakudo-moar ae6863: OUTPUT«[1, 2, 3]<>» | ||
masak | I don't backlog so carefully these days. I saw the commit go by that added '<>'. I didn't get why. | ||
to me, when I .perl @a above, I totally expect `[1, 2, 3]`. the `<>` looks like added nit-picking to me. | 22:25 | ||
22:27
espadrine_ left
|
|||
masak | though I guess this is the same "I don't see why we have to distinguish so much" argument that I put forth the other day... | 22:28 | |
ugexe | m: my $paths = "zef/lib".IO; say $paths.perl; say @$paths.perl | 22:29 | |
camelia | rakudo-moar ae6863: OUTPUT«q|zef/lib|.IO(:SPEC(IO::Spec::Unix),:CWD</home/camelia>)(q|zef/lib|.IO(:SPEC(IO::Spec::Unix),:CWD</home/camelia>),)» | ||
ugexe | is that correct? the trailing comma at the end? | ||
im tracking down a problem with CREATE-INCLUDE-SPEC and CompUnit.precomp which takes an array reference | 22:30 | ||
masak | guess it's there because there's only one element. | ||
m: say (1).^name; say (1,).^name | |||
camelia | rakudo-moar ae6863: OUTPUT«IntParcel» | ||
masak | 'night, #perl6 | 22:31 | |
22:34
telex left
22:36
telex joined
|
|||
ugexe | $@VAR is the proper way to pass an array as a reference right? | 22:38 | |
22:40
eli-se left
|
|||
TimToady | well, or just bind it to something that already has a $ | 22:40 | |
psch | m: sub f($a) { say $a.perl }; my @a = ^5; f @a | 22:41 | |
camelia | rakudo-moar ae6863: OUTPUT«[0, 1, 2, 3, 4]» | ||
TimToady | like that | ||
@ only flattens if bound to a slurpy parameter | |||
psch | next i'd have asked what "as a reference" means here | ||
TimToady | the rest of the time, it effectively already is a reference | ||
P6 doesn't have references like P5 does | 22:42 | ||
22:42
Zoffix left
|
|||
TimToady | on the flip side, every object is already a reference | 22:42 | |
ugexe | github.com/rakudo/rakudo/blob/2cd9...it.pm#L110 | :$INC = @*INC... and later CREATE-INCLUDE-SPEC(@$INC) | ||
i guess is confusing me | 22:43 | ||
22:43
beastd left
22:44
virtualsue left
|
|||
TimToady | the @ is unnecessary in the CREATE-INCLUDE-SPEC(@$INC), since the sig for that routine is (@INC), which is not a slurpy, so you can perfectly well bind $INC directly to @INC | 22:45 | |
likewise the first $INC just takes @*INC as a reference already for you | 22:46 | ||
ugexe | hmmm. something funny is going on. inside create-include-spec, that nqp::istype($_, CompUnitRepo::Locally) is returning true when it shouldnt be (and thus calling .short-id which doesnt exists for the values i passed to CompUnit.precomp(:INC("some/path")) | 22:47 | |
but at least i know its not that now | 22:48 | ||
TimToady | sneaky derivation chain to CompUnitRepo::Locally maybe? istype is not testing === | 22:49 | |
ugexe | well im testing the :@INC im passing by iterating each value and doing that nqp check. they return false for all items | ||
it happens after passing to CompUnit.precomp(:@INC) | 22:50 | ||
No such method 'short-id' for invocant of type 'Str' (or 'IO::Path' depending on what ive tried) | |||
TimToady | are you suggesting that precomp is clobbering @INC? | ||
ugexe | im not sure im smart enough to know what im suggsting :) but if i explicitly pass in an empty array it doesn't happen | 22:52 | |
and the error changes between 'Str' and 'IO::Path' depending on what i populate the array with | |||
TimToady | hmm, I don't understand the :$INC = @*INC, line in the call | 22:53 | |
looks like there's a missing -> before the argument list | 22:54 | ||
ugexe | there are no tests/roasts for that afaik | ||
TimToady | so I have no idea what it thinks it's doing with the --> outside a signature | ||
I think you should add a -> before the :$INC = @*INCline | 22:55 | ||
ugexe | the --> Bool is inside the signature though? doesnt that mean it returns a boolean? | 22:56 | |
TimToady | I don't see a -> in your gist | ||
but I have no idea how it could even parse without one | 22:57 | ||
ugexe | correct, just the -->... you said outside a signature i thought you meant you thought the --> was not inside the signature | ||
s/...// | |||
TimToady | I don't see a signature there, if there's no -> | ||
it's parsing the --> as a negated lambda - -> Bool { | 22:58 | ||
m: my $foo; :$foo = 42; say $foo.perl | 22:59 | ||
camelia | rakudo-moar ae6863: OUTPUT«Cannot modify an immutable Pair in block <unit> at /tmp/mp0buXJiRQ:1» | ||
TimToady | line 109, that currently reads "$out = self.precomp-path,", probably needs to be "$out = self.precomp-path, ->" instead | 23:00 | |
timotimo | wow. i just watched "Grindhouse: Planet Terror" with three friends. it was quite amazing | 23:01 | |
TimToady | otherwise lines 110,111, and part of 112 are not in a sinature | ||
*sig | |||
timotimo | and now the weekly blog post is going to be "a bit" late again | ||
ugexe | i see. ill give that a shot | 23:02 | |
23:04
pecastro left
|
|||
tony-o | timotimo: did you watch it intertwined with the tarantino part of the series? | 23:08 | |
23:08
kbenson joined
|
|||
TimToady | m: $_ = 42; s/\d+/xxx/; .say | 23:10 | |
camelia | rakudo-moar ae6863: OUTPUT«xxx» | ||
timotimo | tony-o: please be more precise? | ||
23:10
vendethiel left
|
|||
tony-o | timotimo: grindhouse has two movies, one by tarantino and one by rodriguez - when they played in the theaters the movies played in a way that a little bit played from one, switched to the other and played a bit there, until both were done | 23:12 | |
timotimo | oh | 23:13 | |
i didn't know | |||
we only watched the rodriguez part | |||
but tarantino had a role in it again and it was also nice | |||
and of course there were the "fake" previews for other videos | |||
movies* | |||
tony-o | the other one is called death proof | ||
they're both pretty good though ^^ | 23:14 | ||
timotimo | we're now watching Mystery Science Theater 3000 (the movie) | 23:16 | |
ugexe | -> gave me X::Syntax::Malformed :( | 23:26 | |
gist.github.com/ugexe/471a878e3b85be9d2446 | |||
timotimo | can you show more context? | 23:27 | |
ugexe | as in, more of the build log? or the piece of code i changed | ||
23:28
skids joined
|
|||
timotimo | the resulting m-CORE.setting | 23:29 | |
close to the problematic line | |||
lucasb | method precomp(CompUnit:D: $out = self.precomp-path, :$INC = @*INC, :$force, --> Bool) { ... } | 23:31 | |
^^ The signature is this one, isn't it? | |||
ugexe | yes | 23:32 | |
except with the '->' added after $out = self.precomp-path | |||
(updated the gist to include) | |||
lucasb | to me, it looks like a valid signature *without* the "->" | 23:33 | |
ugexe | eh me too. timtoady thought it didnt look valid and suggested adding the '->' | 23:34 | |
timotimo | a ->? | 23:35 | |
how can you have a -> without a { } | |||
ugexe | < TimToady> line 109, that currently reads "$out = self.precomp-path,", probably needs to be "$out = self.precomp-path, ->" instead | 23:36 | |
timotimo | i'm a bit confused | 23:37 | |
well, --> needs to be inside the ( ... ), but why would it be -> instead? | 23:38 | ||
ugexe | --> *is* inside the ( ... ) | ||
timotimo | where can i see the code? | 23:39 | |
more than just a few bytes? | |||
ugexe | gist.github.com/ugexe/c9222be48783...e1-txt-L29 | 23:41 | |
timotimo | i don't see a method precomp at all | 23:42 | |
ugexe | CompUnit.precomp passes that :@INC to CREATE-INCLUDE-SPEC, but CREATE-INCLUDE-SPEC incorrectly returns true for nqp::istype($_,CompUnitRepo::Locally); and thus incorrectly calls .short-id on a Str (or IO::Path) | ||
$cu.precomp line 29? | |||
timotimo | it's a use, not a declare | ||
i have no idea what's even ... | 23:43 | ||
ugexe | its calling the .precomp method on a CompUnit object | ||
timotimo | i thought there was a syntax error? | 23:44 | |
23:44
BenGoldberg joined
|
|||
ugexe | oh i thought you meant the code that led to the discussion between me and timtoady | 23:44 | |
github.com/rakudo/rakudo/blob/2cd9...it.pm#L109 | 23:45 | ||
timotimo | maybe i'm not in a state to make sense of the whole situation | ||
ugexe | all i did was add the '->' as suggested | ||
BenGoldberg | What am I doing wrong here? : | 23:46 | |
m: my Array[Int] @test; @test[0][0] = 1; say 'ok'; | |||
camelia | rakudo-moar ae6863: OUTPUT«Cannot look up attributes in a type object in method AT-POS at src/gen/m-CORE.setting:10992 in method ASSIGN-POS at src/gen/m-CORE.setting:2197 in sub postcircumfix:<[ ]> at src/gen/m-CORE.setting:3426 in block <unit> at /tmp/cnURkN06rr:1…» | ||
23:47
tinyblak joined,
gfldex left
23:48
lucasb left
|
|||
BenGoldberg | Or to put it another way, how can I declare that @test is an Array of Array of Int? | 23:48 | |
timotimo | hmm, something isn't autovivify ing properly? | 23:49 | |
BenGoldberg | m: my @test; @test[0][0] = 1; say 'ok'; | 23:50 | |
camelia | rakudo-moar ae6863: OUTPUT«ok» | ||
BenGoldberg | m: my Int $anint; say $anint; | ||
camelia | rakudo-moar ae6863: OUTPUT«(Int)» | ||
geekosaur | m: my Array[Array[Int]] @test; @test[0][0] = 1; say 'alive'; | ||
camelia | rakudo-moar ae6863: OUTPUT«Cannot look up attributes in a type object in method AT-POS at src/gen/m-CORE.setting:10992 in method ASSIGN-POS at src/gen/m-CORE.setting:2197 in sub postcircumfix:<[ ]> at src/gen/m-CORE.setting:3426 in block <unit> at /tmp/eF0QCb0GKI:1…» | ||
geekosaur | autovivify of array elements seems b0rk? | 23:51 | |
BenGoldberg | m: my Array[Int] @test; my Int $anint; $anint = @test[0][0]; | ||
camelia | rakudo-moar ae6863: OUTPUT«Cannot look up attributes in a type object in method AT-POS at src/gen/m-CORE.setting:10992 in sub postcircumfix:<[ ]> at src/gen/m-CORE.setting:3423 in block <unit> at /tmp/GiZgWGP_S3:1» | ||
BenGoldberg | m: my @test; my Int $anint; $anint = @test[0][0]; | ||
camelia | rakudo-moar ae6863: OUTPUT«Type check failed in assignment to '$anint'; expected 'Int' but got 'Any' in block <unit> at /tmp/oJfg8Ch07l:1» | ||
BenGoldberg | I'm tempted to not declare types, if that's what's going to happen. | 23:52 | |
23:54
Zoffix joined
23:57
Sqirrel left
|