»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg p6eval perl6: ... | irclog: irc.perl6.org/ | UTF-8 is our friend!
Set by sorear on 4 February 2011.
00:07 wamba left 00:37 bowtie left 00:55 anuby joined 01:00 pmurias left 01:01 fgomez left 01:07 fgomez joined 01:09 havenn left, hypolin joined, havenn joined 01:14 havenn left 01:16 eternaleye_ joined 01:20 vlixes joined
diakopter byr freather 01:21
01:23 PerlJam joined, dalek joined, ChanServ sets mode: +v dalek, Juerd joined 01:24 pmichaud joined, sergot joined, masak joined, topo joined, [Coke] joined, Util joined, tadzik joined, p6eval joined, ChanServ sets mode: +v p6eval 01:25 hugme joined, ChanServ sets mode: +v hugme 01:26 vlixes left 01:46 Vlavv joined 01:47 Vlavv left 01:48 Vlavv joined 02:01 supernovus joined
supernovus So, for building Rakudo Star (the distribution), do they fork the libraries that are included, or just use the newest versions as of when the distribution is put together? 02:02
seen masak 02:04
aloha masak was last seen in #perl6 39 mins 58 seconds ago joining the channel.
02:04 gootle joined 02:07 jerome joined
supernovus I wonder if they'll ever make it so that you don't have to recompile all your pre-compiled Perl 6 modules every time you recompile Rakudo. Sigh. 02:11
02:14 plobsing joined
supernovus No such method 'get_string' for invocant of type 'str' 02:19
02:29 supernovus left
skids supernovus: likely that is a problem with a failure being returned from a compiled module. That regressed in star09 IIRC. 02:37
oh he quit. 02:38
02:43 atrodo left 02:54 chee left 03:04 chee joined 03:06 havenn joined 03:11 havenn left 03:24 tokuhiro_ left 03:43 bapa left 03:55 raiph left 03:57 hypolin left 03:58 bapa joined 04:18 bapa left 04:22 bapa joined 04:50 hypolin joined 04:51 grondilu_ left 05:20 sorear joined 05:24 telex joined 05:37 erkan joined, erkan left, erkan joined 05:38 meilincore joined 05:42 meilincore left 06:35 kaleem joined 06:40 skids left 06:46 plobsing left
Woodi morning everyone :) 07:02
sorear o/ Woodi 07:03
07:03 SamuraiJack joined
Woodi what you think about putting Object-relational Mapper project into Google Code ? 07:03
07:04 kurahaupo left 07:05 anuby left, anuby joined 07:36 domidumont joined, wamba joined
Woodi actually I had in mind a) do research on existing implementations word-wide and possible approuches b) find possible ways of OR-mapping in Perl6 c) implement something 07:39
diakopter TRIUMPH
Woodi but looks a) and b) alone qualifies for GCI
sorear yay, vote counting is ~over, now I can be productive again 07:40
diakopter :P
Woodi I hear taxes will incrase :) 07:41
sorear taxes always increase, no matter what they promise 07:42
naught is sure in life but for death and taxes
07:43 domidumont left 07:44 domidumont joined 07:45 cognominal left
moritz Woodi: I've toyed a bit with a micro-ORM, and frequently ran into DBIish segfaults 07:46
Woodi ok
moritz Woodi: so an ORM project can only work for somebody who is willing and able to debug and fix those
Woodi then "resolve DBIsh segfaults" !
not many projects so far on perlfaundation page... 07:47
why ppls no brainstorm in such cases is beyound my imagination :)
sorear why brainstorm more projects? we're already overworked 07:48
07:48 domidumont left
Woodi sorear: but GCI is for ppls from outside ? 07:48
07:49 domidumont joined
Woodi it is attracting ppls in small steps. many ppls. and maybe few of them will be able to contribute some wizardy later too :) 07:50
07:54 cognominal joined 07:56 flightrecorder joined 07:57 sorenso joined 08:00 wamba left, wamba1 joined 08:03 GlitchMr joined 08:10 brrt joined, bruges_ joined 08:11 sorenso left 08:14 sorenso joined 08:15 anuby_ joined, anuby left 08:23 brrt left
moritz k 08:27
ww
08:57 havenn joined 08:58 havenn left 08:59 brrt joined 09:06 arlinius left 09:09 kresike joined
kresike hello all you happy perl6 people 09:09
09:12 fhelmberger joined 09:18 cognominal left 09:25 cognominal joined 09:28 havenn joined 09:37 havenn left 09:38 FROGGS joined 09:41 chee left 09:46 dakkar joined 09:49 fhelmberger left, fhelmberger joined 09:51 chee joined 09:56 Gothmog_ left 09:58 kurahaupo joined, GlitchMr42 joined 10:00 GlitchMr left 10:01 Gothmog_ joined 10:03 hypolin left 10:04 havenn joined 10:08 havenn left 10:19 anuby_ left 10:22 fgomez left 10:23 silug joined
masak good antenoon, #perl6 10:23
brrt hi masak 10:25
moritz \o
jnthn morning, #perl6 10:31
brrt hi jnthn 10:32
jnthn r: my %h; %h<a>:exists 10:35
p6eval rakudo 5dd878: ( no output )
moritz \o
jnthn This now parses/passes along the adverb. :)
moritz o/
does it do something already?
brrt oh, that is nice
general adverb parsing, or just for :exists?
jnthn So if anybody has tuits to work on implementing the actual logic in the postcircumfix methods... :) 10:36
brrt: General adverb parsing.
tadzik r: my %h; %h<a>:delete; %h.perl.say
p6eval rakudo 5dd878: OUTPUT«().hash␤»
tadzik ossum
brrt yay
jnthn r: sub infix:<with>($a, $b, :$joiner) { $a ~ $joiner ~ $b }; say 'fish' with 'chips' :joiner(' and ') 10:38
p6eval rakudo 5dd878: OUTPUT«fish and chips␤»
brrt jnthn++, that is really cool 10:39
masak jnthn++ # wow! 10:40
10:40 fhelmberger left
jnthn Finally figured out how the hell STD did it :) 10:40
masak :P
brrt is updating rakudo as we speak 10:41
so the next release is going to have macros and adverbs
that is really really cool
masak .oO( adverbs on macros o.O )
brrt oh behave 10:42
masak :)
moritz and heredocs, and quote adverbs 10:43
masak r: multi infix:<+>($l, $r, :$awesome!) { "AWESOME <guitar solo>" }; say 40 + 2 :awesome
p6eval rakudo 5dd878: OUTPUT«Unexpected named parameter 'awesome' passed␤ in sub infix:<+> at src/gen/CORE.setting:2945␤ in block at /tmp/g0Saze_0v7:1␤␤»
masak jnthn: Y NO WORKS? :(
jnthn Um. 10:45
'cus named parameters don't participate in multi-dispatch, I guess. 10:46
But still, it should consider your candidate tighter...
moritz r: multi infix:<+>($l, $r, :$awesome!) { "AWESOME <guitar solo>" }; say Any + Any :awesome
p6eval rakudo 5dd878: OUTPUT«AWESOME <guitar solo>␤»
jnthn oh!! 10:47
Yeah, of course
moritz does seem to be a dispatch problem, not an adverb problem
jnthn Not even a problem
A specific (Int, Int) is going to be tighter and an (Any, Any) even if the (Any, Any) is in an outer scope.
*than an
*inner
:)
masak oh! 10:48
r: multi infix:<+>(Int, Int, :$awesome!) { "AWESOME <guitar solo>" }; say 40 + 2 :awesome
p6eval rakudo 5dd878: OUTPUT«AWESOME <guitar solo>␤»
masak \o/ 10:50
11:03 fgomez joined 11:04 havenn joined 11:05 gootle left, GlitchMr42 is now known as GlitchMr
jnthn Don't forget this is the first release with operator precedence traits and shell words too :) 11:06
11:06 brrt left 11:08 gootle joined
jnthn r: my $i = 0; while $i < 10 { FIRST { say 'post' }; LAST { say 'wish' }; NEXT { say "and" }; say $i++ }; 11:09
p6eval rakudo 5dd878: OUTPUT«post␤0␤and␤1␤and␤2␤and␤3␤and␤4␤and␤5␤and␤6␤and␤7␤and␤8␤and␤9␤and␤wish␤»
11:09 havenn left
jnthn Also, did that last night (before they only worked in for loops) :) 11:09
11:13 kurahaupo left 11:19 SHODAN joined 11:26 rindolf joined 11:31 chee left
jnthn meeting & 11:31
11:34 daxim joined 11:40 chee joined 11:45 fhelmberger joined
masak jnthn++ # FIRST NEXT LAST in for loops 11:45
er, while loops* 11:46
r: my $count = 10; loop { say $count--; last unless $count; LAST { say "liftoff!" } }
p6eval rakudo 5dd878: OUTPUT«10␤9␤8␤7␤6␤5␤4␤3␤2␤1␤liftoff!␤»
masak cool. 11:47
11:55 _ilbot joined
masak r: my $count = 10; loop { say $count--; last unless $count; LAST { say "$count -- liftoff!" } } 11:59
p6eval rakudo 5dd878: OUTPUT«10␤9␤8␤7␤6␤5␤4␤3␤2␤1␤0 -- liftoff!␤»
12:02 gootle left 12:07 brrt joined 12:09 bowtie joined 12:12 cognominal left 12:13 cognominal joined 12:34 Psyche^ joined 12:39 Patterner left, Psyche^ is now known as Patterner 13:03 chee left 13:07 havenn joined 13:10 havenn left, chee joined 13:24 SamuraiJack left 13:26 mtk joined 13:31 bluescreen10 joined, benabik joined 13:37 brrt left 13:48 azawawi joined
azawawi hi #perl6 13:48
13:54 mtk left, mtk joined 14:05 dakkar left 14:07 PacoAir joined 14:08 atrodo joined
Ulti hi azawawi people were around not long ago ;) 14:09
14:10 flightrecorder left
azawawi i noticed 14:10
14:10 FROGGS left, kresike left
azawawi it is like coming and say hi to an empty room ... :) 14:11
azawawi hears the echo
14:11 sivoais joined, flightrecorder joined
masak I guess people are busy. 14:12
I know I am :)
moritz is, too 14:15
azawawi masak: i will level up alone... not a big deal :) 14:17
solo 14:19
14:20 brrt joined 14:21 kaleem left 14:24 FROGGS joined 14:26 kresike joined 14:28 plobsing joined
azawawi home & 14:29
azawawi %*ENV{'home'} # :) &
14:29 azawawi left
moritz %*ENV<home> 14:30
PerlJam greetings perlings! 14:42
tadzik hello jammings
PerlJam [Coke]: I hope you're happy now! :) 14:46
flussence rn: my @a = gather for ^5 { FIRST { next }; take $_ }; say @a 14:48
p6eval niecza v22-19-gd874a8e: OUTPUT«===SORRY!===␤␤Action method statement_prefix:FIRST not yet implemented at /tmp/a4nndJ9_Wn line 1:␤------> my @a = gather for ^5 { FIRST { next }⏏; take $_ }; say @a␤␤Unhandled exception: Unable to resolve method stateme… 14:49
..rakudo 5dd878: OUTPUT«0 1 2 3 4␤»
flussence shouldn't rakudo say «1 2 3 4» there?
PerlJam aye, looks like a bug 14:52
14:54 wamba1 left 14:55 plobsing left
moritz I guess FIRST is called before the loop is entered 14:56
r: for ^5 { my $x = $_ ** 2; FIRST { say $x } };
p6eval rakudo 5dd878: OUTPUT«Any()␤»
moritz yes, looks like
[Coke] PerlJam: yay, it's over. Now maybe we can do things! 14:57
14:58 cognominal left
PerlJam oh, maybe it isn't a bug. "FIRST {...}* at loop initialization time, before any ENTER" and "ENTER {...}* at every block entry time, repeats on loop blocks." So FIRST happens before block entry, which is consistent with what happens. 15:00
moritz so not as awesome as one might want to wish for :( 15:02
PerlJam r: my @a = gather for ^5 { START { next }; take $_ }; say @a 15:03
p6eval rakudo 5dd878: OUTPUT«1 2 3 4␤»
moritz PerlJam: remember that phasers don't need a block
r: my @a = gather for ^5 { START next; take $_ }; say @a
p6eval rakudo 5dd878: OUTPUT«1 2 3 4␤»
15:05 cognominal joined
PerlJam START and FIRST seem backwards to me. Or at least START seems like it should be called FIRST. 15:06
15:07 stopbit joined
moritz
.oO( at FIRST it STARTled me too )
15:08
15:08 wamba joined 15:10 wamba left 15:14 chee left
PerlJam r: for ^3 { my $x = FIRST time; say $x } # I'm not sure about this one. 15:16
p6eval rakudo 5dd878: OUTPUT«Nil␤Nil␤Nil␤»
15:18 chee joined 15:21 broquaint joined
jnthn back 15:22
15:30 cognominal left 15:33 wamba joined
[Coke] r: my $x = cat FIRST sink time; 15:36
p6eval rakudo 5dd878: OUTPUT«===SORRY!===␤CHECK FAILED:␤Undefined routine '&cat' called (line 1)␤»
15:36 thou joined
jnthn No cat in Rakudo yet :) 15:37
And FIRST outside of a loop don't mean much...
15:37 cognominal joined
arnsholt What's cat for, btw? 15:38
moritz for creating a stringish stream
jnthn loling at
:)
Yeah, not quite sure how to implement it.
15:39 thou left
moritz neither 15:39
15:40 fgomez left
jnthn Well, we're looking good on features for the Nov release. :) 15:40
I think we can have :delete and :exists working well in time for it.
perigrin sub cat { map { Str.coerce($_) } @_ } # excuse the moose-isims
15:40 fgomez joined
jnthn perigrin: It needs to have lazy semantics and behave more like a string if it's, say, matched against, not like a list of strings. 15:41
The map gets the laziness but not the "act like a string"
moritz perigrin: the problem isn't constructing the objects; it's making everything else that works with string work with Cats too
jnthn Right
Especially things like the regex engine. 15:42
perigrin moritz: implement a herd operator ... once you can herd Cats you can do anything in programming.
jnthn *groan* :)
PerlJam as long as it's not "hurd" 15:43
perigrin PerlJam: depends on how gnu your hurd is ...
15:46 arlinius joined 15:49 thou joined, thou left 15:54 kaare_ joined
flussence r: gist.github.com/4032415 15:55
p6eval rakudo 5dd878: OUTPUT«0,1,2,3,4,5,6,7,8,9␤»
flussence \o/
16:01 chee left
[Coke] r: say "mmm {('A'..'a')[11054]}" 16:04
p6eval rakudo 5dd878: OUTPUT«(timeout)»
[Coke] awww.
16:05 cognominal left
[Coke] r: say "mmm {('A'..'a')[454]}" 16:07
p6eval rakudo 5dd878: OUTPUT«mmm QM␤»
[Coke] r: say "mmm {('A'..'a')[424]}" #whoops
p6eval rakudo 5dd878: OUTPUT«mmm PI␤»
16:09 chee joined, thou joined 16:11 jimmy1980 joined 16:13 cognominal joined 16:15 thou left 16:25 skids joined 16:31 brrt left 16:34 sorenso left
masak [Coke]: "mmm QM" makes a lot of sense too, if you're into quantum computing. 16:39
er. quantum mechanics.
kresike bye folks 16:42
16:42 kresike left
masak fare thyself well, kresike. 16:43
16:48 chee left 16:53 benabik left, benabik_ joined 16:54 jimmy1980 left, benabik_ left, benabik joined 16:55 chee joined, chee left 16:57 jimmy1980 joined
skids r: role A [$x] { method d { "OHA1".say } }; role B { method d { "OHB1".say } }; role C does A[1] does B { method d { self.A[1]::d() } }; class D does C { }; my D $c .=new(); $c.d; # is there a syntax for explicitly using a parametric role's method? 17:06
p6eval rakudo 5dd878: OUTPUT«===SORRY!===␤Unable to parse expression in block; couldn't find final '}' at line 2, near "self.A[1]:"␤»
17:07 chee joined
jnthn skids: Not as far as I know 17:08
17:12 thou joined 17:16 thou left, benabik left 17:19 zby_home joined, MayDaniel joined 17:20 cognominal left 17:27 sorenso joined 17:28 chee left, chee joined 17:32 thou joined
masak would like something like msdn.microsoft.com/en-us/library/yh598w02.aspx as a Perl 6 module, for automatically closing file handles 17:33
17:38 thou left 17:39 SamuraiJack joined 17:40 FROGGS left, flightrecorder left, spider-mario joined
jnthn I've been suggesting something like that for a while ;) 17:42
Making the limits of resource holding explicit. 17:43
17:43 cognominal joined 17:48 fhelmberger left
GlitchMr .u В 17:53
phenny U+0412 CYRILLIC CAPITAL LETTER VE (В)
17:53 rindolf left 17:55 cognominal left 18:01 cognominal joined
flussence wants something like masak's asking for too. Not real destructors per se, just something like LEAVE but as an object method... 18:03
arnsholt Yeah, deconstructors would be good 18:05
18:05 Chillance joined
flussence (PHP has real destructors but I've found them somewhat less than useful for real-world code...) 18:06
18:08 cognominal left 18:10 sorenso left 18:13 cognominal joined 18:20 cognominal left 18:24 havenn joined 18:26 cognominal joined 18:39 eternaleye_ is now known as eternaleye 18:40 leont joined 18:41 fglock joined
sorear o/ 18:41
18:42 cognominal left
fglock o/ 18:43
18:43 fhelmberger joined 18:44 bluescreen10 left 18:45 cognominal joined, Entonian joined 18:46 Entonian left 18:49 xinming_ joined 18:52 xinming left 19:06 cognominal_ joined 19:07 cognominal left 19:12 brrt joined
masak r: role Disposing { method dispose { say self ~ " disposed" } }; macro RAII($res, $code) { quasi { {{{$code}}}(); LEAVE { {{{$res}}}.dispose } } }; my $res = (class C does Disposable {}).new; RAII $res, { say "processing..." } 19:22
p6eval rakudo 5dd878: OUTPUT«===SORRY!===␤Unable to parse $*PKGDECL definition at line 2, near "does Dispo"␤»
masak r: role Disposing { method dispose { say self ~ " disposed" } }; macro RAII($res, $code) { quasi { {{{$code}}}(); LEAVE { {{{$res}}}.dispose } } }; class C does Disposable {}; my $res = C.new; RAII $res, { say "processing..." }
p6eval rakudo 5dd878: OUTPUT«===SORRY!===␤Unable to parse $*PKGDECL definition at line 2, near "does Dispo"␤»
masak oh.
r: role Disposing { method dispose { say self ~ " disposed" } }; macro RAII($res, $code) { quasi { {{{$code}}}(); LEAVE { {{{$res}}}.dispose } } }; class C does Disposing {}; my $res = C.new; RAII $res, { say "processing..." } 19:23
p6eval rakudo 5dd878: OUTPUT«===SORRY!===␤Error while compiling block : Error while compiling block RAII: Error while compiling block : Error while compiling block : Error while compiling op p6type: Error while compiling op callmethod: Unknown QAST node type QAST::Unquote␤at /tmp/I4MtNVgKXY:1␤…
masak submits rakudobug
jnthn Don't you have enough copies of "nested blocks don't work"? :)
masak maybe. 19:24
jnthn ;) 19:25
masak (but whyyyy)
jnthn Because they're declarations, and the delayed decl stuff ain't done yet, I guess...
Though that seems unrelated to failing to find the unquite.
*unquote
masak aye.
jnthn I assume it's not soemthing simple like not processing the [0] node of the quasi block properly? 19:26
masak o.O
of course not. who would commit such a trivial mistake? 19:27
jnthn (every block has two kids, one with decls, one with statements...)
masak hides between two lines of source code
19:27 leont left
jnthn my $past := $<block>.ast<past_block>.pop; 19:27
nqp::bindattr($quasi_ast, $ast_class, '$!past', $past);
:P
PerlJam masak: you must be thin to fit in such a tight space. 19:28
masak jnthn: yes, that seems wrong in the light of what you just said.
PerlJam: it's all a question of eating fewer carbs and setting the font size high enough. 19:29
jnthn
.oO( unlikely sentence was unlikely... )
19:30
19:32 chee left, jlaire left 19:34 jlaire joined 19:39 jlaire left 19:52 [particle]1 joined, chee joined 19:53 SamuraiJack left 19:55 domidumont left, jlaire joined 19:57 [particle]1 left 19:59 [particle] joined, am0c joined 20:00 fglock left
dalek kudo/nom: 692a610 | jnthn++ | src/core/Any.pm:
Implement :exists and :delete for associative.
20:08
kudo/nom: f81716a | jnthn++ | t/spectest.data:
Run S32-hash/delete_adverb.t.
ast: 9e30ec8 | jnthn++ | S (5 files):
Rakudo unfudges.
20:09
jnthn %h<a>:delete # can haz :) 20:10
20:15 kurahaupo joined
skids jnthn++ 20:16
brrt has anyone implemented dynamically scoped subroutines? 20:17
and if so, why, and how
20:18 chee left, chee joined
cognominal_ brrt: there are anonymous routines and dynamically scoped variables, and variable can have an & sigil. That gives all waht you want. 20:20
diakopter can also use $ sigil 20:21
brrt fair enough
nr: my sub &*foo ($x) { ... }; 20:22
p6eval niecza v22-19-gd874a8e: OUTPUT«Potential difficulties:␤ $x is declared but not used at /tmp/Smphzehzwu line 1:␤------> my sub &*foo (⏏$x) { ... };␤ &foo is declared but not used at /tmp/Smphzehzwu line 1:␤------> my sub &*foo ⏏($x) { ... };␤␤»…
..rakudo 5dd878: OUTPUT«===SORRY!===␤Missing block␤at /tmp/lOHmhu0v68:1␤»
cognominal_ or should that be variable with variable with dynamic extent? scope and extent are two different thing even if I don't remember being used in the synopses.
brrt nr: my sub &*foo ($x) { say $x + 1; }; &*foo(32);
p6eval rakudo 5dd878: OUTPUT«===SORRY!===␤Missing block␤at /tmp/srzaMNiVMj:1␤»
..niecza v22-19-gd874a8e: OUTPUT«Potential difficulties:␤ &foo is declared but not used at /tmp/aOVZz0CwcJ line 1:␤------> my sub &*foo ⏏($x) { say $x + 1; }; &*foo(32);␤␤Unhandled exception: Unable to resolve method postcircumfix:<( )> in type Any␤ at /tmp/aOVZz0CwcJ…
cognominal_ * don't remember the "extent" word being used 20:23
brrt fails to make & a sigil in rakudo 20:24
masak nr: my &*foo = sub ($x) { say $x + 1 }; &*foo(32)
brrt nr: my &foo = sub ($x) { say $x * 2; }; &foo(34); 20:25
p6eval rakudo 5dd878, niecza v22-19-gd874a8e: OUTPUT«33␤»
rakudo 5dd878, niecza v22-19-gd874a8e: OUTPUT«68␤»
masak brrt: this is essentially what cognominal told you at 21:20.
brrt yes, i see, i just failed to do it at my laptop
sorry for being annoying about some things :-) 20:26
masak no problem. 20:27
S06 says you should bea ble to do it your way, too.
but it doesn't work yet.
also, 'sub foo($x) is dynamic' is s'posed to work and result in the same thing. 20:29
(S06 does 'my sub', but I think that may be a holdover from when subroutines weren't 'my'-scoped by default)
brrt as a related question, what happens when i define an our variable in a routine? 20:31
nr: sub foo { our $bar = 4; }; foo; print $bar;
p6eval niecza v22-19-gd874a8e: OUTPUT«===SORRY!===␤␤Variable $bar is not predeclared at /tmp/EoAPX5SN7I line 1:␤------> sub foo { our $bar = 4; }; foo; print ⏏$bar;␤␤Unhandled exception: Check failed␤␤ at /home/p6eval/niecza/boot/lib/CORE.setting line 1437…
..rakudo 5dd878: OUTPUT«===SORRY!===␤Variable $bar is not declared␤at /tmp/EHfUhsLwFD:1␤»
masak it goes out of scope at the end of the routine.
brrt a routine is a package? 20:32
masak it is not.
20:32 havenn left
masak and that's not the right conclusion to draw from the result of the evaluation, and from what I said ;) 20:32
try again. 20:33
20:33 havenn joined
brrt nr: sub foo { our $bar = 3; }; foo(); say ::<bar>; 20:34
p6eval niecza v22-19-gd874a8e: OUTPUT«Unhandled exception: System.NullReferenceException: Object reference not set to an instance of an object␤ at Niecza.StashCursor.Core (System.String key, Boolean final, Niecza.StashCursor& sc, Niecza.Variable& v, Niecza.Variable bind_to) [0x00000] in <file…
..rakudo 5dd878: OUTPUT«Any()␤»
[Coke] did anyone answer the recent stackoverflow question about perl6 ?
brrt [Coke] link please :-)
masak nr: sub foo { our $bar = 3 }; foo; say our $bar 20:35
p6eval niecza v22-19-gd874a8e: OUTPUT«3␤»
..rakudo 5dd878: OUTPUT«Any()␤»
[Coke] brrt: if I had that, I'd know if it was answered.... and it was.
masak submits rakudobug
[Coke] stackoverflow.com/questions/1326267...-in-perl-6
masak nqp: sub foo { our $bar := 3 }; foo(); our $bar; say($bar)
p6eval nqp: OUTPUT«Routine declaration requires a signature at line 2, near "{ our $bar"␤current instr.: 'panic' pc 13089 (src/stage2/gen/NQPHLL.pir:4619) (src/stage2/gen/NQPHLL.pm:324)␤»
masak nqp: sub foo() { our $bar := 3 }; foo(); our $bar; say($bar)
p6eval nqp: OUTPUT«3␤»
brrt pretty nice p6 is on stackoverflow now 20:36
masak oh, there's been a few stackoverflow questions about Perl 6. 20:37
[Coke] 56. :)
20:37 havenn left 20:38 skids left
masak nice. :) 20:38
20:40 havenn joined 20:41 havenn left, havenn joined
brrt p6: ::.perl 20:45
p6eval rakudo 5dd878, niecza v22-19-gd874a8e: ( no output )
brrt p6: say ::.perl
p6eval niecza v22-19-gd874a8e: OUTPUT«PseudoStash.new(...)␤»
..rakudo 5dd878: OUTPUT«PseudoStash.new("GLOBALish", GLOBAL, "EXPORT", EXPORT, "\$?PACKAGE", GLOBAL, "::?PACKAGE", GLOBAL, "\$_", Any, "\$/", Any, "\$!", Any, "\$=pod", Array.new(), "!UNIT_MARKER", !UNIT_MARKER, )␤»
brrt p6: say PACKAGE::.perl
p6eval niecza v22-19-gd874a8e: OUTPUT«===SORRY!===␤␤Undeclared name:␤ 'PACKAGE::' used at line 1␤␤Unhandled exception: Check failed␤␤ at /home/p6eval/niecza/boot/lib/CORE.setting line 1437 (die @ 5) ␤ at /home/p6eval/niecza/src/STD.pm6 line 1147 (P6.comp_unit @ 37) ␤ at /h…
..rakudo 5dd878: OUTPUT«===SORRY!===␤CHECK FAILED:␤Undefined routine '&PACKAGE' called (line 1)␤»
20:46 havenn left
brrt p6: say $&PACKAGE.perl 20:47
p6eval niecza v22-19-gd874a8e: OUTPUT«===SORRY!===␤␤Invalid hard reference syntax at /tmp/W2xTE44vkh line 1:␤------> say $⏏&PACKAGE.perl␤␤Parse failed␤␤»
..rakudo 5dd878: OUTPUT«===SORRY!===␤Invalid hard reference syntax at line 2, near "&PACKAGE.p"␤»
brrt p6: say $?PACKAGE.perl 20:48
p6eval rakudo 5dd878: OUTPUT«GLOBAL␤»
..niecza v22-19-gd874a8e: OUTPUT«Unhandled exception: System.NullReferenceException: Object reference not set to an instance of an object␤ at Niecza.StashCursor.Core (System.String key, Boolean final, Niecza.StashCursor& sc, Niecza.Variable& v, Niecza.Variable bind_to) [0x00000] in <file…
[Coke] r: use Exporter; 20:56
p6eval rakudo 5dd878: OUTPUT«===SORRY!===␤Could not find Exporter in any of: /home/p6eval/nom-inst/lib/parrot/4.8.0-devel/languages/perl6/lib, /home/p6eval/nom-inst/lib/parrot/4.8.0-devel/languages/perl6/vendor/lib, /home/p6eval/nom-inst/lib/parrot/4.8.0-devel/languages/perl6/site/lib, /home/p…
20:57 havenn joined
mj41 hi, Is there any way to do something like say Qc $template; without eval? ... example gist.github.com/4034388 20:58
20:58 am0c left 20:59 brrt left
[Coke] ... you want to run arbitrary code in a Str without an eval? 21:00
mj41 [Coke]: ... yes ... maybe it doesn't make sense at all :-) 21:02
jnthn mj41: I just did a load of quote improvements recently and I'm not aware of a way to do that :)
21:04 kaare_ left 21:05 GlitchMr left
mj41 I think Qc is sort of syntax useful for simple template system. But not sure if it is intended to be somehow reusable on Str without eval. ... Sorry if it doesn't make sense. ... Eval is probably good enough. 21:06
jnthn Well, the thing that does the interpolation is the parser 21:08
And eval is the way to call back into that :)
You could possibly argue we need a way to call *directly* into the quote parser, such that it expects to parse the whole of a string.
Since eval starts in the main language. 21:09
mj41 jnthn: yes something like that ... problem with eval solution is line 13 gist.github.com/4034388 ... but I can live with this for now :-). 21:13
[Coke] mj41: what's the problem? 21:17
r: gist.github.com/4034388
p6eval rakudo f81716: OUTPUT«1␤abc $mvar 10 $mvar abc␤2␤abc $mvar 10 $mvar abc␤3␤...how?␤»
mj41 [Coke]: if you uncomment line 13 21:18
[Coke] r: gist.github.com/4034551
p6eval rakudo f81716: OUTPUT«1␤abc $mvar 10 $mvar abc␤2␤===SORRY!===␤Confused␤at eval_0:1␤»
mj41 you need to escape all 」
[Coke] r: gist.github.com/4034551
p6eval rakudo f81716: OUTPUT«1␤abc $mvar 10 $mvar abc␤2␤something borked␤===SORRY!===␤Confused␤at eval_0:1␤»
[Coke] so if the eval might fail, wrap it in a try, no? 21:19
so if the eval might fail, wrap it in a try, no? 21:20
r: gist.github.com/4034551
p6eval rakudo f81716: OUTPUT«1␤abc $mvar 10 $mvar abc␤2␤something borked␤3␤...how?␤»
[Coke] (there, need proper catch block)
mj41 rhr: say Qc 'abc \' $mvar {$mvar} $mvar abc'; 21:22
rhr: say Qc 'abc \' abc'; 21:24
21:30 cognominal__ joined 21:31 cognominal_ left 21:33 kaare_ joined
masak mj41: it's also fairly easy to do your own templating with .trans 21:34
I do that quite a lot.
'night, #perl5 21:36
er, #perl6 :P
21:39 ggoebel joined
[Coke] masak: *mock horror* 21:47
21:47 am0c joined 21:49 cognominal joined
mj41 night ... and thx for help and new features raw.github.com/mj41/Perl-6-GD/mast...odData.png 21:49
jnthn mj41++ # producing the graph 21:51
21:52 cognominal__ left
PerlJam Is there an easyish way to make an RPM out of a CPAN dist (including its dependencies) ? 21:59
oops, ww
(but if you guys know the answer, I'd appreciate it :) 22:00
geekosaur cpan2rpm? 22:01
22:06 sftp_ joined
flussence wishes distro package managers had pluggable repo support so stuff like CPAN became built-in... 22:06
22:07 jrockway joined 22:08 erkan left, erkan joined, sftp left, erkan left, erkan joined 22:11 zby_home left 22:14 jlaire left 22:19 jlaire joined
Tene yum has pluggable repo support 22:20
I usually use cpan2dist, I think. I've previously used cpanspec, and before that cpan2rpm. 22:21
22:22 Krunch joined
Tene looks like out of those three, my laptop only has cpanspec installed, so I probably used that most-recently. 22:22
22:24 jlaire left, chee left 22:26 kaare_ left
PerlJam Tene: thanks, that helps. 22:26
22:29 jlaire joined
Tene Feel free to message me if you run into any trouble. 22:29
22:32 jimmy1980 left 22:33 fgomez left
Krunch are there any kind of "complex" synchronisation objects in perl6? specifically i am interested in a thread-safe queue (this seems to have been in rfc185 previously) 22:37
sorear funny you should mention that, because thread-safe queues are the ONLY complex sync object in niecza 22:38
multithreading has not seen very much love in either compiler yet 22:39
Krunch just found rfc86 which mentions mailboxes 22:40
but yeah, i realise threads are not quite there yet
22:41 chee joined
PerlJam Krunch: what were you going to do with these "complex synchronization objects" if you found them? :) 22:43
Krunch just trying to write a "concurrent hello world" in perl6 22:44
linuxfr.org/news/de-tout-de-rien-d...nt-1406218 22:45
22:49 MayDaniel left 22:54 BillySeth joined 23:03 arlinius left 23:09 spider-mario left 23:10 jaldhar left 23:12 havenn left 23:13 stopbit left, havenn joined 23:15 havenn_ joined 23:17 havenn left 23:21 jaldhar joined, vlixes joined 23:22 PacoAir left 23:23 fhelmberger left
jnthn has blaught: 6guts.wordpress.com/2012/11/08/lots...r-release/ 23:27
sleep & 23:28
23:47 snearch joined