| Time |
S |
Nick |
Message |
| 00:01 |
|
|
Juerd left #perl6 |
| 00:33 |
|
|
buubot_backup joined #perl6 |
| 00:39 |
|
|
cexsum joined #perl6 |
| 00:40 |
|
|
uvtc joined #perl6 |
| 00:41 |
|
|
uvtc left #perl6 |
| 00:43 |
|
|
Alias joined #perl6 |
| 00:46 |
|
|
silug joined #perl6 |
| 00:56 |
|
ruz |
I've changed nqp's source, what's next step? |
| 01:03 |
|
|
jevin joined #perl6 |
| 01:50 |
|
|
daniel-s joined #perl6 |
| 02:21 |
|
|
[Coke] joined #perl6 |
| 02:23 |
|
|
daniel-s joined #perl6 |
| 02:30 |
|
|
Khisanth joined #perl6 |
| 02:30 |
|
|
frhodes joined #perl6 |
| 03:23 |
|
|
Su-Shee_ joined #perl6 |
| 03:36 |
|
|
Moukeddar joined #perl6 |
| 04:05 |
|
|
[particle]1 joined #perl6 |
| 04:15 |
|
|
lateau_ joined #perl6 |
| 04:16 |
|
|
Khisanth joined #perl6 |
| 04:18 |
|
|
lateau_ left #perl6 |
| 04:27 |
|
|
lateau_ joined #perl6 |
| 04:27 |
|
|
kaare_ joined #perl6 |
| 04:28 |
|
|
drbean joined #perl6 |
| 04:36 |
|
|
woosley joined #perl6 |
| 05:02 |
|
|
Khisanth joined #perl6 |
| 05:07 |
|
|
birdwindupbird joined #perl6 |
| 05:16 |
|
moritz |
recompile, install, test rakudo with the newly installed nqp |
| 05:26 |
|
|
Khisanth joined #perl6 |
| 05:54 |
|
dalek |
rakudo/nom: 1848338 | moritz++ | / (4 files): |
| 05:54 |
|
dalek |
rakudo/nom: change names of backtrace classes to match spec |
| 05:54 |
|
dalek |
rakudo/nom: review: https://github.com/rakudo/raku[…]commit/1848338658 |
| 06:12 |
|
|
jdhore1 joined #perl6 |
| 06:58 |
|
|
JimmyZ joined #perl6 |
| 07:15 |
|
|
cotto joined #perl6 |
| 07:27 |
|
|
wamba joined #perl6 |
| 07:57 |
|
|
Khisanth joined #perl6 |
| 08:05 |
|
|
[particle] joined #perl6 |
| 08:12 |
|
|
mj41 joined #perl6 |
| 08:13 |
|
|
wamba joined #perl6 |
| 08:25 |
|
sorear |
good * #perl6 |
| 08:25 |
|
sorear |
TimToady: I do not know what is going on there. Some bug. I know I have/had is equiv working in at least some cases. |
| 08:26 |
|
|
Khisanth joined #perl6 |
| 08:27 |
|
mberends |
hi sorear |
| 08:27 |
|
mberends |
I'm working with diakopter on sprintf() for Niecza |
| 08:28 |
|
sorear |
cool. |
| 08:29 |
|
mberends |
sorear: how do I create an instance of Variable (or SimpleVariable) from a C# string? |
| 08:29 |
|
sorear |
Kernel.BoxAnyMO("string", Kernel.StrMO) |
| 08:29 |
|
|
im2ee joined #perl6 |
| 08:29 |
|
mberends |
thanks :) |
| 08:30 |
|
* sorear |
is pretty busy now but will spend the next few mins recreational-hacking |
| 08:30 |
|
sorear |
I need words for different sizes of now |
| 08:31 |
|
moritz |
you mean like "now" vs. "these days" vs. "contemporary"? |
| 08:32 |
|
|
meth joined #perl6 |
| 08:32 |
|
meth |
will cpan be usable still ? |
| 08:32 |
|
mberends |
meth: eventually, but no idea how soon |
| 08:33 |
|
meth |
how is that even possible ? |
| 08:33 |
|
sorear |
"still" implies a lack of understanding |
| 08:33 |
|
meth |
the language is so different.. |
| 08:33 |
|
meth |
yes I have no understanding that's why i ask |
| 08:34 |
|
sorear |
perl was forked. perl 6 competes with perl 5.14 |
| 08:34 |
|
mberends |
when the itch for p6 in cpan becomes intense enough, the cpan developers will probably scratch it. |
| 08:34 |
|
JimmyZ |
http://www.cpan6.org/design-en.html |
| 08:35 |
|
meth |
well what I'm getting at is will perl 5 repository be usable from perl6 or will it all have to be rewritten ? |
| 08:35 |
|
sorear |
JimmyZ: cpan6 is considered a joke around here |
| 08:35 |
|
mberends |
JimmyZ: that is vapourware |
| 08:35 |
|
sorear |
meth: We think most of it will be usable. |
| 08:36 |
|
meth |
how is that possible though ? like binary compatibility or something ? |
| 08:36 |
|
sorear |
meth: Infrastructural things like Moose (especially, all things with XS) will probably want to be rewritten |
| 08:36 |
|
meth |
some kind of binding ? |
| 08:36 |
|
sorear |
our primary goal is compatibility for darkpan |
| 08:37 |
|
sorear |
however, the compatibility layer is still some years off. Early adopters are referred to Blizkost, which embeds a P5 interpreter into Parrot and allows for communication |
| 08:37 |
|
|
masak joined #perl6 |
| 08:37 |
|
sorear |
it's not transparent, but it does allow bidirectional calling and data transfer |
| 08:37 |
|
masak |
Sunday salutations, #perl6 |
| 08:38 |
|
JimmyZ |
\o masak |
| 08:38 |
|
sorear |
o/ masak. |
| 08:38 |
|
meth |
yea so it's like writing bindings or something |
| 08:38 |
|
meth |
ffi for example |
| 08:38 |
|
sorear |
Pretty much. |
| 08:39 |
|
sorear |
It does automate memory management |
| 08:40 |
|
sorear |
masak: hmm. ISTR you saying something about a STD::P5 hackathon at $VENUE some months ago. |
| 08:40 |
|
masak |
sorear: yes. it's gained a few degrees more of reality since then. |
| 08:40 |
|
Su-Shee |
sorear: why would you rewrite moose with perl6's MOP in place? |
| 08:40 |
|
meth |
oo nasty hll compiler interface.. sounds weird |
| 08:40 |
|
|
sayu joined #perl6 |
| 08:40 |
|
meth |
doesn't sound very native feeling |
| 08:41 |
|
masak |
meth: well, that's VMs for ya, |
| 08:42 |
|
meth |
am i correct to think that perl6 supports multidimensional structures now without so much perlreftut fuss ? |
| 08:42 |
|
masak |
yes. |
| 08:42 |
|
meth |
kind of seemed like all the references went away |
| 08:42 |
|
masak |
in a way yes, in a way no. |
| 08:43 |
|
masak |
std: my @matrix[ 10; 10 ]; say @matrix[ 4; 7 ] |
| 08:43 |
|
p6eval |
std e3c970e: OUTPUT«ok 00:01 121m» |
| 08:43 |
|
sayu |
Hello |
| 08:43 |
|
masak |
sayu: hallo! |
| 08:43 |
|
JimmyZ |
aloha |
| 08:44 |
|
sorear |
Su-Shee: compatibility |
| 08:44 |
|
Su-Shee |
sorear: uhm? who to what? |
| 08:44 |
|
meth |
was perl 6 started by another group or something ? |
| 08:44 |
|
meth |
maybe it should be renamed to another language |
| 08:45 |
|
sorear |
meth: Perl 6 was started by Larry Wall. |
| 08:45 |
|
meth |
Allot of it seems to moving towards other languages.. like Ruby and Lisp |
| 08:45 |
|
sorear |
Perl 5.10 was an unauthorized (but entirely justified) creation of Jesse Vincent et al. |
| 08:46 |
|
meth |
and python with it's lisp comprehensions |
| 08:46 |
|
meth |
who what ? |
| 08:46 |
|
Su-Shee |
meth: and before you dive into the naming discussion: how is the name relevant? do you like the language? can it do what you want? then use it no matter wether it's called klaus-dieter or perl 30948532. ;) |
| 08:46 |
|
mberends |
Su-Shee: :) |
| 08:46 |
|
sorear |
meth: the perl5-porters were impatient. |
| 08:46 |
|
masak |
meth: Perl 6 needs a rename like it needs a hole in the head. |
| 08:46 |
|
Su-Shee |
meth: "towards moving other languages"? |
| 08:47 |
|
meth |
defer reminds me of amb in lisp |
| 08:47 |
|
moritz |
meth: Perl 6 is a different language than Perl 5, but it's still Perl |
| 08:47 |
|
meth |
@array[index] without need for different sigil or the derefs we talked about for multidimentional structures is more like other languages too |
| 08:47 |
|
sorear |
Su-Shee: lots of darkpan code does 'use Moose;' and then expects Class::MOP::Class->create(...) to work. |
| 08:48 |
|
sorear |
Su-Shee: we need to emulate the API on top of Parrot/Niecza |
| 08:48 |
|
meth |
many things are moving towards being objects now like Array and Hash |
| 08:48 |
|
mberends |
meth: evolving languages often steal good ideas from each other, and that's a good thing |
| 08:48 |
|
sorear |
Su-Shee: since both systems have native attributes and roles, Moose.pm6 will likely be *much* smaller than CMOP/Moose |
| 08:48 |
|
meth |
heh yea |
| 08:48 |
|
sorear |
Su-Shee: but it needs to exist. |
| 08:49 |
|
meth |
i agree just pointing out that it's becoming more like others in that regard.. which yes i hope i wake up in a few years and never have to deal with more perl refs again :] |
| 08:49 |
|
masak |
meth: the deref thing that you're talking about is mostly syntax, in my opinion. it makes things look nicer, but it's not that big a change. |
| 08:49 |
|
masak |
you still have to "deal with perl refs" sometimes. |
| 08:49 |
|
sorear |
meth: Perl 6 does not have a "reference" type at all. That is dead and buried. \o/ |
| 08:49 |
|
meth |
hm how so ? you're able to rewind state of the environment and undo changes and try another execution path.. did perl5 have that ? |
| 08:50 |
|
Su-Shee |
sorear: I'm so very much not going to wrap my moose projects into perl 6 I can't even tell you how much I'm not going to do that. either I rewrite in 6 or it stays moose. either new projects are going to be 6 or they will be moose. |
| 08:50 |
|
sorear |
meth: um, what are you reading? |
| 08:50 |
|
masak |
;) |
| 08:50 |
|
meth |
i read the perl6 spec |
| 08:50 |
|
masak |
dangerous stuff. |
| 08:50 |
|
masak |
meth: regexes behave the way you suggest, in both Perl 5 and Perl 6. |
| 08:51 |
|
Su-Shee |
meth: you realize that perl 5.14 already released features to deal with less dereferencing? |
| 08:51 |
|
meth |
su-shee yea some what |
| 08:51 |
|
meth |
masak ok.. |
| 08:51 |
|
sorear |
Su-Shee: I never said you would use Perl 6 syntax. |
| 08:52 |
|
sorear |
Su-Shee: Moose.pm6 is necessary in order to achieve the goal of "Perl 6.0 can parse and execute a majority of existing Perl 5 code' |
| 08:52 |
|
|
REPLeffect joined #perl6 |
| 08:52 |
|
Su-Shee |
sorear: but the majority of existing perl code doesn't even use moose? |
| 08:52 |
|
sorear |
I give up. |
| 08:53 |
|
meth |
http://perlcabal.org/syn/S17.html#Concurrency |
| 08:53 |
|
meth |
that's what i read |
| 08:53 |
|
Su-Shee |
sorear: as you wish. |
| 08:53 |
|
sorear |
meth: S17 isn't ready for public consumption yet. |
| 08:53 |
|
meth |
check out maybe/defer |
| 08:53 |
|
meth |
so ? |
| 08:53 |
|
masak |
meth: some synopses are less "solid" than others. |
| 08:53 |
|
meth |
I'm not using perl6 just reading about it |
| 08:54 |
|
masak |
meth: S17, by and large, isn't very solid yet. it will contain falsehoods. |
| 08:54 |
|
sorear |
meth: S02-S14, S17, S29, and S32 are the ones that are useful in their current states. |
| 08:54 |
|
meth |
what's the name of that stuff that lets you create an object that "could" be multiple objects and then randomly becomes one when you work with it ? something that acts like quantum physics or something |
| 08:54 |
|
sorear |
meth: er, S19, not S17 |
| 08:55 |
|
masak |
meth: junctions. |
| 08:55 |
|
sorear |
meth: a very old and broken metaphor for junctions |
| 08:55 |
|
masak |
meth: but it never 'becomes one' randomly. it becomes all of them. |
| 08:55 |
|
meth |
heh ok .. |
| 08:55 |
|
sorear |
junctions are a linguistic thing |
| 08:56 |
|
sorear |
all($x,$y,$z) < 10 means $x < 10 && $y < 10 && $z < 10 |
| 08:56 |
|
meth |
yea |
| 08:56 |
|
meth |
that could just be a map operation |
| 08:56 |
|
sorear |
an early prototype of junctions was Quantum::Superpositions, but true superpositions follow entirely different laws |
| 08:56 |
|
sorear |
yes |
| 08:57 |
|
sorear |
it is *exactly* a map operation |
| 08:57 |
|
|
Su-Shee left #perl6 |
| 08:57 |
|
meth |
are they all just maps ? |
| 08:57 |
|
meth |
i have to read about them one sec |
| 08:58 |
|
meth |
why the whole need for OUTER ? |
| 08:58 |
|
meth |
i mean I'm sure you had good reason or something but just wondering |
| 08:59 |
|
sorear |
metalinguistic. |
| 08:59 |
|
sorear |
niecza: my $x = 2; { my $x = 4; say $OUTER::x } |
| 08:59 |
|
p6eval |
niecza v8-57-ga89a9a6: OUTPUT«Potential difficulties:� $x is declared but not used at /tmp/eMU4V96Lob line 1:�------> my $x = 2; { my �$x = 4; say $OUTER::x }��2�» |
| 08:59 |
|
|
lue joined #perl6 |
| 09:00 |
|
sorear |
I wouldn't call it particularly useful in practice, but the fact that we have a name for it makes it much easier to talk about the language |
| 09:01 |
|
sorear |
phenny: tell diakopter *frown* you've checked in half a megabyte of versions of lib/Solution/Niecza/Niecza.pidb. Is it really necessary to have this file under version control? It looks like debug information to me. |
| 09:01 |
|
phenny |
sorear: I'll pass that on when diakopter is around. |
| 09:01 |
|
meth |
idk what's up with +< instead of << :[ |
| 09:02 |
|
sorear |
Perl 6 is TimToady's grand plan to change the norms of programming language design. |
| 09:02 |
|
meth |
don't see the point in the one above though |
| 09:03 |
|
meth |
they should relinquish "say" as a keyword I would think since any block can have CATCH |
| 09:03 |
|
mberends |
meth: << was better employed as the "Texas" version of « |
| 09:03 |
|
meth |
oops i mean "try" |
| 09:04 |
|
meth |
idk but binary operators have been around since c... and the over use of + will lead to really confusing code i would think but that's just guessing |
| 09:05 |
|
mberends |
meth: you should be a language designer! ;) |
| 09:05 |
|
meth |
heh i like to read about it but as stands i can't compete :p |
| 09:05 |
|
mberends |
:p |
| 09:06 |
|
meth |
i mean for math, then you can overload them, binary operators, then context operators, then what else ? |
| 09:07 |
|
pmichaud |
I think "try" is kept as a keyword so that a block isn't required. |
| 09:08 |
|
pmichaud |
i.e., one can write try xyz(); and not have to write { xyz(); CATCH { ... } } |
| 09:08 |
|
pmichaud |
(good morning, #perl6) |
| 09:08 |
|
sorear |
hi pmichaud |
| 09:08 |
|
mberends |
good *, pmichaud |
| 09:09 |
|
meth |
hm you mean try xyz() CATCH ? |
| 09:09 |
|
meth |
I'm going to miss the modulo operator :.[ |
| 09:09 |
|
masak |
hi pmichaud |
| 09:09 |
|
sorear |
rakudo: say 5 % 2 |
| 09:09 |
|
p6eval |
rakudo a55346: OUTPUT«1» |
| 09:09 |
|
sorear |
eh? |
| 09:09 |
|
pmichaud |
meth: no, I don't think that's what I meant. |
| 09:10 |
|
|
orafu joined #perl6 |
| 09:10 |
|
sorear |
hmm |
| 09:10 |
|
sorear |
niecza: sub a { die("foo") ; CATCH {return "foo"}}; say a() |
| 09:10 |
|
p6eval |
niecza v8-57-ga89a9a6: OUTPUT«Nil» |
| 09:10 |
|
meth |
is terrenary operator still around ? |
| 09:10 |
|
sorear |
rakudo: say True ?? 5 !! 2; |
| 09:10 |
|
pmichaud |
meth: it's now ?? !! instead of ? : |
| 09:10 |
|
p6eval |
rakudo a55346: OUTPUT«5» |
| 09:10 |
|
meth |
pmichaud you serious ??? |
| 09:11 |
|
mberends |
meth: you said you were reading the specs! |
| 09:11 |
|
pmichaud |
meth: about ??!!, yes |
| 09:11 |
|
pmichaud |
?? !! makes much more sense than ? : |
| 09:11 |
|
masak |
meth: I used ?? !! back when it was ?? :: |
| 09:11 |
|
masak |
meth: I like ?? !! better. |
| 09:11 |
|
pmichaud |
in Perl 6, "?" means "truth part" and "!" means "false part" |
| 09:11 |
|
mberends |
?? is the same size as && and ||, and !! means not (for the else case) |
| 09:12 |
|
pmichaud |
in general, we use ? and ! for boolean things |
| 09:12 |
|
meth |
how ? |
| 09:12 |
|
masak |
also, both && and ??!! are short-circuiting, in a sense. |
| 09:12 |
|
masak |
rakudo: say ?7; say !7 |
| 09:12 |
|
sorear |
what's happening here (mls' "bug") is that CATCH is being called from within the dynamic scope of &die, and so return causes die to return |
| 09:12 |
|
p6eval |
rakudo a55346: OUTPUT«Bool::TrueBool::False» |
| 09:12 |
|
sorear |
effectively CATCH { return } becomes a resume operator. |
| 09:12 |
|
masak |
sorear: hm, interesting. |
| 09:13 |
|
sorear |
this will be fixed once niecza gets lexotic returns |
| 09:13 |
|
meth |
some things also remind me of shell scripting now |
| 09:14 |
|
meth |
for instance ~@array |
| 09:14 |
|
meth |
<<foo $bar bat>> |
| 09:14 |
|
sorear |
those are called "shell quotes". |
| 09:14 |
|
meth |
who what ? |
| 09:15 |
|
meth |
ah you mean i should of called it shell quoting |
| 09:15 |
|
pmichaud |
off to try to get some sleep before the sun rises |
| 09:15 |
|
pmichaud |
bbl |
| 09:16 |
|
sorear |
meth: we, as a community of linguists, need names for things like that. |
| 09:16 |
|
sorear |
meth: I don't care what you call them, but we call them "shell quotes". |
| 09:16 |
|
meth |
heh cool |
| 09:16 |
|
meth |
thanks |
| 09:17 |
|
pmichaud |
.oO( what do we call people who need names for things? :) |
| 09:18 |
|
meth |
namists |
| 09:19 |
|
sorear |
phenny: tell TimToady your problem was you used "multi" for the operators. Precedence needs to apply to the entire sub, not specific candidates |
| 09:19 |
|
phenny |
sorear: I'll pass that on when TimToady is around. |
| 09:20 |
|
sorear |
phenny: tell TimToady (that said, niecza doesn't know how to propagate traits from proto to dispatch either - precedence will only work on "only" subs) |
| 09:20 |
|
phenny |
sorear: I'll pass that on when TimToady is around. |
| 09:20 |
|
meth |
multi subs... feel like he was trying to talk about lips multi methods or generic functions ? |
| 09:20 |
|
meth |
lisps* |
| 09:20 |
|
sorear |
meth: more like CLOS' multi methods, although I doubt they originated there. |
| 09:21 |
|
meth |
Being able to create an object that can act like a hash or array is cool but then again why even require the @ or % sigil's at all anymore ? They could of just made [] a method call and Array and Hash builtins.. |
| 09:22 |
|
meth |
s/and/on/ |
| 09:25 |
|
sorear |
[] *is* a method call. |
| 09:26 |
|
sorear |
masak: what amused me was after I had done nontrivial playing-with of automated testing and proof systems and realized that they were related. |
| 09:27 |
|
meth |
if it is a method call then why require @ , % , $ ? could just require non of them .. |
| 09:27 |
|
|
REPLeffect joined #perl6 |
| 09:28 |
|
meth |
i assume then that {} is a method call too ? |
| 09:29 |
|
sorear |
yes |
| 09:29 |
|
sorear |
[], {}, and () are funny syntax that calls a method named "postcircumfix:<[ ]>" etc |
| 09:30 |
|
sorear |
niecza: my $name = 'postcircumfix:<[ ]>'; my @array = 2,4,6; say @array."$name"(2) |
| 09:30 |
|
p6eval |
niecza v8-57-ga89a9a6: OUTPUT«6» |
| 09:30 |
|
meth |
hm... where does () apply ? are you saying that a class can actually be called with () ? |
| 09:30 |
|
meth |
like $o = Obj.new; $o() ? |
| 09:31 |
|
sorear |
niecza: class Obj { method postcircumfix:<( )>($x, $y) { say "called($x, $y)" } }; my $o = Obj.new; $o(5, 12); |
| 09:31 |
|
p6eval |
niecza v8-57-ga89a9a6: OUTPUT«called(5, 12)» |
| 09:31 |
|
meth |
cool |
| 09:31 |
|
meth |
can't do that in most other languages |
| 09:31 |
|
sorear |
the builtin class Code (common ancestor of Sub, Method, Block, Regex, etc) has a postcircumfix:<( )> method |
| 09:33 |
|
meth |
oh wow Sub is a class ? |
| 09:33 |
|
sorear |
rakudo: sub foo() { }; say &foo.^methods(:local).map(*.name) |
| 09:33 |
|
p6eval |
rakudo a55346: OUTPUT«» |
| 09:34 |
|
sorear |
rakudo: sub foo() { }; say &foo.^parents; |
| 09:34 |
|
p6eval |
rakudo a55346: OUTPUT«Routine()Block()Code()Cool()Any()Mu()» |
| 09:34 |
|
sorear |
rakudo: sub foo() { }; say &foo.WHAT; |
| 09:34 |
|
p6eval |
rakudo a55346: OUTPUT«Sub()» |
| 09:34 |
|
sorear |
rakudo: sub foo() { }; say ~Code.^methods(:local); |
| 09:34 |
|
meth |
who the what |
| 09:34 |
|
p6eval |
rakudo a55346: OUTPUT«new assuming callwith multi name perl signature do Str of returns» |
| 09:35 |
|
sorear |
hmm, actually I think Rakudo is cheating a bit here |
| 09:36 |
|
sorear |
there's an inherent circularity here - method calls work by looking up a Method object, then calling its postcircumfix:<( )> method |
| 09:36 |
|
sorear |
nom: sub foo() { }; say ~Code.^methods(:local); |
| 09:36 |
|
p6eval |
nom 184833: OUTPUT«Method 'Stringy' not found for invocant of class 'Sub' in method join at src/gen/CORE.setting:823 in method Str at src/gen/CORE.setting:3780 in method Str at src/gen/CORE.setting:3200 in method Stringy at src/gen/CORE.setting:530 in sub prefix:<~> at src/gen… |
| 09:36 |
|
|
mkramer joined #perl6 |
| 09:36 |
|
sorear |
nom: sub foo() { }; say Code.^methods(:local); |
| 09:36 |
|
p6eval |
nom 184833: OUTPUT«Method 'gist' not found for invocant of class 'Sub' in method gist at src/gen/CORE.setting:3231 in sub say at src/gen/CORE.setting:4613 in <anon> at /tmp/62sYypGKMc:1 in <anon> at /tmp/62sYypGKMc:1» |
| 09:36 |
|
sorear |
nom: sub foo() { }; say Code.^methods(:local).map(*.name) |
| 09:36 |
|
p6eval |
nom 184833: OUTPUT«Method 'name' not found for invocant of class 'Whatever' in <anon> at /tmp/xXZ9O6RuPD:1 in <anon> at /tmp/xXZ9O6RuPD:1» |
| 09:36 |
|
sorear |
nom: sub foo() { }; say Code.^methods(:local).map(sub ($x) { $x.name }) |
| 09:36 |
|
p6eval |
nom 184833: OUTPUT«Unmarshallable foreign language value passed for parameter '$x' in sub <anon> at /tmp/hMvieaR977:1 in method reify at src/gen/CORE.setting:3597 in method reify at src/gen/CORE.setting:3502 in method reify at src/gen/CORE.setting:3502 in method gimme at src/g… |
| 09:37 |
|
sorear |
nom: sub foo() { }; say Code.^methods(:local).map(sub (\$x) { $x.name }) |
| 09:37 |
|
p6eval |
nom 184833: OUTPUT«Unmarshallable foreign language value passed for parameter '$x' in sub <anon> at /tmp/PvrLvTIDKa:1 in method reify at src/gen/CORE.setting:3597 in method reify at src/gen/CORE.setting:3502 in method reify at src/gen/CORE.setting:3502 in method gimme at src/g… |
| 09:37 |
|
sorear |
*sigh* |
| 09:38 |
|
flussence |
> Code.^methods(:local)».name |
| 09:38 |
|
flussence |
Segmentation fault |
| 09:38 |
|
flussence |
:/ |
| 09:39 |
|
sorear |
flussence: local nom? |
| 09:40 |
|
sorear |
meth: do you need niecza:, rakudo:, and nom: explained? |
| 09:41 |
|
|
jaldhar joined #perl6 |
| 09:42 |
|
meth |
yea idk i can't think of why not to get rid of $, @, % |
| 09:42 |
|
sorear |
phenny: tell TimToady In your last std commit, what's the comment about P5isms and P6isms about? |
| 09:42 |
|
phenny |
sorear: I'll pass that on when TimToady is around. |
| 09:44 |
|
sorear |
meth: that's a very good question and you should ask TimToady it. |
| 09:44 |
|
flussence |
sorear: yep |
| 09:44 |
|
sorear |
meth: he'll probably be up in a few hours. |
| 09:45 |
|
meth |
well I'd be amazed if he wasn't aware of the idea |
| 09:45 |
|
meth |
i mean that's how other languages already do it |
| 09:45 |
|
flussence |
limiting your vocabulary for no good reason makes bad code - http://lwn.net/Articles/454716/ |
| 09:45 |
|
meth |
look at like ruby or javascript or lua |
| 09:46 |
|
|
whiteknight joined #perl6 |
| 09:46 |
|
meth |
ooo looks like a good read |
| 09:46 |
|
|
jdhoreOTG joined #perl6 |
| 09:48 |
|
meth |
yea i mean as far as junctions go.. any() ~ "a" couldn't that just be Array ~ "a" ? |
| 09:49 |
|
flussence |
Arrays don't autothread. |
| 09:49 |
|
meth |
ah but they should! i thought that was a big thing in perl6 loops anyway ? |
| 09:49 |
|
meth |
and something like Array ~ "a" would be implemented as a loop.. |
| 09:50 |
|
flussence |
Explicitly sequential data structures can not safely be operated on in parallel due to potential side effects |
| 09:51 |
|
masak |
sorear: [automated testing and proof systems related] interesting. is it easy to explain how? |
| 09:51 |
|
meth |
why not ? ~ is just testing there is no side affect ? |
| 09:51 |
|
masak |
meth: operative words being "potential" :) |
| 09:52 |
|
sorear |
meth: a Junction is more than just an array, it also has a sense. |
| 09:52 |
|
sorear |
meth: any($x,$y) < 10 and all($x,$y) < 10 mean different things |
| 09:52 |
|
meth |
yea but just cause i use a junction doesn't mean my list isn't just as potentially in trouble as if it was an array |
| 09:53 |
|
sorear |
masak: they're both about saying what you mean twice in two very different ways and having the computer check for discrepencies. |
| 09:53 |
|
meth |
what do you mean a sense ? |
| 09:53 |
|
sorear |
meth: any, all, one, none. |
| 09:54 |
|
meth |
so ? |
| 09:54 |
|
meth |
@a=1,2; @a.any(<10) if perl6 has partials or @a.any{$_<10} etc.. |
| 09:57 |
|
|
wamba joined #perl6 |
| 09:57 |
|
TiMBuS |
yes, that works |
| 09:57 |
|
meth |
it oes ? |
| 09:58 |
|
meth |
does * |
| 09:58 |
|
masak |
sorear: oh, fair enough. |
| 09:58 |
|
TiMBuS |
not sure about the method form but, yeah |
| 09:59 |
|
meth |
< is confused |
| 09:59 |
|
meth |
you have an example ? |
| 10:00 |
|
TiMBuS |
uh |
| 10:00 |
|
TiMBuS |
my @a = 1,2,3; say(any(@a) < 2); # is this what you want? |
| 10:00 |
|
TiMBuS |
nom: my @a = 1,2,3; say(any(@a) < 2); # is this what you want? |
| 10:00 |
|
p6eval |
nom 184833: OUTPUT«any(True, False, False)» |
| 10:01 |
|
meth |
does that work for hash's as well ? |
| 10:01 |
|
TiMBuS |
lets find out! |
| 10:01 |
|
meth |
anyway my point though was that all those things are basically folds that could be methods on Array |
| 10:02 |
|
TiMBuS |
my @a = 1,2,3; say @a.any #don't think so.. |
| 10:02 |
|
meth |
what ? |
| 10:02 |
|
TiMBuS |
hm |
| 10:02 |
|
TiMBuS |
nom: my @a = 1,2,3; say @a.any |
| 10:02 |
|
p6eval |
nom 184833: OUTPUT«any(1, 2, 3)» |
| 10:03 |
|
meth |
well i asked if it worked for hash's... say(any(%h)<2) |
| 10:03 |
|
flussence |
why only as Array methods, and not also List, Parcel, Range ... * methods? |
| 10:03 |
|
TiMBuS |
on the keys, or on the vales |
| 10:03 |
|
meth |
don't they all share a common enumerable class or something ? |
| 10:04 |
|
meth |
i guess something just has to act like an array and then you can pass it to say |
| 10:05 |
|
meth |
i mean junctions |
| 10:05 |
|
flussence |
How would you write any($a, $b, $c) as a method call without a wasteful temporary variable? |
| 10:05 |
|
meth |
i guess if you overload your object |
| 10:06 |
|
meth |
you mean $r = any($a,$b,$c) |
| 10:06 |
|
meth |
? |
| 10:06 |
|
meth |
probably like $r = [$a,$b,$c][rand(2)] |
| 10:06 |
|
flussence |
as in requiring it to be a method on container objects, which you seem to be implying. |
| 10:07 |
|
meth |
well the container is auto created anyway .. it's basically the list formed when calling any |
| 10:08 |
|
TiMBuS |
okay, so i guess the question is: what do you want perl6 to do that it doesn't already do? |
| 10:08 |
|
TiMBuS |
autothread, i assume? |
| 10:09 |
|
meth |
me ? nothing.. just contemplating |
| 10:09 |
|
TiMBuS |
oh |
| 10:09 |
|
meth |
i thought loops in perl6 will auto thread if the optimizer thinks it's safe and worth it ? |
| 10:09 |
|
TiMBuS |
maybe, if we even had an optimizer |
| 10:09 |
|
TiMBuS |
hyper operators are also supposed to autothread |
| 10:10 |
|
meth |
idk that's one of the features i remember reading about years ago in perl 6 |
| 10:10 |
|
TiMBuS |
a long time ago for all(@array) { } was going to autothread |
| 10:11 |
|
meth |
heh.. yea i mean i been reading about perl6 so long idk when it's going to happen |
| 10:11 |
|
TiMBuS |
well to autothread, perl first needs to thread |
| 10:11 |
|
TiMBuS |
and it doesnt ;/ |
| 10:11 |
|
flussence |
perl6: (1..5)».say |
| 10:12 |
|
p6eval |
pugs: OUTPUT«decodeUTF8': bad data: '\187'23451» |
| 10:12 |
|
p6eval |
..rakudo a55346, niecza v8-57-ga89a9a6: OUTPUT«12345» |
| 10:12 |
|
TiMBuS |
cant tell if it was the bug, or if pugs autothreaded that |
| 10:12 |
|
meth |
from what i read perl6 has allot of concurrency conscious ? |
| 10:13 |
|
flussence |
nom: (1..5)».say |
| 10:13 |
|
p6eval |
nom 184833: OUTPUT«12534» |
| 10:13 |
|
TiMBuS |
sorta. i guess it comes with needing to be lazy-aware as well |
| 10:13 |
|
TiMBuS |
hoho flussence |
| 10:13 |
|
TiMBuS |
for real? |
| 10:14 |
|
flussence |
IIRC it just shuffles values around to stop people making assumptions about » |
| 10:14 |
|
TiMBuS |
aw |
| 10:14 |
|
flussence |
there is some sort of code there for autothreading though |
| 10:15 |
|
TiMBuS |
i just want normal threads |
| 10:15 |
|
TiMBuS |
not ithreads :/ |
| 10:26 |
|
meth |
if Sub is an object then what does that mean for me ? can i like add methods to functions or something ? |
| 10:26 |
|
|
Khisanth joined #perl6 |
| 10:26 |
|
meth |
was i also correct to read that perl6 will provide atomic variables ? |
| 10:31 |
|
masak |
meth: yes, Perl 6 is constructed with concurrency in mind. |
| 10:31 |
|
masak |
meth: atomic variables -- we'll see, that's S17 too ;) |
| 10:31 |
|
|
mtk joined #perl6 |
| 10:31 |
|
masak |
meth: listening to jnthn++ talk, it seems that the concurrency primitive we'll end up with is CAS. |
| 10:32 |
|
masak |
meth: Sub is an object, and that means that you can ask it various questions about itself and, yes, maybe even change it in different ways. |
| 10:32 |
|
masak |
meth: have you seen .wrap ? |
| 10:32 |
|
meth |
wraps it in a another function ? |
| 10:33 |
|
meth |
will blocks return implicitly ? |
| 10:33 |
|
meth |
i mean like no need for return keyword ? |
| 10:33 |
|
meth |
to "return" a value |
| 10:33 |
|
JimmyZ |
yes |
| 10:33 |
|
meth |
was perl5 like that ? |
| 10:33 |
|
meth |
can't remember |
| 10:33 |
|
JimmyZ |
yeah |
| 10:34 |
|
meth |
ah ok |
| 10:34 |
|
meth |
anyway 6:30am I'm about to pass out |
| 10:34 |
|
|
donri joined #perl6 |
| 10:36 |
|
mberends |
/o\ |
| 10:38 |
|
|
JimmyZ joined #perl6 |
| 10:38 |
|
|
jevin joined #perl6 |
| 10:38 |
|
|
Patterner joined #perl6 |
| 10:38 |
|
|
huf joined #perl6 |
| 10:38 |
|
|
jlaire joined #perl6 |
| 10:38 |
|
|
jedai_ joined #perl6 |
| 10:38 |
|
|
xinming joined #perl6 |
| 10:38 |
|
|
f00li5h joined #perl6 |
| 10:38 |
|
|
breinbaas joined #perl6 |
| 10:38 |
|
|
jnthn joined #perl6 |
| 10:38 |
|
|
sbp joined #perl6 |
| 10:38 |
|
|
cognominal joined #perl6 |
| 10:38 |
|
|
snarkyboojum joined #perl6 |
| 10:38 |
|
|
imarcusthis joined #perl6 |
| 10:38 |
|
|
eiro joined #perl6 |
| 10:38 |
|
|
aloha joined #perl6 |
| 10:38 |
|
|
gabiruh joined #perl6 |
| 10:38 |
|
|
broquaint joined #perl6 |
| 10:38 |
|
|
Grimnir_ joined #perl6 |
| 10:38 |
|
|
athomason joined #perl6 |
| 10:38 |
|
|
mikemol joined #perl6 |
| 10:38 |
|
|
Gothmog_ joined #perl6 |
| 10:38 |
|
|
bs338 joined #perl6 |
| 10:38 |
|
|
felipe joined #perl6 |
| 10:38 |
|
|
renormalist|work joined #perl6 |
| 10:38 |
|
|
phenny joined #perl6 |
| 10:38 |
|
|
nsh- joined #perl6 |
| 10:38 |
|
|
TimToady joined #perl6 |
| 10:38 |
|
|
Grrrr joined #perl6 |
| 10:38 |
|
|
jjore joined #perl6 |
| 10:38 |
|
|
dukeleto joined #perl6 |
| 10:38 |
|
|
tylercurtis joined #perl6 |
| 10:38 |
|
|
zb joined #perl6 |
| 10:38 |
|
|
\patch joined #perl6 |
| 10:38 |
|
|
donri_ joined #perl6 |
| 10:38 |
|
|
cotto joined #perl6 |
| 10:38 |
|
|
nebuchadnezzar joined #perl6 |
| 10:38 |
|
|
Sarten-X joined #perl6 |
| 10:38 |
|
|
ponbiki joined #perl6 |
| 10:38 |
|
|
pyrimidine joined #perl6 |
| 10:38 |
|
|
hillu joined #perl6 |
| 10:38 |
|
|
pjcj joined #perl6 |
| 10:38 |
|
|
tomaw joined #perl6 |
| 10:38 |
|
|
ashleydev joined #perl6 |
| 10:38 |
|
|
jtpalmer joined #perl6 |
| 10:38 |
|
|
donri joined #perl6 |
| 10:39 |
|
|
miso2217 joined #perl6 |
| 10:39 |
|
|
pothos joined #perl6 |
| 10:39 |
|
|
y3llow joined #perl6 |
| 10:39 |
|
|
kthakore joined #perl6 |
| 10:39 |
|
|
plobsing_ joined #perl6 |
| 10:39 |
|
|
rhr joined #perl6 |
| 10:39 |
|
|
Woodi joined #perl6 |
| 10:39 |
|
|
sjn joined #perl6 |
| 10:39 |
|
|
domm joined #perl6 |
| 10:39 |
|
|
literal joined #perl6 |
| 10:40 |
|
|
pothos_ joined #perl6 |
| 10:40 |
|
|
y3llow joined #perl6 |
| 10:40 |
|
|
im2ee joined #perl6 |
| 10:40 |
|
|
daemon joined #perl6 |
| 10:40 |
|
|
s1n joined #perl6 |
| 10:40 |
|
|
Bucciarati joined #perl6 |
| 10:40 |
|
|
slavik joined #perl6 |
| 10:40 |
|
|
showi joined #perl6 |
| 10:40 |
|
|
sftp joined #perl6 |
| 10:40 |
|
|
shachaf joined #perl6 |
| 10:40 |
|
|
scottp joined #perl6 |
| 10:40 |
|
|
jdhoreOTG joined #perl6 |
| 10:40 |
|
|
mkramer joined #perl6 |
| 10:40 |
|
|
lue joined #perl6 |
| 10:40 |
|
|
[particle] joined #perl6 |
| 10:40 |
|
|
kaare_ joined #perl6 |
| 10:40 |
|
|
sili joined #perl6 |
| 10:40 |
|
|
djanatyn joined #perl6 |
| 10:40 |
|
|
eternaleye joined #perl6 |
| 10:42 |
|
|
orafu joined #perl6 |
| 10:42 |
|
|
ZaphrodZenovka joined #perl6 |
| 10:42 |
|
|
risou joined #perl6 |
| 10:42 |
|
|
tewk joined #perl6 |
| 10:42 |
|
|
fhelmberger joined #perl6 |
| 10:42 |
|
|
nine joined #perl6 |
| 10:42 |
|
|
lumi_ joined #perl6 |
| 10:42 |
|
|
LoRe_ joined #perl6 |
| 10:42 |
|
|
zamolxes joined #perl6 |
| 10:42 |
|
|
jasonmay joined #perl6 |
| 10:42 |
|
|
donri joined #perl6 |
| 10:42 |
|
|
whiteknight joined #perl6 |
| 10:42 |
|
|
buubot_backup joined #perl6 |
| 10:42 |
|
|
p6eval joined #perl6 |
| 10:42 |
|
|
skangas joined #perl6 |
| 10:42 |
|
|
DarthGandalf joined #perl6 |
| 10:42 |
|
|
yves joined #perl6 |
| 10:42 |
|
|
cotto_work joined #perl6 |
| 10:42 |
|
|
pmichaud joined #perl6 |
| 10:42 |
|
|
tadzik joined #perl6 |
| 10:42 |
|
|
BinGOs joined #perl6 |
| 10:42 |
|
|
beppu joined #perl6 |
| 10:42 |
|
|
jfried joined #perl6 |
| 10:42 |
|
|
ascent_ joined #perl6 |
| 10:42 |
|
|
dju joined #perl6 |
| 10:42 |
|
|
y3llow_ joined #perl6 |
| 10:43 |
|
|
pothos_ joined #perl6 |
| 10:43 |
|
|
Khisanth joined #perl6 |
| 10:45 |
|
|
pochi joined #perl6 |
| 10:45 |
|
|
sunnavy_ joined #perl6 |
| 10:45 |
|
|
Trashlord joined #perl6 |
| 10:45 |
|
|
PacoLinux__ joined #perl6 |
| 10:45 |
|
|
yahooooo joined #perl6 |
| 10:48 |
|
|
sftp joined #perl6 |
| 11:05 |
|
|
jedai joined #perl6 |
| 11:08 |
|
|
araujo joined #perl6 |
| 11:09 |
|
masak |
nom: sub foo { say "in the" }; &foo.wrap: sub { say "you're"; callsame; say "army now" }; foo |
| 11:09 |
|
p6eval |
nom 184833: OUTPUT«Method 'wrap' not found for invocant of class 'Sub' in <anon> at /tmp/QuHBfhHRkG:1 in <anon> at /tmp/QuHBfhHRkG:1» |
| 11:09 |
|
masak |
perl6: sub foo { say "in the" }; &foo.wrap: sub { say "you're"; callsame; say "army now" }; foo |
| 11:09 |
|
p6eval |
pugs: OUTPUT«*** No such method in class Sub: "&wrap" at /tmp/Qpr_NUlQp3 line 1, column 27-84» |
| 11:09 |
|
p6eval |
..rakudo a55346: OUTPUT«you'rein thearmy now» |
| 11:09 |
|
p6eval |
..niecza v8-57-ga89a9a6: OUTPUT«Unhandled exception: Unable to resolve method wrap in class Sub at /tmp/ENYj3dPrih line 1 (MAIN mainline @ 1)  at /home/p6eval/niecza/lib/CORE.setting line 2049 (CORE C954_ANON @ 2)  at /home/p6eval/niecza/lib/CORE.setting line 2050 (CORE module-CORE … |
| 11:09 |
|
masak |
master is still the master. |
| 11:20 |
|
|
MayDaniel joined #perl6 |
| 11:24 |
|
|
frhodes joined #perl6 |
| 11:32 |
|
|
frhodes joined #perl6 |
| 11:39 |
|
|
sayu joined #perl6 |
| 11:49 |
|
* masak |
relishes the Sunday-ness of it all |
| 11:49 |
|
mberends |
:D |
| 11:52 |
|
masak |
I'll do some $dayjob after lunch, and then I'll turn to the -n and -p post. |
| 11:52 |
|
masak |
the macros post is next. maybe, just maybe, I'll get it out today too. |
| 11:53 |
|
masak |
(macros are awesome, by the way) |
| 11:54 |
|
* mberends |
imagines an STL for Perl6 |
| 11:59 |
|
|
sayu joined #perl6 |
| 12:00 |
|
* JimmyZ |
hates STL for C++ |
| 12:07 |
|
dalek |
roast: 0124768 | (Martin Berends)++ | S32-str/sprintf.t: |
| 12:07 |
|
dalek |
roast: niecza fudge sprintf("%C", ...) |
| 12:07 |
|
dalek |
roast: review: https://github.com/perl6/roast/commit/012476830f |
| 12:07 |
|
masak |
mberends: I've sometimes been toying with the idea of building a library of several tree/heap/list/hash implementations, all with interfaces that map nicely to what Perl 6 already provides. sort of a Perl 6 version of Java Collections. |
| 12:09 |
|
mberends |
masak: do you mean a library in Java? |
| 12:14 |
|
masak |
no, I mean a set of modules for Perl 6. |
| 12:15 |
|
masak |
usually, we like to pretend that arryas and hashes can build anything in Perl. |
| 12:15 |
|
masak |
and usually, they can. unless you care extra much about performance. |
| 12:23 |
|
|
Khisanth joined #perl6 |
| 12:29 |
|
|
cryptographrix joined #perl6 |
| 12:33 |
|
|
molaf joined #perl6 |
| 12:33 |
|
|
frhodes joined #perl6 |
| 12:38 |
|
|
yarp joined #perl6 |
| 12:58 |
|
|
frhodes_ joined #perl6 |
| 12:59 |
|
|
benabik_ joined #perl6 |
| 13:00 |
|
|
drbean joined #perl6 |
| 13:25 |
|
masak |
so... when's the merge? |
| 13:25 |
|
* masak |
sits with the finger over "launch RT attack" button |
| 13:29 |
|
|
abercrombie joined #perl6 |
| 13:39 |
|
|
jevin joined #perl6 |
| 13:46 |
|
|
fission__ joined #perl6 |
| 13:54 |
|
|
cexsum joined #perl6 |
| 13:55 |
|
|
frhodes joined #perl6 |
| 14:01 |
|
|
isBEKaml joined #perl6 |
| 14:01 |
|
|
aber joined #perl6 |
| 14:07 |
|
|
cryptographrix joined #perl6 |
| 14:30 |
|
|
ccc_ joined #perl6 |
| 14:35 |
|
masak |
sorear: [re superpositions] have you read something by Scott Aaronson? he refers to the depiction of quantum mechanics as "light being both a wave and a particle" as "the Copenhagenists’ mind-numbing obfuscations". instead, he argues that QM can be seen from an information/probabilities/observables perspective. |
| 14:35 |
|
masak |
cf. http://www.scottaaronson.com/blog/?p=277 |
| 14:36 |
|
masak |
he's quite possibly the most interesting (and funniest) scientist in the blogosphere. |
| 14:38 |
|
arnsholt |
"The longer I blog, the more I despair of ever achieving my central goal in life, namely for everyone to like me." Life's eternal dilemma =) |
| 14:40 |
|
masak |
his sedondary goal in life, given further down, is for everyone to understand him :P |
| 14:42 |
|
masak |
http://rosettacode.org/wiki/Ternary_logic#Perl_6 is nice. TimToady++ |
| 14:42 |
|
masak |
I laughed at <Foo Moo Too> :) |
| 14:42 |
|
masak |
but from what I see of SQL, ternary logic is quite counterintuitive and has one fatal flaw: |
| 14:43 |
|
masak |
in the heat of battle, you forget about the Moo case. |
| 14:43 |
|
masak |
if val == answer { ... } elsif val != { ... } # great, I covered all the cases |
| 14:44 |
|
masak |
er, s/val !=/val != answer/ |
| 14:44 |
|
mberends |
Too be or not Too be, that is the question |
| 14:44 |
|
masak |
right! even Hamlet was a dualist. |
| 14:45 |
|
masak |
I believe Ovid has a blog post or Too on the topic. |
| 14:45 |
|
arnsholt |
But in Perl you'll usually get a warning about undefined value in comparison, most of the time =) |
| 14:45 |
|
masak |
arnsholt: right; I wasn't referring to that. |
| 14:45 |
|
masak |
out-of band values like undef seem to work fine. |
| 14:46 |
|
masak |
it's when you *assume* things like Excluded Middle and the code looks fine but isn't, that things go awry. |
| 14:46 |
|
arnsholt |
Yeah, I regularly hit that in my adventures in SQL. I always forget IS NOT NULL when I need it |
| 14:46 |
|
masak |
that's what I'm talking about. |
| 14:47 |
|
masak |
cf. http://programmers.stackexchan[…]on-dollar-mistake which is more about NULL in programming languages than in DSLs like SQL, but still. |
| 14:47 |
|
arnsholt |
Forgetting to use LEFT/RIGHT JOIN is even more insidious, since it'll result in data just disappearing |
| 14:48 |
|
masak |
arnsholt: that's what tests are for ;) |
| 14:49 |
|
arnsholt |
Tests? Preposterous! ;p |
| 14:50 |
|
arnsholt |
I've actually got a (very small) test suite for my statistical inference modules |
| 14:50 |
|
arnsholt |
But writing the tests to make sure you've implemented Viterbi's algorithm correctly is kinda tricky |
| 14:51 |
|
arnsholt |
Especially for things more complicated than HMMs |
| 14:54 |
|
|
birdwindupbird joined #perl6 |
| 15:03 |
|
|
Trashlord joined #perl6 |
| 15:04 |
|
|
newbe-ru joined #perl6 |
| 15:04 |
|
* masak |
.oO( they make you go "HMM"... ) |
| 15:08 |
|
arnsholt |
Indeed they do ^_^ |
| 15:17 |
|
|
mj41 joined #perl6 |
| 15:25 |
|
|
mkramer joined #perl6 |
| 15:31 |
|
dalek |
niecza: 6bc1637 | (Martin Berends)++ | / (2 files): |
| 15:31 |
|
dalek |
niecza: [lib/Printf.cs] now passes 40/44 sprintf tests with 1 skip |
| 15:31 |
|
dalek |
niecza: review: https://github.com/sorear/niec[…]commit/6bc1637e71 |
| 15:33 |
|
mberends |
the sprintf spectests look very minimal - will look what p5 has |
| 15:33 |
|
|
araujo joined #perl6 |
| 15:33 |
|
masak |
mberends++ |
| 15:40 |
|
|
birdwindupbird joined #perl6 |
| 15:42 |
|
|
mj41 joined #perl6 |
| 15:46 |
|
|
jevin joined #perl6 |
| 15:47 |
|
flussence |
niecza: printf('%d %1$x', 45); |
| 15:47 |
|
p6eval |
niecza v8-57-ga89a9a6: OUTPUT«===[0mSORRY!===[0m��Undeclared routine:� 'printf' used at line 1��Unhandled exception: Check failed�� at /home/p6eval/niecza/boot/lib/CORE.setting line 685 (CORE die @ 2) � at /home/p6eval/niecza/src/STD.pm6 line 1136 (STD P6.comp_unit @ 36) �… |
| 15:47 |
|
flussence |
whoops... |
| 15:47 |
|
flussence |
I'll wait until it updates :) |
| 15:49 |
|
mberends |
niecza: say sprintf('%d %1$x', 45); # flussence: sprintf, not printf yet |
| 15:49 |
|
p6eval |
niecza v8-57-ga89a9a6: OUTPUT«%d %1$x» |
| 15:50 |
|
mberends |
hmm |
| 15:54 |
|
mberends |
yes, wait for the rebuild, it works locally |
| 15:56 |
|
mberends |
evalbot rebuild niecza |
| 15:56 |
|
p6eval |
OK (started asynchronously) |
| 15:58 |
|
mberends |
niecza: say sprintf('%d %1$x', 45) |
| 15:58 |
|
p6eval |
niecza v8-58-g6bc1637: OUTPUT«45 2d» |
| 15:59 |
|
|
sayu joined #perl6 |
| 16:00 |
|
|
sayu joined #perl6 |
| 16:02 |
|
mberends |
p5 t_op_sprintf.t has 540 tests and t_op_sprintf2.t has 1368, p6 has 44 |
| 16:13 |
|
|
abercrombie joined #perl6 |
| 16:21 |
|
abercrombie |
Hi, my $a='f'; sub f {}; how to call f() from $a ? |
| 16:25 |
|
|
ZaphrodZenovka joined #perl6 |
| 16:25 |
|
|
renormalist joined #perl6 |
| 16:31 |
|
|
mberends_ joined #perl6 |
| 16:40 |
|
plobsing_ |
abercrombie: based on a skimming of synopses s06 and s10, I'd wager you'd use 'our sub f {}' and 'OUR::($a)();' |
| 16:41 |
|
plobsing_ |
perl6: my $a='f'; our sub f {}; OUR::($a)() |
| 16:41 |
|
p6eval |
rakudo a55346: OUTPUT«===SORRY!===Indirect name lookups not yet implemented at line 22, near "()"» |
| 16:41 |
|
p6eval |
..pugs: OUTPUT«***  Unexpected "OUR" expecting ";", Doc block, block declaration, declaration, construct or expression at /tmp/WBevexr1CG line 1, column 26» |
| 16:41 |
|
p6eval |
..niecza v8-58-g6bc1637: OUTPUT«Unhandled exception: Unable to resolve method postcircumfix:<( )> in class Any at /tmp/KtazdfHsEl line 1 (MAIN mainline @ 2)  at /home/p6eval/niecza/lib/CORE.setting line 2049 (CORE C954_ANON @ 2)  at /home/p6eval/niecza/lib/CORE.setting line 2050 (CO… |
| 16:42 |
|
gfldex |
nom: my $a='f'; our sub f {}; OUR::($a)() |
| 16:42 |
|
p6eval |
nom 184833: OUTPUT«===SORRY!===Combination of indirect name lookup and call not (yet?) allowed at line 1, near ""» |
| 16:42 |
|
plobsing_ |
unfortunately it appears none of the implementations implement it. |
| 16:43 |
|
plobsing_ |
abercrombie: often there are better ways to accomplish tasks than using the symbol table like a hash. what are you trying to do? |
| 16:59 |
|
masak |
one solution that readily suggests itself is... to use a hash ;) |
| 17:19 |
|
|
whiteknight joined #perl6 |
| 17:19 |
|
|
jevin joined #perl6 |
| 17:19 |
|
abercrombie |
Oh, I just wonder whether there is a prefix for "function context" like &($a) |
| 17:21 |
|
masak |
no. |
| 17:21 |
|
masak |
if something isn't already a function, there isn't much hope of contexting it into one. |
| 17:21 |
|
masak |
if it already is a function, you can already call it and have other functiony fun with it. |
| 17:22 |
|
abercrombie |
I see. So the best way to do it is like what plobsing said |
| 17:23 |
|
abercrombie |
or I can use eval to do it just like in perl5 |
| 17:24 |
|
abercrombie |
nom: my $a='f'; sub f{say "here"}; eval($a) |
| 17:24 |
|
p6eval |
nom 184833: OUTPUT«here» |
| 17:25 |
|
masak |
rakudo: my %h = foo => { say "foo called" }, bar => { say "bar called" }; sub call($function) { die "$function doesn't exist" unless %h.exists($function); %h{$function}() }; call 'foo'; call 'bar'; call 'fnordookie' |
| 17:25 |
|
p6eval |
rakudo a55346: OUTPUT«foo calledbar calledfnordookie doesn't exist in 'call' at line 22:/tmp/pH8IdxhqeS in main program body at line 22:/tmp/pH8IdxhqeS» |
| 17:26 |
|
abercrombie |
gotcha |
| 17:26 |
|
masak |
you *could* use &eval, yes. but it is slightly too big a gun when a simple hash of Callable will do. |
| 17:26 |
|
abercrombie |
yes, I agree |
| 17:27 |
|
abercrombie |
Thanks guys. |
| 17:27 |
|
* masak |
curtsies |
| 17:28 |
|
abercrombie |
It seems every perl guru likes to use "foo" and "bar" |
| 17:29 |
|
masak |
yes. we need new magic words, those are getting worn ;) |
| 17:31 |
|
abercrombie |
"the origin of both is the U.S. Army phrase FUBAR (an acronym which, in discreet language, represents Fouled Up Beyond All Recognition/Repair" |
| 17:31 |
|
masak |
rakudo: my %h = kitty => { say "foo called" }, puppy => { say "bar called" }; sub call($function) { die "'$function' doesn't exist" unless %h.exists($function); %h{$function}() }; call 'kitty'; call 'puppy'; call 'big freakin DRAGON' |
| 17:31 |
|
p6eval |
rakudo a55346: OUTPUT«foo calledbar called'big freakin DRAGON' doesn't exist in 'call' at line 22:/tmp/uHHw3eIM3u in main program body at line 22:/tmp/uHHw3eIM3u» |
| 17:31 |
|
masak |
oops :) |
| 17:31 |
|
masak |
rakudo: my %h = kitty => { say "kitty called" }, puppy => { say "doggy called" }; sub call($function) { die "'$function' doesn't exist" unless %h.exists($function); %h{$function}() }; call 'kitty'; call 'puppy'; call 'big freakin DRAGON' |
| 17:31 |
|
p6eval |
rakudo a55346: OUTPUT«kitty calleddoggy called'big freakin DRAGON' doesn't exist in 'call' at line 22:/tmp/BuN99fIJxu in main program body at line 22:/tmp/BuN99fIJxu» |
| 17:31 |
|
masak |
er. |
| 17:31 |
|
Tene |
masak: for a hash of callable, I prefer something more like %h.exists($function) ?? %h{$function}() !! %h<DEFAULT>() |
| 17:32 |
|
masak |
rakudo: my %h = kitty => { say "kitty called" }, puppy => { say "puppy called" }; sub call($function) { die "'$function' doesn't exist" unless %h.exists($function); %h{$function}() }; call 'kitty'; call 'puppy'; call 'big freakin DRAGON' |
| 17:32 |
|
p6eval |
rakudo a55346: OUTPUT«kitty calledpuppy called'big freakin DRAGON' doesn't exist in 'call' at line 22:/tmp/mnAStZz7ye in main program body at line 22:/tmp/mnAStZz7ye» |
| 17:32 |
|
masak |
Tene: fair enuf. |
| 17:32 |
|
masak |
Tene: why not %h{ %h.exists{$function} ?? $function !! 'DEFAULT' }, ooc? |
| 17:32 |
|
|
cotto joined #perl6 |
| 17:33 |
|
masak |
er, %h{ %h.exists{$function} ?? $function !! 'DEFAULT' }(); |
| 17:33 |
|
* masak |
.oO( Bikeshedders Anonymous ) |
| 17:33 |
|
Tene |
masak: I think what I've actually used is more like (%h{$function} // %h<DEFAULT>)() |
| 17:34 |
|
masak |
yes, nice. |
| 17:34 |
|
Tene |
I didn't mean that specific syntax, though, just that I prefer putting a fallback action in the callback table |
| 17:34 |
|
masak |
Tene: it would be nice to have hashes with settable defaults, too. |
| 17:35 |
|
masak |
Tene: yes, I should remember that trick more often. it's nice to make things in-band when possible. |
| 17:35 |
|
Tene |
I've always been skeptical of the utility of that, but maybe that's just because it's unfamiliar |
| 17:36 |
|
masak |
well, the utility is offset by some action-at-adistance, I guess. |
| 17:39 |
|
|
araujo joined #perl6 |
| 17:39 |
|
|
araujo joined #perl6 |
| 17:46 |
|
|
jevin joined #perl6 |
| 17:48 |
|
|
araujo joined #perl6 |
| 17:48 |
|
|
araujo joined #perl6 |
| 17:50 |
|
|
araujo joined #perl6 |
| 17:50 |
|
|
araujo joined #perl6 |
| 17:55 |
|
meth |
hey timtoady ? |
| 17:57 |
|
|
wamba joined #perl6 |
| 18:02 |
|
|
jevin joined #perl6 |
| 18:04 |
|
|
kannah joined #perl6 |
| 18:10 |
|
|
uvtc joined #perl6 |
| 18:11 |
|
|
sftp joined #perl6 |
| 18:11 |
|
uvtc |
masak: I liked your recent "why tests will change the way you code" blog post. I think a great followup would be a tutorial on writing tests for your Perl 6 code. |
| 18:12 |
|
uvtc |
masak: also thought it was good that you included a summary at the end of your blog post. |
| 18:16 |
|
masak |
thanks! |
| 18:16 |
|
masak |
I'll have to think a bit on whether I have something to say about writing tests for one's Perl 6 code. |
| 18:17 |
|
uvtc |
masak: I just mean something basic. As in, use $this module, structure your directories like $that, run your tests $like-so. |
| 18:19 |
|
uvtc |
masak: or maybe there's an advent calendar article I'm missing... |
| 18:19 |
|
meth |
some of the things look really nice in perl6 but then again it's becoming a lisp dialect lol |
| 18:20 |
|
uvtc |
masak: ah, ok. Found this http://perl6advent.wordpress.c[…]04/day-4-testing/ . |
| 18:23 |
|
masak |
ah, yes. |
| 18:23 |
|
masak |
you'll note that my post doesn't mention Perl 6, by the way. when I'm excited about tests, I'm language-agnostic ;) |
| 18:23 |
|
masak |
I wrote tests in C a few weeks ago. |
| 18:24 |
|
|
soh_cah_toa joined #perl6 |
| 18:24 |
|
|
donri joined #perl6 |
| 18:25 |
|
masak |
what might be specific to the way testing is done with Perl 6 are the ways all the DI/mocking/faking/stubbing stuff is set up. |
| 18:26 |
|
masak |
jnthn++'s https://github.com/jnthn/test-mock/ comes to mind. |
| 18:27 |
|
uvtc |
Perhaps users can just get up to speed with the basics by just looking at what some of the other modules at modules.perl6.org are doing... |
| 18:28 |
|
masak |
this is where I have one of my blind spots, I guess. |
| 18:28 |
|
masak |
I hadn't considered it something people might want to learn until now. |
| 18:29 |
|
masak |
as I wrote, it's just a list of assertions :P |
| 18:30 |
|
soh_cah_toa |
if it means anything, i'm currently writing a chapter on p6 testing for "Using Perl 6" |
| 18:32 |
|
masak |
\o/ |
| 18:32 |
|
soh_cah_toa |
i just haven't pushed my work so far b/c i can't get the build process to work for some reason :\ |
| 18:32 |
|
uvtc |
soh_cah_toa, You mean perl6/book? That sounds great. |
| 18:33 |
|
soh_cah_toa |
yup |
| 18:33 |
|
masak |
soh_cah_toa: that's sometimes been my main trouble with the book as well. |
| 18:33 |
|
|
uvtc left #perl6 |
| 18:33 |
|
flussence |
I just wrote something horrible :( |
| 18:33 |
|
masak |
soh_cah_toa: if you don't mention DI in that chapter, I'll add it. |
| 18:33 |
|
flussence |
$text.flip.split('|', 2)».flip |
| 18:33 |
|
masak |
flussence: looks good to me. |
| 18:33 |
|
flussence |
yeah, but eww. |
| 18:34 |
|
soh_cah_toa |
masak: di? |
| 18:34 |
|
flussence |
(split's $limit should work like substr IMO - *-2) |
| 18:35 |
|
* moritz |
appears |
| 18:35 |
|
PerlJam |
flussence: what would that mean exactly? |
| 18:36 |
|
benabik |
nom: my $text='foo|bar|baz'; $text.flip.split('|', 2)».flip.perl.say |
| 18:36 |
|
p6eval |
nom 184833: OUTPUT«("baz", "foo|bar")» |
| 18:36 |
|
flussence |
I want to chop off something from the end separated by '|', while leaving the beginning of the string intact |
| 18:38 |
|
PerlJam |
flussence: that doesn't sound like split's job. |
| 18:38 |
|
masak |
moritz! \o/ |
| 18:38 |
|
masak |
soh_cah_toa: see my recent blog post. http://strangelyconsistent.org[…]-the-way-you-code |
| 18:39 |
|
masak |
soh_cah_toa: and then ask if I didn't explain it clearly enough. |
| 18:39 |
|
flussence |
PerlJam: you're probably right, I could try a regex there. |
| 18:43 |
|
soh_cah_toa |
masak: nice. i also added a small section like this explaining the benefits of testing and its relation to super awesome p6 |
| 18:43 |
|
soh_cah_toa |
masak: your post gives me some ideas to expand upon |
| 18:45 |
|
* moritz |
has a wifi driver that kernel-panics if X is running while the first connection is being made |
| 18:45 |
|
|
abercrombie joined #perl6 |
| 18:45 |
|
moritz |
booting in "safe" mode, then bringing up the interface and then 'telinit 5' works though :-) |
| 18:46 |
|
benabik |
moritz: Sounds LTA. |
| 18:46 |
|
soh_cah_toa |
http://nopaste.snit.ch/75475 |
| 18:46 |
|
moritz |
benabik: it is |
| 18:46 |
|
soh_cah_toa |
could anybody help explain why the perl6/book build fails in that nopaste? |
| 18:46 |
|
moritz |
benabik: broadcom closed source fu |
| 18:48 |
|
moritz |
soh_cah_toa: seems that some components of your latex installation are too old (?) |
| 18:48 |
|
benabik |
moritz: I don't see a reason why X should bother WiFi though. |
| 18:48 |
|
benabik |
moritz: Other than the fact that Broadcom is Doing It Wrong. |
| 18:49 |
|
moritz |
benabik: it doesn't. But kernel-level C code doesn't have any kind of protection |
| 18:49 |
|
soh_cah_toa |
moritz: yeah, it make no sense. i have no idea how to "update" it then |
| 18:49 |
|
moritz |
yep, Doing It Wrong is a very accurate description |
| 18:50 |
|
moritz |
soh_cah_toa: the good news is that if you only want to hack the contents (and not the build system), 'make html' should work |
| 18:50 |
|
soh_cah_toa |
ah, didn't notice that make target |
| 18:50 |
|
* soh_cah_toa |
tries it out |
| 18:51 |
|
moritz |
I think it's underdocumented |
| 18:51 |
|
|
meth left #perl6 |
| 18:52 |
|
soh_cah_toa |
yup. that works. although a pdf version would be better but at least i can check that it renders properly. moritz++ |
| 18:52 |
|
dalek |
book: f2043cb | moritz++ | README: |
| 18:52 |
|
dalek |
book: mention "make html" |
| 18:52 |
|
dalek |
book: review: https://github.com/perl6/book/commit/f2043cb839 |
| 18:52 |
|
soh_cah_toa |
:) |
| 18:53 |
|
flussence |
moritz: which kernel ver? I think Broadcom recently caved in and went open source with their wifi driver |
| 18:54 |
|
|
pernatiy joined #perl6 |
| 18:54 |
|
moritz |
flussence: first tried a 3.0-rc3 or so, then an old-but-good shipped with Debian |
| 18:54 |
|
moritz |
flussence: and it's only the firmware that is closed source, but that's what seems to cause the problems |
| 18:54 |
|
flussence |
ah |
| 18:56 |
|
* flussence |
vaguely remembers having to use ndiswrapper on an atheros once, not fun |
| 18:56 |
|
|
plobsing joined #perl6 |
| 18:56 |
|
|
jevin joined #perl6 |
| 18:56 |
|
moritz |
the really annoying part is that this laptop was supposed to have an Intel wifi chip |
| 18:57 |
|
moritz |
and when I complained, the customer service told me "oh, they are technically equivalent. You can have a 10€ voucher to compensate for your inconvenience" |
| 18:57 |
|
moritz |
the difference is that intel has much better drivers |
| 18:59 |
|
flussence |
I think just about every wifi card I've used has required terrible drivers at some point. It'll probably get better in a few months :) |
| 18:59 |
|
moritz |
right |
| 19:00 |
|
flussence |
(I still have that atheros one, but I use it for my access point now) |
| 19:01 |
|
|
kannah left #perl6 |
| 19:04 |
|
|
donri joined #perl6 |
| 19:07 |
|
moritz |
nom: sub f() { say "in f" }; my $name = 'f'; &::($name).() |
| 19:07 |
|
p6eval |
nom 184833: OUTPUT«in f» |
| 19:08 |
|
moritz |
phenny: tell abercrombie about http://irclog.perlgeek.de/perl[…]1-08-28#i_4337460 (calling functions by name) |
| 19:08 |
|
phenny |
moritz: I'll pass that on when abercrombie is around. |
| 19:09 |
|
|
lateau_ left #perl6 |
| 19:12 |
|
masak |
nom: sub f { "f" }; say &::(f)() |
| 19:12 |
|
p6eval |
nom 184833: OUTPUT«f» |
| 19:14 |
|
plobsing |
how is that not a barew... omg... mind blown |
| 19:16 |
|
masak |
:D |
| 19:17 |
|
masak |
yes, that's two calls to &f |
| 19:17 |
|
benabik |
nom: sub f { 'g' }; sub g { say 'in g' }; say &::(f)() |
| 19:17 |
|
p6eval |
nom 184833: OUTPUT«in gBool::True» |
| 19:18 |
|
|
abercrombie joined #perl6 |
| 19:19 |
|
|
uvtc joined #perl6 |
| 19:21 |
|
uvtc |
soh_cah_toa, masak : I also had problems building perl6/book, though I don't recall the specifics. IIRC, there were a number of font dependencies (one even involving installing "acrobat" I think). |
| 19:22 |
|
uvtc |
I'd begun making some minor fixes, but then when I couldn't build it, got sidetracked and then didn't come back to it. |
| 19:32 |
|
|
kaare_ joined #perl6 |
| 19:36 |
|
|
Reaganomicon joined #perl6 |
| 19:58 |
|
sorear |
good * #perl6 |
| 20:00 |
|
soh_cah_toa |
is anybody willing to add a new module to modules.perl6.org? i don't know how and i don't have commit access to panda anyway |
| 20:00 |
|
soh_cah_toa |
https://github.com/soh-cah-toa/p6-irc-utils |
| 20:01 |
|
sorear |
masak: I have read pretty much everything by Aaronson and Yudkowsky, iirc. |
| 20:02 |
|
sorear |
<3 intuititionistic logic |
| 20:04 |
|
masak |
:) |
| 20:04 |
|
* masak |
looks up Yudkowsky |
| 20:04 |
|
flussence |
soh_cah_toa: will do (unless someone else is already doing it) |
| 20:04 |
|
masak |
oh, Less Wrong. |
| 20:04 |
|
soh_cah_toa |
flussence: great, thanks |
| 20:05 |
|
dalek |
ecosystem: 1f45c21 | flussence++ | META.list: |
| 20:05 |
|
dalek |
ecosystem: Add soh_cah_toa++'s p6-irc-utils to modules list |
| 20:05 |
|
dalek |
ecosystem: review: https://github.com/perl6/ecosy[…]commit/1f45c21b72 |
| 20:06 |
|
soh_cah_toa |
yay \o/ |
| 20:06 |
|
flussence |
(it takes a while for the site to update, don't panic) |
| 20:06 |
|
soh_cah_toa |
yeah |
| 20:13 |
|
|
whiteknight joined #perl6 |
| 20:14 |
|
mberends |
hi sorear: your last help worked, initial sprintf() pushed. Next question: how can I cause a die() to happen from C# ? |
| 20:14 |
|
|
[Coke] joined #perl6 |
| 20:17 |
|
|
y3llow joined #perl6 |
| 20:18 |
|
|
pothos_ joined #perl6 |
| 20:19 |
|
sorear |
mberends: throw new NieczaException("Error message") |
| 20:19 |
|
dalek |
niecza: c873f75 | sorear++ | src/STD.pm6: |
| 20:19 |
|
dalek |
niecza: Import TimToady's empty listop checks |
| 20:19 |
|
dalek |
niecza: review: https://github.com/sorear/niec[…]commit/c873f755f4 |
| 20:19 |
|
mberends |
sorear: thanks again |
| 20:20 |
|
|
tty234 joined #perl6 |
| 20:26 |
|
soh_cah_toa |
http://nopaste.snit.ch/75492 |
| 20:26 |
|
soh_cah_toa |
i'm having some problems using regexes. i'd be really happy if somebody could look at that nopaste |
| 20:27 |
|
diakopter |
. |
| 20:27 |
|
phenny |
diakopter: 09:01Z <sorear> tell diakopter *frown* you've checked in half a megabyte of versions of lib/Solution/Niecza/Niecza.pidb. Is it really necessary to have this file under version control? It looks like debug information to me. |
| 20:27 |
|
diakopter |
k |
| 20:28 |
|
masak |
soh_cah_toa: I'm not aware that you can do subrule calls inside charclasses like that. |
| 20:28 |
|
|
im2ee_ joined #perl6 |
| 20:28 |
|
benabik |
soh_cah_toa: It looks like complex matches _`-^|\{}[] as a string, not any single element of that string. |
| 20:28 |
|
soh_cah_toa |
damn |
| 20:29 |
|
masak |
it's an interesting question whether an interpolated string would work. I don't know. |
| 20:30 |
|
|
colomon joined #perl6 |
| 20:30 |
|
masak |
colomon! \o/ |
| 20:31 |
|
colomon |
o/ |
| 20:31 |
|
* colomon |
has barely survived two days of giving music workshops and "A Day Out With Thomas" (the Tank Engine) |
| 20:34 |
|
masak |
glad you survived. |
| 20:34 |
|
|
pernatiy joined #perl6 |
| 20:40 |
|
|
pernatiy joined #perl6 |
| 20:43 |
|
sorear |
colomon! |
| 20:50 |
|
|
mj41 joined #perl6 |
| 20:53 |
|
|
Mowah joined #perl6 |
| 20:53 |
|
|
envi joined #perl6 |
| 20:54 |
|
sorear |
niecza: say "x" eq any<x y z> |
| 20:54 |
|
p6eval |
niecza v8-59-gc873f75: OUTPUT«===[0mSORRY!===[0m��The 'any' listop may not be called without arguments (please use () or whitespace to clarify) at /tmp/f2TGqt2E6E line 1:�------> say "x" eq any�<x y z>��Unhandled exception: Check failed�� at /home/p6eval/… |
| 20:54 |
|
TimToady |
\o/ |
| 20:54 |
|
phenny |
TimToady: 09:19Z <sorear> tell TimToady your problem was you used "multi" for the operators. Precedence needs to apply to the entire sub, not specific candidates |
| 20:54 |
|
phenny |
TimToady: 09:20Z <sorear> tell TimToady (that said, niecza doesn't know how to propagate traits from proto to dispatch either - precedence will only work on "only" subs) |
| 20:54 |
|
phenny |
TimToady: 09:42Z <sorear> tell TimToady In your last std commit, what's the comment about P5isms and P6isms about? |
| 20:54 |
|
sorear |
scratch the last one, I figured it out |
| 20:54 |
|
TimToady |
nodnod |
| 20:54 |
|
sorear |
however I'm still wondering about how to map it into traits |
| 20:55 |
|
sorear |
is error-no-args(1), is error-no-args(2) feels wrong |
| 20:55 |
|
TimToady |
it's like <i> and <b> instead of <em> etc |
| 20:56 |
|
TimToady |
is 'p5-defaulting' is more like |
| 20:56 |
|
sorear |
nah, it's more like J's insanity of spelling sin cos and tan(of x) 1 o. x, 2 o. x, and 3 o. x respectively |
| 20:56 |
|
masak |
o.O |
| 20:56 |
|
masak |
I'd just like to point out that <i> and <b> are not deprecated. just scaled back. :) |
| 20:57 |
|
TimToady |
no, I mean 1 would be "is defaulting-in-p5" and 2 is something else |
| 20:57 |
|
TimToady |
is error-prone :) |
| 20:58 |
|
TimToady |
is constructor-that-makes-little-sense-empty |
| 20:58 |
|
TimToady |
something semantic |
| 20:58 |
|
TimToady |
I'm agreeing that 1 and 2 is quite wrongish |
| 20:59 |
|
TimToady |
"Never put magic numbers into your program except 0 and 1--and we're not sure about 1." |
| 21:00 |
|
TimToady |
std: any<foo bar> |
| 21:00 |
|
p6eval |
std e3c970e: OUTPUT«ok 00:01 118m» |
| 21:00 |
|
TimToady |
/o\ |
| 21:06 |
|
TimToady |
<i> stands for "intense" and <b> for <bombastic> :) |
| 21:06 |
|
TimToady |
oops, failure of parallelism... |
| 21:07 |
|
masak |
<:)> |
| 21:07 |
|
diakopter |
std: <> |
| 21:07 |
|
p6eval |
std e3c970e: OUTPUT«===[0mSORRY!===[0m�Unsupported use of <>; in Perl 6 please use lines() to read input,� or ('') to represent the null string,� or () to represent Nil at /tmp/_Qx6weLjZw line 1:�------> <�>�Parse failed�FAILED 00:01 117m�»… |
| 21:07 |
|
masak |
std: <STDIN> |
| 21:07 |
|
p6eval |
std e3c970e: OUTPUT«===[0mSORRY!===[0m�Unsupported use of <STDIN>; in Perl 6 please use $*IN.lines at /tmp/tzo8JKSYEc line 1:�------> <�STDIN>�Parse failed�FAILED 00:01 117m�» |
| 21:08 |
|
mberends |
TimToady++ # :-) (magic numbers)-- |
| 21:08 |
|
TimToady |
niecza: WHAT |
| 21:08 |
|
p6eval |
niecza v8-59-gc873f75: OUTPUT«===[0mSORRY!===[0m��The 'WHAT' listop may not be called without arguments (please use () or whitespace to clarify) at /tmp/1uRXmBm00D line 1 (EOF):�------> WHAT�<EOL>��Unhandled exception: Check failed�� at /home/p6eval/niecz… |
| 21:08 |
|
TimToady |
I remember feeling guilty for lumping WHAT et al. in with the p5 ops at first |
| 21:09 |
|
TimToady |
glad there's now a category of p6 listops that are suspicious of 0 args |
| 21:09 |
|
TimToady |
I suppose it could be argued that all empty listops should require parens |
| 21:10 |
|
masak |
well, it *could* be argued... :( |
| 21:10 |
|
TimToady |
but then there's things like: constant ∅ = set; |
| 21:11 |
|
TimToady |
(probably won't work though) |
| 21:11 |
|
TimToady |
niecza: constant ∅ = set; |
| 21:11 |
|
p6eval |
niecza v8-59-gc873f75: OUTPUT«===[0mSORRY!===[0m��Malformed constant at /tmp/V9Hacl6paN line 1:�------> constant �∅ = set;��Parse failed��» |
| 21:11 |
|
TimToady |
yeah, ∅ isn't alphanumeric |
| 21:12 |
|
TimToady |
not sure whether we should make it a little easier to define terms that aren't alpha without resorting to term:<∅> |
| 21:12 |
|
TimToady |
hmm |
| 21:12 |
|
TimToady |
niecza: constant term:<∅> = set; |
| 21:12 |
|
p6eval |
niecza v8-59-gc873f75: OUTPUT«===[0mSORRY!===[0m��Colonpair traits NYI at /tmp/sbzjHPP69u line 1:�------> constant term:<∅> �= set;��Undeclared routine:� 'set' used at line 1��Unhandled exception: Check failed�� at /home/p6eval/niecza/boot/lib/CORE.settin… |
| 21:12 |
|
TimToady |
that might be allowed, I suppose |
| 21:13 |
|
TimToady |
biab & |
| 21:29 |
|
dalek |
niecza: c7ebb88 | diakopter++ | lib/Solution/Niecza/Niecza.pidb: |
| 21:29 |
|
dalek |
niecza: delete Niecza.pidb |
| 21:29 |
|
dalek |
niecza: review: https://github.com/sorear/niec[…]commit/c7ebb8897b |
| 21:30 |
|
masak |
perl6: .= uc |
| 21:30 |
|
p6eval |
rakudo a55346: OUTPUT«===SORRY!===Confused at line 22, near ".= uc"» |
| 21:30 |
|
p6eval |
..niecza v8-59-gc873f75: OUTPUT«===[0mSORRY!===[0m��Preceding context expects a term, but found infix .= instead at /tmp/52QNJfe_3L line 1:�------> <BOL>�.= uc��Parse failed��» |
| 21:30 |
|
p6eval |
..pugs: OUTPUT«***  Unexpected " uc" expecting ".", "\187", ">>", "=", "^", operator name, qualified identifier, variable name, "...", "--", "++", "i", array subscript, hash subscript or code subscript at /tmp/cWbICO4N71 line 1, column 3» |
| 21:30 |
|
masak |
ok, fair enough :) |
| 21:30 |
|
benabik |
nom: .=uc |
| 21:30 |
|
p6eval |
nom 184833: OUTPUT«Method 'uc' not found for invocant of class 'Any' in method dispatch:<.=> at src/gen/CORE.setting:619 in <anon> at /tmp/72oTo6YIOt:1 in <anon> at /tmp/72oTo6YIOt:1» |
| 21:30 |
|
benabik |
Hm. perl6 doesn't run nom? |
| 21:31 |
|
masak |
indeed not. |
| 21:31 |
|
benabik |
nom: .= uc |
| 21:31 |
|
p6eval |
nom 184833: OUTPUT«===SORRY!===Confused at line 1, near ".= uc"» |
| 21:31 |
|
benabik |
Without a space it's a mutating method call on $_. With, it gets confused. |
| 21:32 |
|
dalek |
niecza: 9e4b0e4 | (Martin Berends)++ | lib/Solution/Niecza/Niecza.pidb: |
| 21:32 |
|
dalek |
niecza: Merge branch 'master' of github.com:sorear/niecza |
| 21:32 |
|
dalek |
niecza: review: https://github.com/sorear/niec[…]commit/9e4b0e43fc |
| 21:36 |
|
sorear |
mberends: reviewing your code for diakopter... I'm wondering why you chose to make an intermediate list of PrintfFormat objects instead of fusing the loops. |
| 21:38 |
|
mberends |
sorear: it was for recent hysterical raisins, we divided the coding into two halves and the PrintFormat list was the interface between them |
| 21:39 |
|
* flussence |
is coming to a realisation that I'm implementing Pod::To::HTML in an insane way |
| 21:39 |
|
flussence |
(there's tree-walking stuff, and various types of stringification, and I'm trying to squish them all into the same place...) |
| 21:41 |
|
mberends |
sorear: with hindsight, we can refactor it and merge the parts. It was a mainly to enable two developers to work relatively independently. |
| 21:42 |
|
flussence |
seen tadzik |
| 21:42 |
|
aloha |
tadzik was last seen in #perl6 11 hours ago joining the channel. |
| 21:43 |
|
mberends |
sorear: that will happen, there are many features NYI, even though it now passes all the spectests. Adding more sprintf spectests would be nice LHF for someone. |
| 21:43 |
|
lue |
hello planet o/ |
| 21:44 |
|
mberends |
o/ |
| 21:46 |
|
flussence |
mberends: there's a grammar for sprintf in the specs. masak++ suggested to me a while ago that there's a way to make GGE generate all combinations of valid strings for it, I didn't really get anywhere with it though. |
| 21:46 |
|
masak |
if there's any way I can help... |
| 21:46 |
|
masak |
there's a gist shows how to do it. |
| 21:47 |
|
flussence |
.oO( the grammar's only about 5 lines, I probably could've done it using X~ ) |
| 21:48 |
|
flussence |
.oO( wouldn't have been as cool though... ) |
| 21:48 |
|
lue |
[compiling rakudo/parrot locally, hoping it works...] |
| 21:49 |
|
mberends |
flussence: thanks, I saw it in S32::Str. I'd like to see the generated combinations, or perhaps add the generator to the test script. Otoh, many possibly redundant tests will only slow down development. |
| 21:51 |
|
|
mjreed joined #perl6 |
| 21:52 |
|
mberends |
.oO( we need a 'make slowtest' for people with excess CPU capacity ) |
| 21:53 |
|
mjreed |
Is there a way yet to import a module/file in Rakudo 11.04? If so, what is it? Both 'use' and 'import' yield complaints about undefined subroutines. |
| 21:55 |
|
masak |
mjreed: er. |
| 21:55 |
|
masak |
'use' has been implemented since 2008, I think. |
| 21:56 |
|
masak |
hence modules.perl.org |
| 21:56 |
|
mberends |
mjreed: try it with 'use Test;' to determine whether the problem is with your built Rakudo or your module. Rakudo's 'use' definitely works. |
| 21:56 |
|
masak |
er, modules.perl6.org |
| 21:56 |
|
mjreed |
use Test; returns _block85, so I guess that works. |
| 21:57 |
|
sorear |
mberends: make stresstest I think it's called |
| 21:57 |
|
masak |
yes, that's just the REPL. |
| 21:57 |
|
sorear |
mberends: several test files are blacklisted from 'spectest' for being too slow. |
| 21:58 |
|
mjreed |
Ok, so it's not finding the module, I guess. In which case I shall simply note that "Could not find sub &use" is an LTA error message. :) |
| 21:58 |
|
mberends |
sorear: thanks, I remember now |
| 21:58 |
|
sorear |
masak: any comment about my comment about proof systems, testing, and designed-in redundany? |
| 21:58 |
|
flussence |
rakudo: use nonexistent-module |
| 21:58 |
|
p6eval |
rakudo a55346: OUTPUT«===SORRY!===Unable to find module 'nonexistent-module' in the @*INC directories.(@*INC contains: lib /home/p6eval/.perl6/lib /home/p6eval//p2/lib/parrot/3.6.0-devel/languages/perl6/lib .)» |
| 21:58 |
|
sorear |
rakudo: use Test (); |
| 21:58 |
|
p6eval |
rakudo a55346: ( no output ) |
| 21:59 |
|
mjreed |
rakudo: use 'nonexistent-module'; |
| 21:59 |
|
p6eval |
rakudo a55346: OUTPUT«Could not find sub &use in main program body at line 22:/tmp/h3EWFfEQaz» |
| 22:00 |
|
mjreed |
so since I passed a string it was trying to call 'use' on that string.. |
| 22:00 |
|
lue |
rakudo: require 'nonexistent-module'; # just curious |
| 22:00 |
|
p6eval |
rakudo a55346: OUTPUT«Unable to find module 'nonexistent-module' in the @*INC directories.(@*INC contains: lib /home/p6eval/.perl6/lib /home/p6eval//p2/lib/parrot/3.6.0-devel/languages/perl6/lib .) in main program body at line 26:src/Perl6/Module/Loader.pm» |
| 22:00 |
|
mjreed |
Oddly, it's not failing for nonexistent modules for me, though. |
| 22:02 |
|
mjreed |
rather, 'use' is, but 'import' isn't. sorry. |
| 22:02 |
|
masak |
blog post! http://strangelyconsistent.org[…]dash-n-and-dash-p |
| 22:03 |
|
mjreed |
Yay! |
| 22:03 |
|
mjreed |
Nitpick: "There's a -p flag that also does the loop thing, but it prints $_ at the end of the loop:" - "at the end of the loop" sounds like it doesn't print until it's done with the whole file. |
| 22:04 |
|
masak |
it does indeed. fixing. |
| 22:04 |
|
mjreed |
""at the end of each time through the loop", maybe, if you want to avoid scaring people with the "iteration" word. :) |
| 22:04 |
|
masak |
I don't want to avoid that ;) |
| 22:05 |
|
TimToady |
mind you, the way rakudo does it isn't how it's specced either :) |
| 22:06 |
|
masak |
indeed. |
| 22:06 |
|
masak |
I just want -n and -p more than I want to wait for the correctest solution. |
| 22:06 |
|
TimToady |
I though you was gonna talk about settings when I +1'd it |
| 22:06 |
|
masak |
sorry :P |
| 22:06 |
|
TimToady |
*thought |
| 22:07 |
|
TimToady |
and you got my hopes up by talking about "elegance" |
| 22:07 |
|
masak |
no, I just like that Rakudo deals with ASTs where Perl 5 deals with text. |
| 22:07 |
|
masak |
to me, that *is* elegance! :) |
| 22:07 |
|
TimToady |
is it elegant to muck with ASTs when you can have quasi? |
| 22:07 |
|
TimToady |
that's what alternate settings really are |
| 22:08 |
|
|
molaf joined #perl6 |
| 22:08 |
|
TimToady |
with the YOU_ARE_HERE being the quasi-unquote |
| 22:08 |
|
* flussence |
unfortunately knows enough about php to remember that it does the same sort of thing as p5 there, for double quote interpolation |
| 22:08 |
|
* lue |
marvels at the existence of an 'eskimo operator' |
| 22:09 |
|
mberends |
masak++: those kissing Eskimos look *so* much like Bobby Tables :) |
| 22:09 |
|
masak |
mberends: aye. |
| 22:10 |
|
mberends |
they're cousins, I'll bet |
| 22:10 |
|
masak |
or circles. |
| 22:10 |
|
masak |
TimToady: maybe I'll have to write a followup post, then, where I talk about settings. ;) |
| 22:11 |
|
TimToady |
hygienic macros are kinda like black holes, and our entire UNITverse is inside one |
| 22:12 |
|
benabik |
--setting=-p ? |
| 22:13 |
|
lue |
mberends: you mean little Robert'); DROP TABLE Students; ? |
| 22:13 |
|
masak |
TimToady: when jnthn and I were strolling around Riga on the last day, we realized that quasiquotes will have to do funny things with all kinds of declarations. |
| 22:14 |
|
masak |
oh, I wrote a gist about that, didn't I? |
| 22:14 |
|
mberends |
lue++ # http://xkcd.com/327/ |
| 22:14 |
|
masak |
https://gist.github.com/1156662 |
| 22:14 |
|
lue |
I actually had to check that to remember exactly what his name was. |
| 22:15 |
|
masak |
well, they *call* him "little Bobby Tables" ;) |
| 22:15 |
|
jlaire |
.u ◌ |
| 22:15 |
|
phenny |
U+25CC DOTTED CIRCLE (◌) |
| 22:15 |
|
masak |
'night, #perl6 |
| 22:15 |
|
TimToady |
but what is his name called? |
| 22:16 |
|
lue |
TimToady: a hilarious prank |
| 22:16 |
|
masak |
nice, humpty-dumpty. |
| 22:16 |
|
flussence |
I feel guilty for ever posting this :( - http://stackoverflow.com/quest[…]ngs/538467#538467 |
| 22:16 |
|
lue |
g'night masak o/ |
| 22:17 |
|
jlaire |
flussence: interesting... |
| 22:17 |
|
mjreed |
flussence: wow, just when I thought I'd run out of new php "quirks" to discover... |
| 22:19 |
|
|
drbean joined #perl6 |
| 22:30 |
|
|
mjreed left #perl6 |
| 22:31 |
|
TimToady |
sorear++, added precedence to operators in http://rosettacode.org/wiki/Ternary_logic#Perl_6 |
| 22:37 |
|
soh_cah_toa |
perl6: my @foo = "\x01".."\xff" |
| 22:38 |
|
p6eval |
rakudo a55346: OUTPUT«(timeout)» |
| 22:38 |
|
p6eval |
..pugs: ( no output ) |
| 22:38 |
|
p6eval |
..niecza v8-62-g9e4b0e4: OUTPUT«(timeout)Potential difficulties:� @foo is declared but not used at /tmp/BVXQGsdn_x line 1:�------> my �@foo = "\x01".."\xff"��» |
| 22:38 |
|
TimToady |
use ... for that, for now |
| 22:38 |
|
TimToady |
not .. |
| 22:38 |
|
soh_cah_toa |
perl6: my @foo = "\x01"..."\xff" |
| 22:38 |
|
p6eval |
niecza v8-62-g9e4b0e4: OUTPUT«Potential difficulties:� @foo is declared but not used at /tmp/HpuDVXunnA line 1:�------> my �@foo = "\x01"..."\xff"��Unhandled exception: Unable to resolve method ord in class Str� at /home/p6eval/niecza/lib/CORE.setting line 1760 (COR… |
| 22:38 |
|
p6eval |
..pugs: OUTPUT«***  Unexpected "\"\\" expecting operator, "," or term postfix at /tmp/pwap9eEPoK line 1, column 20» |
| 22:38 |
|
p6eval |
..rakudo a55346: ( no output ) |
| 22:39 |
|
TimToady |
perl6: my @foo = "\x01"..."\xff"; say @foo.elems; |
| 22:39 |
|
p6eval |
niecza v8-62-g9e4b0e4: OUTPUT«Unhandled exception: Unable to resolve method ord in class Str at /home/p6eval/niecza/lib/CORE.setting line 1760 (CORE C789_ANON @ 2)  at /home/p6eval/niecza/lib/CORE.setting line 1795 (CORE C822_ANON @ 2)  at /home/p6eval/niecza/lib/CORE.setting line… |
| 22:39 |
|
p6eval |
..rakudo a55346: OUTPUT«255» |
| 22:39 |
|
p6eval |
..pugs: OUTPUT«***  Unexpected "\"\\" expecting operator, "," or term postfix at /tmp/cspXWRZJK4 line 1, column 20» |
| 22:41 |
|
soh_cah_toa |
oh yeah, i think i brought that up before. '..' should be promoted to '...' but isn't |
| 22:41 |
|
soh_cah_toa |
forgot that |
| 22:42 |
|
soh_cah_toa |
i wouldn't have to worry about that at all if escape sequences worked in character classes :( |
| 22:42 |
|
TimToady |
yeah |
| 22:42 |
|
soh_cah_toa |
waiting for qregex |
| 22:44 |
|
TimToady |
niecza: $_ = "foo\n"; say ~/<-[\0..\x1f]>*/ |
| 22:44 |
|
p6eval |
niecza v8-62-g9e4b0e4: OUTPUT«Regex()<instance>» |
| 22:44 |
|
TimToady |
niecza: $_ = "foo\n"; say ~ ($_ ~~ /<-[\0..\x1f]>*/) |
| 22:44 |
|
p6eval |
niecza v8-62-g9e4b0e4: OUTPUT«foo» |
| 22:44 |
|
TimToady |
looks like they work in niecza |
| 22:45 |
|
soh_cah_toa |
yeah |
| 22:46 |
|
soh_cah_toa |
oh that reminds me, what's the difference between <-alpha> and <!alpha>? not just alpha but any rule. S05 mentions it briefly but i don't really understand it |
| 22:46 |
|
flussence |
I think !'s an assertion... |
| 22:46 |
|
TimToady |
- has a width of . while ! has 0 width |
| 22:46 |
|
soh_cah_toa |
oh right, it's not captured in the match object |
| 22:47 |
|
TimToady |
it's just a lookahead |
| 22:47 |
|
TimToady |
<-foo> is really <!foo>. <-- including the dot |
| 22:48 |
|
soh_cah_toa |
ah, i didn't notice the '.' in /<!before <alpha>> ./ so i thought there was a typo ;) |
| 22:49 |
|
|
kst joined #perl6 |
| 22:49 |
|
soh_cah_toa |
alright, got it |
| 22:51 |
|
soh_cah_toa |
another p6 question: what's does ::T specify? i see it a lot in subroutine signatures |
| 22:51 |
|
TimToady |
captures the type of the argument en passant |
| 22:51 |
|
TimToady |
and gives it a name T |
| 22:52 |
|
TimToady |
it's a bit of genericity writ small |
| 22:52 |
|
soh_cah_toa |
is that just when it's ::T or ::anything? like ::Date |
| 22:52 |
|
TimToady |
anything |
| 22:53 |
|
TimToady |
:: is sort of a pseudo-sigil |
| 22:53 |
|
soh_cah_toa |
would it be safe to say they're like c++ templates or java's generics? |
| 22:54 |
|
TimToady |
or maybe the other way around :) |
| 22:54 |
|
TimToady |
we've been working on roles for a long time... |
| 22:57 |
|
soh_cah_toa |
so since you can specify anything after the ::, that means that ::Real $epsilon does not mean $epsilon is of type Real. is just happens to be the same name as the type Real? |
| 22:57 |
|
TimToady |
you've just shadowed the name "Real", since the real Real is in an outer lexical scope |
| 22:57 |
|
soh_cah_toa |
got it |
| 22:57 |
|
TimToady |
and you could still get at it with OUTER::Real, presumably, or CORE::Real |
| 22:59 |
|
soh_cah_toa |
rakudo: sub foo(::T $a) { say $a.WHAT.perl }; foo('foobar') |
| 22:59 |
|
p6eval |
rakudo a55346: OUTPUT«Str» |
| 22:59 |
|
soh_cah_toa |
rakudo: sub foo(::BlahBlahBlah $a) { say $a.WHAT.perl }; foo(42) |
| 23:00 |
|
p6eval |
rakudo a55346: OUTPUT«Int» |
| 23:00 |
|
soh_cah_toa |
cool |
| 23:00 |
|
TimToady |
rakudo: sub foo(::T $a) { say T.perl }; foo(42) |
| 23:00 |
|
p6eval |
rakudo a55346: OUTPUT«Int» |
| 23:00 |
|
|
envi joined #perl6 |
| 23:00 |
|
soh_cah_toa |
yeah, that's the same thing then. i see |
| 23:01 |
|
TimToady |
rakudo: sub foo(::T $a, T $b) { say T.perl }; foo(42,'oops') |
| 23:01 |
|
p6eval |
rakudo a55346: OUTPUT«Constraint type check failed for parameter '$b' in 'foo' at line 22:/tmp/x7D1RKu_nw in main program body at line 22:/tmp/x7D1RKu_nw» |
| 23:02 |
|
|
molaf_ joined #perl6 |
| 23:03 |
|
TimToady |
nap & |
| 23:34 |
|
|
Psyche^ joined #perl6 |
| 23:47 |
|
|
rgrau joined #perl6 |
| 23:59 |
|
|
wolfman2000 joined #perl6 |