»ö« 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!
Set by masak on 12 May 2015.
ugexe the secret of the name submethod is revealed 00:03
00:13 Zhtwn left, Gardner joined 00:14 Ben_Goldberg joined, zengargoyle left, zengargoyle joined
tony-o quietfanatic: are you trying to figure out why 'foo' doesn't work? it's only scoped for class A.. 00:16
m: class A { our sub foo { 'foo'.say; }; }; class B is A { method bar { A::foo; }; }; B.new.bar; 00:18
camelia rakudo-moar af886d: OUTPUT«foo␤»
tony-o if the sub isn't 'our'ed then it's not as available
m: class A { sub foo { 'foo'.say; }; }; class B is A { method bar { A::foo; }; }; B.new.bar; #should error out
camelia rakudo-moar af886d: OUTPUT«Could not find symbol '&foo'␤ in method bar at /tmp/UDCYTK9Nyv:1␤ in block <unit> at /tmp/UDCYTK9Nyv:1␤␤»
00:18 lembark left, zengargoyle left
ugexe perl6-m -e 'my $sock = IO::Socket::INET.new(:host<httpbin.org>, :port(80)); $sock.send("GET / HTTP/1.1\r\nHost: httpbin.org\r\n\r\n"); my $x = $sock.get; say "<start>{$x}<end>"' 00:20
<end>t>HTTP/1.1 200 OK
00:20 zengargoyle joined
flussence it's printing the \r but not the \n... 00:22
tony-o nice 00:27
geekosaur watches inbox start smoldering >.> 00:29
ugexe yeah... they should both get stripped off 00:30
m: say lines("a\r\nb\n").perl
camelia rakudo-moar af886d: OUTPUT«("a", "b")␤»
quietfanatic Is there any way to procedurally generate routine signatures to pass to NativeCall? 00:34
I don't want to have to EVAL.
00:36 espadrine left, lembark joined
tony-o quietfanatic: i'm guessing you'd have to write something to look at the stubs in .h or the functions in the .c .. 00:39
00:40 lembark left
tony-o still, a stub that looks like int '(*ss_callback)(int, char*);' would be difficult to handle 00:40
quietfanatic I'm doing that. What I mean is
how to give NativeCall the information
I have a structure representing the function I've parsed out of the .h, I just need to convert that into something NativeCall understands. 00:41
re: class scoping, I get it now, I was just thinking with C++ brain. 00:42
00:43 jack_rabbit left
tony-o ah, your question is more along the lines of making that sub available in scope of whatever dynamically 00:43
quietfanatic right 00:46
It may be possible to create subroutines with, say, Routine.new(signature => ...) or something like that. I'll look into it.
ugexe m: class A { has $.foo = sub foo { say 1 }; }; class B is A { method bar { $.foo.() } }; B.new.bar 00:49
camelia rakudo-moar af886d: OUTPUT«1␤»
tony-o m: class A { method foo { say 1; } }; class B is A { method bar { $.foo; } }; B.new.bar; 00:50
camelia rakudo-moar af886d: OUTPUT«1␤»
tony-o m: class A { method foo { say 1; } }; class B is A { method bar { foo; } }; B.new.bar;
camelia rakudo-moar af886d: OUTPUT«5===SORRY!5=== Error while compiling /tmp/woSVYxkkDY␤Undeclared routine:␤ foo used at line 1␤␤»
00:58 mr_ron joined 00:59 quietfanatic left 01:18 elimik joined, grondilu left 01:22 bin_005_i joined 01:23 bin_005 left 01:26 Khisanth left 01:28 aborazmeh joined, aborazmeh left, aborazmeh joined 01:29 dduncan joined, Khisanth joined
dduncan TimToady - thank you for your response of "the intention is that auth dominate version, such that each auth gets its own independent versioning scheme, and if two different auths match up their versions, it's by agreement or by accident, but not enforced" 01:31
yoleaux 12 Jun 2015 13:31Z <TimToady> dduncan: the intention is that auth dominate version, such that each auth gets its own independent versioning scheme, and if two different auths match up their versions, it's by agreement or by accident, but not enforced
dduncan ... so that's how it works, anyway ...
However, this didn't answer my question. 01:32
01:32 erdic joined
dduncan My question assumes what you said, that the versioning schemes of different auth don't in general line up... 01:33
The scenario I am asking about concerns when two different auth at different times whether by intention or coincidence happen to be compatible in all the ways that affect some user... 01:34
01:35 bin_005_i left
dduncan The question is how does the user request, if auth is X, I know I'm compatible with versions 5-7, or if auth is Y, I know I'm compatible with versions 42-45. 01:35
and by 'or' I mean 'and'
I assume that sometimes branches will strive to be mutually compatible in some ways even if they differ in other ways, and the common ground may be what the user wants. 01:36
Or do you think this scenario would be so rare that users should just pick one auth? 01:37
in their 'use'
Note, here I thought yoleaux would message me when I simply joined the channel, rather than after the first post, but there you go. 01:38
geekosaur lots of people idle on IRC and their clients may disconnect and reconnect randomly; be bad to lose a message bvecause that happened and then it scrolled away 01:43
(or netsplits, etc.)
dduncan Right, that makes sense. 01:44
I knew about the response because I saw it on the web archive, then came here to reply as my first thing. Guess I could have said 'ping' or something to trigger the bot and provide context for my response that way. 01:45
01:53 mr_ron left 01:57 Khisanth left 02:07 xinming left 02:08 xinming joined 02:09 Khisanth joined
diakopter JIT isn't supported on arm-linux-gnueabihf-thread-multi-64int yet. 02:17
*lolcry*
02:24 Khisanth left 02:25 gfldex left 02:27 noganex_ joined 02:29 Khisanth joined, noganex left 02:30 yqt left 02:33 Sqirrel left 02:35 rmgk left, rmgk_ joined, rmgk_ is now known as rmgk 02:42 zengargoyle left 02:44 zengargoyle joined 02:48 Sqirrel joined 02:51 elimik left, elimik31 left 03:01 Sqirrel left 03:09 Sqirrel joined 03:10 kaare__ joined 03:11 tinyblak joined
pmichaud good evening, #perl6 03:33
skids o/ 03:39
Ben_Goldberg It's almost gone past 'evening' in my timezone ... 'afternight' ? ;) 03:56
04:02 ][Sno][ joined 04:04 [Sno] left 04:12 BenGoldberg_ joined 04:15 Ben_Goldberg left
skids m: grammar foo { my $x = 0; regex TOP { <f> b || b <f> }; regex f { :let $x; { $x++; $x.say; } a } }; foo.parse("ba") # should a failed rule count as unsuccessful for the purpose of "let"? 04:17
camelia rakudo-moar af886d: OUTPUT«1␤2␤»
04:17 BenGoldberg_ left 04:18 Celelibi left 04:21 Celelibi joined
zostay i'm noting 408 errors from Travis CI when trying to fetch ecosystem-api.p6c.org/projects.json, anyone else encounter that problem? 04:27
04:27 Khisanth left, khisanth_ joined
skids I've had to wget it myself, and so have others. 04:28
Worse it hangs for ages before it barfs.
zostay yeah, i noticed... it was working until fairly recently 04:29
04:43 Sqirrel left 04:45 dduncan left 04:49 dduncan joined 04:54 lizmat joined 04:58 Sqirrel joined
ugexe dduncan: this sort of covers the topic you bring up: github.com/perl6/specs/blob/master...d#emulates (although its not implemented yet) 04:59
lizmat waves from the town where we will make First Contact in 2063 05:00
dduncan ugexe, thank you, I thought something like emulates might be the answer, I'll have a look. 05:02
05:06 bjz left 05:14 molaf joined
dduncan So this seems to be going at it from a different angle; rather than the consumer module enumerating the options they know they work with, they just list one, and its up to alternate suppliers to say they can step in for what was asked for. 05:15
skids Has anyone figured out a way to run a bit of "undo" code or roll back state when a rule is backtracked over? Seems tough, given the current state of Cursor. 05:17
05:17 Gardner left
lizmat skids: can't you do something with temp ? 05:18
Woodi literal: it is already scheduled ? but talking implies some for of contact... ;) 05:19
lizmat: ^ :)
lizmat plancast.com/p/tkm/first-contact-pa...-star-trek # seems we missed last year's party 05:20
skids lizmat: Was part of why I was asking about :let above, but things like that and dynamics can handle it for descent, but not concatinations. e.g. rx/a <rule> b || <rule> <rule> c/. 05:22
lizmat ah, ok, I believe you
I'm too tired after driving 9 hours today + some impressive sightseeing in Yellowstone Park 05:23
05:24 virtualsue joined
lizmat good night, #perl6! 05:24
skids sleep well, lizmat
ugexe dduncan: there is always interfaces, dependency injection, and monkey typing 05:28
you can already do try require Dog1; try require Dog2; my $dog = ::("Dog1") ~~ Failure ?? ::("Dog2").new !! ::("Dog1").new I'm not sure how you add the auth/version requirements to those, but assuming they have the same interface you can use $dog as whichever one gets loaded 05:30
dduncan ok 05:31
05:31 diana_olhovik_ joined 05:35 bjz joined 05:40 aborazmeh left 05:42 aborazmeh joined, aborazmeh left, aborazmeh joined
Woodi oh, and if we need more special ascii symbols we can introduce some control character followed by already used symbols :) ':' already works like this 05:43
but probably it's like with to much energy in one place - it can create black hole... 05:44
05:46 Psyche^ joined 05:50 Patterner left 05:52 Sqirrel left 05:54 Sqirrel joined
Woodi or maybe '#' is under utilized... we could have comments in .oO( comment ) :) 05:55
05:57 FROGGS[mobile] joined 06:07 tinyblak left 06:09 virtualsue left 06:11 FROGGS joined, tinyblak joined
FROGGS flussence: merged your panda PR 06:13
@all: please test latest panda, it should be able to download its projects.json again # flussence++
06:14 domidumont joined 06:18 domidumont left, domidumont joined 06:19 heyy joined 06:20 virtualsue joined, heyy left
skids I can panda update now, yes. 06:24
06:25 ][Sno][ is now known as [Sno]
[Sno] good night, lizmat 06:26
FROGGS: I've added some time for cross-compiling perl6 for our homepilot platform to use NativeCall :)
so I might ping you in a few weeks ... 06:27
FROGGS [Sno]: hi 06:28
[Sno]: what's a homepilot platform?
[Sno] FROGGS: that's an embbedded environment (linux) built by a cross-compiling platform (open-embedded) with local adoptions
my next steps are: migrate our current environment (daisy based, > 1yr old) to fido (recent Yocto/poky/open-embedded release), update kernel and device drivers to a supported version, build jvm8, build moarvm, build nqp for jvm & moarvm 06:30
hopefully not to many hacks will be needed :)
06:31 laouji joined
[Sno] FROGGS: it's i.MX6 based, fyi 06:31
dalek p/mingw32: 50b8354 | FROGGS++ | Configure.pl:
allow to build using gmake/gcc on windows
06:31 skids left
FROGGS [Sno]: sounds like fun :o) 06:32
[Sno] I'll report when I enter the MoarVM/JVM fun ^^
there is probably a reason why meta-java is still on v7 using icedtea :/ 06:33
I planned 3 weeks to build java and another week for nqp
dalek kudo/mingw32: a862c41 | FROGGS++ | / (2 files):
allow to build using gmake/gcc on windows
06:34
FROGGS [Sno]: yeah, keep me/us posted
[Sno] sure
FROGGS .tell cygx please test the three mingw32 branches if you have time... it should work without hacks 06:35
yoleaux FROGGS: I'll pass your message to cygx.
06:44 espadrine joined 06:46 laouji left 06:49 laouji joined, laouji left 07:34 gfldex joined
vendethiel waves 07:34
07:44 bjz left 07:45 bjz joined
FROGGS vendethiel: can you please test the three mingw32 branches on osx? 08:00
bbl 08:01
08:01 FROGGS left 08:05 labster joined 08:06 labster left 08:10 Ven joined 08:12 RabidGravy joined 08:14 darutoko joined
Ven FROGGS: I did `git checkout mingw32 && cd nqp && git checkout mingw32 && cd MoarVM && git checkout mingw32 && make && cd .. && make && cd .. && make` 08:15
Am getting this now: ld: can't map file, errno=22 file 'rakudo/install/lib/' for architecture x86_64 (said directory contains "libmoar.dylib" and "MAST/") 08:16
08:23 dduncan left, domidumont left 08:33 AlexDaniel joined 08:38 mr-foobar left
FROGGS[mobile] aha 08:40
08:40 mr-foobar joined
FROGGS[mobile] will investigate later 08:40
08:42 telex left 08:44 telex joined 08:46 cygx joined
cygx o/ 08:47
yoleaux 06:35Z <FROGGS> cygx: please test the three mingw32 branches if you have time... it should work without hacks
cygx .tell FROGGS your branches work as expected (with the caveat that you have to set MVM_SPESH_DISABLE to compile the setting) 08:48
yoleaux cygx: I'll pass your message to FROGGS.
08:50 kaare__ is now known as kaare_, cognominal joined
cygx .tell FROGGS instead of looking for $ENV{VisualStudioVersion}, one could also try to detect if your Perl5 has been compiled using MinGW, eg by looking at $Config{ccname} or $Config{gmake} 08:53
yoleaux cygx: I'll pass your message to FROGGS.
cygx FROGGS[mobile]: ^^ 08:54
.tell FROGGS the one thing that is not quite right is that the import library libmoar.dll.a ends up in /bin - it probably should go into /lib 09:00
yoleaux cygx: I'll pass your message to FROGGS.
09:02 diana_olhovik_ left, spider-mario joined 09:10 Gardner joined
FROGGS[mobile] cygx: we want to be independend from P5 (in theory) 09:19
09:22 xfix joined, xfix left, xfix joined
cygx FROGGS[mobile]: 09:33
FROGGS[mobile]: also note that going with $ENV{VisualStudioVersion} won't detect the Windows SDK shell
probably not all that much of a problem in practice, though 09:34
Ven m: module A{module B{class C{}}}; say A::B::C.^name; # any way to get the fully-qualified name? 09:42
camelia rakudo-moar af886d: OUTPUT«C␤»
09:46 Alina-malina left
cygx bye o/ 09:52
09:52 cygx left 09:55 kaare__ joined 09:58 kaare_ left 10:00 Gardner left
itz_ oops panda :) 10:19
Ven is "Empty" supposed to disappear post-glr? (as in, is it just a temporary band-aid?) 10:23
FROGGS[mobile] cygx: my windows sdk shell sets it AFAIK 10:26
Ven "and the temporary Empty type." I see 10:27
10:31 virtualsue left
Ven oh, the debugger still segfaults. seems to happen when you try to navigate around after an exception has been played. "+ Exception Thrown | Died" 10:39
10:42 uncleyea1 is now known as uncleyear, uncleyear left, uncleyear joined 10:54 tinyblak left
AlexDaniel all links that have a dot are broken: doc.perl6.org/routine.html < . .() .* .+ .. ... ..^ etc > 10:54
10:56 smls joined 11:02 ash_ joined, lolisa joined 11:03 ash_ left
smls .tell pmichaud In your new GLR design, will if/when/unless blocks return Nil or () or Slip on a false condition, and will this idiom continue to work: say "foo{'bar' if $verbose}baz" 11:06
yoleaux 12 Jun 2015 13:51Z <TimToady> smls: just to clarify, irclog.perlgeek.de/perl6/2015-06-11#i_10735146 is not quite truthy enough to be true; assignment to @ does not enforce Positional, it merely coerces any non-positional to a list of one element
smls: I'll pass your message to pmichaud.
smls TimToady: Oh right, it's only when you bind with := that you need to make sure the RHS is already Positional. 11:08
11:10 Sqirrel left
moritz assignment to % and @ is generaly coercive 11:13
yoleaux 12 Jun 2015 17:23Z <ab5tract> moritz: done, done, and done ;)
moritz ab5tract: then merge away! 11:14
11:24 tinyblak joined 11:31 diana_olhovik joined 11:33 aborazmeh left 11:40 lolisa left 11:41 diana_olhovik left 11:49 nys joined 11:53 oetiker left, zengargoyle left 11:55 Gardner joined, oetiker joined 11:58 Ven left
flussence this is weird, `panda install Linenoise` always fails on a clean reinstall of rakudo, but `panda install $any-other-module Linenoise` works fine... 11:59
oh, it's already known 12:00
12:05 oetiker left 12:09 oetiker joined 12:10 kaare__ left 12:11 tinyblak_ joined 12:14 tinyblak left, mr_ron joined 12:15 Ven joined
mr_ron no strict; %h<a> = 42; {temp %h<b> = 8} 12:16
m: no strict; %h<a> = 42; {temp %h<b> = 8}
camelia rakudo-moar af886d: OUTPUT«Type check failed in binding cont; expected 'Any' but got 'Mu'␤ in block <unit> at /tmp/AYhNmfAB9o:1␤␤»
12:17 oetiker left
mr_ron m: no strict; %h<a> = 42; 12:17
camelia ( no output )
12:17 oetiker joined
mr_ron bug I think 12:17
Ven m: temp %h<b> = 8 12:19
camelia rakudo-moar af886d: OUTPUT«5===SORRY!5=== Error while compiling /tmp/3g1OTkzVIM␤Variable '%h' is not declared␤at /tmp/3g1OTkzVIM:1␤------> 3temp 7⏏5%h<b> = 8␤»
12:19 yqt joined
Ven m: (temp %h)<b> = 8 12:19
camelia rakudo-moar af886d: OUTPUT«5===SORRY!5=== Error while compiling /tmp/QXsCghabZ8␤Variable '%h' is not declared␤at /tmp/QXsCghabZ8:1␤------> 3(temp 7⏏5%h)<b> = 8␤»
Ven m: no strict; temp %h<b> = 8
camelia rakudo-moar af886d: OUTPUT«Type check failed in binding cont; expected 'Any' but got 'Mu'␤ in block <unit> at /tmp/dvEGWzXNXu:1␤␤»
Ven m: no strict; (temp %h)<b> = 8
camelia ( no output )
Ven mr_ron: I think that's the issue :)
12:22 tinyblak_ left
mr_ron Good golf anyway ... 12:22
12:25 mr_ron left 12:27 Gardner left 12:28 xfix left 12:33 zengargoyle joined 12:35 rindolf joined 12:38 zengargoyle left 12:45 zengargoyle joined 12:50 tinyblak joined 12:53 Ven is now known as Guest81620 12:54 Guest81620 is now known as Ven_ 12:59 JimmyZ_ joined 13:02 zengargoyle left
dalek c: 02e357f | ab5tract++ | bin/p6doc:
Add a disambiguation prompt when there is more than one match for -f
13:16
doc: f9b7d83 | ab5tract++ | bin/p6doc:
doc: Theoretically support single-value matches
13:16 dalek left 13:17 dalek joined, ChanServ sets mode: +v dalek, Sqirrel joined, Ven_ left 13:31 molaf left 13:32 FROGGS joined
masak good afternoon, #perl6 13:35
FROGGS .
yoleaux 08:48Z <cygx> FROGGS: your branches work as expected (with the caveat that you have to set MVM_SPESH_DISABLE to compile the setting)
08:53Z <cygx> FROGGS: instead of looking for $ENV{VisualStudioVersion}, one could also try to detect if your Perl5 has been compiled using MinGW, eg by looking at $Config{ccname} or $Config{gmake}
09:00Z <cygx> FROGGS: the one thing that is not quite right is that the import library libmoar.dll.a ends up in /bin - it probably should go into /lib
FROGGS o/
.tell Ven you did not 'make install', right? 13:36
yoleaux FROGGS: I'll pass your message to Ven.
FROGGS .tell cygx I was able to compile the setting without disabling spesh.... can you tell what windows/perl/gcc versions you have? 13:38
yoleaux FROGGS: I'll pass your message to cygx.
RabidGravy what do I have to do get "$some_object ~~ $some_enum_value" to work properly? It seems to always ignore the sub infix:<~~> and want a Numeric method on the LHS 13:41
13:41 kaare__ joined, zengargoyle joined
FROGGS RabidGravy: an enum is a numeric thing... so only a numeric thing can possibly match 13:43
13:44 Ven_ joined
RabidGravy but can't you make it go with a more specific overload of '~~'? I have a case where I want it to possibly smart match a number of different enums in different attributes of the object 13:45
FROGGS RabidGravy: can you show some example code here?
RabidGravy i.e. $obj ~~ Sometype $obj ~~ Somesubtype etc 13:46
FROGGS what about obj ~~ Sometype|Somesubtype ?
13:48 zengargoyle left
RabidGravy that's not quite what I mean 13:50
FROGGS then I misunderstand 13:51
RabidGravy I've got for instance "multi sub infix:<~~> (Audio::Sndfile:D $as, Audio::Sndfile::Info::Format $type) { $as.info.type == $type }" - it appears to ignore that 13:53
FROGGS RabidGravy: ohh, you probably want to implement an ACCEPTS method on Audio::Sndfile::Info::Format instead 13:54
RabidGravy can you do that on an enum?
13:55 zengargoyle joined
FROGGS hmmmm 13:55
m: role Bar { method ACCEPTS($lhs) { True } }; enum Foo does Bar < bar baz >; say "foo" ~~ bar 13:56
camelia rakudo-moar af886d: OUTPUT«True␤»
RabidGravy ah hah! I had it the wrong way round 13:59
FROGGS++ # top suggestions
FROGGS yeah, ~~ is compiled to a call to ACCEPTS... they way it is implemented it will ignore sub infix:<~~>
jdv79 is there a way to know if an op is overrideable, or a list of ones that cant be? 14:07
FROGGS hmmm, good question 14:08
there are only a few ops where we cheat
Ven_ \o masak 14:13
FROGGS: I couldn't
FROGGS Ven_: you could not?
Ven_ FROGGS: it failed before
trying to `make` rakudo itself 14:14
FROGGS Ven_: I am talking about MoarVM and nqp
Ven_ oh! 14:15
14:17 JimmyZ_ left 14:29 uncleyear left
RabidGravy panda-test 14:31
Boo! wrong window
Ven_ FROGGS: re-making rakudo 14:34
FROGGS++: can confirm it works :)
14:37 elimik31 joined
FROGGS Ven_: thanks!! 14:45
:D
14:46 Alina-malina joined, Gardner joined
hoelzro happy Saturday, and good mroning #perl6! 14:50
RabidGravy is the number of bits in 'int' always the same as $*KERNEL.bits? 14:51
14:52 uncleyear joined
Ven_ uh, even after `make install`, `perl6` fails (but `./install/bin/perl6` works...). I have both rakudo/ and rakudo/install/bin in my path 14:53
lizmat good *, #perl6!
Ven_ hi lizmat
RabidGravy erp 14:54
lizmat Ven_ RabidGravy hoelzro FROGGS jdv79 o/
hoelzro o/ lizmat
lizmat RabidGravy: not 100% sure: I guess you *could* build a 32-bit Moar on a 64bit kernel
and then they would differ 14:55
m: say $*KERNEL.hardware 14:56
camelia rakudo-moar af886d: OUTPUT«x86_64␤»
FROGGS hi lizmat
RabidGravy lizmat, Hmm true. I'll put this aside for a bit. 15:03
Ven_ FROGGS: any step I'm missing? global `perl6` invocation just says "Missing or wrong version of dependency 'gen/moar/stage2/QRegex.nqp' (from 'src/Perl6/Pod.nqp')" 15:06
RabidGravy if you're in the build directory it seems to do that
Ven_ oh, yes. wow, it's been a long time. hahaa 15:07
RabidGravy never been sufficiently curious as to find out why 15:10
15:10 kurahaupo1 left 15:13 zengargoyle left
dalek kudo/nom: 6884d0b | lizmat++ | src/core/List.pm:
If it's good enough for unshift, it's ok for push
15:13
15:15 zengargoyle joined 15:16 diana_olhovik joined
dalek p/mingw32: ef6cbe9 | FROGGS++ | Configure.pl:
ask moar for the make utility used
15:20
15:20 Gardner left
dalek kudo/mingw32: f2abc9d | FROGGS++ | Configure.pl:
check for nmake/cl/gmake/gcc instead of trusting env vars
15:21
FROGGS .tell cygx now it works in the windows sdk shell too 15:22
yoleaux FROGGS: I'll pass your message to cygx.
hoelzro m: my @lines = 'foo=1', 'bar=2'; my @result = gather for @lines -> $line { take $line.split('=') }; say @result.perl
camelia rakudo-moar af886d: OUTPUT«[]<>␤»
hoelzro should that stick 'foo', '1', 'bar', '2' into @result?
lizmat m: my @lines = 'foo=1', 'bar=2'; say @lines
camelia rakudo-moar af886d: OUTPUT«foo=1 bar=2␤» 15:23
hoelzro m: my @lines = 'foo=1', 'bar=2'; my @result = gather for @lines -> $line { my ( $k, $v ) = $line.split('='); take $k, $v }; say @result.perl
camelia rakudo-moar af886d: OUTPUT«["foo", "1", "bar", "2"]<>␤»
lizmat m: (a => 42).split("=") 15:24
camelia rakudo-moar af886d: OUTPUT«Method 'split' not found for invocant of class 'Pair'␤ in block <unit> at /tmp/3D9YG92J70:1␤␤»
lizmat ??
m: my @lines = 'foo=1', 'bar=2'; say @lines[0].WHAT 15:25
camelia rakudo-moar af886d: OUTPUT«(Str)␤»
lizmat ah
lizmat is not quite awake yet, apparently
hoelzro lizmat: are you still in SLC?
lizmat no, in Bozeman, MT
looking for the place of First Contact :-)
hoelzro ah ha =) 15:26
15:26 kurahaupo1 joined
TimToady whistles a five-note tune 15:28
lizmat m: say (gather take "a=42".split("=")).perl # this feels like a bug 15:30
camelia rakudo-moar af886d: OUTPUT«()␤»
lizmat m: say gather .take for "a=42".split("=") # this seems to work 15:31
camelia rakudo-moar af886d: OUTPUT«a 42␤»
lizmat m: say (gather .take for "a=42".split("=")).perl # to be more precise 15:32
camelia rakudo-moar af886d: OUTPUT«("a", "42")␤»
lizmat hoelzro: perhaps this is a better workaround for now? 15:33
hoelzro lizmat: ah, interesting
15:33 virtualsue joined
hoelzro I decided to just use some explicit variables; I'll RT up the bug 15:34
lizmat hoelzro++
dalek kudo/mingw32: f6e73df | FROGGS++ | Configure.pl:
make quecking for cl.exe not blocking endlessly
15:36
15:37 elimik31 left
hoelzro alright, ticketed a RT #125401 15:40
synbot6 Link: rt.perl.org/rt3/Public/Bug/Display...?id=125401
15:44 JimmyZ_ joined 15:46 diana_olhovik left, lolisa joined 15:53 espadrine left 15:56 lizmat left
hoelzro gtodd1: I changed how Linenoise gets its constant values; could you try installing it again and see if it works? 15:57
15:57 Ven_ left 15:58 yqt left
dalek kudo/mingw32: aec5fb4 | FROGGS++ | Configure.pl:
use moar's make utility if possible
16:04
16:09 zacts joined
zacts hi 16:09
16:11 yqt joined 16:14 ab6tract joined
ab6tract m: 9457079caa 16:14
camelia rakudo-moar 6884d0: OUTPUT«5===SORRY!5=== Error while compiling /tmp/RAN5cPQ1Td␤Confused␤at /tmp/RAN5cPQ1Td:1␤------> 0394570797⏏5caa␤ expecting any of:␤ whitespace␤»
ab6tract m: gist.github.com/ab5tract/9457079caa93244511b1
camelia rakudo-moar 6884d0: OUTPUT«1 what what 1 how how 2 this this␤»
ab6tract How would one go about having an index value that will increase by every element of lists found in %hash.values 16:16
16:17 uncleyea1 joined 16:18 uncleyear left
FROGGS m: gist.github.com/FROGGS/3ab0151f513b570eeb4e 16:18
camelia rakudo-moar 6884d0: OUTPUT«1 what 1 what 2 how 2 how 3 this 3 this␤»
16:19 dwarring left
ab5tract FROGGS: should have known :) 16:21
FROGGS[mobile] that's not what you wanted, though, right? 16:23
ab6tract not really, no 16:24
it's closer, but not quite there. in this case it would be index 1-6
*indexed
m: gist.github.com/ab5tract/9457079caa93244511b1 16:32
camelia rakudo-moar 6884d0: OUTPUT«5===SORRY!5=== Error while compiling /tmp/74mbom9ifN␤Variable '%hash' is not declared. Did you mean '&hash'?␤at /tmp/74mbom9ifN:3␤------> 3my $size = [+] 7⏏5%hash.values.map({ +@^a });␤»
ab6tract m: gist.github.com/ab5tract/9457079caa93244511b1
camelia rakudo-moar 6884d0: OUTPUT«1what 2what 3how␤»
RabidGravy does @array1 ~~ @array2 definitely stop comparing when it reaches the end of @array1? 16:33
so if one wanted the two arrays to be exactly the same you''d have to compare the length too 16:34
16:35 molaf joined
TimToady it must be an exact match 16:35
m: say [1,2] ~~ [1,2,3] 16:36
camelia rakudo-moar 6884d0: OUTPUT«False␤»
TimToady m: say [1,2,3] ~~ [1,2]
camelia rakudo-moar 6884d0: OUTPUT«False␤»
TimToady easy enough to test...
RabidGravy ah, okay my original test of the behaviour was completely stupid 16:37
m: say (^10) ~~ (^30);
camelia rakudo-moar 6884d0: OUTPUT«True␤»
TimToady those are ranges, not arrays :)
RabidGravy yes
TimToady and the first range is definitely within the second
and it should be testing just the endpoints 16:38
m: say ^10000000 ~~ ^100000000000
camelia rakudo-moar 6884d0: OUTPUT«True␤»
TimToady m: say 0..10 ~~ ^10 16:39
camelia rakudo-moar 6884d0: OUTPUT«False␤»
TimToady m: say 0..9.99999999999 ~~ ^10
camelia rakudo-moar 6884d0: OUTPUT«True␤»
16:40 smls left, smls_ joined 16:41 nys left
TimToady smls: slip() should not be any less useful than Empty wrt false conditions working in list-comprehensional situations 16:41
RabidGravy why when: 16:43
m: class Foo {}; class Foo {} 16:44
camelia rakudo-moar 6884d0: OUTPUT«5===SORRY!5=== Error while compiling /tmp/7TQoHbS5s_␤Redeclaration of symbol Foo␤at /tmp/7TQoHbS5s_:1␤------> 3class Foo {}; class Foo7⏏5 {}␤ expecting any of:␤ generic role␤»
RabidGravy does:
m: class Array {}
camelia ( no output )
RabidGravy not complain?
this is, er, somewhat dangerous IMO
(my limited research suggests that this is the case for all classes defined in the setting) 16:45
16:51 pecastro joined 16:52 diana_olhovik_ joined, skids joined 16:57 domidumont joined
dalek c: 0f40e8d | ab5tract++ | bin/p6doc:
Use numbers for interactive disambiguation if there is a first letter collision
16:58
c: f9032c0 | ab5tract++ | lib/Language/io.pod:
Add line-by-line example to Language::io
TimToady -> Park City 16:59
afk &
ab6tract o/ TimToady !
17:11 zengargoyle left
RabidGravy is there a way of populating a new (potentially large) CArray from a regular Array without copying the contents element by element? 17:13
17:13 zengargoyle joined
ugexe wondering the same thing myself 17:16
skids If you were asking about making a Buf, the answer would be "no" because reasons: gist.github.com/skids/aabd2aad3d0b5ad8481b 17:17
I do not know what the formally specced disposition of CArray is for memory contiguity.
ugexe on that same note, is there a more efficient way to slice up a Buf into a single Buf made up of subbufs of the original Buf? creating a new Buf for each subbuf and then creating a new Buf for each of those seems like im doing something wrong 17:18
skids I think the general idea there was that you would use subbuf and that would just be a window into the original memory, but as to implementation efficiency there... 17:20
ab5tract skids: "not guaranteed on all implementations" <-- do you mean it is not supported by all Rakudo backends?
skids ab5tract: looking I wrote that long ago.
ab5tract the next paragraph clears up the intent of the example, though 17:21
skids ab5tract: I think I was meaning, "not bolted to the floor in the spec" 17:23
ab5tract skids: gotcha 17:26
A very interesting read
17:27 ab6tract left
skids Theoretically if you made a bunch of subbufs from a buf, and then threw away all refs to the buf itself, GC could be made smart enough to realloc to only hold the memory actually pointed to by the subbufs that you still have held, but as to whether we ever get there... 17:27
So if we are talkig about long-lived subbufs, copying might be better. 17:28
Also last time I looked at subbuf handlig code it was of the "first make it work" variety. 17:29
ugexe skids++ good stuff to know 17:32
17:35 yqt left, khisanth_ left 17:36 khisanth_ joined
RabidGravy okay, looks like it'll have to be "use NativeCall; my @foos = (^10000); my $foo = CArray[int32].new; $foo[$_] = @foos[$_] for ^@foos.elems;" 17:39
we'll have to wait for nice things 17:40
skids :-) 17:41
CArray seems to exist primarily for the "I can't carry a .elems alongside this ref" purpose so maybe the "nice thing" would be .subbuf($elems) and a is-rw-shaped-native-array coercer method on that class. 17:45
17:48 zengargoyle left 17:49 diana_olhovik_ left, spider-mario left, zengargoyle joined 17:58 smls_ is now known as smls 18:00 FROGGS[mobile] left
dalek p: 50b8354 | FROGGS++ | Configure.pl:
allow to build using gmake/gcc on windows
18:06
p: ef6cbe9 | FROGGS++ | Configure.pl:
ask moar for the make utility used
p: 4e607b7 | FROGGS++ | tools/build/MOAR_REVISION:
bump moar rev for {n,g}make detection
kudo/nom: 5cf73fe | FROGGS++ | / (2 files):
allow to build using gmake/gcc on windows
18:08
kudo/nom: 8642a71 | FROGGS++ | Configure.pl:
check for nmake/cl/gmake/gcc instead of trusting env vars
kudo/nom: 92ecd03 | FROGGS++ | Configure.pl:
make quecking for cl.exe not blocking endlessly
kudo/nom: 103728d | FROGGS++ | Configure.pl:
use moar's make utility if possible
kudo/nom: 9ab84bb | FROGGS++ | tools/build/NQP_REVISION:
bump nqp/moar rev for {n,g}make detection
vendethiel FROGGS++ 18:10
18:11 wentam left
dalek kudo/nom: 9c8cb67 | FROGGS++ | docs/ChangeLog:
mention mingw in changelog
18:14
18:15 domidumont left 18:24 _mg_ joined 18:35 telex left 18:36 telex joined 18:47 kaare__ left, kaare__ joined 18:58 yqt joined 19:07 zengargoyle left 19:12 lolisa left
vendethiel tadzik: I have a Bailador PM ready 19:16
tadzik oh :) 19:17
masak "PM"? Prime Minister?
tadzik let me see
bailador having a prime minister would be huge
vendethiel uh 19:18
PR*
.oO( my R and M keys are too close )
tadzik vendethiel: hmm, I wonder if PSGI specifies whether the list must be 3 elements long
so whether we should have Any or not
vendethiel tadzik: there's another issue opened for that, though :) 19:19
I figured I'd just fix the tests for now
tadzik I think there should be a clear answer for that
vendethiel ah, but my PR would close it...
19:20 zengargoyle joined
tadzik let's figure out the answer then 19:20
19:20 diana_olhovik_ joined
tadzik also, travis I'd like to keep working, let's see if we can get ahold of szabgab and see what we can do 19:20
but I think the solution ultimately boils down to tagging module releases and making panda understand them 19:21
19:22 dj_goku left
tadzik or even teach meta.info to know what rakudo version is required for what and whatnot 19:22
I wonder if Perl 5 has a good solution for it
probably not, since they don't break stuff too much