»ö« 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 moritz on 3 May 2013. |
|||
woolfy | o/ | 00:00 | |
colomon | \o | 00:01 | |
woolfy | I LOVE YOU ALL WITH A GREAT HUGH LOVE! | 00:04 | |
You are all awesome. You did prove that at YAPC::NA. | |||
colomon hopes that was meant to be HUGE. ;) | 00:05 | ||
woolfy++ | |||
woolfy | Nono, hug love. Let's be politically incorrect here. :-) | 00:06 | |
colomon | oh, I'm good with hugs. | ||
00:06
census left
|
|||
woolfy | Yeaaahhh | 00:06 | |
colomon | I was just worried about this mysterious Hugh guy. | ||
labster | woolfy is awesome too | ||
00:07
rurban left
|
|||
labster | .oO ( Hugh was my dormmate at YAPC ) | 00:07 | |
woolfy | /sHUGH/PUPPY/ | 00:09 | |
BRRRR | |||
s/HUGH/PUPPY/ | |||
dalek | ast: 5f67245 | (Elizabeth Mattijsen)++ | S32-hash/exists-adverb.t: Added tests for {}:exists:(kv|p), fudged for []:exists:(kv|p) |
00:11 | |
colomon | rn: say (set <a b c>).grep(/b|c/) | 00:18 | |
camelia | rakudo b2072f, niecza v24-70-g6314dd4: OUTPUT«b c» | ||
lizmat | resetting bio clock by going to bed real early& | 00:27 | |
colomon | good luck! safe home! | 00:30 | |
dalek | ecs: 448160b | labster++ | S32-setting-library/IO.pod: document IO copy, rmdir, and unlink |
00:35 | |
ecs: 6772d8c | labster++ | S02-bits.pod: Merge branch 'master' of github.com:perl6/specs |
|||
labster | Though I wrote that, I'm starting to wonder if functions like dir(), unlink(), etc should actually throw their errors, or just fail instead. | 00:37 | |
00:37
mrallen1 joined
|
|||
labster | And let sink context cause it to throw in most cases. | 00:38 | |
flussence | fail makes more sense IMO; if you write something like @tmpfiles».unlink you wouldn't particularly care if one's gone missing in the meantime. | 00:40 | |
timotimo_ | (also it wouldn't give you a way to figure out which ones were unlinked and which weren't up until the failure | 00:41 | |
flussence | that's what .map is for :) | ||
timotimo_ | sink-failing makes more sense imo | 00:42 | |
labster | those are good cases | 00:46 | |
00:46
aindilis left
|
|||
labster | so I'll probably go ahead and change it | 00:46 | |
Though it's hard to write. "if it fails, it returns an X::IO::Unlink failure" sounds circular. | 00:47 | ||
flussence | "the failure will be of type X::IO::Unlink"? | 00:48 | |
timotimo_ | its inner exception will | 00:49 | |
eternaleye | timotimo_: "If it fails, it will return an X::IO::Unlink exception in an unthrown state" ? | 00:53 | |
flussence | .oO( maybe we need a trait_mod:<throws>(::T) ) |
00:55 | |
s/throws/fails/ | |||
eternaleye | flussence: Except it doesn't throw, it boxes up an exception in such a way that handling it carelessly makes it throw. | ||
heh, timing! | 00:56 | ||
.oO( Now I have a mental image of an X::Claymore error, with the string "This end to debugger" ) |
|||
sorear | colomon: it's .tell and .ask | 01:00 | |
diakopter: how are you doing? | |||
flussence | would be nice if it could be written something like «sub unlink(--> Mu|X::IO::Unlink)», but we're getting into Maybe monad territory now... | ||
colomon | sorear: yeah, I figured out what I was doing wrong about five lines later. | 01:01 | |
sorear | I'm surprised by the lack of a reply to 17:59 < sorear> diakopter: I thought "I'm following jnthn's plan fairly closely" would be a good enough answer | ||
01:01
cosimo left
|
|||
dalek | ast: e4136e9 | (Solomon Foster)++ | S02-types/set.t: Try to bring Set tests closer to current spec. |
01:02 | |
01:03
cosimo joined
01:07
rurban joined
01:11
rurban left
01:49
raiph joined
|
|||
dalek | ast: ae81359 | (Solomon Foster)++ | S03-operators/set.t: Fix tests to conform to current spec (I think). |
01:54 | |
02:08
rurban joined
02:12
rurban left
02:19
RedditAnalytics joined
|
|||
lue | flussence: S02/Built-In Data Types/Polymorphic Types (conjectural) [ we're already in that territory :) ] | 02:39 | |
02:43
sftp left
02:48
sftp joined
02:52
atroxaper joined
|
|||
dalek | ecs: fce3dd9 | (Brent Laabs)++ | S32-setting-library/IO.pod: change dir, copy, rmdir, unlink to soft fail rather than throw |
03:02 | |
03:05
preflex left,
preflex_ joined,
ChanServ sets mode: +v preflex_
03:06
preflex_ is now known as preflex
|
|||
dalek | ast: b04d766 | (Solomon Foster)++ | S02-types/ (2 files): Try to bring KeySet and Bag tests up to spec. |
03:08 | |
03:08
rurban joined
|
|||
dalek | ecza: db4190b | (Solomon Foster)++ | lib/CORE.setting: Lots of updates to Set, KeySet, Bag, and KeyBag. Coercion operators added, simpler .new (as per spec), and corresponding operators tweaked. This set of chances is not yet complete, there will be more soon. |
03:11 | |
03:13
rurban left
03:18
Guest1337 left
03:21
sftp left
03:22
sftp joined
03:25
Lorn joined
03:38
mrallen1 left
03:40
mrallen1 joined
04:09
rurban joined
04:13
rurban left
04:27
Psyche^ joined
04:30
Patterner left,
Psyche^ is now known as Patterner
04:47
birdwindupbird joined
04:49
mrallen1 left
04:51
raiph left
05:02
Tsuki-san joined
|
|||
Tsuki-san | Hello | 05:03 | |
05:04
Tsuki-san left
05:09
rurban joined
05:13
rurban left
05:23
raiph joined
05:36
shachaf left
05:37
prevost left
05:46
gdey joined
05:49
dmol joined
05:50
SamuraiJack joined
05:57
gdey left
05:59
PacoAir joined
06:07
dmol left,
PacoAir left
06:09
dmol joined
06:10
rurban joined,
berekuk left
06:11
dmol left
06:14
rurban left
06:18
preflex left
06:20
preflex joined,
ChanServ sets mode: +v preflex
|
|||
diakopter | sorear: :) thanks for asking; I'm doing okay; we just got home; I have a mild cold; $work tomorrow | 06:22 | |
sorear: how are you? | |||
sorear | same, pretty much, including the cold. :/ | 06:27 | |
I'm just glad I'm not dealing with what Liz & Wendy are :| | 06:28 | ||
anyway I want to make sure your question is answered | 06:29 | ||
diakopter | yes; it's ok | ||
06:29
kaleem joined
06:31
Tsuki-san joined,
Tsuki-san left
|
|||
sorear | good | 06:31 | |
06:36
xinming_ joined
06:39
FROGGS joined,
xinming left
|
|||
dalek | : f632d9d | (Tobias Leich)++ | / (2 files): allow var in indirect object context after new/print/say |
06:43 | |
: 473e26a | (Tobias Leich)++ | t/test_summary: do multithreaded tests |
|||
sorear is considering hilarious edge cases: "hmm, with shift/reset it's possible to wind up with the same frame on the stack multiple times." | |||
06:59
brrt joined
|
|||
sorear | nqp: (-> { say(2) })() | 07:01 | |
camelia | nqp: OUTPUT«2» | ||
diakopter | nqp: ({ say(2) })() | ||
camelia | nqp: OUTPUT«2» | ||
moritz | sorear: for you it's a hilarious edge case; for masak it's a bugreport waiting to be written :-) | 07:03 | |
FROGGS | nqp: (-> $x, { say($x) })( 42 ) | 07:04 | |
yoleaux | 8 Jun 2013 21:46Z <eternaleye> FROGGS: Sorry for taking so long, but futures and promises can be thought of as 'handles' to asynchronous computation. In C++, for instance, a future is a container-ish-thing, which you get the value from like joining a thread, and the default implementation is done with a thread pool. | ||
camelia | nqp: OUTPUT«42» | ||
yoleaux | 8 Jun 2013 21:46Z <eternaleye> FROGGS: Examples: www.justsoftwaresolutions.co.uk/thr...mises.html | ||
8 Jun 2013 21:46Z <eternaleye> FROGGS: rough p6ification: Future[Int] answer = async do_foo(); other_stuff(); say answer.get() # Returns Int | |||
8 Jun 2013 21:46Z <eternaleye> FROGGS: I read this as "async do_foo will give me an Int in the Future. In the meantime, I'll do other_stuff, then wait until I get the answer" | |||
8 Jun 2013 21:47Z <eternaleye> FROGGS: Actually, a parameterized Future role as the return value of async might work pretty well. | |||
FROGGS | uhh, I haz mail | ||
07:05
Tsuki-san joined
|
|||
FROGGS | .tell eternaleye Future[Int] is a type, for me a proper p6ification would be a trait | 07:05 | |
yoleaux | FROGGS: I'll pass your message to eternaleye. | ||
sorear | yeah | 07:07 | |
masak will love playing with shift/reset. | |||
07:10
rurban joined
|
|||
sorear | .tell jnthn where I stand so far: gist.github.com/sorear/5747025 | 07:10 | |
yoleaux | sorear: I'll pass your message to jnthn. | ||
sorear | (that's a draft design document) | 07:11 | |
07:13
Tsuki-san left
|
|||
sorear | there's nothing in there about the low-level details, because the low-level details are mostly worked out | 07:14 | |
diakopter | :) | ||
sorear | there is some stuff there which might want to become permanently part of the docs | ||
07:15
rurban left
|
|||
diakopter | sorear: for re-enterable frames, will each routine's entry point check for re-enter mode by a parameter? or is there a special version of each re-enterable routine so the check isn't necessary | 07:19 | |
07:20
raiph left
|
|||
sorear | diakopter: check by parameter | 07:21 | |
diakopter | sorear: what are better names for the unfortunate 3 names? :) | 07:23 | |
(srsly) | |||
sorear | "unfortunate" mostly applies to "shift" | 07:24 | |
which is the last thing you should call a control-flow operator in Perl, but the name is standard and used in real-ish languages like Racket | 07:25 | ||
diakopter | heh. :) | ||
sorear | we can probably get away with "reset"; the perl 5 function of the same name is mercifully almost forgotten | 07:26 | |
trivia: in an earlier draft of that document I had shift and reset swapped everywhere. that's how mnemonic the standard names are. | |||
diakopter | might as well randomly generate names for these.. they'd be just as memorable/meaningful | ||
07:27
ponbiki joined
|
|||
diakopter | nqp::BNCOWKEJT nqp::ZXMNCBVWETUBV and nqp::WEUBVKUXCTWEYXZZA | 07:27 | |
:D | |||
sorear | I'd rather randomly pick from the ten hundred most often used words in English | 07:28 | |
diakopter | seriously though, I'm trying to piece together how these would be implemented in moar.. | ||
sorear | reset drops a cookie on the stack. shift memcpys off all the stack up to the cookie. | 07:29 | |
diakopter | what if a closure is generated "deep" then its stack is swapped out, then the closure is executed and it tries to bind stuff "upvalues" | ||
07:29
FROGGS left
|
|||
diakopter | *to | 07:30 | |
sorear | we don't touch the actual callframe objects | 07:31 | |
we just rearrange the pointers to them on the VM stack | |||
the closure holds direct refereces to the frames with upvalues, so it doesn't even see the pointer shuffling | |||
diakopter | one suggestion: s/cont/dc/ in the opnames | 07:32 | |
nwc10 | but implicit to all this working is that callframes are (heap) allocated, and not stored directly on the stack? | ||
diakopter | the Java stack, yes. also, yes, the moar stack too | ||
nwc10 | that seems to be an unstated assumption | 07:33 | |
diakopter | for lexicals anyway | ||
sorear | nwc10: the parts of callframes that need to be referenced by closures, yes | ||
if nothing gets closed over on a given callframe then it can probably be put on the VM stack | 07:34 | ||
diakopter | locals can be frozen/sublimated O_O | ||
sorear does his best ambivalent larry impersonation | |||
nwc10 | sorear: yes, I was just thinking this. More (and this is an optimisation, and right now it's premature) | ||
diakopter | sorear: it's working :P | ||
nwc10 | the GC has forwarding pointers - right? So, store the things on the stack initially. But if a closure is taken, move them off the stack into allocated structures, and have the things on the stack turn into forwarding pointers | 07:35 | |
but, I repeat, this is a conjectural optimisation | |||
sorear | diakopter: you think s/cont/dc/ would be an improvement? I started with dc but thought "nah, nobody will guess what dc stands for" | ||
nwc10 | Or they'll all object, because the prefer Tesla to Edison? :-) | 07:36 | |
diakopter | cont is too ambiguous, but dc is cryptic/distinct enough that it names a new thing, imho | ||
sorear | nwc10: I'm skeptical. We know at compile time whether a given sub has children that *could* close over it, and my intuition says that if the user bothered to write a nested function, it will almost certainly get used | ||
nwc10 | sorear: OK. | 07:37 | |
diakopter | nwc10: JVM GC? no.. but Moar GC.. sort of, but not like that | ||
sorear | diakopter: (cont/dc) hmm. I think I see where you're going here. | 07:38 | |
diakopter | delcon :D | ||
dlmtdcntntn | |||
sorear | that can be jnthn's next branch name | 07:39 | |
diakopter | nwc10: I suspect it wouldn't be an optimization to use the cpu stack for such things in moar, unless it's *heavily* optimized, native types only, ultra simple control flow, easily-jitted code | 07:40 | |
however, I could be *totally* wrong there, given actual experimentation instead of just thought | 07:41 | ||
sorear | using "the cpu stack" for much of anything in a continuation/coroutine/green thread oriented VM is not going to work very well | 07:42 | |
for a variety of issues, including: | |||
* poor LLVM support for GC mark data for the CPU stack | |||
* poor Windows kernel support for stack switching | |||
nwc10 | yes, also like Perl 5, moar is "stackless" isn't it? In that language level subroutine calls don't recurse at the C level? | ||
sorear | * gymnastics required for sigaltstacking | 07:43 | |
diakopter | nwc10: yes | ||
nwc10 | yes. OK. So the language-level "stack" involved is going to be a MoarVM managed thing anyway | ||
sorear | etc | ||
nwc10 shuts up and goes back to the Perl 5 code mines :-) | |||
diakopter | nwc10: wait :) | ||
nwc10 | wait? | ||
I've still got the window open | |||
07:43
sqirrel joined
|
|||
diakopter | heh, one sec, a further question | 07:44 | |
re: stackless... | |||
sorear | standard-ish practice (used by GHC, for instance) is to set aside a block of memory and treat it like a CPU stack, but explicitly and not using %rsp | ||
GHC-generated code is stackless on the C-stack. when compiling using LLVM, every call is a tail call | |||
nwc10 | sorear: yes, I was wondering *that*. Perl 5 does something like that | ||
sorear | GHC uses StackTop, StackEnd, HeapTop, HeapEnd registers, which leaves x86 quite cramped :) | 07:45 | |
diakopter | nwc10: I was planning to use B::Hooks::XSUB::CallAsOp to "invoke" p5 code from xsubs on moar's p5 thread, to keep recursively-cross-VM callbacks stackless on both sides... sound sane? | ||
sorear | perl 6 probably does not need to optimize memory allocation to *quite* that extent | ||
nwc10 | in which case, it's a trade off about stuffing call frames on that versus explict allocation. And I'll totally agree that the right thing to do *now* is roughly "simplest thing that could possibly work", and worry about optimisations once we have real-world data | ||
I don't know what B::HOoks::XSUB::CallAsOp does | 07:46 | ||
diakopter | nwc10: also, rafl volunteered to make that module re-entrant (it's not at the moment) | ||
basically makes an optree node for an xsub invocation | 07:47 | ||
07:47
FROGGS joined
|
|||
diakopter | [and what the xsub invokes] | 07:47 | |
sorear | o/ sqirrel, FROGGS | ||
nwc10 | diakopter: I can't find any terse explanation for what that code does | 07:48 | |
07:48
Tsuki-san joined
07:49
raiph joined
|
|||
nwc10 | but if I'm guessing right, it seems like it's a way to go | 07:49 | |
diakopter | it creates a temporary trampoline in the current spot of the p5 op tree that can hold your current xsub invocation | ||
07:49
Tsuki-san left
|
|||
nwc10 | and then returns from the XSUB back out to the runloop? | 07:49 | |
diakopter | yes | ||
nwc10 | and at the end of the invoked OP (or OPs), re-enters XS and the XS can exit like nothing special happened? | ||
diakopter | yes | ||
but currently it supports only 1 descent per thread | 07:50 | ||
nwc10 | approach seems sane. It's what I thought about a few nights ago | ||
I don't want to comment on the implementation :-) | |||
diakopter | :D | ||
07:51
wbill left
|
|||
sqirrel | o/ sorear | 07:51 | |
diakopter | can't do anything about recursive cross-VM calls that already create their own nested runloops | ||
that's their own problem ;) | 07:52 | ||
FROGGS | hi sorear | ||
diakopter | sorear: implementing your spec in moar would be .. straightforward enough.... however, I think jnthn may grouse about it obviating a lot of optimization potential | 07:53 | |
unless it's blocked more strongly from non-compiler access | |||
sorear | diakopter: it's totally reasonable to restrict portions of it per HLL, or even implement something different | 07:54 | |
this spec looks the way it does because 1. it's a well studied API 2. it's a close match to the actual functionality of the JVM stack freezer/thawer | 07:55 | ||
nwc10 wonders when jnthn will wake up | |||
sorear | 2 does not apply to moarvm | ||
diakopter | true, I forgot your nqp::xxxx don't actually need to be nqp::xxxx in moar... just moar opcodes | 07:56 | |
sorear | it would be entirely reasonable for moarvm to implement, say, a "green threads" abstraction instead | ||
gather/take can be implemented on top of green threads as well as it can on delimited continuations | 07:57 | ||
not all nqp:: ops are available on all backends | |||
the ops I'm designing should be interpreted as "JVM only" until such time as some other backend wants to support them | 07:58 | ||
diakopter | sorear: I have a sneaking suspicion that 1 coordinated extra thread/eventloop per gather descent would be more efficient than the jvmstack/callstack swapping... but I'll wait until you're done to even try to attempt an alternative implementation ;) | 07:59 | |
sorear | diakopter: I look forward to the comparative benchmarks. | 08:00 | |
08:00
brrt left
|
|||
diakopter | the rationale of this truly gut-level suspicion is my sky-high levels of trust/awe in the JVM concurrency efficiency | 08:01 | |
oracle jvm, anyway | |||
openjdk, no clue | |||
I have no idea how much of that work is open-sourced to the openjdk | |||
08:02
berekuk joined
|
|||
diakopter | nwc10: sorry I went dark during yapc... I was .. busy. | 08:03 | |
sorear | dark? didn't I see you like, constantly? | 08:04 | |
diakopter | dark to irc/nwc20 | ||
nws10 | |||
cwc10 | 08:05 | ||
argh. | |||
nwc10 | |||
08:05
daxim joined
|
|||
sorear | generally managing to be in three places at once, doing an awesome job of keeping the entire conference running | 08:05 | |
08:05
Tene left
|
|||
diakopter | meh, actually I abandoned the rest of the team most of the time and just did my own thing; I wasn't really keeping the entire conference running at all... just the banquet/gamenight, really | 08:07 | |
and the evening dinners with P6 folk & others | |||
sorear | weren't you managing the talk streaming too? | 08:08 | |
diakopter | I set it up [with plenty of help from others] Monday morning, but left it to Todd & co. the rest of the time; there was no shortage of things for them to do after Monday morning; I don't want to trivialize their efforts in the least; I just needed to hand it off | 08:09 | |
dalek | ast: 31080f6 | dagurval++ | S11-modules/ (2 files): Added test for RT 118407 |
08:10 | |
08:11
rurban joined
|
|||
diakopter | sorear: ping | 08:13 | |
sorear | pong | ||
diakopter | why is continvoke necessary? (couldn't it just use the invokehandler repr op of the $cont object?) | 08:15 | |
08:15
rurban left
|
|||
sorear | mostly because there is no invokehandler repr op | 08:15 | |
JNQP cannot invoke anything unless it either is or contains a CodeRef | 08:16 | ||
or references | |||
it would be possible to make the continuations directly executable, but it would be rather involved | |||
see: | 08:17 | ||
irclog.perlgeek.de/perl6/2013-06-09#i_7175787 | |||
diakopter | so.. | ||
these 3 ops wouldn't necessarily ever be manually typed... just compiler generated? | 08:18 | ||
sorear: oh... yes. | |||
sorear | I was planning to manually use them in GatherIter.pm, inside an #?if JVM block | ||
diakopter | that's what I meant.. the invokespec thing in jnqp | ||
it's a little different in moar still | 08:19 | ||
moritz | .oO( still moar different ) |
||
08:19
dakkar joined
|
|||
sorear is now into the actual coding phase :D | 08:21 | ||
nwc10 | IRC is awkward during conferences | 08:22 | |
as is trying to enjoy the conference if also trying to (help) run the conference | |||
08:24
Tene joined
08:25
djanatyn joined
|
|||
tadzik | mixing those two is hard enough without IRC | 08:30 | |
yoleaux | 9 Jun 2013 23:54Z <colomon> tadzik: I hacked around the error so I could get the rest of the smoke test run in. There is something interesting going on here... Several tests are reaching the "tests failing" stage even though their prereqs are failing *their* tests. DateTime::Utils is an example. | ||
9 Jun 2013 23:54Z <colomon> tadzik: When I try to install using panda they detect the problem and fail in the prereq stage as expected. | |||
tadzik | oh | 08:31 | |
oddness | |||
colomon: I'll try DT::Utils later today | 08:32 | ||
sorear | o/ tadzik | ||
tadzik | hey hey | 08:34 | |
sorear | .ask jnthn Does JNQP have a line length policy? | ||
yoleaux | sorear: I'll pass your message to jnthn. | ||
dalek | p: 97a0ee6 | sorear++ | src/vm/jvm/runtime/org/perl6/nqp/runtime/ (2 files): JNQP continuations 1/N: SaveStackException and ResumeStatus as interpreted by the current design |
08:45 | |
sorear | sleep& | ||
FROGGS | sleep well sorear | 08:47 | |
08:47
berekuk_ joined
08:48
berekuk left
08:51
berekuk_ left
|
|||
mathw | morning | 08:52 | |
08:52
berekuk joined
|
|||
mathw | This I just saw, that's going to be hard to beat today: "C++ is for software development, not writing web applications" | 08:52 | |
flussence | .oO( C++ is for buffer overflows, not SQL injection! ) |
08:55 | |
masak .oO( I'm a doctor, not a software engineer! ) | 08:57 | ||
good antenoon, #perl6. | |||
FROGGS | hey hey mathw | 09:00 | |
hi masak | |||
Pompel | masak \o/ | 09:01 | |
moritz | 'o' | 09:02 | |
masak | »ö« | ||
moritz | masak: this is a friendly reminder that there are still p6cc reviews ahead of you | 09:03 | |
mathw | hi folks | 09:04 | |
lizmat | morning #perl6 from a still dark Houston | 09:07 | |
FROGGS | lizmat o/ | 09:09 | |
09:09
atroxaper left
09:11
rurban joined
09:12
thou left
09:15
rurban left
|
|||
mathw | bright but not sunny here | 09:17 | |
colder than I expected | |||
encouraged me to cycle quickly :) | |||
nwc10 | the strange warm thing in the sky has got scared and is hiding again | 09:20 | |
as if it hasn't rained enough recently | |||
moritz | well, at least Saturday was very nice here; has a barbecue on the terrace and stayed out until 11pm | 09:22 | |
masak | moritz: yes, p6cc reviews sound like a nice priority this week. | ||
moritz: thanks for the reminder :) | |||
09:22
kresike joined
|
|||
kresike | hello all you happy perl6 people | 09:22 | |
masak | kresike! \o/ | 09:23 | |
kresike | masak, o/ | ||
moritz | masak: you're welcome | ||
mathw | Yesterday was lovely here, I roved around Derbyshire for a while enjoying the landscape of the High Peak and eating ice cream. | 09:26 | |
lizmat is jealous | 09:27 | ||
nwc10 | masak: you saw this? irclog.perlgeek.de/perl6/2013-06-10#i_7176792 | ||
09:28
fhelmberger joined
|
|||
masak | nwc10: no; I haven't backlogged yet. | 09:30 | |
nwc10: but a cursory scan does not reveal a rakudobug. only talk about one. | |||
nwc10 | Oh, I just meant that *line* :-) | 09:31 | |
masak | ah. heh. :) | 09:32 | |
nwc10 | I think that sorear intends to deny you your fun. Or a least, pre-empt it | ||
masak | oh, don't worry there won't be any edge cases. :P | 09:33 | |
if you *design* to take the edge cases into consideration, all you're really doing is create more complicated edge cases somewhere else. :) | |||
it's masak's waterbed theory of edge cases :P | |||
09:34
flaviusb joined
|
|||
lizmat resists the urge to jump on the waterbed | 09:38 | ||
09:39
flaviusb left
|
|||
moritz | .oO( lizmat's theory of waterbed tsunami ) |
09:39 | |
lizmat | I've had good results in the far past by making sure edge cases actually are next to the waterbed already, where they don't matter | 09:40 | |
e.g. building a dungeon game, the outer wall problem: I just made sure there where all rooms around the edge that you could never get into | 09:41 | ||
masak | ooh | ||
moritz | have a row of land mine on the inner side of the outer walls :-) | 09:42 | |
moritz has been reading Hunger Games | 09:43 | ||
09:43
jerome__ joined
|
|||
lizmat still has to wait 2+ hours for breakfast :-( | 09:44 | ||
Pompel is hungry too. | |||
Pompel doesn't know why Pompel has the Pompel nick instead of frettled, but will rectify that soon enough! | 09:45 | ||
09:45
Pompel is now known as frettled
|
|||
masak | frettled! \o/ | 09:48 | |
dalek | p/debug-vars: 706ee90 | (Donald Hunter)++ | src/vm/jvm/runtime/org/perl6/nqp/jast2bc/JASTToJVMBytecode.java: Refactor arg and variable handling for local variable annotations |
09:52 | |
09:54
flaviusb joined
09:59
cognominal left
10:02
daxim left
|
|||
dalek | p: 706ee90 | (Donald Hunter)++ | src/vm/jvm/runtime/org/perl6/nqp/jast2bc/JASTToJVMBytecode.java: Refactor arg and variable handling for local variable annotations |
10:04 | |
p: 35d62ba | (Donald Hunter)++ | src/vm/jvm/runtime/org/perl6/nqp/jast2bc/JASTToJVMBytecode.java: Merge branch 'debug-vars' |
|||
10:05
arlinius left
10:12
rurban joined,
tgt joined
10:15
rindolf joined
10:16
rurban left
10:24
cognominal joined
10:27
flaviusb left,
telex left
10:28
telex joined
10:30
cognominal left
10:31
raiph left,
cognominal joined
10:35
telex left
10:36
telex joined
10:42
census joined
10:49
daxim joined
11:07
atroxaper joined
11:12
rurban joined
11:17
skids left,
rurban left
11:30
arlinius joined
11:36
rindolf left
11:47
skids joined
11:54
gudahtt joined
12:13
rurban joined
12:14
ldthien0 joined,
kaleem left,
kaleem joined
12:16
preflex_ joined,
ChanServ sets mode: +v preflex_,
preflex left
12:17
preflex_ is now known as preflex,
rurban left
12:19
preflex left
12:21
preflex joined,
ChanServ sets mode: +v preflex
12:25
crab2313 joined,
_jaldhar left,
FROGGS left
12:31
preflex left,
JimmyZ joined
12:34
skids left
|
|||
nwc10 | JimmyZ: \o/ | 12:37 | |
12:40
FROGGS joined
12:42
preflex joined,
ChanServ sets mode: +v preflex
12:45
crab2313 left
|
|||
dalek | kudo/nom: dfe2b43 | (Elizabeth Mattijsen)++ | src/core/Any.pm: Some shifting in candidate order to make searching easier |
12:48 | |
kudo/nom: 39e5fdf | (Elizabeth Mattijsen)++ | src/core/Any.pm: Make sure that [*]:(kv|p|k) pass on their values |
|||
lizmat | how can a candidate such as "multi method postcircumfix:<{ }>(:$kv!) { self.kv }" be invoked? | 12:49 | |
isn't that covered by "multi method postcircumfix:<{ }>(\SELF: Whatever, :$kv!) is rw {" ? | 12:50 | ||
12:51
tgt left
|
|||
JimmyZ | nwc10: hello | 12:52 | |
jnthn | %h{}:kv | 12:54 | |
yoleaux | 07:10Z <sorear> jnthn: where I stand so far: gist.github.com/sorear/5747025 | ||
08:34Z <sorear> jnthn: Does JNQP have a line length policy? | |||
lizmat | hmmm,,, then there are no tests for that | ||
jnthn | it's the zen slajs | ||
um | |||
slice | |||
lizmat | so how is that different from %h{*} ? | 12:55 | |
nwc10 | nothing vs everything? | ||
jnthn | I think it's the same | ||
lizmat | not as far as the candidates are currently implemented | ||
jnthn | r: my %h = a => 1, b => 2; say %h{*} | ||
camelia | rakudo b2072f: OUTPUT«1 2» | ||
jnthn | r: my %h = a => 1, b => 2; say %h{} | ||
camelia | rakudo b2072f: OUTPUT«("a" => 1, "b" => 2).hash» | 12:56 | |
jnthn | oh. :) | ||
lizmat | indeed | ||
jnthn | Well, wonder if that's to spec... :) | ||
lizmat | that candidate just says { self } | ||
jnthn | That may be correct | ||
[Coke] | (RT) looks like it's an rt bug, robrt is pinging the RT folks. | ||
lizmat looks up specs about the zen slice | 12:57 | ||
13:01
mrallen1 joined,
cognominal left
13:02
cognominal joined
13:03
shinobicl joined
13:06
mrallen1 left
13:10
PacoAir joined
13:12
ajr joined,
ajr is now known as Guest27637
13:13
atroxaper left
13:14
Guest27637 is now known as ajr_
|
|||
[Coke] | rakudo: sub foo(--> NoSuchType) { say "OH HAI" } # RT 77270 | 13:14 | |
13:14
ajr_ left
|
|||
camelia | rakudo b2072f: OUTPUT«===SORRY!===Type 'NoSuchType' is not declaredat /tmp/uAYz4pTVgd:1------> sub foo(--> NoSuchType⏏) { say "OH HAI" } # RT 77270» | 13:14 | |
lizmat | rn: my %h=a=>1,b=>2; say %h{}; say %h{*} # shouldn't they be the same? | 13:15 | |
camelia | rakudo b2072f: OUTPUT«("a" => 1, "b" => 2).hash1 2» | ||
..niecza v24-71-gdb4190b: OUTPUT«{"a" => 1, "b" => 2}1 2» | |||
13:15
konundra joined,
ajr_ joined
|
|||
[Coke] | Any lurkers looking to help out, going through tests marked testneeded and extracting the perl6 needed to make a test is verrrry helpful and folks will be happy to help you get your patch in shape. | 13:16 | |
13:16
ajr_ left
|
|||
[Coke] | rakudo: ~[]<c> | 13:17 | |
camelia | rakudo b2072f: OUTPUT«postcircumfix:<{ }> not defined for type Array in method Str at src/gen/CORE.setting:10160 in method Str at src/gen/CORE.setting:876 in method Stringy at src/gen/CORE.setting:885 in sub prefix:<~> at src/gen/CORE.setting:1272 in sub prefix:<~> at src/gen/… | ||
[Coke] | rakudo: ~5<c> | ||
camelia | rakudo b2072f: OUTPUT«postcircumfix:<{ }> not defined for type Int in method Str at src/gen/CORE.setting:10160 in method Str at src/gen/CORE.setting:876 in method Stringy at src/gen/CORE.setting:885 in sub prefix:<~> at src/gen/CORE.setting:1272 in sub prefix:<~> at src/gen/CO… | ||
[Coke] | rakudo: ~5{'c'} | ||
camelia | rakudo b2072f: OUTPUT«postcircumfix:<{ }> not defined for type Int in method Str at src/gen/CORE.setting:10160 in method Str at src/gen/CORE.setting:876 in method Stringy at src/gen/CORE.setting:885 in sub prefix:<~> at src/gen/CORE.setting:1272 in sub prefix:<~> at src/gen/CO… | ||
13:17
ajr_ joined
|
|||
[Coke] | r: say "{297+364+1-88} RTs" | 13:20 | |
camelia | rakudo b2072f: OUTPUT«574 RTs» | ||
13:20
shinobicl left
|
|||
lizmat | rn: my %h=a=>1,b=>2; say %h{}:delete; say %h # shouldn't :delete work on %h{} as well? If %h{}:x is the same as %h{*}:x ? | 13:21 | |
camelia | niecza v24-71-gdb4190b: OUTPUT«{"a" => 1, "b" => 2}{"a" => 1, "b" => 2}» | ||
..rakudo b2072f: OUTPUT«("a" => 1, "b" => 2).hash("a" => 1, "b" => 2).hash» | |||
13:29
ldthien0 left
13:30
sqirrel left
13:35
rindolf joined
13:37
Stygia joined
|
|||
lizmat | labster: I'm seeing a lot of set/bag related tests fail, is that expected? | 13:41 | |
moritz | lizmat: colomon updated lots of those tests | 13:42 | |
13:43
btyler joined
13:45
benabik left
13:46
rurban joined
13:48
espadrine left
|
|||
masak | lizmat: I think %h{}:delete should zen-delete all the keys, yes. | 13:49 | |
moritz | I don't think so | ||
if you build up a list of keys to delete | 13:50 | ||
and it's empty | |||
you usually want to delete no keys, not all | |||
masak | zen slices are syntactical. | ||
moritz | they are? | ||
what do they desugar to? | |||
masak | zen slice != empty slice because a list evaluated to empty | ||
I can prove this. | |||
r: my @a = 1, 2, 3; say @a[]; my @empty; say @a[@empty] | |||
camelia | rakudo b2072f: OUTPUT«1 2 3» | 13:51 | |
masak | moritz: what do they desugar to? "take all the elements", I guess. | ||
but that feels kinda beside the point. | |||
moritz | r: sub f(|a) { a.perl }; say f(); say f(my @ = ()) | ||
camelia | rakudo b2072f: OUTPUT«Capture.new( list => ().list, hash => EnumMap.new())Capture.new( list => ().list, hash => EnumMap.new())» | ||
jnthn | :() is different to :(Positional) | 13:52 | |
masak | they're syntactical, is the point. | ||
jnthn | Not syntactical really | ||
moritz | then I retract my objection | 13:53 | |
jnthn | I mean, %h{} boils down to %h.postcircumfix:<{ }>(), whereas %h{@empty_thing} is %h.postcircumfix:<{ }>(@empty_thing) | 13:55 | |
13:55
RedditAnalytics left
|
|||
masak | jnthn: oh, ok. | 13:56 | |
jnthn | Which is distinguished by the multi-dispatch. | 13:57 | |
masak | jnthn: yes, that's not syntactical exactly. it's kind of a wrong-but-still-accurate way to explain it ;) | ||
jnthn | wrong but accurate?! :P | ||
masak | yes -- weird combination, huh? :) | ||
13:58
rurban left
|
|||
masak | "you're right, but for the wrong reasons!" | 13:58 | |
jnthn | .oO( your mom is <wrong but accurate statement here> ) :P |
||
masak | jnthn: ...this is supposed to be the family-friendly channel... :) | ||
jnthn | .oO( your mom is family friendly ) |
13:59 | |
nwc10 | :-) | ||
13:59
brrt joined
|
|||
JimmyZ | ;) | 13:59 | |
masak | :) | ||
lizmat | labster: I meant colomon :-) | 14:00 | |
14:01
skids joined
|
|||
colomon | I tried to pre-fudge many of the set test changes for Rakudo, but I may have missed some. | 14:02 | |
dalek | kudo/nom: d14d6f9 | (Elizabeth Mattijsen)++ | src/core/Any.pm: Simplify {*}:(kv|p|k|v) to self.(kv|pairs|keys|values) as the value specified doesn't really matter in this case, and it is the same as the zen-slice logic. |
||
lizmat is preparing to go off to the airport | 14:03 | ||
will give a go at fudging them there | |||
unless someone beats me to it | |||
14:04
gdey joined
|
|||
lizmat | travelling& | 14:05 | |
14:05
lizmat left
14:06
woolfy left,
kaare_ joined
14:08
xilo left
14:11
rurban joined
14:13
bluescreen10 joined
14:14
toebu joined
14:16
cognominal left
14:17
cognominal joined
|
|||
diakopter | yoleaux: www.sportsfirings.com/?p=10106 | 14:18 | |
.help | 14:19 | ||
yoleaux | diakopter: I'm yoleaux. Type .commands to see what I can do, or see dpk.io/yoleaux for a quick guide. | ||
diakopter | .title www.sportsfirings.com/?p=10106 | 14:20 | |
yoleaux | Random notes on YAPC 2013. « Whipped Cream Difficulties | ||
diakopter | .title www.sportsfirings.com/?p=10111 | 14:21 | |
yoleaux | No Sleep Till Sunday. « Whipped Cream Difficulties | ||
14:21
kaleem left
|
|||
diakopter | two neat posts on yapc austin | 14:21 | |
masak | who's the author? I don't see a name on those pages. | 14:22 | |
diakopter | "stainles" ? | 14:23 | |
[Coke] | masak: www.sportsfirings.com/?page_id=314 | ||
diakopter | Dwight Brown, maybe | ||
masak | ok. | 14:24 | |
no worries; just curious. | |||
diakopter | .title plus.google.com/107131450772859671581/about | 14:25 | |
yoleaux | Dwight Brown - About - Google+ | ||
14:26
gdey left
14:28
rurban left
|
|||
masak | popular vote: "intricacies" -- stressed on the first syllable, or the second? | 14:28 | |
14:28
xilo joined
14:29
konundra left
|
|||
moritz | second! | 14:29 | |
[Coke] | I just said it out loud a dozen times, sounded like equal stress. | 14:30 | |
colomon | I'm thinking first -- at least, if I exaggerate the stress, doing on the second sounds bizarre to my ear. But yeah, pretty close to equal as I say it normally. | 14:31 | |
geekosaur | slight stress on the first syllable | 14:33 | |
kresike | bye folks | 14:36 | |
14:36
kresike left
|
|||
jnthn votes first | 14:36 | ||
masak .oO( this vote result contained more intricacies than I expected... ) | |||
diakopter | first | 14:37 | |
(2nd stress: 4th syllable) | |||
[Coke] votes often | |||
geekosaur | nb. I would *not* be surprised if Commonwealth English differs from American here; somehow, stress on the second syllable "feels" British to me | ||
timotimo_ does the 2nd, but is not native | |||
brrt votes 2nd, 1st doesn't sound 'natural', not native | 14:38 | ||
14:38
BenGoldberg joined
|
|||
[Coke] | tl;dr - say it however you like. at worst, people will think you have an adorable accent. | 14:38 | |
masak | wow, people really are divided on it. | ||
while we're on the topic: "gist" -- soft g or hard g? :) | 14:39 | ||
masak votes hard g | |||
jnthn | hard, same as git :) | ||
masak | I'm talking exclusively about the pastebin-y thing, if that helps. | ||
timotimo_ | i say "djist" | ||
masak | that would be a soft g. | 14:40 | |
diakopter | it's soft... | ||
geekosaur | I pronounce with soft g because that's how the English word is pronounced | ||
brrt | hard g | ||
brrt is unsure what english-people mean by 'hard g' | |||
diakopter | that | ||
btyler | soft, same reason as geekosaur | ||
brrt | and 'soft g | ||
' | |||
geekosaur | also, fwiw, the Mac dictionary agrees with me that American English stresses the first syllable of "intricacies" | ||
diakopter | brrt: "get" | 14:41 | |
(hard) | |||
brrt | ok | ||
diakopter | soft: giraffe | ||
geekosaur | but again I will repeat that Commonwealth English is likely to differ | ||
brrt | i see | ||
in dutch a 'hard' g is really a hard one | |||
like in 'scheveningen' (the first one) | |||
diakopter | gist is... soft always | 14:42 | |
I was surprised to hear someone say ghist | |||
at yapc austin | |||
brrt | hmm | ||
maybe soft gist is acceptable as well | |||
masak | diakopter: that was me, in the car to the airport ;) | ||
jnthn | diakopter: I say it just the same way as masak, fwiw :) | 14:43 | |
[Coke] | I pronounce gist.github.com with a hard g, but "the gist of it" with a soft g. | ||
brrt | the github site threw me off | ||
colomon | gist is a word, pronounced with a soft g, right? like jist | ||
masak | diakopter: I guess it really depends if you came at the word thinking "oh, it's that word from English", or thinking "oh, it's a derivation of 'git'" | ||
brrt | natural 'british' would be soft | ||
jnthn | Right, I would use a soft g for the English word "gist" | ||
geekosaur thinks that gist.github is a pun that only works in print | |||
diakopter | [Coke]: but gist.github.com is.... the direct meaning of the english "gist" | ||
I didn't think it was a pun | 14:44 | ||
masak | diakopter: how can you be sure? | ||
jnthn | Oh, I saw it as a cute pun :) | ||
geekosaur | sure it is, it's mixing gist with gi(s)t | ||
[Coke] | diakopter: I'm not trying to rationalize anything, just telling you what my brain is doing. | ||
brrt | in the context of Git it is natural to say gist with a hard G | ||
geekosaur | but the differing pronunciations throw it off in speech; it only works in writing | ||
diakopter | well, I should note that I've heard people pronounce the non-github gist with a hard g, too | 14:45 | |
same person who insists that the phrase is "get your goat", fwiw | |||
colomon | diakopter: yeah, me too. | ||
[Coke] | diakopter: get your goat as opposed to? | 14:46 | |
geekosaur | gist is soft g, per dictionary and derivation (Latin via French, original 'jacere') | ||
(or 'iacere' if you go with classical Latin...( | 14:47 | ||
masak | diakopter: as opposed to "jet your goat"? :P | ||
diakopter | masak: you're a joat | ||
geekosaur | :p | ||
colomon | diakopter: idioms.thefreedictionary.com/goat | 14:48 | |
diakopter | sigh. it's goad | ||
colomon | diakopter: based on what? | ||
diakopter | the meaning of the word | ||
colomon | diakopter: that's a very dangerous thing to rely on in English | 14:49 | |
[Coke] | I have never ever ever heard "get your goad" | ||
geekosaur | diakopter, if yiu go by meaning, it would be "be a goad" not "get your goad" | ||
diakopter | it's in literature | ||
[Coke] | ... until a few lines ago, of course. :) | ||
colomon | diakopter: so is get your goat | ||
diakopter | it is? | 14:50 | |
14:50
konundra joined
|
|||
colomon | www.phrases.org.uk/meanings/get-your-goat.html | 14:51 | |
diakopter | augh | 14:52 | |
masak | at this point, we might as well discuss the way people abuse the phrase "begging the question", as well. | ||
[Coke] | ok, those people are all horribly wrong, I think we can agree on that. :) | ||
14:53
gdey joined
|
|||
masak | [Coke]: you can't just *assume* that. that would be... oh wait :P | 14:53 | |
(that would be a correct use of "begging the question", I guess) | 14:54 | ||
dalek | : 8e4bf11 | (Tobias Leich)++ | t/test_summary: print header in shell |
14:55 | |
: ee7bafe | (Tobias Leich)++ | / (2 files): show todo and skip |
|||
: b29be1c | (Tobias Leich)++ | / (2 files): run tests threaded and colorize output |
|||
: aff0b4f | (Tobias Leich)++ | t/test_summary: typo |
14:56 | ||
colomon | lizmat: ping? | 14:58 | |
dalek | ast: a969a24 | (Solomon Foster)++ | S02-types/bag.t: Refudge for Rakudo. |
15:00 | |
jnthn | decommute & | 15:06 | |
dalek | ast: a476b3f | (Solomon Foster)++ | S02-types/keyset.t: Refudge for Rakudo. |
||
15:08
gdey left
15:10
raiph joined,
birdwindupbird left
|
|||
brrt | " Building such a virtual machine is a mammoth task typically reserved for software companies like Oracle and Microsoft and VMware" as by wired | 15:11 | |
lol | |||
and a bit of anger, too | |||
a virtual machine is something that is bizarrely easy to mess up | |||
not per se a mammoth task | |||
its like people saying the JVM is awesome because G1 (the garbage collector) has a gazillion LOC | 15:12 | ||
diakopter | it can be a mammoth task | ||
moritz | aye | ||
brrt | no, its a task that is more difficult than your typical CRUD and thus leaves more people afraid of it | 15:13 | |
it need not be a mammoth task | |||
a startup-sized team of capable people can build one | |||
diakopter | it doesn't saying "building a VM" | ||
brrt | exhibit a: MoarVM | ||
diakopter | it says "building such a VM" | 15:14 | |
brrt | well, context here is a VM for PHP | ||
colomon | anything can be a mammoth task if you put your mind to making it big. | ||
PerlPilot | colomon++ | ||
yoleaux | 17 May 2013 01:39Z <[Coke]> PerlPilot: can you get Grammar-Profiler-Simple passing its tests so we can cut a star release? | ||
brrt | true | ||
moritz | according to www.ohloh.net/p/parrot the effort for parrot was 76 years, and it still leaves a lot to whish | ||
15:14
PerlPilot is now known as PerlJam
|
|||
brrt | thats the part where i said 'there are many things you can do wrong | 15:14 | |
' | |||
which you can | |||
15:14
bluescreen10 left
15:15
thou joined
|
|||
brrt | but to be fair, parrot isn't much worse than, say, CPython | 15:15 | |
15:15
btyler left
15:17
atroxaper joined
15:19
btyler joined
|
|||
dalek | ast: 5a13078 | (Solomon Foster)++ | S02-types/set.t: Refudge for Rakudo. |
15:24 | |
15:24
kaleem joined
|
|||
diakopter | brrt: that's a good article on Wired, imho | 15:27 | |
[Coke] | PerlJam: that was an old message, I think. | ||
brrt: url? | 15:28 | ||
brrt | coming on | 15:30 | |
www.wired.com/wiredenterprise/2013/...-saga/all/ | |||
have fun | |||
brrt off | |||
(it is good and interesting, but it is a bit annoying to see people stating that some projects are 'superhuman'. that is glorifying some developers and demotivating many others) | 15:31 | ||
raiph | Chip++ www.reddit.com/r/perl/comments/1g1p...nd_concat/ | ||
brrt | (garbage colelectors, compilers, virtual machines are all sensitive to that) | ||
brrt really off now | 15:32 | ||
15:32
brrt left
|
|||
diakopter | .tell brrt frankly, I think those project types are actually superhuman, at least in the attention to detail and skill and training required, if not actual code size | 15:35 | |
yoleaux | diakopter: I'll pass your message to brrt. | ||
diakopter | .. just like chip design and operating systems and other machines | 15:36 | |
I mean, to be anti-elitist (otherwise) is to claim that all developers are equally good and qualified to do every project..? or are there superhuman projects... just not virtual machines? | 15:39 | ||
moritz wastes quite some time on wrestling with the DOM in JS | 15:41 | ||
15:41
kaleem left
|
|||
diakopter | raiph: does dots.pm make $foo->() into $foo.() ? | 15:44 | |
[Coke] | moritz: are you using a tool like jQuery to simplify the wrestling? | 15:45 | |
moritz | [Coke]: yes | ||
[Coke]: it still drives me nuts; not properly knowing JS doesn't help :( | 15:46 | ||
for example in my naivety I assumed that for (i in ['a', 'b', 'c']) { console.log(i) } would log a\nb\nc\n | 15:47 | ||
over the weekend I've patched the IRC logs to load the summary information with ajax once summary mode is enabled | 15:49 | ||
(mostly to make it more cache friendly) | |||
15:49
zby_home_ joined
|
|||
moritz | so that involves making an ajax call, constructing some table cells, inserting a row into a table, and pre-checking some check boxes | 15:50 | |
not too complicated? no, but it still took me several hours :/ | |||
and all in all it didn't even become a large patch: github.com/moritz/ilbot/commit/172...0dac229d13 | 15:51 | ||
raiph | diakopter: I haven't read the patch but Chip wrote "As discussed at YAPC, this patch adds the pragma "use dots" allowing users to | 15:54 | |
write . instead of -> in all places." | |||
15:55
JimmyZ left
|
|||
raiph | and 14 upvotes and zero downvotes on /r/perl in first hour is good to see | 15:56 | |
moritz | maybe I should hang out in #jquery and see what the FAQs are :-) | ||
15:59
FROGGS left
|
|||
pmichaud | good morning, #perl6 | 16:02 | |
16:03
konundra left
16:08
robinsmidsrod joined
16:10
SamuraiJack left,
ajr_ left
|
|||
PerlJam | raiph: I could've sworn that someone else had already written code and submitted a patch to p5p for just that. | 16:11 | |
16:11
ajr joined
|
|||
timotimo_ | moritz: how do you feel about adding a small image to the header of the irc log index to give a context of how the x axis is scaled? | 16:11 | |
16:12
ajr is now known as Guest96031
|
|||
timotimo_ | maybe a picture at the very top that displays year-broad stripes of grey shades with the year number in small letters inside if they are big enough or something like that | 16:12 | |
how much data is in the activity graphs btw? | |||
16:15
zby_home_ left
|
|||
timotimo_ afk's | 16:16 | ||
jnthn home | 16:23 | ||
morning, pmichaud | |||
16:25
rurban joined
16:28
Chillance joined,
broquain1 is now known as broquaint
16:29
Guest96031 left
16:39
jeffreykegler joined
16:41
FROGGS joined
|
|||
jnthn | .tell sorear the proposal looks good. Concern is mostly naming of the nqp:: ops. Unfortuantely, a name with "cont" puns badly with ops like nqp::iscont (which refers to containers). | 16:42 | |
yoleaux | jnthn: I'll pass your message to sorear. | ||
diakopter | jnthn: did you see our discussion of that? | 16:43 | |
jnthn | .tell sorear given these ops are probably only used in a handful of places, we could just spell out "continuation" in the name; it's huffmanly OK to do that. | ||
yoleaux | jnthn: I'll pass your message to sorear. | ||
16:44
aindilis joined
|
|||
timotimo_ | .o(look at him, he's so huffmanly!) | 16:44 | |
FROGGS | .o(look at him, he's so huffmanly OK!) | 16:45 | |
jnthn | diakopter: Yes. On the invocation stuff, it'd still be possible to set up a code object that, when invokes, does the nqp::invokecontinuation op on the appropriate thing. | ||
diakopter | yeah | ||
jnthn | diakopter: Though on Moar it's easy enough to set up custom invocation handlers already... | ||
diakopter | I meant the naming though | 16:46 | |
jnthn | Invoke is really st->invoke | ||
16:46
jeffreykegler left
|
|||
FROGGS | who/what is preflex? | 16:46 | |
diakopter | www.haskell.org/haskellwiki/IRC_channel#preflex | 16:47 | |
preflex: list | 16:48 | ||
preflex | Botsnack: [botsnack]; Cdecl: [cdecl]; 8ball: [8ball]; excuses: [excuse]; Factoid: [+, -, ., ?, delete, get, store]; Help: [help, list]; Karma: [++, --, karma, karmabot, karmatop]; Nickometer: [nickometer]; Nickr: [nickr]; PlokiRE: [re]; Seen: [seen]; Sixst: [6st]; Tell: [ask, clear-messages, messages, tell]; Rot13: [rot13]; Quote: [be, quote, remember]; WCalc: [calc, wcalc]; Version: [version]; | ||
XSeen: [xseen]; ZCode: [zdec, zenc] | |||
jnthn | diakopter: On naming, I think using the full word "continuation" gives enough context to use the "standard" names for the things. | ||
FROGGS | karma jnthn | ||
diakopter | preflex: karma jnthn | ||
preflex | jnthn: 3753 | ||
FROGGS | preflx: karma jnthn | ||
jnthn | diakopter: If we pick non-standard names then the ops will just mean nothing to those who do already grok delimited continuations as well as those who don't. :) | ||
FROGGS | k | ||
awesome! | |||
jnthn | preflex: karma jonathan | 16:49 | |
preflex | jonathan: 2125 | ||
FROGGS | diakopter: thanks | ||
jnthn | Hah! I'm beating him! | ||
FROGGS | *g* | ||
preflex: karma FROGGS | |||
preflex | FROGGS: 87 | ||
FROGGS | ewww | ||
diakopter | jonathan: no, he's beating you! | ||
[Coke] | preflex: karma Coke | ||
preflex | Coke: 2249 | ||
[Coke] | preflex: karma [Coke] | ||
preflex | [Coke]: 191 | ||
diakopter | preflex: karma au | ||
preflex | au: 63 | ||
diakopter | preflex: karma audreyt | ||
preflex | audreyt: 47 | ||
diakopter | preflex: karma TimToady | ||
preflex | TimToady: 360 | ||
diakopter | preflex: karma lwall | 16:50 | |
preflex: karma larry | |||
preflex: quote TimToady | |||
preflex doesn't like me anymore | 16:51 | ||
preflex | lwall: 415 | 16:52 | |
larry: 57 | |||
no quotes found for TimToady | |||
cognominal | Perl 6 Ints have been created to support jnthn karma because there will be a day when he will not fit in a 32 bit register. :) | ||
diakopter | preflex: karma (Tobias Leich) | ||
preflex | (Tobias Leich) has no karma | ||
tadzik | hello #perl6 | 16:53 | |
cognominal | s/he/it/ | ||
diakopter | preflex: karma Tobias Leich | ||
preflex | Tobias Leich: 82 | ||
16:54
raiph left
16:55
Stygia left,
raiph joined
|
|||
colomon | member:preflex: karma Solomon Foster | 16:56 | |
preflex: karma Solomon Foster | |||
preflex | Solomon Foster: 369 | ||
16:58
atroxaper left
17:01
cognominal left
17:02
cognominal joined
17:07
dakkar left
17:09
Guest1337 joined
|
|||
rjbs | jnthn++ | 17:13 | |
diakopter++ | 17:14 | ||
diakopter | ? :) | 17:20 | |
17:22
dmol joined
|
|||
diakopter | rjbs: I thought your reply to dots.pm was good. It seems like the sort of pragma for newly written code, not existing code you would want to translate to that style. | 17:22 | |
rjbs | diakopter: I appreciated your poise in your moar talk. | 17:23 | |
I think that "cui bono?" is the big question for dots.pm for me. | |||
I'm not sure it's good for new users or hurried experts. | |||
but the discussion only just kicked off, plenty of time to be convinced | 17:24 | ||
diakopter | $foo.() is definitely p6-y, but it doesn't fit with the overall "industry standard" rationale | 17:25 | |
17:25
nyuszika7h left
17:26
konundra joined,
nyuszika7h joined,
btyler left
17:28
zby_home_ joined
17:33
daxim left
|
|||
rjbs | nwc10 remarked that 'industry standard' is a bit of a confusing term here, as -> is standard for deref, but . for methods | 17:34 | |
and what p5 does is kind of a mess to begin with, semantically there :) | |||
17:34
FOAD left
17:35
ponbiki_ joined
17:36
sivoais_ joined,
Ulti_ joined,
zby_home__ joined,
avarab joined,
avarab left,
avarab joined,
rhr_ joined
17:37
btyler joined
17:38
FOAD joined
17:39
preflex_ joined,
ChanServ sets mode: +v preflex_
17:40
robins joined
17:41
jfried_ joined
17:42
zby_home_ left,
cognominal left,
robinsmidsrod left,
preflex left,
ponbiki left,
Lorn left,
sivoais left,
avar left,
kbenson left,
Ulti left,
jfried left,
yeltzooo left,
rhr left,
avuserow1 left,
risou_awy left,
Rix left,
jfried_ is now known as jfried,
preflex_ is now known as preflex
|
|||
dalek | rl6-roast-data: 62e6c92 | coke++ | / (4 files): today (automated commit) |
17:43 | |
rl6-roast-data: 4a9576d | coke++ | / (4 files): today (automated commit) |
|||
17:43
yeltzooo joined
|
|||
[Coke] | colomon: niecza went from 14 failures to 73. | 17:43 | |
colomon | huh | ||
[Coke] | er, 16 -> 73 | 17:44 | |
colomon | oh, well... that still sucks | ||
[Coke] | roast is at 5a13078, niecza was at db4190b | ||
github.com/coke/perl6-roast-data/b....out#L5845 | 17:45 | ||
colomon | maybe should have spectested before going to bed | ||
[Coke] | S03-operators/bag.t aborted 50 test(s) | ||
colomon | of course, the one file I didn't test last night. | 17:46 | |
well, I'll have it fixed sometime here. | |||
[Coke] | :) | ||
hokay. Thanks! | 17:47 | ||
colomon | but probably not in the next 90 minutes. | ||
17:48
Rix joined
|
|||
[Coke] | you have about 22 hours! ;) | 17:49 | |
17:54
spider-mario joined
17:56
konundra left
18:02
btyler left
18:04
robins is now known as robinsmidsrod,
eric256 joined
|
|||
BenGoldberg | r: my @a := 1..Inf; my @b = @a; @a.perl.say; | 18:05 | |
camelia | rakudo b2072f: OUTPUT«1..Inf» | ||
BenGoldberg | r: my @a := 1..Inf; my @b = @a; @b.perl.say; | ||
camelia | rakudo b2072f: OUTPUT«(timeout)» | ||
BenGoldberg is confused. | 18:07 | ||
timotimo_ | = is eager assignment | ||
er, waiy, what? | 18:08 | ||
18:08
eric256 left
|
|||
BenGoldberg | The = makes a copy, right? | 18:08 | |
18:09
Stygia joined
18:13
rurban left,
btyler joined,
konundra joined
18:19
benabik joined
|
|||
jnthn | Well, more precisely it places the range into the unreified portion of @b | 18:20 | |
18:24
rhr_ left,
rhr joined,
lue left
18:25
kaleem joined,
lue joined
|
|||
dalek | : 17d54c6 | (Tobias Leich)++ | t/test_summary: removed , strip non-utf8 |
18:27 | |
: ebb8cf6 | (Tobias Leich)++ | / (2 files): added fresh_perl_is |
|||
18:32
BenGoldberg left
18:35
Lorn joined
18:36
Lorn left,
Lorn joined
18:37
fhelmberger left
18:39
BenGoldberg joined
18:41
broquaint is now known as Snowclone
|
|||
pmichaud | 18:05 <BenGoldberg> r: my @a := 1..Inf; my @b = @a; @b.perl.say; | 18:47 | |
more precisely, @b.perl is probably infinite right now. | |||
r: my @a := 1..Inf; my @b = @a; say 'alive'; | |||
camelia | rakudo b2072f: OUTPUT«alive» | ||
pmichaud | r: my @a := 1..Inf; my @b = @a; say 'alive'; say @b | 18:48 | |
camelia | rakudo b2072f: OUTPUT«(timeout)alive» | ||
pmichaud | r: my @a := 1..Inf; my @b = @a; say 'alive'; say @b.infinite | ||
camelia | rakudo b2072f: OUTPUT«aliveTrue» | ||
18:48
cognominal joined
|
|||
pmichaud | apparently .gist on Arrays doesn't know about infinities | 18:48 | |
18:48
risou_awy joined
18:49
kbenson joined
18:54
avuserow1 joined
|
|||
labster | good still-technically-morning, #perl6 | 18:59 | |
PerlJam | It's always morning somewhere :) | 19:01 | |
labster | yeah, but it's now afternoon here :) | ||
preflex: karma labster | 19:02 | ||
preflex | labster: 69 | ||
labster | nice to have a karmabot again | ||
PerlJam | preflex: karma perljam | 19:04 | |
preflex | perljam: 192 | ||
PerlJam wonders where the karma was seeded from | |||
diakopter | PerlJam: I think it's just been around a while | ||
PerlJam | maybe so. | ||
19:12
kaleem left
|
|||
sorear | good * #perl6 | 19:14 | |
yoleaux | 16:42Z <jnthn> sorear: the proposal looks good. Concern is mostly naming of the nqp:: ops. Unfortuantely, a name with "cont" puns badly with ops like nqp::iscont (which refers to containers). | ||
16:43Z <jnthn> sorear: given these ops are probably only used in a handful of places, we could just spell out "continuation" in the name; it's huffmanly OK to do that. | |||
masak | sorear! \o/ | 19:16 | |
19:16
Teratogen joined
|
|||
FROGGS | sorear o/ | 19:16 | |
Teratogen | howdy howdy howdy | ||
masak | +1 on "continuation" | 19:17 | |
sorear | jnthn: what do you think of diakopter's s/cont/dc/ suggestion? | ||
jnthn | sorear: It's a little terse, imho | 19:18 | |
masak | "a little"? :) | 19:20 | |
diakopter | there, "a little" simply means "too" | ||
labster | "a ltl" | ||
colomon | sorear! jnthn! masak! diakopter! FROGGS! \o/ | 19:21 | |
FOAD | colomon! | 19:22 | |
colomon | FOAD? | 19:23 | |
FROGGS | \o/ | ||
sorear | backlog succeeded | ||
FOAD | Just getting into the spirit of the thing, you know. | ||
colomon | FOAD! \o/ | 19:24 | |
lue | spirit is important 'round these parts :) | ||
FOAD | :) | ||
masak | FOAD! \o/ | 19:25 | |
FOAD | And now that I am talking anyhow, is there anything a not-very-good Perl 5 programmer can do to help Perl 6 along? | ||
masak! | |||
masak | there's plenty to do. | ||
but it's hard to communicate exactly what, to a newcomer. not enough common language. | 19:26 | ||
sorear | colomon: this isn't the first time you've done member:foo. I'm curious now | ||
FOAD | Okay. Where do I start? | ||
masak | best is to just follow -Ofun, and do what you like. | ||
timotimo_ | FOAD: i knew nothing of perl5 when i started and i made something that jnthn mentioned in a talk at yapcna! so the "rags to riches" thing that the americans dream of can totally come true in this community! | ||
masak | FOAD: download Rakudo, write 100 one-liners, get to know the language. | ||
19:26
tgt joined
|
|||
masak | FOAD: submit bugs (or ask here) as you find things. | 19:26 | |
FOAD: read the spec. think about how to use Perl 6 for different things. write your first module and upload it. enjoy this cool language. | 19:27 | ||
FOAD: suggest missing documentation. suggest missing modules. | |||
colomon | sorear: when I cut and paste text in my IRC client, it pulls up the member thing automatically. thing is, I don't remember that ever happening until last week. | ||
masak | FOAD: fix your first Rakudobug :) | ||
FOAD | Ok wow that's a ton of suggestions. :) | 19:28 | |
sorear | jnthn: the line length question stands | 19:29 | |
19:29
logie_ left
19:30
logie joined
|
|||
FROGGS | ahh, feels good to improve my own toolchain... I can now see what tests pass/fail compared to the last run (while running the test, with colors for good/bad changes) | 19:31 | |
colomon | \o/ | ||
timotimo_ | yays! | ||
FOAD | I'll see what I can do, thanks. | ||
labster | Do whatever is fun to you, FOAD. | 19:32 | |
I started writing modules six months ago, and followed it all the way into the rakudo core. | |||
FROGGS | ITS A TRAP! | 19:33 | |
labster | it is. but a very fun trap | ||
Like an MMO that sucks away all of your time by being so fun. | |||
jnthn | sorear: No, there's not a policy, but if you write a 5000 char long line I will probably be like, "wtf" :) | ||
lue has yet to jump into the rakudo core, but really really should sometime soon | 19:34 | ||
jnthn | sorear: I certainly haven't stuck to anything strict. But given the font size I need to work at, I actually can't fit all that many chars on a line ;) | ||
labster | ... but I need my variable to be 5000 characters long to do proper reverse double expanded hungarian notation | 19:35 | |
lue | .oO(How else am I supposed to attach a SHA1 checksum of the variable name to the end of the variable name? Uniqueness is critical!) |
||
FROGGS | labster: variable names are not allowed to be longer than the distance of jnthns eyes! (including sigil and following infix...) | 19:36 | |
timotimo_ | let's turn single static assignment into *constant* signle static assignment and make it all content-addressed! | ||
PerlJam | labster: is this what's become of perl poetry? now, each variable name tells a story? | 19:37 | |
timotimo_ | Slang::Shakespeare? | ||
colomon ponders how much information can be encoded in 5000 unicode characters.... | 19:38 | ||
labster | mine class Foo { hath $!bar; } | ||
lue | .oO(my $integermeanttoindicatethenumberofcrashesretrievedfromtheconfigfilewhichIhadtoincludeonedaybecauseIreally ...) |
||
sorear | please, separate your words. | 19:43 | |
timotimo_ | yeah, perl6 has -, _ and ' | 19:44 | |
should be enough for everybody! | |||
sadly no unspace inside identifiers ;) | |||
[Coke] | FOAD: find tickets that could be closed if only we had tests and test them | 19:45 | |
timotimo_ | there's a pre-made search query for that *somewhere* i hope! | ||
lue hopes people realize separation was omitted for comedic purposes | |||
dalek | kudo-star-daily: 32beb6b | coke++ | log/ (5 files): today (automated commit) |
||
kudo-star-daily: be132ca | coke++ | log/ (5 files): today (automated commit) |
|||
kudo-star-daily: abe5386 | coke++ | log/ (5 files): today (automated commit) |
|||
lue | rn: my $a = Mu.new; say so $a; | ||
camelia | rakudo b2072f, niecza v24-71-gdb4190b: OUTPUT«True» | ||
[Coke] | timotimo_, FOAD : rakudo.org/rt/testneeded | 19:46 | |
timotimo_ | was that added very recently? | ||
lue | S02:4663 implies I can't instantiate a Mu, but rakudo and niecza allow it. Who's right? | 19:47 | |
[Coke] | like a year go | ||
*ago | |||
timotimo_ | okay first: are there more of those? second: why isn't there a huge banner somewhere that displays those short links? | ||
[Coke] | timotimo_: banner where? | ||
timotimo_ | irc topic perhaps, rakudo.org perhaps | 19:48 | |
[Coke] | rakudo.org/tickets/ | ||
which is the "Bug Tracker" link in the main nav. | |||
timotimo_ | why have i never seen this? ;_; | ||
[Coke] | lue: the parenthetical makes it "clear" that that's conjectural. | 19:49 | |
lue | Yes, but having something like "can you create an instance of a Mu object" be undecided bugs me. (For the record, I don't see any reason to make Mu a special case, and not allow it to be instantiated) | 19:50 | |
sorear | i've been burned far too many times by that | 19:52 | |
$uninitialized_variable.new() ought to die | |||
not return a defined object of type Any | |||
FOAD | Thanks [Coke]. | ||
labster | rakudo seems to handle >10000 character identifiers just fine. of course, my eyes don't. | 19:54 | |
jnthn | o.O | ||
While I'm relieved, the rakudo bug woulda been just great. "Rakudo doesn't support 100 KB long identifiers" | 19:55 | ||
lue | labster: can rakudo support variable names larger than 0xFF_FF_FF_FF (or 0xFFFF_FFFF_FFFF_FFFF) bytes ? :P | 19:56 | |
19:56
rindolf left
|
|||
flussence | r; say eval("my ${'a' x 99999999999}"); ...nah, just kidding :) | 19:59 | |
masak | NO LIMITS | 20:04 | |
20:04
Guest1337 left
|
|||
lue | That's funny, a variable with name 'a' xx 0xFFFF_FFFF seems to hang and cause a steady increase in my RAM usage :) | 20:05 | |
(I killed it, by the way, so I'll never know if it would've worked.) | 20:06 | ||
20:10
bruges_ joined
|
|||
masak suggests more descriptive but maybe not quite as long variable names | 20:10 | ||
20:12
bruges left
|
|||
flussence | .oO( PHP's more consistent than rakudo here - both identifiers and their length are stored as C chars ;) |
20:15 | |
sorear | lue: you should have used x, not xdx | 20:16 | |
xx | |||
lue | ah, x doesn't create the list xx does, does it? (I typed ('a' xx 0xFFFF_FFFF).join) | 20:17 | |
Still, I have just 4GiB of RAM, so I doubt a 4GiB long name would succeed for me :) | 20:18 | ||
flussence | it's probably at least 8, since you're making an array and a string there... | ||
20:18
rurban joined
|
|||
flussence | (maybe .join with no args should simply return a Cat of the original list [assuming that ever gets implemented]) | 20:20 | |
lue | .oO(We need to find a large enough (most likely a) server to discover if rakudo can handle >=64bit variable names!) |
20:21 | |
20:22
bluescreen10 joined
20:26
berekuk left
20:27
snearch joined,
berekuk joined
|
|||
masak | I'm surprised at rt.perl.org/rt3/Ticket/Display.html?id=105004 . | 20:31 | |
if "nothing else derives from it" does not mean "nothing else *can* derive from it", then what point is the spec trying to make? | |||
there's a lot of classes that nothing derives from, and we don't keep pointing that out for them. | 20:32 | ||
20:33
konundra left
|
|||
labster | But, is there a good reason to say that nothing can derive from Whatever? | 20:33 | |
sorear | r: my $abcdefghi = 12; say $abcdefghi | ||
camelia | rakudo b2072f: OUTPUT«12» | ||
sorear | looks like rakudo can handle 72 bit variable names | ||
FROGGS | labster: hmmm, IMO there is never a reason to forbid these things | ||
20:34
kaare_ left
|
|||
sorear | masak: I think the point that the spec is trying to make is that it's written by a bunch of people and has an inconsistant level of detail | 20:34 | |
masak | sorear: at best, that's a meta-point. | ||
PerlJam | masak: "...but nothing else [currently] derives from it" | 20:35 | |
lue | My question is, what is "it" referring to? It could just as easily refer to C<Any>, which changes that part of the sentence from redundant to wrong (the use of the word "but" especially suggests this to me). | ||
labster | sorear scores one metapoint, and is in the lead in the metagame. | 20:36 | |
PerlJam | masak: "..but nothing else [in the standard type hierarchy] derives from it" | ||
masak | PerlJam: again, that seems wholly uninteresting to point out. | ||
or at least random and non sequitur-y. | 20:37 | ||
[Coke] | masak: do you care what it says, or you arguing only that since it says what it says anything, it probably means what cognominal read it as? | ||
lue | I feel you should be able to derive from Whatever, and that the phrase in question is superfluous. | ||
masak | [Coke]: I'm saying either it reads as cognominal read it, or it's useless. | 20:38 | |
PerlJam | masak: the specs were written by humans. Humans are fallible. Maybe it was just a prosaic accident. | ||
20:38
zby_home__ left
|
|||
[Coke] | masak: my read is that it's useless. | 20:38 | |
lue votes useless | |||
masak | anyone object to me removing it? | ||
PerlJam | masak: nope | ||
(I vote useless too :) | |||
[Coke] | (do we have any other java-esque "final" classes hinted at anywhere in the spec?) | ||
masak++ | |||
anywhere *else*, that is. | 20:39 | ||
labster | remove +1 | 20:41 | |
dalek | ecs: e33d6c9 | masak++ | S02-bits.pod: [S02] remove useless information about Whatever The synopsis pointed out that Whatever derives from Any (which is true), and that nothing derives from Whatever (which is true). If nothing derives from Whatever, does that mean nothing *can* derive from Whatever? RT #105004 determined that it doesn't. Then what does it mean? Only that before someone writes a class that derives from Whatever, no class derives from Whatever. While, true, that's not a very exciting statement, and possibly misleading. Removing. |
20:42 | |
masak | s/While,/While/ # *sigh* | 20:43 | |
lue thinks of an "is perfection" trait for those "final" classes [Coke] mentioned | |||
[Coke] thinks "final" is a fine name if we go that route. | 20:44 | ||
masak thinks "final" is quite incompatible with regular Perl ideals | 20:45 | ||
...but all is fair if you predeclare :) | |||
labster | Yes. Perl should allow you to shoot yourself in the foot if you load the ammo, aim downwards, and pull the trigger. But by default we leave the safety on. | 20:46 | |
masak | Perl 6 does :) | 20:47 | |
lue | Perl 6 better let me turn *off* the safety too. | ||
masak | agreed. | 20:49 | |
sorear | have the slides to "Perl of Christmas Past" been posted anywhere? | ||
masak | that's why the MOP doesn't try to enforce private attributes' privacy, for example. | ||
(because that would make it very hard to write constructor internals, serializers, and debuggers in Perl 6) | 20:50 | ||
lue | r: class Foo { method new { die "Silly programmer, you cannot derive *me*! Tell {self.^name} to try someone else!" if self.^name !eq "Foo" } }; class Baz is Foo { }; my $a = Foo.new(); $a = Baz.new(); | ||
camelia | rakudo b2072f: OUTPUT«Silly programmer, you cannot derive *me*! Tell Baz to try someone else! in method new at /tmp/mfCT1xPKz7:1 in block at /tmp/mfCT1xPKz7:1» | ||
dalek | ast: 1b0e149 | (Solomon Foster)++ | S02-types/ (2 files): More Bag tests moved along the the present. |
||
masak | lue: (but you *could* derive Foo. you just couldn't instantiate Foo or any of its descendants... until someone overrides .new, that is) | 20:52 | |
a concept like "final" isn't very compatible with an über-dynamic language where most things can be changed at runtime. | 20:53 | ||
lue | Yeah. Also it should choke at compile time (instead of runtime). But at least this makes it more work. | ||
flussence | make it a module, so you can change the finality at runtime :) | ||
lue | .oO(Once again, an idea that seems to require slangs) |
20:54 | |
flussence | .oO( trait_mod:isn't('yours', $errmsg = 'get off my lawn!') ) |
20:55 | |
sorear | Create a virtual base class with a private constructor, set a 'friend' from the virtual base to the class you want final | ||
sorear is looking for the slide of pmichaud with sorear behind him | |||
colomon | :) | 20:56 | |
20:57
rurban left
|
|||
masak | sorear: caption: "LOL PMICHAUD I HAVE YOUR BACK" | 20:57 | |
masak wants to see that now | |||
sorear | masak: I think I was just captioned "Perl 6" or something to that effect | ||
masak | sorear: yes, I was just dreaming a little :) | 20:58 | |
sorear | masak: It was in mdk's christmas past keynote | ||
masak | I half-remember that picture. | ||
20:58
arnsholt left,
simcop2387 left,
arnsholt joined
20:59
kivutar joined
21:01
twigel joined
|
|||
dalek | ast: aa647ff | (Solomon Foster)++ | S03-operators/bag.t: Use new coercers to construct. |
21:02 | |
21:02
simcop2387 joined
|
|||
dalek | ecza: 3cebbf8 | (Solomon Foster)++ | lib/CORE.setting: Additional fixes to Bag and KeyBag. |
21:03 | |
colomon | probably needs more fudging under Rakudo now. :\ | ||
jnthn back | |||
21:04
bluescreen10 left
|
|||
tadzik | sorear: that was a very nice slide too :) | 21:04 | |
fathers of two main Perl 6 implementations | |||
colomon | :) | 21:05 | |
masak .oO( "Niecza, I am your father." -- "noooooo" ) | 21:06 | ||
tadzik | :D | 21:07 | |
ooh | |||
"And here is your Aunt Beru" "nooooo" "And here is you mother Padme" "noooo" | |||
masak | :) | 21:08 | |
21:08
sahadev joined
|
|||
flussence | std: -> $dir { $dir.path, {$^a.parent.resolve} ...^ {!$^a.d} } # reverse filesystem breadcrumb list, can I golf this down any? | 21:08 | |
camelia | std 6348f35: OUTPUT«ok 00:00 46m» | ||
21:10
ajr joined
21:11
ajr is now known as Guest73010,
Guest73010 is now known as ajr_
|
|||
flussence | (I'm getting nowhere with triangle reduce attempts...) | 21:13 | |
timotimo_ | i think it's already pretty good | 21:14 | |
masak | me too. | ||
sahadev | hello all | 21:16 | |
perl6: my $b = chr 98; say qq{a{$b}c} eq qq{a{chr 98}c} | |||
camelia | rakudo b2072f, niecza v24-71-gdb4190b: OUTPUT«False» | ||
timotimo_ | inside { ... } quotes, {...} interpolation is turned off | 21:17 | |
perl6: my $b = "hello!"; say qq{a{$b}c}; | |||
sahadev | can someone explain me why the closure in the rhs expression above doesn't interpolate? and, the reason behind it? | ||
camelia | rakudo b2072f, niecza v24-71-gdb4190b: OUTPUT«a{hello!}c» | ||
PerlJam | timotimo++ quicker than me :) | ||
timotimo_ | er, wait what? | ||
oh, of course | |||
jnthn | Nestings of the opener/closer take precedence over escapes in the parser. | ||
timotimo_ | the closure doesn't interpolate, but the variable does | ||
flussence | .oO( actually, «... * ~~ '/'» would be more useful than testing for .d since it doesn't depend on the local filesystem - think website breadcrumbs... ) |
||
masak | r: say 51 * 65536 | ||
camelia | rakudo b2072f: OUTPUT«3342336» | ||
masak | r: perl6 -e 'sub breadcrumb($start, &iter, &until) { $start, &iter ...^ &until }; .say for breadcrumb(3342336, * / 2, * % 2) | ||
camelia | rakudo b2072f: OUTPUT«===SORRY!===Two terms in a rowat /tmp/NNZ4lbhKrM:1------> perl6 -e ⏏'sub breadcrumb($start, &iter, &until) { expecting any of: postfix infix stopper infix or meta-infix statement end … | ||
masak | r: sub breadcrumb($start, &iter, &until) { $start, &iter ...^ &until }; .say for breadcrumb(3342336, * / 2, * % 2) | 21:18 | |
camelia | rakudo b2072f: OUTPUT«33423361671168835584417792208896104448522242611213056652832641632816408204102» | ||
masak | flussence: ^^ | ||
jnthn | sahadev: See github.com/perl6/std/blob/master/STD.pm6#L452 if curious for why it parses that way | ||
timotimo_ | does that explain anything? :) | 21:19 | |
sahadev | :) | ||
thanks jnthn, I will try if I can make some sense out of it | |||
FROGGS | hehe | ||
jnthn | sahadev: I remeber asking TimToady++ if that was intentional when I was implementing the quote stuff. I forget the exact reasoning, but I think it was something along the lines of "the quoter is fresher in the programmer's mind" or so :) | ||
It's in the logs, if anybody good at searching the logs wants to dig it up. | |||
sahadev | ok | 21:20 | |
masak | sahadev: basically, the quoter sense of {} overwrites the block sense of {}. if you want the latter, don't quote with {}. | ||
21:20
benabik left,
PacoAir left
|
|||
jnthn | You can choose whatever quoting chars you want, fwiw. | 21:20 | |
21:20
athomason joined
|
|||
jnthn | perl6: my $b = chr 98; say qq{{a{$b}c}} eq qq{{a{chr 98}c}} # double 'em like this, for example | 21:21 | |
sahadev | masak: yeah, i see that the closure interpolates when using non-brace brackets as delimiters | ||
camelia | rakudo b2072f, niecza v24-71-gdb4190b: OUTPUT«True» | ||
FROGGS | well, <alpha>'s dont work | ||
:P | |||
jnthn | perl6: my $b = chr 98; say qq[a{$b}c] eq qq[a{chr 98}c] # or these | ||
camelia | rakudo b2072f, niecza v24-71-gdb4190b: OUTPUT«True» | ||
flussence | r: say qq:c{{1+1}} | ||
camelia | rakudo b2072f: OUTPUT«1+1» | ||
jnthn | flussence: There you chose {{ as the opener and }} as the closer. | 21:22 | |
flussence | oops | ||
r: say qq:c{ {1+1} } | |||
camelia | rakudo b2072f: OUTPUT« {1+1} » | ||
flussence | *shrug* | ||
n: say qq:c{ {1+1} } | |||
camelia | niecza v24-71-gdb4190b: OUTPUT« {1+1} » | ||
sahadev | i am trying to add perl6-ish interpolation (a simplified version of it) in moe and came across this test in Perl6 roast which failed in moe | ||
jnthn | The { and } being treated as nested delimeters takes precedence syntactically, it's not that :c gets disabled. | ||
flussence | ah | ||
so... qq:c[ would work there? | 21:23 | ||
jnthn | It's a sequential alternation in the thingy I linked | ||
Yes, but the :c is redundant :) | |||
qq imples :c | |||
If you want a quote language that interpolates closures and nothing else, Q:c[ ... ] would work, for example. Q is the mother of all quotes. | 21:24 | ||
Or grandpa, or whatever. | |||
:) | |||
lue | .oO(Q is the Mu of quoting constructs) |
21:25 | |
21:26
census left
21:29
rurban joined
21:32
snearch left
21:33
skids left
21:35
rurban1 joined
21:37
rurban left
21:38
kivutar left
|
|||
colomon | errr.... I told rakudo make specitest, and it did this: | 21:46 | |
cd t/spec && git pull | 21:47 | ||
Already up-to-date. | |||
perl t/harness --fudge --keep-exit-code --icu=1 --tests-from-file=t/spectest.data | |||
and now it just seems to be sitting there. | |||
My computer's fan isn't running, so I'm thinking it's not running any tests. | |||
Ideas? | |||
flussence | strace it? | ||
FROGGS | top? ps ax? taskmanager? | ||
colomon | top is showing three perl scripts in positions #4, 5, and 6. | 21:48 | |
and control-C on the alleged spectest run makes them go away. | 21:49 | ||
labster | identical thing is happening here | 21:55 | |
did something change in the spectests recently? | 21:59 | ||
22:02
cognominal left,
cognominal joined
|
|||
FROGGS | git bisect might be handy here | 22:04 | |
22:06
xilo left
|
|||
flussence | rn: say ?("a" x 103 ~~ /^(aa|aab?)*$/) | 22:11 | |
22:12
btyler left
|
|||
camelia | rakudo b2072f, niecza v24-72-g3cebbf8: OUTPUT«(timeout)» | 22:12 | |
timotimo_ | oh yikes, backtrack-hell? | ||
jnthn | Quantified quantified things can lead to such situations. | 22:13 | |
flussence | seen on www.reddit.com/r/coding/comments/1g2fw3/ | ||
jnthn has a similar example and graph of timings in his C# course | |||
flussence | the good news is rakudo's using a fairly constant and small amount of RAM running it locally :) | 22:14 | |
22:16
benabik joined
22:17
spider-mario left
22:19
sahadev left
|
|||
flussence | rn: say ?("a" x 103 ~~ /^(aab?)*$/) # runs quite a lot faster with the constant prefix factored out | 22:19 | |
camelia | rakudo b2072f, niecza v24-72-g3cebbf8: OUTPUT«False» | ||
flussence | p5eval: ("a" x 103 ~~ /^(aa|aab?)*$/) # p5 appears to already have this optimisation | 22:22 | |
p5eval | flussence: No output | ||
22:23
ugexe joined,
rindolf joined
22:28
fgomez left
22:33
xilo joined
22:38
pretty-gurl joined
|
|||
pretty-gurl | Hello hello hello | 22:38 | |
masak | pretty-gurl: hi! | ||
22:38
pretty-gurl left
|
|||
masak | bye! | 22:38 | |
masak .oO( pretty-impatient ) | 22:39 | ||
22:40
rurban1 left
22:41
dmol left,
BenGoldberg left,
census joined
22:42
rindolf left
22:46
fgomez joined
22:48
sivoais_ left,
sivoais joined,
tgt left
22:49
rurban joined
22:51
BenGoldberg joined
|
|||
dalek | ast: eeedf1a | (Solomon Foster)++ | S03-operators/bag.t: Didn't need the new coercers after all. |
22:51 | |
masak | 'night, #perl6 | 22:52 | |
FROGGS | gnight masak | 22:54 | |
colomon | hmmm.... make t/spec/S02-types/keybag.t seems to be taking a Very Long Time under Rakudo... | 22:55 | |
22:55
Ben_Goldberg joined
|
|||
colomon | rn: my $b = KeyBag.new("a", "foo", "a", "a", "a", "a", "b", "foo"); say $b | 22:58 | |
camelia | rakudo b2072f, niecza v24-72-g3cebbf8: OUTPUT«keybag("a" => 5, "foo" => 2, "b" => 1)» | ||
22:59
BenGoldberg left
|
|||
labster | colomon: does that mean you can get 'make spectest' to run now? | 23:00 | |
colomon | labster: nope, I just started running the set tests by hand to see if they might be the culprits | ||
I don't even start to understand how a hang in one test could cause make spectest to not return any output. | 23:01 | ||
maybe it's a fudgeandrun problem? | 23:02 | ||
if I try to prove the .t file directly without fudgeandrun, it gets through 40 tests. | |||
jnthn | sleep...hope I will be much more productive tomorrow... | 23:03 | |
'night o/ | |||
colomon | \o | ||
23:04
lizmat joined,
rurban1 joined
23:05
skids joined
23:07
rurban left
|
|||
lizmat is "enjoying" another change of itinerary: going from Newark to Amsterdam via Oslo | 23:09 | ||
23:09
benabik left
|
|||
sorear | lizmat: gonna say hi to arnsholt while there? :) | 23:10 | |
lizmat | well, I hope that we won't have time to go out of the airport | 23:13 | |
we just missed our plane *again* by 10 minutes | |||
our previous flight had delays, but in principle we could still make it | 23:14 | ||
but at the gate, it took 15 minutes for someone to arrive to get the jetway in place, so we could get out of the plane | 23:15 | ||
grrrr | |||
23:16
PZt left
23:17
athomason left
|
|||
diakopter | lizmat: :( | 23:18 | |
23:19
athomason joined
|
|||
lizmat | travelling sucks | 23:20 | |
23:23
Gruber is now known as Grrrr
23:24
PZt joined
|
|||
sorear | where are you now? newark? | 23:25 | |
never having had to deal with anything like this, I have one question: is it also turning into a huge money sink? I assume you have to pay for the two empty chairs that you've flown across the Atlantic? | 23:26 | ||
census | good night masak! | ||
lizmat | Newark Liberty | ||
sorear: no, we didn't have to pay anything extra. | |||
census | vacation in u.s. after yapc? | ||
lizmat | but since we want extra legroom, you can pay for "Economy Plus" with United | 23:27 | |
sorear | census: not intentionally. lizmat & woolfy are just having WONDERFUL LUCK getting back home | ||
lizmat | *that* I had to do again, or run the risk of not being able to upgrade | ||
sorear: except of course an extra hotel night | 23:28 | ||
sorear | s/two empty chairs/four empty chairs/ | ||
lizmat | yup | ||
sorear momentarily forget about woolfy | |||
pmichaud has spent many hours at newark liberty | 23:29 | ||
lizmat | hehe.. woolfy did a good job holding me back when I exploded after having run through most of Newark Liberty to make it to the gate at the farthest end | ||
only to be told we were too late | |||
23:30
dukeleto joined
|
|||
lizmat | ok, checking in again... | 23:30 | |
dukeleto | o/ | ||
lizmat | later! | ||
23:30
lizmat left,
Ben_Goldberg left
|
|||
dalek | ast: 36f2bc2 | (Elizabeth Mattijsen)++ | S02-types/set.t: Slight adaptation in fudge for bag test |
23:31 | |
23:38
ajr_ left
23:43
rurban1 left
|
|||
colomon | r: say {a => 1000, b => 2}.KeyBag | 23:43 | |
camelia | rakudo b2072f: OUTPUT«No such method 'KeyBag' for invocant of type 'Hash' in block at /tmp/6I81ywuC1P:1» | ||
23:44
raiph left
23:49
dukeleto left
23:53
Chillance left
|