»ö« 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 diakopter on 14 April 2013. |
|||
00:04
tgt left
00:10
adu_ joined
00:17
census left
00:21
adu_ is now known as adu
|
|||
adu | does anyone here use clang? | 00:26 | |
Tene | I have a few times. | 00:27 | |
TimToady | I think diakopter++ has used it. | 00:28 | |
sorear | i've used it a few times as a black box | 01:06 | |
c code goes in, executables come out | 01:07 | ||
01:14
drbean left
01:16
drbean joined
01:18
adu left
01:44
FROGGS_ joined
01:48
FROGGS left
01:55
woolfy left
02:00
fgomez left
02:03
dayangkun joined,
lustlife joined
02:11
fgomez joined
|
|||
japhb | .oO( C code goes in, sausage comes out ) |
02:11 | |
02:12
xinming_ joined
02:15
xinming left
|
|||
colomon | TimToady! \o/ | 02:17 | |
02:38
Targen joined
02:40
cooper left,
pecastro_ left
02:42
orafu left,
orafu joined
02:44
cooper joined,
cooper left,
cooper joined
02:51
Rix left
02:52
Rix joined
02:57
adu joined
02:58
xenoterracide left
03:01
nebuchad` joined,
nebuchadnezzar left
03:04
xenoterracide joined
|
|||
adu | Tene: I'm getting an undefined symbol, and ##C++ is saying it's off topic | 03:08 | |
gist.github.com/andydude/5456709 | 03:09 | ||
03:19
foo_ joined,
foo_ left
03:21
BenGoldberg left
03:23
x2 joined,
x2 is now known as vaelxon
04:04
Chillance joined
04:27
Patterner left
04:29
Psyche^ joined,
Psyche^ is now known as Patterner
04:51
adu left
04:56
tangentstorm is now known as tangent[AFK]
05:07
rking left
05:19
SamuraiJack joined
05:21
frdmn left
05:31
tangent[AFK] is now known as tangentstorm
05:35
erkan joined
05:36
erkan left
05:37
cooper left
|
|||
diakopter | i.imgur.com/vXMuRqB.png # YAPC Austin registrations so far | 05:37 | |
05:38
erkan joined,
erkan left,
erkan joined
05:59
Chillance left
06:05
frdmn joined
|
|||
tadzik | for some reason I thought there's 120,000 | 06:07 | |
diakopter | o) | 06:08 | |
06:14
kaleem joined
06:20
xinming_ left
06:22
immortal joined
06:23
erkan left
06:24
xinming joined
06:27
erkan joined,
erkan left,
erkan joined
06:29
immortal left
06:31
immortal joined,
immortal left,
immortal joined,
erkan left
06:33
rindolf joined
06:34
kurahaupo joined
06:35
erkan joined,
immortal left
06:40
sqirrel joined
06:43
kurahaupo left
06:46
FROGGS_ left
06:47
immortal joined,
immortal left,
immortal joined
06:48
erkan left
07:03
domidumont joined
|
|||
nwc10 | diakopter: to two decimal places :-) | 07:09 | |
moritz | \o | 07:10 | |
07:13
baest joined
|
|||
sorear | ack, I need to get that dealt with pdq | 07:18 | |
labster | Well, I spent the past few hours finding out what doesn't like to compile in core.setting. regex { }, BEGIN { }, and method handles trait all made my code die when I moved it into the setting. | 07:20 | |
07:27
domidumont left
07:28
domidumont joined
|
|||
moritz | we should document that somewhere | 07:37 | |
07:41
FROGGS joined
|
|||
diakopter | nwc10: yes. :) Excel doesn't recognize they can be collapsed to integers... o_O | 07:41 | |
07:51
domidumont left
|
|||
labster | Well, I'm hoping that I'm wrong, at least for the rx// and handles cases, because code readability will suffer a lot. | 07:55 | |
moritz | I have run into the same problem with 'handles' | 07:57 | |
08:15
woolfy joined
08:17
domidumont joined
08:24
census joined
08:40
immortal left
08:44
erkan joined
08:47
spider-mario joined
08:49
erkan left
08:52
erkan joined,
erkan left,
erkan joined,
snearch joined
|
|||
masak | good antenoon, #perl6 | 08:54 | |
arnsholt | 'lo masak | 08:55 | |
08:56
MrMeek joined
|
|||
tadzik | hello hello | 08:57 | |
08:57
MrMeek-afk left
08:59
dakkar joined
09:00
tgt joined
|
|||
jnthn | morning, #perl6 | 09:01 | |
hoelzro | o/ jnthn | 09:02 | |
masak | jnthn! \o/ antenoon! | ||
09:03
araujo left
|
|||
hoelzro | jnthn: are you busy right now? I found a "fun" behavior with NativeCall and thought I'd have you take a look | 09:05 | |
jnthn | .oO( what's it got against the noon? ) |
||
hoelzro: I can take a quick look but I don't want to get bogged down with NativeCall stuff today. | |||
hoelzro | ok | ||
I'll just give you a link and you can take a look whenever you like | 09:06 | ||
it's not urgent | |||
09:07
nebuchad` is now known as nebuchadnezzar
|
|||
jnthn | ok | 09:07 | |
09:08
lizmat left
|
|||
hoelzro | jnthn: hoelz.ro/files/perl6-posix.tar.gz | 09:11 | |
if you run test.p6 in that tarball, there's a really odd error about unboxing and such | |||
jnthn | hoelzro: Will this work on Windows? | 09:12 | |
jnthn is guessing not | |||
hoelzro | also, when I started to remove functions from the module, I started to see segfaults or garbage values | ||
I haven't tried | |||
arnsholt | I'll have a look | ||
jnthn | arnsholt: Ah, cool. :) | 09:13 | |
arnsholt | I need to recompile NQP/Rakudo/Zavolaj so it'll be a while before I can actually run it thought =) | ||
jnthn | arnsholt: Well, I have a funny tangle of branches and stuff built here too, so... :) | ||
arnsholt | Heh | ||
09:16
drbean left
09:17
drbean joined
09:23
cognominal left
09:24
cognominal joined
09:29
berekuk left
09:32
berekuk joined
09:34
berekuk left
|
|||
arnsholt | hoelzro: That's odd | 09:40 | |
hoelzro | yeah, I know! | ||
my NQP fu isn't good enough to figure it out | 09:41 | ||
I'm going to spend more time on Perl 6 stuff after I'm done with my coursera stuff | |||
arnsholt | jnthn: How much of the sixmodelisation replacement of Parrot types with NQP types has happened so far? | ||
As a first guess, this might be the dyncall bits returning a Parrot STRING* where that isn't allowed any more | 09:42 | ||
jnthn | arnsholt: Very little. | ||
arnsholt: str is still a Parrot STRING | |||
arnsholt | Hmm | ||
jnthn | arnsholt: Is it something to do with string memory getting corrupted? | 09:43 | |
arnsholt | Nope | ||
"This type cannot unbox to a native string" | |||
jnthn | Hmm | 09:44 | |
Do you know where it's coming from? | |||
I mean, Perl 6 Str objects have to be unboxed like this | |||
arnsholt | The line info in the backtrace points at: nqp::getattr(nqp::p6decont($args), Capture, '$!list') | ||
jnthn | It's possible a non-string is being passed somewhere a Str is expected? | ||
Huh! | 09:45 | ||
arnsholt | Which is part of a larger call: nqp::nativecall(nqp::p6decont(map_return_type($r.returns)), self, nqp::getattr(nqp::p6decont($args), Capture, '$!list')) | ||
jnthn | Oh...hmm. | ||
So it could be on the inside of the call | |||
arnsholt | Although the actual error might be happening inside the C code | ||
jnthn | Yeah, that's my guess. What is being called? The argument really is a Str, yes? | ||
arnsholt | The sub decl is "our sub ttyname(int $fd) returns Str is native", invoked as "ttyname(0)" | 09:47 | |
jnthn | Oh...very odd. | ||
arnsholt | Yeah. Grepping for "This type cannot unbox" in NQP, the only matching file is P6opaque.c | ||
jnthn | I'd have thought "unbox" would refer to calling, not handling result...and hat's the only Str in there. | 09:48 | |
arnsholt | Yeah | ||
dalek | p: 8c9a25c | jnthn++ | src/vm/jvm/QAST/Compiler.nqp: Map HLL interop ops (though not implemented yet). |
09:54 | |
p: 906e635 | jnthn++ | src/vm/jvm/runtime/org/perl6/nqp/ (2 files): Implement nqp::settypehll[role]? on JVM. |
|||
p: b18c101 | jnthn++ | src/vm/jvm/ (2 files): Implement nqp::isbig_I. |
|||
p: f28e949 | jnthn++ | src/vm/jvm/ (2 files): Implement nqp::getpayload. |
|||
kudo/jvm-support: b51e852 | jnthn++ | tools/build/Makefile-JVM.in: Start building Perl6::World in JVM build. It'll need a few more changes and depends on a couple of missing ops, but it does now cross-compile. |
09:56 | ||
10:03
pecastro joined
|
|||
cognominal | I am implementing permutations using gather/take but I am getting something wrong. get_attr_str() not implemented in class 'Coroutine' gist.github.com/cognominal/5458754 | 10:05 | |
btw, the rest of the error message is useless : current instr.: 'print_exception' pc 111585 | 10:06 | ||
jnthn | That looks like an error reporting fail rather than the actual error. | ||
arnsholt | Yeah | ||
jnthn | Try running with --ll-exception to see if it gives anything more helpful | ||
arnsholt | Looks like the exception printer expects all callables to have some property, which Coroutines don't have | 10:07 | |
jnthn | Doing return unless @l; inside a gather/take looks highly suspect though. | ||
cognominal | jnthn: I thought so to but what is the alternative to stop the recursion | ||
jnthn | cognominal: Put the return outside of the gather block? | 10:08 | |
cognominal | ok, no error now but no output either but I can go from there | 10:09 | |
afk& | 10:14 | ||
10:17
kaleem left
10:23
dayangkun left
10:40
kresike joined
|
|||
kresike | hello all you happy perl6 people | 10:40 | |
10:41
stevan_ left
|
|||
dalek | p: adfa9c8 | jnthn++ | src/vm/parrot/ (2 files): Add nqp::isint/nqp::isnum/nqp::isstr for Parrot. |
10:52 | |
p: 9c79d1f | jnthn++ | src/vm/jvm/ (2 files): Add nqp::isint/nqp::isnum/nqp::isstr for JVM. |
|||
10:55
lizmat joined
|
|||
dalek | kudo/jvm-support: 26dc105 | jnthn++ | / (2 files): Eliminate final pir:: in Perl6::Pod. |
10:56 | |
kudo/jvm-support: 70c0109 | jnthn++ | / (3 files): Eliminate final pir:: in optimizer. |
|||
kudo/jvm-support: 97f7855 | jnthn++ | tools/build/Makefile-JVM.in: Add Perl6::Pod to the JVM build. |
|||
colomon | \o/ | 11:03 | |
FROGGS | jnthn: btw, do you "like" the way the options are passed to load_module? gist.github.com/FROGGS/59b7f7a890381005eda7 | 11:12 | |
11:15
erkan left,
erkan joined,
erkan left,
erkan joined
|
|||
jnthn | FROGGS: Passing them as names seems reasonable. | 11:15 | |
*nameds | 11:16 | ||
FROGGS | thanks | ||
jnthn | :$name?, :$file?, :$from?, :$auth?, :$ver? | ||
Rendundant use of ? | |||
Named args are optional by default | |||
FROGGS | ahh, yeah, now that you say it *g* | ||
<jnthn> Rendundant use of ? <-- you are already speaking like perl | 11:17 | ||
tadzik | :D | 11:19 | |
Useless use of ? in named context | |||
FROGGS | I would like to pass --ll-exceptions sometimes to jnthn though :P | ||
11:20
Gruber joined
|
|||
moritz | named params are optional by default | 11:20 | |
11:21
LordVorp joined,
mathw_ joined,
sergot_ joined
|
|||
FROGGS | ohh, I got it already, thanks :P | 11:21 | |
11:21
bonsaikitten joined,
kst`` joined,
nwc10_ joined
11:22
ironcame1 joined
11:23
jercos_ joined
11:24
broquain1 joined
11:29
kst` left,
hypolin left,
dukeleto left,
ironcamel left,
LV left,
broquaint left,
jercos left,
Grrrr left
11:30
dukeleto joined,
felher joined,
hypolin joined
11:37
dpk left
11:39
Gruber is now known as Grrrr
11:40
stevan_ joined
11:45
stevan_ left
11:47
daxim joined
11:56
kaleem joined
11:58
araujo joined
12:00
lizmat left
12:03
kaleem left
12:04
yoleaux left
12:09
dpk joined
12:12
yoleaux joined
|
|||
dalek | p: 12b0eb8 | jnthn++ | tools/build/Makefile-JVM.in: Start building/installing P5Regex library on JVM. |
12:16 | |
12:19
bluescreen10 joined
12:20
kaleem joined
12:22
dakkar left
12:24
skids left
|
|||
[Coke] | jnthn++ | 12:28 | |
12:30
kaleem left,
kaleem joined
|
|||
[Coke] | jnthn: No registered operation handler for 'isstr' (building rakudo-jvm) | 12:32 | |
jnthn: No registered operation handler for 'hllizefor' | 12:33 | ||
jnthn | [Coke]: I didn't put the stuff in to do NQP version checks on the JVM side yet; it's probably just a not-new-enough nqp-jvm (I added that op this morning) | ||
[Coke] | ah, I forgot about that arms race, roger. | 12:34 | |
12:39
mtk left
|
|||
cognominal | stuck anew with the same message; no return in the gather though. gist.github.com/cognominal/5458754 | 12:41 | |
12:43
mtk joined
12:46
nwc10_ is now known as nwc10,
tgt left,
pecastro left
|
|||
moritz | curious, I get "get_attr_str() not implemented in class 'Coroutine'" | 12:46 | |
with cognominal's code | 12:47 | ||
12:47
rindolf left
|
|||
nwc10 | jnthn: your NQP changes have not yet broken the Rakudo build for Parrot. Please try harder :-) | 12:47 | |
cognominal | can we use gather in a recursive setting? | ||
[Coke] | jnthn: upped nqp, tried to build nqp-jvm, got: Unknown compilation target 'classfile' | 12:48 | |
cognominal | r: sub a($n) { gather { take $n; take $n-1 if $n != 0 }}; say a(2); | 12:51 | |
camelia | rakudo 37c995: OUTPUT«2 1» | ||
cognominal | This simpler recursion case works | 12:52 | |
12:52
pecastro joined
|
|||
masak | moritz: I'm getting the same. | 12:53 | |
minimizing. | 12:54 | ||
nwc10 | [Coke]: I just tried and I get that too | ||
12:54
dayangkun joined
|
|||
moritz | cognominal: iirc [Coke] has hit another limitation of gather/take recentely; if you reuse the same gather/take block, the first iterator has to be exhausted before the second one is started | 12:54 | |
cognominal | arf | 12:56 | |
jnthn | [Coke], nwc10: cd nqp ; perl Configure.pl --prefix=..\install-jvm ; make install ; cd .. ; perl ConfigureJVM.pl ; make | ||
Argh | |||
[Coke] | Aye, used to work in b. | ||
jnthn | [Coke], nwc10: cd nqp ; perl ConfigureJVM.pl --prefix=..\install-jvm ; make install ; cd .. ; perl ConfigureJVM.pl ; make | ||
nwc10 | jnthn: this is nqp failing to build itself | 12:57 | |
cognominal | afk for ~45 minutes | ||
thx moritz | |||
jnthn | nwc10: Oh. | ||
I need to see how it fails in a bit more detail, then. | 12:58 | ||
Since it works here :) | |||
dalek | p: d228c92 | jnthn++ | src/vm/jvm/runtime/org/perl6/nqp/runtime/Ops.java: Error reporting tweak. |
||
p: 2ac90f3 | jnthn++ | src/vm/jvm/ (2 files): Implement neg_I and abs_I for JVM. |
|||
p: 115b38c | jnthn++ | src/vm/jvm/ (2 files): Implement nqp::radix_I. |
|||
nwc10 | pasta.test-smoke.org/489 | ||
[Coke] | One moment. | ||
jnthn | It sounds like it's somehow invoking a Parrot NQP, not a JVM one. | 12:59 | |
[Coke] | what nwc10 said. | ||
ah. "nqp --target=c" | |||
pulls from nqp in path. | |||
you're on windows, so that that probably JFW there. | 13:00 | ||
jnthn | Ahh | ||
masak | r: sub p(*@l) { gather { if @l == 1 { take @l } else { @l.shift; for p(@l) -> @p {} } } }; p 1..4 | 13:01 | |
camelia | rakudo 37c995: OUTPUT«Nominal type check failed for parameter '@p'; expected Positional but got Int insteadcurrent instr.: '' pc 470 ((file unknown):228) (/tmp/rbAFU_hQSA:1)called from Sub '' pc 279978 (src/gen/CORE.setting.pir:122782) (src/gen/CORE.setting:5741)called from Sub 'reif… | ||
masak | g'ah. | ||
I got this error locally during some of the experimenting. | |||
oh, no, sorry. it's consistent. | |||
hold on. | |||
nwc10 | ./nqp --target=classfile --output=NQPP5QRegex.class src/stage2/gen/NQPP5QRegex.nqp | ||
works | |||
moritz | for p(@l) -> @p | ||
masak | r: sub p(*@l) { gather { if @l == 1 { take @l } else { @l.shift; for p(@l) -> @p {} } } }; say p 1..4 | ||
camelia | rakudo 37c995: OUTPUT«get_attr_str() not implemented in class 'Coroutine'current instr.: 'print_exception' pc 111628 (src/gen/CORE.setting.pir:50166) (src/gen/CORE.setting:9743)called from Sub '' pc 481 ((file unknown):229) (/tmp/Ey81jJgi4k:1)called from Sub '' pc 279978 (src/gen/COR… | 13:02 | |
masak | there we go. | ||
masak submits rakudobug | |||
moritz: yes, I know. | |||
[Coke] | so, looks like the def for RUNNER is wrong. | ||
moritz | 'for' flattens, so if p(@l) returns a list of arrays of integers, that's what you get | ||
masak | moritz: the internal error seems to happen before that, though. | ||
jnthn | r: sub x() { gather { die 'oops' } }; x | ||
camelia | rakudo 37c995: OUTPUT«oopscurrent instr.: 'throw' pc 358206 (src/gen/CORE.setting.pir:156326) (src/gen/CORE.setting:9557)called from Sub 'die' pc 36476 (src/gen/CORE.setting.pir:14282) (src/gen/CORE.setting:578)called from Sub 'die' pc 36374 (src/gen/CORE.setting.pir:14222) (src/gen/… | ||
jnthn | r: sub x() { gather { for 1..10 { take 1; die 'oops' } } }; x | 13:03 | |
camelia | rakudo 37c995: OUTPUT«oopscurrent instr.: 'throw' pc 358206 (src/gen/CORE.setting.pir:156326) (src/gen/CORE.setting:9557)called from Sub 'die' pc 36476 (src/gen/CORE.setting.pir:14282) (src/gen/CORE.setting:578)called from Sub 'die' pc 36374 (src/gen/CORE.setting.pir:14222) (src/gen/… | ||
jnthn | Hm. | ||
nwc10 | is camelia still doing (historical) nqp-jvm, but not (yet) real nqp (on the JVM) ? | 13:04 | |
moritz | nwc10: correct | ||
timotimo | std: [.perl] 1, 2, 3, 4 | 13:05 | |
camelia | std 86b102f: OUTPUT«===SORRY!===Two terms in a row (preceding is not a valid reduce operator) at /tmp/Q9GdpfQt5T line 1:------> [.perl] ⏏1, 2, 3, 4 expecting any of: infix or meta-infix infixed function statement modifier loopParse | ||
..failedF… | |||
[Coke] | nwc10: look for "nqp.bat" in ConfigureJVM.pl | ||
nwc10 | jnthn: got test failures, but they are out of date as teh goalposts moved: pasta.test-smoke.org/490 | ||
timotimo | er, that also doesn't make sense | 13:06 | |
things you come up with when you're kind of asleep | |||
dalek | p: 14266b9 | jnthn++ | tools/build/Makefile-JVM.in: Try to unbust Linux/Unix build. nwc10++ and [Coke]++ for reporting/diagnosis. |
||
jnthn | nwc10: Yeah, I'm currently focusing on the Rakudo porting rather than clearing those up. But I'll get them eventually. :) | 13:08 | |
nwc10: Already incidentally fixed something there today anyway. | |||
13:10
drbean left
13:12
drbean joined
|
|||
nwc10 | jnthn++ # yep, "works" on "my" machine again | 13:14 | |
fails those 5 tests. ie - build works once more. | |||
jnthn | Time for a break/walk; bbiab | 13:16 | |
[Coke] | jnthn++ | ||
masak | timotimo: you can't put method names inside reduction metaops like that. | 13:17 | |
oops, talking to the backlog. | |||
[Coke] | with that, rakudo-jvm now builds 4 jvm files. | ||
masak | std: (1, 2, 3, 4)>>.perl | 13:18 | |
camelia | std 86b102f: OUTPUT«ok 00:00 43m» | ||
masak | timotimo: maybe you meant this? | ||
timotimo | i was kind of derping what a reduction does, but i was also at that moment napping and decided to type what came to my mind into the calculating machine | 13:20 | |
PerlJam | .oO( What would an infix:<perl> op do? ) |
13:21 | |
moritz | today's mini challenge: define a custom meta operator that can take an identifier, and applies the string as a method to all args | 13:22 | |
[Mperl] 1, 2, 3 would be the same as (1, 2, 3)>>.perl | 13:23 | ||
moritz is not quite serios | |||
*serious | |||
13:23
dakkar joined
13:24
lizmat joined
|
|||
PerlJam | moritz: that would be sort of like a meta-map (but the reduction doesn't make enough sense there) | 13:25 | |
masak | moritz++ # mini-challenge | ||
my (pessimistic) prediction: defining metaops will not work in Rakudo. :/ | 13:26 | ||
maybe in Niecza. | |||
colomon | I'd be surprised if it worked in Niecza. | ||
masak | timotimo: have you seen the great quote by Charles Babbage? :) | ||
moritz | also note that it's not quite a meta op | ||
because it doesn't take an op as argument, but an identifier | |||
colomon | unless you mean in the grand sense that it's reasonable to implement code that allows you to define metaops. | 13:27 | |
masak | timotimo: 'On two occasions I have been asked, — "Pray, Mr. Babbage, if you put into the machine wrong figures, will the right answers come out?" [...] I am not able rightly to apprehend the kind of confusion of ideas that could provoke such a question.' en.wikiquote.org/wiki/Charles_Babbage | ||
moritz should have termed it a "macro-challenge" :-) | |||
PerlJam | masak: that last bit of the quote "I am not rightly to apprehend ..." comes to mind *all the time* on IRC ;) | 13:28 | |
timotimo | masak: i have | ||
masak | timotimo: it's like the 19th-century version of 'Two different users asked me: "Will the program get the output right if I get the input wrong?", and I'm like "WTF!"' | ||
13:29
census left
|
|||
timotimo | the output may be right even if the input is wrong. but it'll be right for the wrong inputs. or if the inputs are truly bogus, they'll be wrong or - hopefully! - an exception or some defined error state at least | 13:29 | |
hoelzro | I love that quote | ||
colomon | PerlJam: on the internet in general! | 13:30 | |
arnsholt | hoelzro: Could you do me a favour and add your problem to the Zavolaj issues? | 13:38 | |
I'm a bit too busy at work ATM to deal with it right now, sadly =/ | 13:39 | ||
timotimo | what's a good way to let a user supply a filter to a method that will be passed to .grep? i tried method frob($crit) { $something.something.grep({$_<frob> ~~ $crit}).something.something }, but that didn't seem to work properly. is that because of a bogus $crit or something else? | ||
PerlJam | timotimo: I don't even understand what you're asking for. | 13:43 | |
hoelzro | arnsholt: sure! | 13:44 | |
colomon | timotimo: the natural way is just frob($crit) { $something.something.grep($crit).something.something } unless you want to not smartmatch $crit against the entire object passed to grep | ||
FROGGS | timotimo: if grep accepts a block, why dont you just pass a block? | ||
hoelzro | I could even post more tarballs that illustrate different problems later tonight | ||
13:45
snearch left
|
|||
timotimo | because the most common usage would be to pass in just a number | 13:46 | |
or a list | |||
but sometimes you want "everything but the number 1" | |||
FROGGS | I think you can do that only by passing a pointy block | 13:47 | |
13:47
isBEKaml joined
|
|||
FROGGS | and maybe wrap the param if it isnt a block already | 13:47 | |
colomon | r: say (1..20).grep(&is-prime) | 13:48 | |
camelia | rakudo 37c995: OUTPUT«2 3 5 7 11 13 17 19» | ||
colomon | r: say (1..20).grep(not &is-prime) | ||
camelia | rakudo 37c995: OUTPUT«» | ||
colomon | r: say (1..20).grep({not $_.is-prime}) | ||
camelia | rakudo 37c995: OUTPUT«1 4 6 8 9 10 12 14 15 16 18 20» | ||
timotimo | is there a swartzian transform for grep yet? :) | ||
PerlJam | timotimo: so you want multis; one for the common case and another for the general case? | ||
colomon | r: say (1..20).grep({!$_.is-prime}) | ||
camelia | rakudo 37c995: OUTPUT«1 4 6 8 9 10 12 14 15 16 18 20» | ||
colomon | I really don't think you'll easily do better than that | ||
timotimo | that sounds kind of like what i want | ||
colomon | r: sub test-numbers($crit) { (1..20).grep($crit); }; say test-numbers(&is-prime) | 13:49 | |
camelia | rakudo 37c995: OUTPUT«2 3 5 7 11 13 17 19» | ||
colomon | r: sub test-numbers($crit) { (1..20).grep($crit); }; say test-numbers({ !$_.is-prime }) | ||
camelia | rakudo 37c995: OUTPUT«1 4 6 8 9 10 12 14 15 16 18 20» | ||
pmichaud | good morning, #perl6 | 13:51 | |
moritz | good am, pm | ||
masak | rn: multi negate(&F) { return -> $x { !&F($x) } }; say (1..20).grep(negate &is-prime) | ||
isBEKaml | pmichaud: good morning | ||
camelia | rakudo 37c995, niecza v24-37-gf9c8fc2: OUTPUT«1 4 6 8 9 10 12 14 15 16 18 20» | ||
masak | HOP FTW, people. | 13:52 | |
colomon | \o | ||
masak | pmichaud! \o/ | ||
moritz | note that this HOP is even built into Perl 6 | ||
colomon | HOP++ | ||
moritz | r: say grep !*.is-prime, 1..20 | ||
camelia | rakudo 37c995: OUTPUT«1 4 6 8 9 10 12 14 15 16 18 20» | ||
masak | ooh | ||
colomon | moritz++ | ||
jnthn back | |||
colomon feels stupid for not thinking of that. | |||
isBEKaml likes HOP in what he read so far. :) | 13:53 | ||
but too many books, the list just keeps piling up. :| | |||
13:57
skids joined
|
|||
[Coke] | ETOOLITTLETIME | 13:59 | |
isBEKaml | exactly | 14:00 | |
PerlJam | sleep less ;) | ||
isBEKaml | nah, been there - only to get panic attacks in the middle of the day. :/ | ||
14:04
stevan_ joined
14:05
dayangkun left
|
|||
moritz | you'll automatically sleep less as you become older | 14:06 | |
14:06
crab2313 joined
|
|||
PerlJam | I don't think people actually sleep less as they get older. They only sleep less *at night* | 14:08 | |
moritz | might be | ||
masak | like cats. | 14:10 | |
spider-mario | speaking of cats: www.youtube.com/watch?v=BkgOzxKPJXQ | 14:12 | |
:> | |||
14:13
crab2313 left
14:15
xilo left
14:16
crab2313 joined
14:18
baest left
14:23
Targen left
14:24
xantamoc joined
14:26
SmokeMachine left
14:33
SmokeMachine joined
|
|||
[Coke] | .meow | 14:33 | |
yoleaux | DeadlineExceededError: Deadline exceeded while waiting for HTTP response from URL: edgecats.net/random | ||
14:35
xilo joined
14:37
spider-mario left,
rindolf joined
|
|||
isBEKaml | .cats | 14:41 | |
14:42
fgomez left
14:44
sqirrel left
14:47
lizmat left
14:49
broquain1 is now known as broquaint
14:54
fgomez joined
|
|||
FROGGS | .meow | 14:57 | |
yoleaux | moar.edgecats.net/cats/tumblr_lk64a...o1_500.gif | ||
FROGGS | \o/ | ||
14:57
kbenson joined
|
|||
FROGGS | boring | 14:58 | |
.meow | |||
yoleaux | moar.edgecats.net/cats/z1fLa.gif | ||
14:58
ggoebel left
|
|||
FROGGS | ohh, this one is good :oD | 14:58 | |
dalek | p: 1fd7f29 | jnthn++ | src/vm/jvm/runtime/org/perl6/nqp/runtime/Ops.java: Correction to freshcoderef. |
14:59 | |
p: 1c43791 | jnthn++ | src/vm/jvm/runtime/org/perl6/nqp/sixmodel/SerializationWriter.java: Improve error reporting. |
|||
p: e8b076b | jnthn++ | src/NQP/Actions.nqp: Fix compiling our-scoped subs. Not sure why we ever got away without this on Parrot. |
|||
14:59
ggoebel joined
|
|||
dalek | kudo/jvm-support: a996710 | jnthn++ | / (3 files): Perl6::Ops is backend-specific. |
15:01 | |
kudo/jvm-support: 32f7240 | jnthn++ | / (2 files): Add a partly translated Perl6::Ops for JVM. We'll have some Perl 6 specific ops in JVM land. This translates the mappings, though of course the ops all still need implementing. This just means we can compile things that refer to them. |
|||
kudo/jvm-support: 8c05ec6 | jnthn++ | src/Perl6/Actions.nqp: nqp::concat => nqp::concat_s They are just synonyms by now. |
|||
kudo/jvm-support: 72ab250 | jnthn++ | / (2 files): Add Perl6::Actions to the JVM build. |
|||
FROGGS | "Not sure why we ever got away without this on Parrot." <-- I really do like these kind of weirdness | 15:02 | |
15:03
frdmn left
|
|||
jnthn | I don't 'cus it tends to tell me I've missed something somewhere... | 15:03 | |
moritz | www.perlmonks.org/?node=1030688 # nice algorithm question; I'd appreciate an answer with Perl 6 code :-) | 15:07 | |
(though I'm not the OP) | |||
15:09
Pleiades` joined
|
|||
kresike | bye folks | 15:12 | |
15:12
kresike left
|
|||
[Coke] | ~~ | 15:12 | |
15:14
ggoebel left
15:16
ggoebel joined
15:18
tgt joined
|
|||
tadzik | this "not sure why we got away with this" is sometimes paired with "oh look, for reasons unknown this weird bug is now fixed" :P | 15:19 | |
FROGGS | that is exactly what I was thinking | ||
isBEKaml | hey, tadzik! | ||
15:20
ggoebel_ joined,
ggoebel left,
ggoebel_ is now known as ggoebel
15:25
isBEKaml_ joined
15:27
isBEKaml left,
isBEKaml_ is now known as isBEKaml,
isBEKaml left,
isBEKaml joined
|
|||
tadzik | \o/ | 15:30 | |
hey hey | |||
isBEKaml | tadzik: how goes GUInification? One GUILib to rule them all? :) | ||
tadzik: Still picking leaves of the great forest? :P | 15:32 | ||
s/of/off/ | |||
pmichaud | nqp's ohloh page was finally updated. www.ohloh.net/p/nqp | 15:34 | |
jnthn | .. | 15:37 | |
is mostly written in C | |||
with a well-commented source code | |||
:D | |||
pmichaud | jnthn: you should claim your projects. www.ohloh.net/people?q=jnthn | ||
jnthn | hm, do I have an account there... | ||
oh, seems so | 15:38 | ||
tadzik | isBEKaml: haha. No, I don't remember thinking about it at all | ||
15:39
FROGGS left
|
|||
timotimo | of course a site such as ohloh would have trouble classifying such a niche language as nqp or even as perl6 | 15:40 | |
15:42
isBEKaml left
|
|||
jnthn | "4510 total commits to 6 projects" :) | 15:42 | |
arnsholt | hoelzro: Thanks for the bug report! More examples would be great as well. Might be useful to figure out WTH is going on | 15:43 | |
15:43
isBEKaml joined,
stevan_ left
|
|||
moritz claimed a few of the projects on ohloh | 15:48 | ||
15:51
ruoso left,
ruoso joined
15:52
frdmn joined
|
|||
isBEKaml | tadzik: All in good time. :D | 15:53 | |
15:56
jerome_ left
16:01
kaleem left
16:05
daxim left
16:08
Chillance joined
16:09
spider-mario joined
16:12
FROGGS joined
16:15
isBEKaml left
16:16
dmol joined
16:22
lizmat joined
|
|||
dalek | p: 7853513 | jnthn++ | src/vm/jvm/ (2 files): Greatly shrink lexical name list code size. Can further optimize this later as many times the names are not needed at all in execution. |
16:24 | |
16:24
domidumont left
|
|||
dalek | kudo/jvm-support: a79969d | jnthn++ | tools/build/Makefile-JVM.in: Add Perl6::Grammar to JVM build. |
16:25 | |
kudo/jvm-support: 491bf5e | jnthn++ | tools/build/Makefile-JVM.in: Add Perl6::Optimizer to the JVM build. |
|||
kudo/jvm-support: 2877033 | jnthn++ | tools/build/Makefile-JVM.in: Add Perl6::Compiler to JVM build. |
|||
16:27
jerome_ joined
|
|||
[Coke] | so I peeked at olhol for the first time in ages. doesn't seem to be a way to say "all the logins by coke at github are me", instead I have to go project by project and claim them. | 16:28 | |
nwc10 | that seems a bit, well, suboptimal on their part | ||
[Coke] claims 2 or 3 and give sup. | 16:31 | ||
16:39
sizz left,
sizz joined
|
|||
dalek | kudo/jvm-support: 982d91e | jnthn++ | / (2 files): Add compiler frontend program to the JVM build. |
16:40 | |
kudo/jvm-support: 911d56b | jnthn++ | .gitignore: Update .gitignore. |
|||
16:47
SunilJoshi joined
16:52
alester joined
16:54
SunilJoshi left
17:00
dakkar left,
jercos_ is now known as jercos
17:08
snearch joined
17:09
pecastro left
17:10
pecastro joined
17:13
tgt left,
thou joined
|
|||
pmichaud | p6: my $a = 1; $a.++; say $a; | 17:16 | |
camelia | niecza v24-37-gf9c8fc2: OUTPUT«2» | ||
..rakudo 37c995: OUTPUT«===SORRY!===CHECK FAILED:Undefined routine '&postfix:<.>' called (lines 1, 1)» | |||
pmichaud | rakudobug (maybe already reported) | ||
moritz | long-known NYI feature | 17:20 | |
at least long known to those that look at roast fudges :-) | 17:21 | ||
jnthn bbl; dinner | 17:23 | ||
17:24
japhb_ joined
|
|||
diakopter | japhb_: welcome. | 17:24 | |
_sri | the rust folks are redesigning their I/O API, maybe of interest to some here mail.mozilla.org/pipermail/rust-de...03746.html | 17:25 | |
cognominal | moritz: where are roast results dipslayed? | ||
japhb_ | o/ | ||
cognominal | … if they are | ||
moritz | on your terminal, when you run 'make spectest' | 17:28 | |
17:32
estrabd left
|
|||
diakopter | _sri: thanks for the link. If I were imagining undertaking such a thing for a language-dedicated VM (well, "runtime") such as Rust's, I'd steal libuv from node, including exposing the event loops from the VM, port node's JS api directly to a language such as NQP, then implement the currently-standard nqp:: IO ops on top of that "node" API (for short-term compatibility), in addition to adding new ones for async, then implement(/redesign/adapt) ... | 17:35 | |
... the Perl 6 IO API on top of that, then gradually eliminate the middle layers over the next months/years... | |||
_sri | diakopter: i believe that's exactly where they started | ||
diakopter | hah. | ||
_sri | but now they are moving in a different direction to take advantage of threads | 17:36 | |
diakopter | do you know why they couldn't use threads with libuv? | 17:37 | |
_sri | it's quite interesting, apparently they have something very similar to parrot tasks (green threads mapped to a number of real threads) | ||
it could still use libuv internally, don't know details yet i'm afraid | 17:39 | ||
the goal seems to be a synchronous looking API that scales really well with dirt cheap green threads (through non-blocking I/O) github.com/brson/rust/blob/io/src/...mod.rs#L11 | 17:41 | ||
very very close to how parrot did it | 17:42 | ||
17:43
tgt joined
|
|||
diakopter | eh | 17:45 | |
except parrot has no native event loops or async IO...? | 17:46 | ||
.. which makes it completely different... | |||
17:46
erkan left
|
|||
_sri | afaik it does internally | 17:46 | |
17:46
erkan joined,
erkan left,
erkan joined
|
|||
diakopter | as far as you know what | 17:46 | |
_sri | whiteknight explained it to me once | 17:47 | |
diakopter | parrot has native event loops or async IO? no. | ||
_sri | implicit yes | ||
i'm not sure if it ever made it into a real release | |||
diakopter | implicit? | ||
_sri | but it was supposed to use non-blocking I/O for everything | 17:48 | |
diakopter | *cough* | ||
lots of things were supposed to happen | |||
_sri | *all* I/O operations would look blocking, but behind the scenes use non-blocking I/O | ||
diakopter | okay, well, I'm not sure why we're talking about some theoretical parrot that's completely different from the current [or ever existing] one | 17:49 | |
_sri | i think it might have been part of the parrot release that added threads | ||
in the end it's just an optimization | 17:50 | ||
diakopter | hm, you seem to have interpreted my msg "except parrot has no native event loops or async IO...?" as me asking whether it had them.. instead of what I meant, which was "it doesn't have those... why do you think it does?" | ||
_sri | ah, ok | 17:51 | |
like i said, i'm just interpreting the things i heard from whiteknight and reini, but don't actually know the code | 17:52 | ||
diakopter | ok. such malarkey activates my no-spin-zone persona | 17:54 | |
dalek | rl6-roast-data: b807d88 | coke++ | / (4 files): today (automated commit) |
18:05 | |
18:05
kaleem joined
|
|||
[Coke] | niecza has been dirty for 282 days. pugs has been clean for 4 days. rakudo has been dirty for 1 day. | 18:06 | |
all in S32-temporal. | 18:07 | ||
18:10
spider-mario left
18:11
spider-mario joined
18:14
alester left
|
|||
moritz | will probably be fixed the timezone pull request | 18:15 | |
18:22
tgt left
18:23
tgt joined
|
|||
[Coke] is all excited that his new office digs have a window. | 18:26 | ||
18:27
fgomez left
18:28
mattp_ left
18:34
Hello9 joined
|
|||
Hello9 | Hello! :D | 18:34 | |
Wanted to share a new programming forum: thedevshed.net/forum/ | |||
feel free to join | |||
:) | |||
18:34
kaleem left
18:36
crab2313 left
|
|||
diakopter | Hello9: why? | 18:37 | |
18:37
SamuraiJack left,
fgomez joined
|
|||
diakopter | Hello9: that forum has ZERO non-admin/moderator posts. how could it possibly be helpful to anyone here? | 18:40 | |
18:42
dmol1 joined
|
|||
timotimo | well, he did say it's new ... | 18:42 | |
diakopter | hm, true. | ||
or she. | 18:43 | ||
18:43
dmol left,
estrabd joined
|
|||
timotimo | indeed. | 18:44 | |
diakopter | anyone here work somewhere that uses google apps for business/gmail and formerly used Exchange/Outlook? | 18:45 | |
Hello9 | The forum is new | ||
launched today | |||
thedevshed.net/forum/announcements/...tml#post68 | |||
Anyways, feel free to join :) | 18:46 | ||
timotimo | hm, the only part that would refer to perl6 at all would be the "perl and ruby development" subforum of "web development" | ||
18:46
stevan_ joined
|
|||
timotimo | not sure i agree with that choice | 18:46 | |
both ruby and perl are useful for much more than web development | |||
diakopter | :) | ||
Hello9 | Yes | ||
But where should it be placed then? | |||
"Web Development" is one of it's uses | 18:47 | ||
timotimo | "programming"? | ||
python's in "programming", too, even though it has quite a few famous web frameworkey bits | |||
Hello9 | :) | 18:48 | |
timotimo | i wonder what the filter bubble you come from is, such that you would name one of those subforums "visual basic and .net framework", i always thought c# was the "^H'poster child' of the .net family of languages and technologies | ||
flussence | .oO( I feel like I've tripped over a crack in the universe and landed face-first in 2002... ) |
18:50 | |
diakopter | er, 1998 | ||
timotimo | there was .net in 1998? | 18:51 | |
18:51
Maddingu1 joined
18:52
Maddingue left
|
|||
flussence | diakopter: I know, but I didn't start doing PHP until '02. I quickly found out people promoting sites like this were a dime a dozen (and they almost always went nowhere :) | 18:52 | |
timotimo | .o( "this reddit thing? it won't go anywhere" ) | 18:53 | |
18:53
rking1 joined
18:54
xinming left
|
|||
GlitchMr | rn: say '一二三四五六七八九十' ~~ m:g/<[一..十]>/ | 18:54 | |
camelia | niecza v24-37-gf9c8fc2: OUTPUT«===SORRY!===Regex modifier g not yet implemented at /tmp/xQ6IjuQfXo line 1:------> say '一二三四五六七八九十' ~~ m:g⏏/<[一..十]>/Unhandled exception: Check failed at /home/p6eval/niecza/boot/lib/CORE.setting line 1443 (die … | ||
..rakudo 37c995: OUTPUT«False» | |||
GlitchMr | rn: say '一二三四五六七八九十'.comb:/<[一..十]>/ | 18:55 | |
camelia | niecza v24-37-gf9c8fc2: OUTPUT«===SORRY!===Confused at /tmp/Nm1SRRn1Xa line 1:------> say '一二三四五六七八九十'.comb⏏:/<[一..十]>/Parse failed» | ||
..rakudo 37c995: OUTPUT«===SORRY!===Two terms in a rowat /tmp/3MWBeUJwKH:1------> say '一二三四五六七八九十'.comb⏏:/<[一..十]>/ expecting any of: method arguments postfix infix stopper infix or meta-infix statement en… | |||
GlitchMr | rn: say '一二三四五六七八九十'.comb(/<[一..十]>/) | ||
camelia | rakudo 37c995, niecza v24-37-gf9c8fc2: OUTPUT«一 二 三 五 六 七 八 九 十» | ||
18:55
xinming joined,
rking1 is now known as rking
|
|||
GlitchMr | It doesn't match 四... | 18:55 | |
jnthn | .u 三四五 | 18:57 | |
yoleaux | No characters found | ||
jnthn | ...what? :) | ||
18:57
Hello9 left
|
|||
jnthn | r: say "三四五".ords | 18:57 | |
camelia | rakudo 37c995: OUTPUT«19977 22235 20116» | ||
18:57
stevan_ left
|
|||
GlitchMr | .u 三 | 18:57 | |
yoleaux | No characters found | ||
GlitchMr | lolwhat | ||
n: say +"三" | 18:58 | ||
camelia | niecza v24-37-gf9c8fc2: OUTPUT«Unhandled exception: Cannot parse number: 三 at /home/p6eval/niecza/lib/CORE.setting line 1504 (die @ 5)  at /home/p6eval/niecza/lib/CORE.setting line 3620 (ANON @ 10)  at /home/p6eval/niecza/lib/CORE.setting line 3622 (NumSyntax.str2num @ 5)  at /h… | ||
moritz | 4E09 三 CJK UNIFIED IDEOGRAPH-4E09 | ||
GlitchMr | That's really good name for a character. | ||
It's three in Chinese. | 18:59 | ||
It matched everything except for four. | |||
But, I guess it makes sense | |||
After all, I cannot do that: | |||
n: say +"three" | |||
camelia | niecza v24-37-gf9c8fc2: OUTPUT«Unhandled exception: Cannot parse number: three at /home/p6eval/niecza/lib/CORE.setting line 1504 (die @ 5)  at /home/p6eval/niecza/lib/CORE.setting line 3620 (ANON @ 10)  at /home/p6eval/niecza/lib/CORE.setting line 3622 (NumSyntax.str2num @ 5)  a… | ||
GlitchMr | Because it isn't an actual number, just a word for it. | 19:00 | |
19:05
berekuk joined
|
|||
skids wonders if anyone ever took the ascii/shift_jis art tools to the unicode extreme. | 19:06 | ||
19:14
Maddingu1 is now known as Maddingue
19:26
ggoebel left
19:28
snearch left
19:30
ggoebel joined
|
|||
GlitchMr | skids, xahlee.info/comp/unicode_ascii_art.html | 19:32 | |
for some example | 19:33 | ||
Unicode ASCII art Camelia could be interesting. | 19:34 | ||
arnsholt | I guess »ö« is a bit too small scale? =) | 19:35 | |
19:36
tgt left
|
|||
GlitchMr | This is ISO-8859-1 art. | 19:37 | |
arnsholt | I guess | 19:38 | |
Not if you write ö with a combining umlaut =) | 19:39 | ||
GlitchMr | That's cheating | ||
I could also use fullwidth characters in ASCII art. | |||
But IMO, that is cheating. | |||
arnsholt | Hehe, true. It'll still normalise to the ISO subset | ||
19:40
tgt joined,
fgomez left
19:41
ggoebel left
19:43
ggoebel joined
19:47
berekuk left
19:48
berekuk joined
20:03
shinobicl joined
20:04
rindolf left
|
|||
masak writes t2 blog post | 20:06 | ||
20:07
ggoebel left
20:09
adu joined
20:10
bluescreen10 left
20:11
dmol1 left
|
|||
[Coke] attempts to run rakudo-jvm and gets a stack trace. progress! | 20:13 | ||
jnthn++ | |||
20:14
mattp_ joined
20:15
ggoebel joined
20:18
kurahaupo joined
20:23
stevan_ joined
20:35
ggoebel left
20:36
ggoebel joined
20:39
stevan_ left
20:46
tgt left
20:53
kurahaupo left
20:54
xinming left
20:56
xinming joined
20:58
MrMeek-afk joined
21:00
MrMeek left
21:02
tgt joined
|
|||
masak | lol, I blug! strangelyconsistent.org/blog/t2-rectangle-haikus | 21:02 | |
moritz: FINALLY | |||
now please start nagging me about t3 instead :P | 21:03 | ||
21:03
kurahaupo joined
21:04
skids left
|
|||
jnthn | masak: When's t3 coming? :P | 21:07 | |
21:10
TimToady_ joined
|
|||
labster | masak: typo: part-of-speec | 21:10 | |
21:10
orevdiabl joined
|
|||
masak | labster: thanks, fixing. | 21:10 | |
jnthn: within two months :P | |||
21:11
mls joined
21:12
xantamoc left
|
|||
labster | Well, I'm off to make my code less elegant, because regex and rx { } don't seem to work when I add them to the setting. | 21:12 | |
masak | living in the undistributed future sometimes requires making one's code less elegant. | ||
labster: just be glad it isn't still 2008 :P | 21:13 | ||
jnthn | What's being added to the setting, ooc? | 21:14 | |
labster | File::Spec. It's needed for IO::Path to work properly. | 21:15 | |
I'm probably going to add it as IO::Spec instead. | |||
21:15
mls_ left,
sitaktif1 left,
markov left,
TimToady left
|
|||
labster | .oO ( 'ooc' still means 'out of character' to me, too much roleplaying habit ) | 21:16 | |
masak | "What's being added to the setting, out of character?" :P | 21:17 | |
raiph | more on pinto/stratopan: perlmaven.com/videos/jeffrey-thalha...-and-pinto # relevant to panda? relevant to lizmat and other #p6p5ers re p6 & cpan? | ||
labster | Properly on non-unix OSes, I guess I should say. It's a bunch of string operations, so it shouldn't affect jvm work at all. | 21:19 | |
21:22
Chillance left
|
|||
arnsholt | labster: Proper path handling on non-Unix is a very laudable goal, IMO | 21:22 | |
21:23
sitaktif1 joined,
markov joined
21:24
Yappo______ joined
|
|||
dalek | p: a33f00e | jnthn++ | src/vm/jvm/runtime/org/perl6/nqp/runtime/ (6 files): Simplify invokeInternal exception handling. Part of preparation for moving it into the generated code. |
21:24 | |
p: 3326be2 | jnthn++ | src/vm/jvm/ (2 files): Generate handler currently in invokeInternal. |
|||
p: fbf65e4 | jnthn++ | src/vm/jvm/ModuleLoader.nqp: Eliminate use of a hack. |
|||
lizmat | raiph: pinto is most definitely very interesting and stratopan should be watched | 21:25 | |
labster | I had a prototype working as IO::Path::More in the ecosystem. I'm not sure, but I might have broken it with the changes to IO::Path in the core. Well, it should still work with Star. | 21:26 | |
lizmat | but before we can think about that, we need some perl 6 internals to fix | ||
labster | Is anyone making a Star for this month? | 21:27 | |
lizmat | sleep& | ||
raiph | lizmat: thanks. it's a great video too. .oO ( crowdfund jnthn ) | ||
21:28
spider-mario left
|
|||
lizmat | fwiw, I don't think funding is the pb, tuits is | 21:28 | |
raiph | right | ||
lizmat | really sleep& | ||
raiph | gnite | ||
PerlJam | lizmat: jnthn would have more tuits if Perl6 were his full-time job ;) | 21:29 | |
er, more tuits for perl 6 anyway | |||
21:29
woolfy left
|
|||
dalek | p: 2a34af7 | jnthn++ | src/vm/jvm/ (3 files): Basic usage of invokedynamic for sub calls. Plenty left to improve yet, but this gets the basics in place. |
21:30 | |
21:30
BenGoldberg joined
|
|||
masak | PerlJam: I'm pretty sure jnthn wouldn't make Perl 6 his full-time job, given the chance, though. | 21:30 | |
PerlJam: thing is, with our job at edument.se, that it's pretty much the perfect combination of teaching, consulting, and 20% time over for Perl 6. | 21:31 | ||
PerlJam | whatever keeps it fun :) | ||
masak | yeah. | ||
this mix seems to be more or less what the combustion engine needs to work. | |||
jnthn | I could see myself wanting to shuffle the percentage more Perl 6-wards in the future, but I don't think I'd want to leave my teaching work completely behind. :) | ||
masak | oh, agree. | 21:32 | |
jnthn | There's a chance I'll need to refactor various aspects of my life in a year or so anyways, though... :) | ||
masak | and if someone were to offer me a 100% Perl 6 job, I'd certainly be willing to discuss terms... :) | ||
jnthn.phase++ | |||
jnthn | The teaching is enjoyable, but also physically helpful: it gives me a form of work that doesn't involve being crouched over a keyboard. :) | 21:35 | |
I'm pretty sure if I did that all day every day it'd start hurting. | |||
PerlJam needs something more physical to do in his job/life | 21:36 | ||
Really I just need to walk in the woods every once in a while. the problem is that where I live there aren't really woods to walk in. | |||
[Coke] | masak: hey, when's t3 coming (oh wait, I don't care I didn't submit one to those. ;) | 21:37 | |
masak | PerlJam: we're hiring. we have woods. | 21:38 | |
[Coke]: :P | |||
PerlJam | masak: you're also on another continent. I doubt I'll get my wife and kids to go for that :) | ||
masak | I have six t3 solutions here. | ||
masak .oO( no, *you're* on another continent... ) :P | 21:39 | ||
PerlJam | :-P | ||
21:40
mikemol joined
|
|||
labster | Huh, I could use a job. It might be nice to live in a country that doesn't invade other countries every few years. | 21:40 | |
BenGoldberg | I'm confused. How do you know which of you is on this continent, and which of you is on another one? :) | 21:41 | |
21:41
avuserow joined
|
|||
BenGoldberg | For various definitions of "this" continent ;) | 21:41 | |
avuserow | rn: say 1_000 | ||
PerlJam | BenGoldberg: we use continental junctions. | 21:42 | |
camelia | rakudo 37c995, niecza v24-37-gf9c8fc2: OUTPUT«1000» | ||
avuserow | \o/ | ||
jnthn | .oO( this was so much easier back in the good old Pangaea days... ) |
||
labster | I don't think any of us live on yonder continent. | ||
masak | avuserow: hey, long time no see. | ||
21:42
xilo left
|
|||
avuserow | hi masak! | 21:42 | |
[Coke] | git st | 21:43 | |
avuserow | I've been busy with $dayjob but occasionally keep up on stuff here | ||
avuserow hopes everyone is doing well | 21:44 | ||
[Coke] | er, ww. | ||
kurahaupo | labster: I do. :-) | 21:46 | |
BenGoldberg | So, I've been thinking about &is-prime since last night... and wondering, how difficult would it be to change it so that instead of returning True and False, it would only return True if the number is known (absolutely) to be prime, false if the number is known to be composite, or lastly, a Num, $p, between 0 and 1 (exclusive) indicating that the number is prime with probability at least $p. | 21:47 | |
masak | BenGoldberg: "how difficult" != "how desirable" | 21:49 | |
PerlJam | BenGoldberg: sounds weird. | ||
BenGoldberg: if you were going to go through that trouble, why not "True but $probability" | |||
? | |||
masak | simple protocols have their clear advantages. | ||
PerlJam | BenGoldberg: i.e. *always* give the probability | 21:50 | |
BenGoldberg | Oh, I didn't think of that :) | 21:51 | |
Ok, second is-prime related question: How desirable would it be to change the spec so that it requires that multiple calls to is-prime on any Int do multiple independent tests? | 21:54 | ||
masak | isn't the probability simply 1/2 ** $tries ? | 21:55 | |
BenGoldberg | Normally, yes | ||
But libtommath uses an internal lookup table | |||
masak | why would you need that back from the function? when it's you who passes $tries, I mean? | ||
BenGoldberg | Well, in the case of the library being used, if $tries is bigger than 256, it simply returns an error code, instead of doing the tests | 21:56 | |
Secondly, if do $x.is-prime(4) twice, the second call will perform the exact same computations as the first call, due to that lookup table. | 21:57 | ||
PerlJam | BenGoldberg: why do you want to change is-prime in these ways? What's the motivation? | 21:58 | |
Are you trying to minimize surprises when someone passes a low value for $tries? | 21:59 | ||
(or a too-high value) | |||
BenGoldberg | rn: 5.is-prime(10000) | ||
camelia | rakudo 37c995, niecza v24-37-gf9c8fc2: ( no output ) | ||
BenGoldberg | rn: say 5.is-prime(10000) | ||
camelia | rakudo 37c995: OUTPUT«False» | ||
..niecza v24-37-gf9c8fc2: OUTPUT«True» | |||
PerlJam | Seems to me that one would be better served by a constraint on $tries | 22:00 | |
If nothing else, you could get a meaningful message when you do something screwy :) | 22:01 | ||
BenGoldberg | rn: say 5.is-prime(257) | ||
camelia | rakudo 37c995: OUTPUT«False» | ||
..niecza v24-37-gf9c8fc2: OUTPUT«True» | |||
22:03
lustlife left
|
|||
BenGoldberg | If separate calls to is-prime were specified to use independent, random numbers for the tests, then $x.is-prime(1000) would be semantically the same thing as doing [&&] map *.is-prime, 1..4 | 22:06 | |
err, make that [&&] map *.is-prime(250), 1..4 | 22:07 | ||
err, make that [&&] map $x.is-prime(250), 1..4 | |||
But do to libtommath (used by nqp, used by rakudo) using the same "random" numbers each and every time, the results cannot be combined that way. | 22:09 | ||
japhb_ | masak: blog typo: "rectangula haiku" | 22:11 | |
masak | japhb_: thanks, fixing. | 22:13 | |
22:15
ruoso left,
Grrrr left,
kshannon left,
lue left,
BinGOs left,
xilo joined,
ruoso joined,
Grrrr joined,
kshannon joined,
lue joined,
BinGOs joined
|
|||
masak | BenGoldberg: that does sound like a serious issue. | 22:15 | |
22:17
tgt left,
kurahaupo left
|
|||
cognominal | I suppose that if I want to avoid infinite recursion on some of my rules in my bast grammar, I must express them using <EXPR> and precedence? | 22:21 | |
22:21
tgt joined
|
|||
jnthn | cognominal: Main thing is be sure to avoid left-recursion. | 22:22 | |
cognominal | ya, that's exactly what I mean | 22:23 | |
japhb_ | I understand the desire for independent tests in is-prime, but couldn't the immediate solution be to just cap the test count so that Rakudo does the right thing on insanely high inputs? After all, I suspect 2**-256 is a WAY smaller probability than the chance of bit error, even with ECC. | ||
22:23
fgomez joined
|
|||
japhb_ | *insanely high test counts | 22:23 | |
cognominal | also I will need to hook the top of my grammar in nqp <EXPR> | 22:24 | |
22:30
skids joined,
kurahaupo joined
|
|||
masak | 'night, #perl6 | 22:32 | |
22:34
adu left
|
|||
FROGGS | gnight masak | 22:35 | |
22:37
stevan_ joined
|
|||
dalek | p: ba958d2 | jnthn++ | src/vm/jvm/ (2 files): Support calling invokedynamic BS with extra args. |
22:37 | |
p: b1d4669 | jnthn++ | src/vm/jvm/ (2 files): Pass name as extra string arg. This avoids running into issus where we use chars that are not allowed in JVM method names, fixing the 11-sub.t regression. |
|||
p: 55e954c | jnthn++ | src/vm/jvm/ (2 files): Pass call site index as static data, not per call. |
|||
cognominal | g'night | 22:42 | |
22:44
Timbus left,
Timbus joined
22:45
sivoais joined
|
|||
dalek | : 6b5eea2 | (Tobias Leich)++ | lib/Perl6/P5World.pm: use nqp::getenvhash |
22:51 | |
: 31ca7ab | (Tobias Leich)++ | lib/Perl5.pm: move slang setup to EXPORT sub, and fiddle with CUSTOM_LIB<Perl5>, which is our @INC |
|||
: ff9ed03 | (Tobias Leich)++ | lib/Perl6/P5Actions.pm: add implicit :from<Perl5> for require and dispatch @INC to %CUSTOM_LIB<Perl5> |
|||
: e88c222 | (Tobias Leich)++ | lib/Perl6/P5Grammar.pm: add implicit :from<Perl5> for use |
|||
: 2e5ba5e | (Tobias Leich)++ | t/test_summary: sort the tests by pass and plan |
22:52 | ||
22:53
sivoais left
22:55
sivoais joined
22:58
census joined
|
|||
timotimo | masak++ # t2 review | 23:01 | |
"because it bleads through into the whole" - probably typo'd "bleeds" here? | 23:02 | ||
23:03
sivoais left
23:05
sivoais joined
|
|||
japhb_ | The problem with being around punsters all the time is that your sense of spelling goes to hell. | 23:07 | |
23:14
sivoais left
23:15
sivoais joined
|
|||
BenGoldberg | rn: my @a = 0; push @a, map 1-*, @a for 1..6; say @a | 23:20 | |
camelia | rakudo 37c995, niecza v24-37-gf9c8fc2: OUTPUT«0 1 1 0 1 0 0 1 1 0 0 1 0 1 1 0 1 0 0 1 0 1 1 0 0 1 1 0 1 0 0 1 1 0 0 1 0 1 1 0 0 1 1 0 1 0 0 1 0 1 1 0 1 0 0 1 1 0 0 1 0 1 1 0» | ||
BenGoldberg | Just for fun, how would I make a lazy infinite list similar to that one? | 23:21 | |
(That's the Thue-Morse, in case anyone's curious) | 23:22 | ||
(That's the Thue-Morse sequence, in case anyone's curious) | |||
23:24
berekuk left
|
|||
timotimo | you can always gather/take, can't you? | 23:25 | |
23:25
berekuk joined
23:27
berekuk left
|
|||
japhb_ | camelia is responding quite slowly; is everyone else trying stuff out? :-) | 23:28 | |
r: my @a = 0, -> *@b {map 1-*, @b} ... *; say @a[^50]; | 23:30 | ||
camelia | rakudo 37c995: OUTPUT«0 1 1 0 1 0 0 1 1 0 0 1 0 1 1 0 1 0 0 1 0 1 1 0 0 1 1 0 1 0 0 1 1 0 0 1 0 1 1 0 0 1 1 0 1 0 0 1 0 1» | ||
BenGoldberg | :) | ||
[Coke] | japhb_++ | 23:31 | |
japhb_ | I find it interesting that the operational part of the infinite stream answer (the part before say) is actually shorter than the finite list code | 23:33 | |
timotimo | do i see correctly that that sequence just kind of repeats after a pretty shord period? | 23:36 | |
BenGoldberg | It never repeats exactly | 23:38 | |
japhb_ | timotimo, I don't see it -- it is tricky on the eye, but so far I'm seeing almost-the-same for 8 or 10 bits and then a missing or flipped bit | 23:39 | |
timotimo | ah, ok | ||
i could just look up the wikipedia article ;) | |||
23:42
berekuk joined
|
|||
japhb_ | Wow, that is one cool sequence, for how simply it is defined. | 23:43 | |
23:43
berekuk left
|
|||
timotimo | it reminds me a bit of how you generate a whatsitcalled code, where going +1 or -1 will always be one bit flipped | 23:45 | |
japhb_ | The third paragraph in the WP article under "Some properties" reminds me a lot of Penrose tilings ... while non-periodic, any layout of radius R is guaranteed to appear again within a distance of nR (and I think for the classic dart/kite, n == 2?) | ||
timotimo | but that one's made rather recursive | ||
japhb_ | Grey code? | 23:48 | |
Sorry, Gray Code | 23:49 | ||
I always forget which way his name was spelled | |||
timotimo | i think that's the one, yes | 23:50 | |
you take the sequence so far, prepend it with a 0 and a 1 and flip one of them around i believe | |||
BenGoldberg | Here's another way of generating it | 23:59 | |
r: my @a = 0; @a := map {$_,1-$_}, @a for 1..6; say @a | |||
camelia | rakudo 37c995: OUTPUT«0 1 1 0 1 0 0 1 1 0 0 1 0 1 1 0 1 0 0 1 0 1 1 0 0 1 1 0 1 0 0 1 1 0 0 1 0 1 1 0 0 1 1 0 1 0 0 1 0 1 1 0 1 0 0 1 1 0 0 1 0 1 1 0» |