»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg camelia perl6: ... | irclog: irc.perl6.org | UTF-8 is our friend!
Set by sorear on 25 June 2013.
00:07 raiph joined 00:19 jnap joined 00:25 bjz_ left
dalek rl6-roast-data: 03a5fc3 | coke++ | / (5 files):
today (automated commit)
00:30
rl6-roast-data: 638526f | coke++ | bin/moarborts.p5:
don't need this
rl6-roast-data: 3c97153 | coke++ | bin/git.p5:
stop fetching pugs.
rl6-roast-data: 76f27f7 | coke++ | / (6 files):
First pass at adding rakudo.moar with -jit
00:41 chenryn joined 00:46 jnap left, chenryn left 00:47 anaeem1 joined 00:51 anaeem1 left 00:54 dayangkun joined
dalek ast/S26-WHY: 9f9b019 | (Rob Hoelz)++ | S26-documentation/why-both.t:
Create a helper function for both-tests
01:01
ast/S26-WHY: c17002c | (Rob Hoelz)++ | S26-documentation/why-trailing.t:
Test multi subs with trailing comments
ast/S26-WHY: 36430df | (Rob Hoelz)++ | S26-TODO.md:
Update TODO matrix
01:11 ventica2 joined 01:14 jnap joined 01:25 jnap left 01:26 FROGGS_ joined 01:29 FROGGS left 01:33 Mouq joined 01:42 chenryn joined 01:45 ilbot3 left 01:46 ilbot3 joined 01:47 chenryn left 01:48 mr-foobar left 01:49 klapperl joined, mr-foobar joined 01:52 klapperl_ left 01:53 araujo left 01:54 araujo joined
dalek kudo/S26-WHY: d7a9926 | (Rob Hoelz)++ | src/core/traits.pm:
Don't pass type to set_{leading,trailing}_docs
01:57
kudo/S26-WHY: 55af855 | (Rob Hoelz)++ | src/Perl6/ (3 files):
Fix trailing decl comments for roles
02:00 lue left 02:12 thou left, lustlife joined 02:34 thou joined 02:41 chenryn joined 02:46 Akagi201_ joined, Akagi201 left 02:47 Akagi201_ left 02:55 noganex_ joined, kaare_ joined 02:58 noganex left 03:07 xenoterracide left 03:13 xragnar_ joined, xragnar left, xragnar_ is now known as xragnar 03:16 clkao left 03:19 rurban1 left 03:20 telex left 03:22 rurban1 joined, rurban1 left, telex joined 03:28 clkao joined 03:29 rurban1 joined 03:47 lustlife left 03:48 lue joined 03:51 raiph left 03:53 kaare_ left 03:55 thistusooa joined 03:59 lustlife joined 04:00 raiph joined 04:17 raiph left 04:23 [Sno] left 04:25 xinming_ joined 04:27 rurban1 left 04:28 kaare_ joined 04:29 xinming left 04:30 hagiri joined
hagiri PerlJam 04:31
:)
04:37 hagiri left, hagiri joined, hagiri left 04:45 BenGoldberg left 04:51 hagiri joined 04:52 hagiri left 04:57 thou left 04:59 hagiri joined
hagiri hi all 05:00
:)
05:04 SamuraiJack joined 05:05 gfldex joined 05:06 chenryn left 05:07 chenryn joined 05:11 chenryn left
hagiri I've been reading and it seems that the perl 6 can use classes, how should I proceed? 05:13
:)
ren1us you mean how does OOP work in p6? 05:15
05:15 xinming_ left 05:16 AndChat-188244 joined 05:17 xinming joined
hagiri ren1us 05:18
I want to know if it is possible. :)
ren1us m: class A { has $.var; method new($var) { self.bless(:$var); }; method b() { say $.var; }; }; my $a = A.new("Test"); $a.b; 05:19
camelia rakudo-moar 0c42c1: OUTPUT«Test␤»
05:19 cognominal left
ren1us yeah, p6 has pretty much fully functional classes, [multiple] inheritance, role composition, etc 05:20
05:23 chenryn joined
hagiri ren1us you wrote to me is a simple syntax in perl 6? 05:25
:P
i see class {} ..
lol
05:25 PotatoGim joined
ren1us mhm 05:26
class A { } # empty class body
has $.var; # an attribute of the class
hagiri ren1us hm.. 05:28
for beginner, learn perl 5 or 6?
:)
ren1us 5 is more mainstream, 6 is more awesome 05:29
hagiri ren1us 05:31
doubt cruel, vi syntax of the two versions, changes little ..
;T
ren1us i personally find p6 cleaner than p5, but there are those who disagree 05:32
the fact that i'm in this channel means i'm biased, of course :) 05:33
i actually forget if there's a clean tutorial series out there for p6. i know there's the advent calendar and the old book on github, and i seem to recall someone said they were writing a new walkthrough a couple weeks ago 05:35
05:35 Mouq left 05:37 davido___ joined
moritz ren1us: maybe learnxinyminutes.com/docs/perl6/ 05:38
05:39 chenryn left
moritz (which seems to have a stray bare "a" on a line of its own) 05:39
05:39 SevenWolf joined 05:40 chenryn joined 05:42 colomon left 05:44 [Sno] joined, chenryn left
hagiri ren1us 05:48
I'm talking to some people perl5 channel, they told me that because of me being newbie, you'd better start with perl5 .. What do you have to say about?
forgive me, my english is very poor :T
ren1us your english is better than a lot of my friends who have been speaking it their whole lives, so don't worry about it 05:49
the advantage of p5 is that it's got a huge community, which means a massive support network. i think the camel book is on its 4th edition by now. the advantage of p6 is that imo it's more reasonable than p5 in a lot of ways, which often makes it more newbie friendly (especially if you've used another language before), and the information isn't as... spread out, so to speak 05:51
05:51 gfldex left, PotatoGim left
ren1us honestly you can't go wrong and it depends what your end goal is 05:52
thistusooa the perl 6 compiler is slow
05:54 thou joined
ren1us moritz: that might be it. i keep meaning to start writing up all the cool little gotchas i bump into (given that i still suck at this). you know, put my liberal arts degree to good use. it'd be nice to pull together as much scattered information as possible, get it neatly organized and navigable, and most importantly, include the details from the perspective of someone who didn't design them 05:54
(and thus necessarily consider them obvious)
hagiri ren1us I use a translator and I have a basic understanding of english ..: P 05:56
05:56 chenryn joined
hagiri :P 05:56
I use Fedora, I have perl installed, now, I can code
:D
05:58 thou left 06:00 YUAAB6IJ joined 06:03 virtualsue joined
hagiri ren1us I'm going to program in Perl 5. 06:04
=)
;D
ren1us thanks bro 06:05
:)
bye
ren1us have fun
hagiri ren1us ye 06:06
:P
06:07 hagiri left 06:12 PotatoGim joined 06:15 anaeem1_ joined 06:36 kaleem joined 06:45 Mouq joined
Mouq wonders if 'bro' was produced by the translator... 06:46
Mouq would also like to know where to purchase said translator 06:47
06:50 kuroseki left 06:55 FROGGS_ left 07:08 SamuraiJack left 07:10 akaseki joined 07:14 Mouq left 07:19 dmol joined 07:27 Mouq joined 07:32 dayangkun left, aoseki joined 07:34 SevenWolf left 07:35 akaseki left
masak morning, #perl6 07:38
lizmat good *, #perl6!
moritz \o * 07:39
07:39 virtualsue left
moritz masak: I thought a bit about CQRS and asynchronity; here are my ramblings: gist.github.com/moritz/da2d6ea7a3da3e440c19 07:41
masak: feel free to comment if I misunderstood something
(I'm talking about the API design aspect of CQRS, not about the separate read/write databases that it might bring too) 07:42
07:42 thou joined 07:45 dayangkun joined 07:47 thou left, Mouq left 07:52 pecastro joined
lizmat looks like the info about Rakudo on dev.perl.org is a bit out of date 07:53
for one, it doesn't mention Rakudo running on JVM, and it doesn't mention MoarVM
07:54 mr-foobar left 07:55 mr-foobar joined
moritz lizmat: send a mail to [email@hidden.address] and ask them where you can patch it? 08:01
lizmat: I remember it being subversion-controlled at some point, but it might have been migrated in the mean time
lizmat ok, will do
08:04 dakkar joined
moritz lizmat: feel free to CC me :-) 08:04
masak moritz: looking 08:07
08:07 SamuraiJack joined
masak moritz: re (1), a command sending confirmation is OK if you ask me. one bit (ACK/NAK). dunno if that changes things for you, though. 08:09
nwc10 are we sure that it's morning? Maybe it's still last night. It's the first time in a long time that nothing was committed while I slept. 08:10
moritz nwc10: sleep longer! :-) 08:11
lizmat nwc10: then go back to bed :-)
masak moritz: fwiw, I see your point. the summary seems to be that in this case, you want an updated view immediately after the success of the command.
nwc10: who asked you to get up? :P
moritz masak: correct, and that doesn't seem to mix well with CQRS + async
masak: or maybe with CQRS in general, dunno :-)
masak: but it's pretty common in interactive scenarios; people do stuff, and then want to verify the state afterwards 08:12
nwc10 masak: I actually got up because my daughter was (figuratively) bouncing around our bed and literally making a bit too much noice 08:13
noise
so "make breakfast" was a calmer plan
moritz "what shall we have for breakfast?" -- "pancakes!" 08:14
nwc10 also, my laptop battery seems to be unwell, so I wasn't in an easy position to check that nothing had changed before I got out of bed
masak :) 08:15
moritz: I need to ponder it a bit more, but the structure of what you're describing feels like one of those callback thingies -- where you have an asynchronous command come back with a successful outcome, which triggers the query. 08:16
moritz: sure, you *could* construct a command-query sequential hybrid... but that violates the stateless nature of the server, with probably ungood consequences. 08:17
08:17 FROGGS joined
moritz masak: that's one aspect; the other is that the client (who issues the command and waits for the response) also needs a timeout; so it must be more than a simple callback 08:17
FROGGS m: use 42 08:18
camelia rakudo-moar 0c42c1: OUTPUT«===SORRY!=== Error while compiling /tmp/3kza8jQCi1␤Undeclared routine:␤ use used at line 1␤␤»
FROGGS ahh
08:23 darutoko joined
lizmat m: sub use { say $^a }; use 42 08:23
camelia rakudo-moar 0c42c1: OUTPUT«42␤»
lizmat not sure whether that should work
moritz masak: there's also the option to give events sequence numbers, and ensure serial delivery; but that introduces other coupling, and makes scaling much harder 08:24
lizmat m: sub require { say $^a }; require 42 # huh?
camelia rakudo-moar 0c42c1: OUTPUT«Could not find file '42' for module 42␤ in any load_module at src/gen/m-ModuleLoader.nqp:183␤ in method load_module at src/gen/m-CORE.setting:21292␤ in block at /tmp/tOxpjq86VA:1␤␤»
moritz lizmat: it fits well with the "no keywords" policy
ah, and that's because require expects an expression, not a module name
masak moritz: yes, I wouldn't go down that path. 08:25
08:26 brrt joined 08:33 dayangkun left 08:40 kaleem_ joined 08:41 kaleem left 08:45 dayangkun joined 08:50 virtualsue joined 09:03 Vlavv left 09:06 kurahaupo_ joined 09:09 mr-foobar left, mr-foobar joined 09:13 lustlife1 joined 09:15 Vlavv joined, kurahaupo_ left 09:16 lustlife left 09:17 chenryn left 09:18 chenryn joined 09:22 spider-mario joined, chenryn left 09:23 brrt left 09:28 kurahaupo_ joined 09:31 thou joined 09:34 brrt joined 09:35 virtualsue left, thou left 09:41 chenryn joined 09:46 ggherdov left 09:51 ggherdov joined 09:52 clkaoud left 09:53 isacloud___ left 09:56 clkaoud joined 09:57 isacloud___ joined 10:06 Ven joined 10:14 Ven left 10:25 brrt left 10:32 colomon joined 10:52 fling left 10:57 lustlife1 left 11:10 molaf_ left 11:12 chenryn left 11:13 chenryn joined, milan joined 11:15 kivutar joined
milan test 11:17
11:17 chenryn left 11:19 thou joined
moritz all tests successful. 11:19
11:20 chenryn joined
milan tnx 11:20
trying xchat from server 11:21
11:23 thou left 11:36 colomon left
masak milan: first time visitor? return customer? either way, welcome ;) 11:43
11:46 milan left 11:51 raiph joined 12:04 dakkar left 12:06 kivutar left 12:07 kivutar joined 12:12 dakkar joined 12:28 anaeem1_ left 12:29 anaeem1 joined, thistuso- joined 12:31 iarna joined, thistusooa left 12:39 jnap joined 12:40 fling joined 12:42 chenryn left 12:43 kivutar left 12:44 anaeem1 left 12:45 anaeem1_ joined 12:46 kaare_ left, thistuso- left, thistuso- joined, thistuso- is now known as thistusooa 12:48 fling left, fling_ joined 12:51 rurban1 joined 13:01 SamuraiJack left 13:03 PotatoGim left 13:07 arnsholt_ is now known as arnsholt, thou joined
PerlJam guten Morgen meine Freunde 13:08
moritz Guten Nachmittag Herr PerlJam :-) 13:09
nwc10 Heretisch. Es ist immer Morgen in #perl6 :-) 13:11
13:11 thou left
PerlJam es ist immer Weihnachten in #perl6 :) 13:13
nwc10 leider noch nicht
PerlJam one of these days I'll learn more german than just a few phrases ;) 13:15
tadzik ich besischtige die sehenswuerdigkeiten!
woolfy Mein Datenfernübertragungsanlage funktioniert noch immer. 13:16
moritz Mein Luftkissenboot ist voller Aale! 13:18
woolfy Und ich bin zu alt für ein Sommerferienewigkeitsgefühl.
masak .oO( air kissing boat )
nwc10 gah, I can't rmemeber the correct plural
woolfy Moritz ist ein Irreaffentittenturbosuperdupertyp!
nwc10 Zwei Biers bitte, und mein Freund bezahlt
moritz nwc10: "Biere" 13:19
dalek kudo-star-daily: 96a286b | coke++ | log/ (14 files):
today (automated commit)
nwc10 danke
PerlJam woolfy: now you're just making stuff up ;)
moritz nwc10: "Zweimal Bier bitte", which sounds more idiomatic, and avoids the plural alltogether :-) 13:20
nwc10 oh yes. thanks. I get picked up on my default choice of phrase for "another beer"
woolfy PerlJam: right from the "making up German words book" von Ben Schott: "Schottenfreude" ( www.benschott.com/schottenfreude/ ), a necessity for all people that love Germany. 13:21
tadzik oh, I only knew Shadenfreunde
woolfy Schadenfreude
tadzik oh, maybe :)
psch "zwei Biere" sounds more like "two kinds of beer" than "two [servings] of beer" to me 13:22
""Kölsch und Pils sind zwei der beliebtesten Biere." vs "Zwei Bier, bitte."
also, merry christmas, #perl6 13:23
moritz psch: yes, you're right, and I'm outed as a non beer-drinker :0(
erm, that was supposed to be a :-) 13:24
woolfy Yegh. I would agree if you would have said "Kwak und Deus".
psch woolfy: i'm not big on beers; those are just two kinds i know exist :)
woolfy psch: merry christmas to you too
Ask jnthn, he is as big on beers as I am... :-) 13:25
PerlJam moritz: what's your drink of choice?
moritz PerlJam: usually Apfelschorle (apple juice mixed with water)
PerlJam moritz: if ever we meet IRL, I'll buy you an Apfelschorle :) 13:26
13:31 guru joined 13:32 guru is now known as ajr_
moritz :-) 13:33
13:36 kaleem_ left
masak tadzik: "Schadenfreund" -- a friend who does harm 13:36
:)
tadzik masak: I've heard it described as something like "being happy because someone else is hurt/harmed" 13:37
timotimo tadzik: no, that's "schadenfreude" 13:38
freude == happiness, freund == friend
PerlJam I liked shadenfreund (friend who shades?)
tadzik 1521 tadzik | oh, I only knew Shadenfreunde
so, I was right-ish :P
timotimo schattenfreund*
tadzik better than shattenfreund... 13:39
PerlJam heh
moritz schadenfreud!
(from Sigmund Freud)
masak haha
masak .oO( it was a Schadenfreudian slip of the tongue ) 13:43
13:46 rurban1 left, AndChat-188244 left 13:47 cognominal joined
moritz
.oO( mein Schattfreud hat Schadenfreude )
13:51
PerlJam It's a good thing the pun-engine isn't fully engaged or this could go on for a while. 13:53
13:53 kaare_ joined
moritz PerlJam: but your inner Schattfreud would *pun*ish you for that :-) 13:53
arnsholt It's a good thing jnthn isn't here, you mean =p 13:54
moritz *Schattenfreud
pmichaud good morning, #perl6 13:59
pmichaud backlogs 14:00
14:01 rindolf joined
rindolf Hi all. 14:01
14:03 thou joined 14:12 rurban1 joined, colomon joined 14:21 kaleem joined 14:22 iarna left 14:38 treehug88 joined
Woodi hallo today :) 14:38
hoelzro morning #perl6 14:39
Woodi moritz: but if client requests update and receive ACK then he can display same data he sended to update... 14:41
14:42 ggoebel1111115 joined
Woodi also: CQRS isn't advised for using for full domain, just some parts of it... 14:42
14:44 ggoebel1111114 left, chenryn joined
rurban1 masak: Hillarious tweet 14:45
moritz Woodi: that presumes the presence of an ACK/NACK, aye 14:48
14:49 treehug88 left 14:50 rindolf left 14:51 anaeem1_ left
pmichaud hotel expo sofia doesn't have any more discounted rooms, but the metropolitan has reasonable rates ($75 USD/ night), if I'm willing to walk a mile each day 14:51
well, two miles :) 14:52
Woodi btw. learnP6inY++
carlin but... now it takes longer to learn :p 14:55
14:55 iarna joined
nwc10 pmichaud: it's not Frankfurt, er Houston 14:59
15:01 treehug88 joined 15:06 iarna left 15:07 brrt joined 15:14 dayangkun left, rurban1 left 15:28 Mouq joined, rurban1 joined 15:35 treehug88 left 15:36 treehug88 joined 15:42 Mouq left 15:44 iarna joined 15:52 rom1504 joined
japhb jnthn: What's the current comparative status of r-m and r-j for async stuff? For example, does r-j have the async proc stuff, or just r-m? 15:57
hoelzro has anyone else but PerlJam taken a look at what remains to be done for S26? 15:58
I'm thinking of merging what I've got so far into nom, but I'm trying to decide what a good point in terms of support/code quality would be for that to happen 15:59
japhb hoelzro: Do you *know* what's left to be done, or are you asking if you missed anything? 16:00
hoelzro japhb: I have a long list of things I'd *like* to do
but it's really daunting, and I'd like to get the basics that I've got into nom so others can start playing with it
or using it for real code
if you're curious what's left: github.com/perl6/roast/blob/S26-WHY/S26-TODO.md 16:01
hmmm...that table I made doesn't render too nicely on GH
timotimo japhb: i think r-j doesn't have the async proc stuff yet - the jvm of course does, but it's not hooked up to rakudo 16:03
japhb hoelzro: OK, looked through the list, and I can see why it's daunting. 16:04
hoelzro yeah, I'm trying to be thorough =) 16:05
honestly, I'd like to take a break on it
but I don't want a stale branch to sit around
japhb Thorough is good! As long as perfect doesn't become the enemy of good
hoelzro indeed
I think wacky.t can wait
I'll have to look at it again
japhb Yeah, and I notice a lot of these are tests for cases you may or may not handle yet.
hoelzro especially with my limited experience with the compiler 16:07
although this project has taught me a *lot* about Rakudo
I've been pretty much everywhere under src/, it seems
japhb Here's my thoughts. I'd do the following in order of importantce, and merge before you completely burn out: 1. Anything that breaks existing spectests, 2. Anything that badly slows down parsing (like when we used to have to avoid non-latin unicode in the setting), 3) Get the spec up to at least the things you've *already* implemented and are pretty sure you won't change. After that, everything else seems like iterative improvements that can happen whenever. 16:08
I bet!
hoelzro alright, good advice 16:09
I don't think I break any existing tests
and my branch is about as fast as nom to compile (give or take a second or three) 16:10
japhb That sounds good on both counts
16:15 Mouq joined
Mouq We really need to make working with Cursors from Perl6land not awful. As in, maybe I'll get around to it at some point, but it would be pretty swell if someone else did it ;) 16:16
japhb
.oO( *50's dad voice* Well that'll be just SWELL, Timmy! )
16:20
Mouq Anyway, plagarizing FROGGS+++, I did this: github.com/Mouq/snake/commit/711be...9eab241162 16:22
16:22 brrt left
timotimo oh, cool 16:23
i like to see a bit of activity on Snake
Mouq I should probably give credit to him in the documents, esp for the Build script I basically stole wholesale, but he's been talking about a module for slangs, so hopefully much of what I took will disappear ;) 16:27
My hope is that this offers some light on what such a module would be 16:28
16:31 brrt joined
timotimo :) 16:32
16:34 [Sno] left 16:38 beastd joined 16:39 Mouq left 16:42 ren1us left 16:47 chenryn left 16:52 dmol left 17:14 kaiserpathos joined 17:15 brrt left 17:16 Rotwang joined 17:22 kaleem left 17:23 anaeem1 joined 17:25 Rotwang left 17:29 dmol joined
[Coke] host07 is complaining that its ubuntu is too old. 17:31
17:32 kaleem joined 17:34 ajr_ left
dalek rl6-roast-data: bce3be8 | coke++ | / (6 files):
today (automated commit)
17:37
17:38 Rotwang joined 17:39 dakkar left, raiph left 17:42 kaleem left 17:44 dmol left 17:45 denis_boyun_ joined
dalek ecs: 34a30e7 | (Elizabeth Mattijsen)++ | S (6 files):
Make sure we expand TABs to spaces
17:46
17:49 raiph joined 17:50 treehug88 left
pmichaud 14:59 <nwc10> pmichaud: it's not Frankfurt, er Houston 17:51
I suspect even Frankfurt isn't normally Frankfurt. :) But Houston is always Houston. :-/
Anyway, a 1mi walk is no big deal. I went ahead and booked a room (to make sure I have one), I'm still deciding whether to cross the pond though. 17:52
17:53 kaiserpathos left
jnthn pmichaud: 1mi? That's quite tolerable :) 17:53
17:54 fhelmberger joined
japhb jnthn: Depends on which city you're doing it in, and what the weather is like at the time. I found walking a mile or two in Austin to have wildly varying tolerability depending on conditions. :-) 17:54
jnthn Yes, I was working under the "in Sofia" context :)
japhb :-) 17:57
17:58 gfldex joined 18:00 rindolf joined
rindolf Hi all. 18:00
What's up?
pmichaud Yes, I walk at least a mile every day as it is. :) 18:03
I've convinced myself that the expense for Sofia isn't too great... now I just have to decide if I can dedicate the time :)
18:04 fhelmberger left
PerlJam pmichaud: what would you be doing if not at Sofia? 18:05
dalek ecs: 98a97ba | (Elizabeth Mattijsen)++ | S (3 files):
De-TAB
18:06
jnthn
.oO( missing jnthn talks! :P )
PerlJam pmichaud: btw, a guy on #perl was asking a regex question today where he wanted to match against "something/pmwiki.php" :) 18:07
docs/ops.markdown says nqp::fromstr_I(str $val, Mu:T $type) converts a string value to a Big Integer of the given type. What does that mean "of the given type"? 18:12
jnthn $type
Where $type is something that is a P6bigint or can box one
(The latter is true in Perl 6, where we have a P6opaque with a P6bigint inlined into its body, since you can potentially subclass or mix in to Int) 18:13
pmichaud PerlJam: (if not at Sofia) Probably resting and getting work done on the house
PerlJam: oh, and hopefully working on #p6 :)
and missing jnthn/lizmat/masak talks
PerlJam pmichaud: so .. you *wouldn't* be working on #p6 if you went? 18:14
pmichaud I'm continually surprised at pmwiki's reach. Anyone here know who Ward Christensen is?
He sent me money for PmWiki :)
(Ward Christensen of "XMODEM" fame.)
japhb Woah. 18:15
pmichaud PerlJam: well, during the 28+ hours of travel I might not be doing much work on anything... including #p6 :)
PerlJam pmichaud: so ... you'd be resting :) 18:16
pmichaud act.yapc.eu/ye2014/talk/5633 # one of the top reasons for making it to Sofia
PerlJam sounds like the only thing you lose out on is "getting work done on the house"
pmichaud PerlJam: well, and about $2.5K :) 18:17
nwc10 that's a lot of beer
pmichaud oh, I'm pretty sure Sofia includes beer, though
likely more than I'd get by staying home
nwc10 I've just realised that I have no idea about either Bulgarian beer or Texan beer 18:18
masak never too late to find out! 18:23
PerlJam jnthn: Am I misunderstanding something, or is this a bug? gist.github.com/perlpilot/8dcae28cfe73ea1778e3 18:24
masak: it's probably too late when you're dead ;>
18:24 kaleem joined
japhb
.oO( "Never a better time ... than RIGHT NOW." )
18:25
masak PerlJam: better try those beers now, then!
jnthn PerlJam: Try nqp::say(nqp::tostr_I($int))
18:26 kaleem left
PerlJam ah 18:26
that works as expected, thanks
18:26 kaleem joined 18:28 [Sno] joined 18:30 treehug88 joined, SamuraiJack joined
hoelzro let's say I have a few variants of a parametric role 18:35
role A[] { ... } role A[::T] { ... }
if each variant has their own leading comment, what should A.WHY be?
PerlJam hoelzro: whatever the spec says ;) 18:36
hoelzro that's the thing - it doesn't!
PerlJam does it mention multis in a similar regard? or silence on the matter there too? 18:37
hoelzro multis it does
each candidate has its own WHY
jnthn hoelzro: Yes, that problem is shared by our-scoped things declared in parametric roles too :)
hoelzro but you can "pre-declare" a multi via 'proto'
can one do the same with roles?
jnthn Which, of course, don't show up in A:: either :) 18:38
hoelzro jnthn: oh, so if I declare an our $something in one variant, it's accessible from the other?
jnthn hoelzro: No, more like this:
m: role A { our $x }; say $A::x
camelia rakudo-moar 0c42c1: OUTPUT«(Any)␤»
jnthn uh, bad example :)
m: role A { our $x }; say $A::.keys
camelia rakudo-moar 0c42c1: OUTPUT«===SORRY!=== Error while compiling /tmp/rxwMQSAVg_␤Variable '$A' is not declared␤at /tmp/rxwMQSAVg_:1␤------> role A { our $x }; say $A::.keys⏏<EOL>␤ expecting any of:␤ method arguments␤»
jnthn grr 18:39
m: role A { our $x }; say A::.keys
camelia rakudo-moar 0c42c1: OUTPUT«␤»
jnthn That's what I was after.
hoelzro ah ha
jnthn For roles, A doesn't refer to the role, but rather ti's a type object whose meta-object knows how to take arguments and pick an appropriate role from them.
hoelzro see, the current implementation applies the WHY to the ParametricRoleGroupHOW
18:40 fling_ left
jnthn That sounds odd to me. 18:40
hoelzro ok, this is why I ask =)
jnthn It might "make things work" but not in a very meaningful way.
hoelzro .oO( WHY I ask? )
jnthn Because it fails as soon as there's more than one parameterization.
hoelzro well, my current implementation would merge the variants' docs
jnthn If there's a way to do it, A.WHY would be better returning the .WHYs of all the things in the group. 18:41
hoelzro whoa
PerlJam hoelzro: +1 to what jnthn sais
er, said
hoelzro that's not a bad idea
I feel that protos could work the same way
jnthn And the .WHY on a particular ParametricRoleHOW gives the doc for that variant
hoelzro because I feel it's weird that if I built some sort of interactive help mechanism, and help(&infix:<+>) printed nothing =/ 18:42
jnthn And folks that really want to drill down that far just ask the MOP for what the role group has.
Yes, that sounds like just the same issue. Nice that it shows up in multiple places, since then the role case isn't special ;-)
masak "[Language design] requires a curious mixture of clear thinking, aesthetics and pragmatic judgement." -- blog.stephenwolfram.com/2014/08/com...thematics/ 18:43
hoelzro indeed
masak "And it involves always seeking the deepest possible understanding, and trying to do the broadest unification—to come up in the end with the cleanest and “most obvious” primitives to represent things."
jnthn (that is, I'm agreeing with you that it's the same thing with protos, and yes, .WHY on infix:<+> shoudl show the docs of the alternatives)
hoelzro jnthn: is there a way to "pre-declare" a role? I'm wondering what the right thing would be to apply a generic comment to the ParametricRoleGroupHOW
I can see wanting to do this with proto, so I'm thinking about the role analogue
jnthn hoelzro: Um...I dunno what role Foo { ... } does today
m: role Foo { ... } 18:44
camelia rakudo-moar 0c42c1: OUTPUT«Unhandled exception: Could not instantiate role 'Foo':␤Cannot invoke this object (REPR: P6opaque, cs = 0)␤ at src/gen/m-Metamodel.nqp:2028 (/home/p6eval/rakudo-inst-2/languages/nqp/lib/Perl6/Metamodel.moarvm:specialize:19)␤ from src/gen/m-Metamode…»
jnthn m: role Foo { ... }; 1
camelia ( no output )
jnthn Not much :)
18:44 rurban left
PerlJam Is .WHY always a string? 18:45
jnthn hoelzro: Anyway, not officially, but we can probably make the above thingy do it. Question then is if it's an error not to provide at lesat one role variant later.
hoelzro PerlJam: never, actually
it's always a Pod::Block::Declarator
at least on Rakudo
PerlJam oh, that's right. It's an object that stringifies.
PerlJam forgets so easily sometimes.
hoelzro the spec just says it should be an object with .leading, .trailing, and .WHEREFORE methods 18:46
PerlJam: I would probably have forgotten if I hadn't started dreaming about S26 =P
jnthn: I think that applying a WHY to the role group can wait to be specced
I just want to make what I merge into nom to make sense 18:47
I'll wait and see if others (esp. TimToady) have anything to add
PerlJam hoelzro: What happens to #|( fooey ) class A { ... }; then later #|( woot! ) class A { has $.stuff; method foo { } } ? 18:49
hoelzro isn't that a redefinition error?
oh, I guess not
because the first is just a forward decl
PerlJam seems to me like the .WHY should also keep track of the file and linenumber where it comes from. 18:51
hoelzro hmm 18:53
I don't know if that's spec'd, but it might already
it does not 18:54
PerlJam I doubt it. I found .WHY to only be specced, the first 90%
hoelzro yeah, the spec can be a bit ambiguous =/
which is WHY I'm here, bothering everyone with questions =)
jnthn hoelzro: (applying a WHY to the role group) agree 18:57
18:57 kaleem left 19:00 darutoko left
cognome r: enum < un >; say un 19:02
camelia rakudo-moar 0c42c1: OUTPUT«===SORRY!=== Error while compiling /tmp/tmpfile␤Undeclared routine:␤ un used at line 1. Did you mean 'uc', 'on'?␤␤» 19:03
..rakudo-parrot 0c42c1: OUTPUT«===SORRY!=== Error while compiling /tmp/tmpfile␤Undeclared routine:␤ un used at line 1. Did you mean 'uc'?␤␤»
..rakudo-jvm 0c42c1: OUTPUT«===SORRY!=== Error while compiling /tmp/tmpfile␤Undeclared routine:␤ un used at line 1. Did you mean 'on', 'uc'?␤␤»
jnthn cognome: anonymous enum doesn't install symbols
cognome r: enum E < un >; say un
camelia rakudo-{parrot,jvm,moar} 0c42c1: OUTPUT«un␤»
cognome jhntn so, what's their purpose? 19:04
jnthn cognome: They produce a hash
cognome so, declaring them in sink context should be an error? 19:05
PerlJam more like a warning to me. 19:06
jnthn Yeah, foo in sink context is mostly done as a warning
Or always, in fact
19:06 SamuraiJack left
FROGGS .tell Mouq nice! and yes, this makes the Slangish module easier design wise... 19:08
yoleaux FROGGS: I'll pass your message to Mouq.
19:14 cognominal left
masak m: enum :: <un>; say un 19:19
camelia rakudo-moar 0c42c1: OUTPUT«===SORRY!===␤MVMArray: Can't pop from an empty array␤»
masak submits rakudobug
the days of low-hanging bugs are not completely past ;) 19:20
m: enum :: <un> 19:22
camelia rakudo-moar 0c42c1: OUTPUT«===SORRY!===␤MVMArray: Can't pop from an empty array␤»
cognome wonders about the magic of enum parsing, were is the closing part for that : github.com/rakudo/rakudo/blob/nom/....nqp#L2716 ?
FROGGS cognome: a term 19:23
cognome I see an opening : <?[<(«]> but no closing
FROGGS is the opening, containing and closing part
jnthn That's just a lookahead; it doesn't swallow
FROGGS cognome: that is a look ahead
cognome ho. thanx
I missed the ?
jnthn np, but don't call me ho :P 19:24
19:24 pochi left
FROGGS bro' :P 19:24
cognome jnthn++ , that's a exclamation of surprise. :)
PerlJam cognome: Wouldn't an exclamation have an exclamation point? 19:25
diakopter giggles at "Can't pop from an empty array" (error inherited from Parrot)
cognome sometimes I go gung-ho with my French
jnthn diakopter: I...don't think trying to pop from an empty array makes sense here whatever backend we're on :)
diakopter I meant the error text 19:26
jnthn Ah :)
FROGGS diakopter: copy&paste ftw :o)
masak .oO( when you try to pop the abyss, the abyss pops you back )
diakopter Parrot had an exclamation point on it, though 19:27
.. speaking of exclamation points, as I continue reading the backscroll
FROGGS diakopter: you are going to read everything from feb until now? 19:28
19:28 guru joined, rurban joined
diakopter FROGGS: hm 19:28
19:28 guru is now known as Guest49730, Guest49730 is now known as ajr_ 19:30 pmurias joined 19:31 fhelmberger joined 19:36 pecastro left
lizmat moritz: mail sent 19:36
19:39 brrt joined, pecastro joined, pochi joined
lizmat it just occurred to me that for the case 19:39
for $fh.lines -> $line { } 19:40
we could very well use a type of reification that only keeps one line in memory at a time (aka, throw away the ones already seen)
masak yes.
lizmat this would be different of course for something like my @lines := $fh.lines; 19:41
masak something similar was discussed the other day, I think.
brrt ehm, hey, i've a question for language designers
masak but maybe you're alluding to that discussion?
lizmat nope
masak lizmat: ok, I'll try to find it for you.
lizmat not consciously
:-)
brrt what's the right thing with regards to the truth-valueness of floating points? especially NaNs? 19:42
masak lizmat: irclog.perlgeek.de/perl6/2014-08-09#i_9159362
lizmat r: say ?NaN
camelia rakudo-{parrot,jvm,moar} 0c42c1: OUTPUT«True␤»
PerlJam r: say ?Inf; # also this :) 19:43
camelia rakudo-{parrot,jvm,moar} 0c42c1: OUTPUT«True␤»
masak javascript> say !!NaN 19:44
false
timotimo m: say !NaN
camelia rakudo-moar 0c42c1: OUTPUT«False␤»
brrt yeah, i had expected as much from the current code
FROGGS I had also guessed that NaN is falsish
masak irb(main):002:0> !!(0.0/0.0)
=> true
lizmat I would think anything not 0 would be true
and NaN is not 0
FROGGS but .Bool should DWIM 19:45
brrt no, unless_n and if_n (and likely, istrue_n if it exists) both check for equality with 0.0
FROGGS and I is me
:D
brrt and indeed NaN is not equal to 0
masak I think I'm fine with ?NaN being True.
brrt: right. because NaN is not equal to *anything*.
m: say NaN == NaN 19:46
nwc10 NaN is not equal to NaN. Unless you're Intel's C compiler with default optimisation settings
camelia rakudo-moar 0c42c1: OUTPUT«False␤»
brrt in which case intels compiler is wrong 19:47
ok, so i'm good for implmenting it numeric booleanity as strict equivalence to 0.0? that's not going to surprise anyone?
nwc10 11912|Evidently it's important to you to get the wrong answer as quickly as possible. 19:48
masak brrt: you have my blessing ;)
PerlJam brrt: not me.
masak brrt: someone who cares about NaN should handle that themselves.
PerlJam brrt: assuming you meant "falseness as strict equivalence to 0"
brrt ehm... well. yes PerlJam, that is what i mean 19:49
masak brrt: and ?NaN being True follows the already established rule of "everything but zero boolifies to True"
brrt very well, i'll make it so
FROGGS nmake it so!
masak brrt: the only other option I can think of is NaN boolifying to Failure. but I think that's a bad idea.
PerlJam masak: why? 19:50
FROGGS well, NaN is some sort of small explosion
PerlJam
.oO( Failure is not an option? )
brrt ehm, at any rate, i don't think we should handle that at VM level
/if/ you want that
masak PerlJam: it's the typical thing that tends to end up in "Perl 6 puzzlers" books. 19:51
PerlJam: "prefix:<?> always results in True or False -- right? RIGHT? wrong."
PerlJam: and I can't see a use case for it, where it would make someone happer rather than breaking Least Surprise. 19:52
happier*
19:52 jnap left
brrt especially implementors, i might add 19:52
masak right. 19:53
19:53 rom1504 left
masak one more spectest brick in the wall. 19:53
s/one more/just another/
pmichaud I don't think that prefix:<?> should ever return a Failure, since Failures boolify 19:58
FROGGS everything boolifies 20:02
timotimo i'm going to start writing my weekly now; would people like to mention their recent stuff they did? :)
hoelzro boolify all the things!
timotimo i haven't heard of changes to the Pod SAX thing or the new Pod::To::HTML re-write 20:03
FROGGS it is just that Failure.Bool disarms the Failure and always returns False
20:04 ChoHag joined
ChoHag X::AdHoc.new(payload => "Cannot find method 'Any'") 20:05
brrt timo: i think you know all my stuff by now 20:06
masak ChoHag: well hello to you too ;)
ChoHag Hello.
That happened in one of the 10 runs. 20:07
hoelzro nothing new from me
ChoHag X::AdHoc.new(payload => "Could not find symbol '\&Return'") in another.
hoelzro timotimo: ^
jnthn ChoHag: Threads + MoarVM? 20:09
ChoHag Yes.
jnthn ChoHag: I don't suppose you've a short-ish snippet that reproduces it? 20:10
20:11 raiph left
ChoHag Funnily enough I just had the thought that the code might be small enough to be useful to look at and counted it. 20:11
984 lines.
jnthn Well, if it's something you're willing to share (with me, doesn't have to be public), I can try to reproduce it here and debug.
ChoHag It does seem to do with passing a block ref into a closure. 20:12
Something like if $.foo == { ... }, there's code which does: $x = $.foo; $.foo = sub { do_stuff(); $.foo = $x; } 20:13
And last time I had the same sort of blowup I was passing coderefs in a similarly stupid way.
TimToady well, hopefully not with ==
that's numeric
ChoHag No, not ==. That expression was supposed to just be setting the scene.
Imagine the curtains coming up to a $ with its foo being a modernised Coderef. 20:14
I think I'm down to mostly moar bugs rather than my own bugs, so now I can hopefully start reshaping to code into something vaguely coherent. 20:17
At which point it'll go onto github.
TimToady well, just remember that there are cultures where revealing vulnerability is perceived as weakness, and cultures where it's perceived as strength. We try to be the latter. :) 20:18
ChoHag It's not so much revealing vulnerability as my git-fu sucks. 20:19
TimToady allowing people to see that your git-fu sucks is revealing vulnerability :)
20:20 telex left
ChoHag I basically git add whenever I have code in a state I really don't want to lose as a sort of really lazy backup and commit an enormous patch all in one go. 20:20
Then move onto another project for a few months and start (sometimes start over) again.
TimToady the ability to show that your git-fu sucks reveals that you are secure in your identity apart from that :)
ChoHag One day I hope to finish something.
TimToady commit early, commit often, we say :) 20:21
one thing that helps finishing is when someone else starts helping
also helps catch design errors earlier
timotimo hoelzro: thank you 20:22
ChoHag All I'm really doing now is designing.
It's less coding and more doodling
20:22 telex joined
hoelzro timotimo: sure thing; I'll endeavor to do nothing this week as well ;) 20:22
jnthn git is probably the best version contorl system for making a mess in, in that it provides you the tools to massage mess into perfection :) 20:23
ChoHag But a very complicated doodle for which I have a vague plan I can't quite define to myself.
TimToady usually means you're trying to do too many things at once; sometimes adding constraints makes it easier
ChoHag My wife is an artist, so I tell her I am too but where she uses paint my medium is code.
Usually (thankyou Larry) perl. 20:24
timotimo hoelzro: noted!
ChoHag I think I sort of have a shape I can hang my ideas off of now though. Things have come together the past few days. 20:25
That's why I was able to compare the output from a few different runs.
TimToady well, speaking of constraints, I'd better go rest my eye for an hour or two... 20:26
nap &
ChoHag I'm actualyl quite keen to get this code out, it's just hard to get (and keep) my brain in the right place when I can only really code during a 45 minute packed commute at either end of the day. 20:27
This broken process sort of works for now. 20:28
That said, jnthn, if you want to try and decipher this mass of twisty little uncommented perl threads (all alike, naturally) you're welcome to a copy. 20:30
jnthn ChoHag: Sure, it's good to have something to go on, and I doubt I need to decipher it all to zone in on the bug, if I'm lucky. 20:35
brrt oh, i might have a suggestion for the create-runner-tool thingy 20:36
it would be /very/ convenient if you could pass the name of a debugger, for instance gdb, as an environment variable 20:37
20:42 kaare_ left 20:43 dmol joined 20:44 ajr_ left 20:51 denis_boyun___ joined
timotimo yes 20:51
20:51 fhelmberger left 20:52 cognominal joined, denis_boyun_ left 20:53 rindolf left 20:56 cognominal left
brrt yeah, so, we can do that, if you wish :-) 21:15
uhm, i'm going to sleep i think
21:16 brrt left, Rotwang left 21:18 rurban1 left 21:31 pmurias left 21:35 dmol left 21:42 gfldex left 21:44 iarna left
dalek ecs: 1345614 | (Elizabeth Mattijsen)++ | S03-operators.pod:
Add Set/Bag/Mix smartmatch candidates to table
21:48
kudo/nom: b87d6a5 | (Elizabeth Mattijsen)++ | src/Perl6/World.nqp:
Naively fix RT #122514
21:59
synopsebot Link: rt.perl.org/rt3//Public/Bug/Displa...?id=122514
22:00 ventica2 left, guru joined 22:01 guru is now known as Guest11185
dalek kudo/nom: 969e6c2 | (Elizabeth Mattijsen)++ | src/core/Any.pm:
Prevent using Bool:D as a Matcher for methods also
22:01
22:01 Guest11185 is now known as ajr_ 22:08 denis_boyun___ left
masak 'night, #perl6 22:12
22:12 ajr_ left
timotimo gnite masak! 22:15
dalek ast: ef7e125 | (Elizabeth Mattijsen)++ | S12-enums/misc.t:
Add tests for RT #122514
22:18
synopsebot Link: rt.perl.org/rt3//Public/Bug/Displa...?id=122514
22:20 spider-mario left 22:24 dayangkun joined 22:27 ventica joined 22:29 beastd left 22:31 Psyche^_ joined 22:35 Psyche^ left 22:39 cognome left 22:43 cognome joined 22:46 daxim_ left, ren1us joined
ren1us okay, i haven't tried fighting with panda in ages. when it's complaining about a dependency not being precompiled, even when i've even gone so far as to install that dependency separately, what's the proper thing to do? 22:48
ventica you cannot defeat the kung fu panda... he is the Dragon Warrior... 22:52
tadzik ren1us: what are you trying to install? 22:54
ren1us Compress::Zlib (and then Compress::Snappy when that didn't work), both of which are complaining about NativeCall (which installs without any errors) 22:55
22:55 cognome left 22:57 cognome joined
tadzik interesting 22:58
22:58 daxim_ joined
tadzik ren1us: which backend is that? 22:58
ren1us moarvm
tadzik it works for me without a problem
well, Snappy doesn't but for different reasons
I assume everything is fresh and updated? 22:59
22:59 lue left
ren1us panda, yes. moar i updated about a week and a half ago 22:59
so if it's outdated it's not by much
tadzik yeah, mine must be similarly new
very strange. Could you maybe try exporting RAKUDO_MODULE_DEBUG=1 and see if that yields some interesting results?
I think that's the right name for it 23:00
I gotta go get some sleep soon, but I can look at the issue tomorrow
sjn hey, it's pmichaud++ day soon :) 23:04
yoleaux 6 Aug 2014 05:43Z <vendethiel> sjn: well, it actually needs rebasing
23:05 _sri left 23:08 _sri joined 23:09 davido___ left, anaeem1 left 23:10 davido___ joined, anaeem1 joined
ren1us .tell tadzik gist.github.com/ren1us/01d724255dd57bbaab31 # panda issues 23:11
yoleaux ren1us: I'll pass your message to tadzik.
23:16 raiph joined 23:18 treehug88 left 23:19 _sri left 23:20 Bucciarati left, Bucciarati joined 23:21 _sri joined
carlin ren1us: are you sure you have an updated panda? that error happens on older panda where it compiles the modules to Foo.moarvm and not Foo.pm.moarvm 23:29
"older" meaning more than 10 days old 23:30
ren1us i did $ rakudobrew build-panda about 45 minutes ago
so i think it's probably fine
23:43 d4l3k_ joined, dalek left 23:44 d4l3k_ is now known as dalek 23:47 psch left 23:48 psch joined
timotimo .o( i wonder if perl6 ought to get a "no autovivification" pragma for performance reasons; it seems like perl5 has one to prevent something like %foo<bar><baz><quux>:exists from creating the hashes in foo<bar> and foo<bar><baz> when checking for quux (and all of its ancestors) to exist ) 23:58