»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'p6: say 3;' or rakudo:, std:, or /msg camelia p6: ... | irclog: irc.perl6.org | UTF-8 is our friend!
Set by moritz on 25 December 2014.
timotimo avar: yes, nom is our current main branch 00:00
avar Where's the build instructions for all of this? 00:01
masak avar: github.com/rakudo/rakudo/blob/nom/INSTALL.txt
00:02 espadrine left
ab5tract avar: alternatively, you can use rakudobrew github.com/tadzik/rakudobrew/ 00:03
avar amazing
ab5tract avar: is that your response to ./Configure.pl --backends= ? :) 00:04
anyway, looking forward to the backlog. ciao for now #perl6! 00:06
00:07 adu joined
timotimo gnite 00:08
avar mm, the INSTALL.txt needs some instructions for how to use your own clones of nqp/moarvm, I tried to compile my own moarvm and --with-moar just whinees about missing .so's 00:10
00:10 KCL_ joined
timotimo what i usually do is just point the --prefix= at the same place for all three components 00:11
but we also now have a flag that'll let you use existing git clones or at least existing git repos so you don't have to fetch everything over the 'net all the time
00:12 hzhou321 left 00:17 KCL_ left
btyler avar: here's my "I'm sick of doing this by hand" 3-minute script for refreshing clones of moar, nqp, and rakudo: ssl.thorsen.pm/paste/4a9cbc9b6700 . not as a "use this code" but "pull out the perl Configure.pl lines to suit you" 00:22
00:23 SevenWolf joined, KCL_ joined
avar btyler: cool 00:24
vendethiel prefers perl6's ffi to nim 00:36
though we don't have memory regions... oh wait that's good
00:38 SevenWolf left 00:44 rjbs- joined 00:50 flussenc1 is now known as flussence 01:04 broquaint left
raydiak_ just curious...did something weird happen in the rakudo repo? "On branch nom␤Your branch is ahead of 'origin/nom' by 92 commits." I didn't commit anything, much less 92 anythings 01:08
01:08 raydiak_ is now known as raydiak, hzhou321 joined 01:13 muraiki_ joined
hoelzro ab5tract: happy to be of serivce =) 01:18
service, too 01:20
Peter_R raydiak, looks like your repo's come back from the future 01:22
raydiak guess so :) 01:23
hoelzro your kids, Marty! 01:24
something has to be done about your kids!
raydiak hey it's 2015, where's the holographic sharks already? 01:25
01:25 kurahaupo joined
raydiak
.oO( everyone goes on about the flying cars and hoverboard and forgets the holographic sharks )
01:25
Peter_R Don't forget the self lacing shoes 01:30
Soon to be a reality I hear
raydiak heh 01:33
01:34 kurahaupo left
muraiki_ does anyone know if there are any efforts to make subset constraints checked at compile type? I guess that'd essentially be on the way to implementing dependent types, so I imagine that answer is no :) 01:39
masak muraiki_: no. 01:42
muraiki_: but I don't really see any reason some "safe" subset (pun not intended) of subset constraints couldn't be checked at compile time, as a friendly bonus on the part of the compiler. 01:43
the only thing that it has to be careful about is that the subset check terminates. which can be checked in a fair number of cases without angering the Halting Problem Beast.
...but (a) it's not done yet, and (b) who knows whether it will be 01:44
muraiki_ masak: thanks!
masak same thing with enforcing return types. *theoretically*, Perl 6 could warn and say "you're clearly returning a Str here, but you declared you'd return an Int. that'll never work, and so I'm telling you now instead of letting you find out at runtime." 01:45
...but it's not done yet.
I consider those things optional compile-time bonuses on which you should not depend (because they'd likely be implementation-dependent) but which will ultimately save you time because you don't have to rebuild your whole project.
vendethiel masak: I think the return type one will come a long time before liquid types ;-) 01:47
Peter_R I wish I knew what half the stuff talked about here meant 01:50
vendethiel masak: makes me think about CL's optional types 01:52
it's not required in the specs that compiler do it, but most of them will do it anyways
masak Peter_R: just so you know, I was once in your current place.
Peter_R: it gets better, fast, to the extent you curiously explore the terrain. 01:53
Peter_R: half of the confusion is just language barrier. we're pretty specific in our terminology and lingo.
Peter_R I'm not a complete stranger to compilers and such, but certainly no expert 01:54
masak I remember looking at the backlog of pmurias and ruoso the way a deer looks at approaching car headlights.
that must be many years ago now.
Peter_R All very interesting to hear anyway :)
masak when in doubt, ask people to show you stuff on camelia. you'd be surprised how concrete some things can be made ;) 01:55
Peter_R Will do, thanks for the encouragement
masak is all about encouragement 01:56
masak .oO( "We should consider an actual prime." -- "You mean an actual number?" -- "Yes, an actual prime number." -- "All right, take 57." ) 01:57
01:59 kurahaupo joined, BenGoldberg left 02:00 BenGoldberg joined
masak vendethiel: ooc... "liquid types"? 02:04
vendethiel masak: "ooc"?
02:04 [Sno] left
masak "out of curiousity" 02:05
curiosity*
vendethiel masak: would allow to check for "where"s at compile time -- see liquid haskell
that's what I'm interested in in the very very very long term :) 02:06
02:07 fwilson left
masak vendethiel: lately I've been hearing like a refrain in my head, but it's still hard to verbalize. something like, if you do TDD and eschew side effects to some degree, your editor/IDE should be able to run circles around your typing, helping you in all manner of ways by abstractly interpreting the code you're writing. 02:07
not sure if that makes sense.
vendethiel it does to every haskell/idris/...-er out there :-)
02:08 fwilson joined
masak but let's say you start by writing a test case. an input and an expected output. now the IDE knows what you should have once you're done/happy. 02:08
then do that for a couple of tests.
vendethiel masak: you should try agda or idris, often enough, the compiler can generate implementation for the function :P
masak ideally, you could get feedback for all the tests at each *keypress* you do in the editor. just nicely tabulated next to your code.
vendethiel with data Bool = True | False then a "not" function with Bool -> w/e, the ide-slave will generate different implems. for each constructor in the type 02:09
masak vendethiel: I will. thanks for the tip. I sometimes skim some agda/idris docs just to make sure I have a clue what they're about.
vendethiel (ctrl-c ctrl-l iirc for agda2-mode emacs)
I call that "try by autocompletition" :P. I just type w/e, and try to complete until the compiler finds stuff to put in holes 02:10
02:14 virtualsue joined 02:18 yeahnoob joined, kurahaupo left 02:29 BenGoldberg left, BenGoldberg joined
[Coke] finally catches up post-conference. 02:44
~~, sixers.
02:44 chenryn joined 02:45 ilbot3 left 02:46 andreoss left 02:47 ilbot3 joined
hzhou321 I am new to perl6. Does perl6 have method to interface with C like xs? 02:53
masak yes 02:55
hzhou321 Do you have pointer to documentation? 02:56
masak github.com/jnthn/zavolaj/ 02:57
02:57 yqt joined
masak 'night, #perl6 02:57
hzhou321 masak: thx.
japhb masak++ # Advice? Rant? Manifesto? ... starting at irclog.perlgeek.de/perl6/2015-01-27#i_10016004 and continuing at irclog.perlgeek.de/perl6/2015-01-27#i_10016097 03:10
hzhou321 Is there any benchmark between Perl5 and Perl6? 03:17
Peter_R I've seen graphs, they must exist... 03:18
03:18 Psyche^ joined
Peter_R The cliff notes of the graph were "lists are slow" 03:19
moritz \o/ 03:20
itz_: do you have any idea why my old blog posts are showing up as new in the pl6anet feed? 03:21
03:22 Patterner left, risou is now known as risou_awy, risou_awy is now known as risou 03:25 virtualsue left
dalek kudo/nom: d5c67dc | hoelzro++ | src/ (3 files):
Don't pass capture to invoke/postcircumfix:<( )> when performing Type(...)

If a user wants to override the behavior of Type(...), they have to know that the invoke/postcircumfix:<( )> method takes a single argument that is a Capture, rather than the actual values provided. This is an implementation detail, not in the spec, and unintuitive.
03:25
ast: d32ba94 | hoelzro++ | S13-overloading/typecasting-long.t:
Take the full argument list when overriding (...) for Type(...)
03:26
muraiki_ night p6 03:27
03:27 muraiki_ left 03:35 yqt left
skids hoelzro++ I remebering going WTF over that. 03:39
hoelzro skids: oh, good on me then =) 03:40
hopefully others are ok with the change
03:41 kurahaupo joined 03:43 Mouq joined 03:47 noganex_ joined 03:50 noganex left 03:52 vendethiel left, vendethiel joined
moritz hoelzro: I'm not OK with it missing from ChangeLogs 04:02
s/s$//
hoelzro moritz: ah, noted
I'll add that
dalek kudo/nom: ffc5836 | hoelzro++ | docs/ChangeLog:
Document the change to overriding Type(...)
04:04
hoelzro moritz++ # advice
dalek kudo/nom: 9f15442 | moritz++ | docs/ChangeLog:
Add more changelog entries
04:07
moritz hoelzro++ # acting on it :-)
time to sleep again, now that $smallone also sleeps again 04:08
hoelzro o/ moritz 04:09
Mouq hoelzro: Does that commit break nativecall? 04:11
Mouq also has to try catching some sleep 04:12
dalek ast/coerce-multi: a22c42c | hoelzro++ | S02-types/COERCE.t:
Start implementing tests for COERCE
04:14
ast/coerce-multi: b717214 | hoelzro++ | S02-types/COERCE.t:
Test that Type(...) still calls invoke if present
ast/coerce-multi: e142fd0 | hoelzro++ | S02-types/COERCE.t:
Test COERCE + subclasses
hoelzro Mouq: eesh, I sure hope not
hoelzro tests
dalek kudo/coerce-multi: a298d34 | hoelzro++ | src/ (2 files):
Start on implementation of COERCE

COERCE is a multi that takes a value and a type object; users wishing to define special semantics for how a value of a given type is coerced to other type may implement the appropriate candidate for COERCE to perform that coercion. The default is call a method of the same name as the type object's class on the value.
kudo/coerce-multi: d9460c5 | hoelzro++ | t/spectest.data:
Use new COERCE test in roast
04:17 Mouq left
japhb hzhou321: Yes, there are p5/p6 benchmarks. I wrote the framework and the majority of the tests: github.com/japhb/perl6-bench . timotimo++ has published the graphs from some of his perl6-bench runs, but I don't have the URL at hand. 04:19
04:19 vendethiel left
japhb This is getting to be enough of a channel FAQ that I'm considering adding the github URL to the topic. I was planning to wait for us to have an arewefastyet clone in place, but that has been slow in appearing. (And I can't host it myself.) 04:20
hoelzro Mouq was right; that *does* break NativeCall o_O 04:27
unfortunately, my NQP fu is not strong enough to fix it
if anyone could help me fix that, I would really appreciate it 04:34
if it's a blocker for anyone, feel free to revert my commits and we can chat about how to fix it tomorrow 04:35
04:46 yeahnoob left 04:47 sivoais left 04:48 sivoais joined 04:56 charsbar_____ left 05:03 KCL_ left 05:06 chenryn left 05:07 chenryn_ joined 05:10 chenryn_ left, chenryn_ joined 05:23 raiph left 05:33 charsbar joined 05:54 chenryn__ joined 05:55 chenryn_ left 05:56 mr-foobar left 06:00 chenryn__ left 06:01 chenryn__ joined 06:04 chenryn__ left 06:05 chenryn__ joined 06:08 broquaint joined 06:18 bjz joined 06:20 bjz left
dalek volaj: 339501e | moritz++ | lib/NativeCall.pm6:
Fix for latest rakudo

postcircumfix:<( )> now receives a normal argument list, not a single-item capture
06:22
moritz hoelzro: ^^ FTFY. No NQP hackery required
06:22 [Sno] joined 06:32 BenGoldberg left 06:33 Khisanth left 06:34 Khisanth joined 06:35 spider-mario left 06:45 baest left 06:46 bartolin_ left, bartolin joined
bartolin fwiw Parrot builds again and last nights spectest on Parrot was clean 06:48
lizmat++ moritz++ jnthn++ # bisecting and fixing
07:09 telex left 07:10 telex joined, vendethiel joined 07:11 [Sno] left 07:16 rindolf joined, kaleem joined 07:36 rindolf left
lizmat confirms parrot builds and tests ok again 07:38
although I'm not quite sure what caused the fix 07:39
07:39 kjs_ joined
lizmat offline until late& 07:40
07:56 vendethiel left 07:57 chenryn__ left
TimToady sitting in AMS waiting for our next flight 07:57
07:58 Rounin joined, chenryn__ joined
El_Che TimToady: it's not raining, so that's a good thing :) 07:59
TimToady boarding... 08:01
08:05 prime- left 08:06 yeahnoob joined 08:08 chenryn___ joined 08:09 chenryn__ left 08:10 yeahnoob left 08:11 avuserow left, FROGGS joined, prime joined 08:14 yeahnoob joined, [Sno] joined 08:15 avuserow joined, vendethiel joined 08:21 darutoko joined 08:22 xfix joined 08:29 moritz left 08:33 pdcawley joined 08:34 moritz joined 08:35 espadrine joined 08:38 vendethiel left 08:40 Kristien joined, bjz joined, telex left 08:45 telex joined 08:50 espadrine left 08:53 adu left 08:57 zakharyas joined, brrt joined
Kristien How can you make grammars ignore whitespace from the input between tokens? 08:58
I tried to google this, but all I can find is the difference between the token and rule and sigspace. 08:59
brrt iirc - and i'm not at all a regular perl6 user btw - that's the difference between rules and tokens
oh 09:00
that's what you said
Kristien or do I have to put \s* before all of my rules and tokens?
brrt i'd be surprised if that were the case 09:01
Kristien yeah, me too
or perhaps proto token lexeme { \s* * } 09:02
FROGGS m: my rule foo { a b }; say "a b" ~~ /<foo>/ 09:03
camelia rakudo-moar 9f1544: OUTPUT«「a b」␤ foo => 「a b」␤»
FROGGS m: my rule foo { a b }; say "ab" ~~ /<foo>/
camelia rakudo-moar 9f1544: OUTPUT«Nil␤»
FROGGS m: my token foo { a b }; say "ab" ~~ /<foo>/
camelia rakudo-moar 9f1544: OUTPUT«「ab」␤ foo => 「ab」␤»
FROGGS m: my token foo { a b }; say "a b" ~~ /<foo>/
camelia rakudo-moar 9f1544: OUTPUT«Nil␤»
FROGGS Kristien: see?
consider a token a word, and rule about sentences 09:04
Kristien ah I see
thanks
now it works :D 09:05
09:06 andreoss joined
JimmyZ FROGGS: github.com/MoarVM/dyncall/wiki 09:07
09:08 pecastro joined
FROGGS JimmyZ++ 09:09
awesome :o)
09:11 Kristien left
andreoss rakudo.org is 500 now 09:15
09:17 fhelmberger joined
moritz pmichaud: ^^ rakudo.org gives a 500 internal server error. Could you please investigate? 09:20
09:22 mvuets joined 09:24 kjs_ left 09:25 abraxxa joined 09:29 kjs_ joined 09:32 kjs_ left 09:35 vendethiel joined, espadrine joined
timotimo hzhou321: t.h8.lv/p6bench/ 09:38
09:39 Kristien joined 09:43 dakkar joined 09:44 kjs_ joined 09:52 baest joined 09:56 vendethiel left 10:02 sirdancealot joined
andreoss error: pathspec '2015.01-22-g5a33762' did not match any file(s) known to git. 10:11
Command failed (status 256): git checkout 2015.01-22-g5a33762
Kristien why does Grammar.parse return Any on failure? 10:12
Rather than say Nil or Failure 10:13
moritz it returns Nil, I think
10:13 nyuszika7h left
andreoss Configure.pl tries to checkout MoarVM sources with some tag, but it seems non-existent 10:13
moritz and assigning Nil to a scalar resets the scalar to the default value
Kristien Oh, I see.
Ah right nice. 10:15
10:18 nyuszika7h joined 10:21 yeahnoob left
andreoss i can't compile parrot backend 10:29
its failing to link with this error
/usr/bin/ld: h_errno: TLS definition in /lib64/libc.so.6 section .tbss mismatches non-TLS definition in /home/local/local/lib/libc.so section .bss
why parrot needs TLS?
FROGGS andreoss: I am forwarding it to #parrot on irc.perl.org 10:30
10:30 virtualsue joined
andreoss might be something wrong with my localy installed libc, links ok against system one 10:34
masak good mor'n, #perl6 10:37
andreoss /usr/lib/gcc/x86_64-redhat-linux/4.9.2/../../../../lib64/crt1.o: In function `_start': 10:39
(.text+0x12): undefined reference to `__libc_csu_fini'
FROGGS: may be i should make distclean somewhere? 10:40
10:42 Sqirrel left 10:44 vendethiel joined 10:55 sirdancealot left
masak japhb: actually, my rant started at irclog.perlgeek.de/perl6/2015-01-27#i_10015898 and the parts you pointed to were kind of a continuation of that. 10:56
11:00 btyler left 11:03 Kristien left 11:04 chenryn___ left
tadzik PLPW 2015 is cooking :} 11:04
11:05 brrt left
El_Che pw.pl? 11:05
11:05 brrt joined
tadzik Polish Perl Workshop 11:05
11:05 chenryn___ joined
El_Che nice 11:05
11:07 vendethiel left, rurban_ joined 11:08 kjs_ left, vendethiel joined
masak tadzik: \o/ 11:09
11:10 chenryn___ left 11:11 chenryn___ joined 11:12 noganex joined 11:13 mvuets left 11:14 noganex_ left 11:16 mvuets joined 11:17 Kristien joined
Kristien I wrote my first parser written in Perl 6! 11:19
moritz \o/
11:20 Kristien left 11:23 brrt left 11:37 ka05 left 11:53 kaleem left 11:55 chenryn____ joined 11:57 chenryn___ left, Kristien joined
Kristien I'm writing a tool to generate data structures in various languages and serialization/deserialization code 11:58
12:01 Kristien left 12:02 kjs_ joined 12:04 Kristien joined
vendethiel seems like something ingy would love :) 12:05
12:07 rindolf joined
Kristien currently looks like this: gist.github.com/rightfold/9296916eb5f32c6580d6 12:09
vendethiel "grammar Grammar" always make me feel uneasy 12:10
Kristien not me :D 12:11
FROGGS m: grammar Grammar { }; say Grammar.WHAT 12:12
camelia rakudo-moar 9f1544: OUTPUT«(Grammar)␤»
FROGGS andreoss: did you just pull and rebuild? perhaps you can remove your install directory 12:13
12:16 chenryn____ left 12:20 rindolf left 12:21 brrt joined
andreoss FROGGS: yes, i've already removed it, parrot still fails to link 12:23
12:28 pmurias joined
hoelzro moritz: thanks for fixing that; I didn't think about just grabbing the whole Capture! 12:32
moritz hoelzro: you're welcome
12:33 chenryn____ joined
moritz with the right idea, it was trivial. Otherwise it might have been quite nasty 12:33
12:37 brrt left 12:38 rmgk_ joined, rmgk left, rmgk_ is now known as rmgk
dalek p-js: c46c987 | (Pawel Murias)++ | src/vm/js/bin/run_tests:
Add passing test 64 to run_tests.
12:40
p-js: 3cca062 | (Pawel Murias)++ | t/nqp/59-nqpop.t:
Add a test for nqp::isnull_s/nqp::null_s.
p-js: 6b6a8f1 | (Pawel Murias)++ | src/vm/js/QAST/Compiler.nqp:
Implement nqp::isnull_s/nqp::null.
12:47 chenryn____ left 12:48 risou is now known as risou_awy, risou_awy is now known as risou
pmurias what would be a good way to test nqp::time_n(), nqp::time_i()? 12:50
Kristien m: say('a') ==> say() 12:53
camelia rakudo-moar 9f1544: OUTPUT«a␤True␤»
moritz pmurias: you can call time_n() several times, and test that the results are increasing
pmurias: and you can sleep (if you have implemented that), and test that the time difference is larger or equal the sleep time 12:54
jnthn Please don't write tests that sleep.
yoleaux 27 Jan 2015 21:27Z <moritz> jnthn: bisecting of nqp tells me that your commit 98c0b61f8b5fee6e383b6ee03070139ebf04106f "Add parametricity bits to STable." causes the rakudo-parrot core compilation segfault
jnthn That already makes spectest horribly slow for me during S17... 12:55
moritz: Yes, matches with github.com/rakudo/rakudo/commit/34...55d1c077e4 having fixed it :) 12:56
pmurias and the other question is how accurate is time_n supposed to be?
is one millisecond resolution enough? 12:57
moritz pmurias: on the femtosecond level, please
:-)
pmurias: there's no spec on how accurate it must be
Kristien millenia
the function will be fast as hell
nobody runs Perl 6 code anymore in 3001 12:58
moritz Kristien: the maintainers in 986 years will resurrect you for that statement, just to be able to torture you to death again :-)
dalek p-js: ab9ea8b | (Pawel Murias)++ | src/vm/js/QAST/Compiler.nqp:
Implement nqp::time_n()/nqp::time_i().
12:59
Kristien not me
I won't implement it!
moritz pmurias: I'd just go with millisecond resolution for now, and if somebody complains, you can still try to improve on it later
but until them, YAGNI applies
13:03 btyler joined
vendethiel
.oO( si-defects )
13:04
dalek p-js: 4dc5253 | (Pawel Murias)++ | t/nqp/59-nqpop.t:
Add some weak tests for nqp::time_i/nqp::time_n.
13:05
Kristien vendethiel: :O 13:07
I think I should write my compiler in Perl 6.
Instead of in JavaScript.
vendethiel "put the javascript down, we can help you" 13:08
Kristien Though I don't think there's an escodegen-like library for Perl 6. :v
There is Rhino, though.
pmurias Kristien: what are you compiling? 13:09
vendethiel pmurias: lasagnas :P
Kristien language I'm working on 13:10
pmurias any description of that?
Kristien The language is like Eiffel and Scala and the compiler generates ECMAScript 5 code. 13:11
Or rather, is to generate ECMAScript 5 code. 13:12
pmurias is it a lightweight layer on javascript like coffescript or something more removed like nqp-js/rakudo-js? 13:13
vendethiel less lightweight
it changes semantics, big time
Kristien Much less lightweight. 13:14
and much more strict
pmurias is the code/description somewhere? 13:15
Kristien vaguely: github.com/rightfold/lasagnascript
but the compiler is junk currently; I'm rewriting it asap
13:19 kjs_ left
Kristien I want to use an SSA intermediate representation since that's much more flexible than directly converting the AST to an ECMAScript AST 13:22
pmurias in nqp-js I'm using a "chunks" abstraction, Chunk.new($type, $sideeffect_free_js_expression, @array_of_js_statements_as_strings_or_chunks_needed_to_make_expression_valid) 13:26
Kristien and I want to focus less on ES interop and more on sanity
pmurias: my current compiler has two functions: one to generate statmeents and one to generate an expression
which one is used depends on context
if something can only be compiled to a statement and an expression is expected, it's put in an IIFE 13:27
(e.g. throw and switch)
pmurias IIFE?
Kristien immiediately-invoked function expression
you can use that to turn statements into expressions
vendethiel *sometimes*
13:27 yqt joined
Kristien You can't do it for return statements obviously. 13:27
vendethiel that'll work with throw (somehow), but will completly fail with break/return
and also, generators 13:28
Kristien Good thing LasagnaScript has neither return statements nor generators.
vendethiel well, compiling with "yield* IIFE" *should* work
Kristien I've never written a return statement in Perl :P 13:30
pmurias re sanity vs transprency, IMHO not having fully transparent interop is a serious barrier
Kristien I still have to design the whole interop stuff 13:32
pmurias we won't be able to have fully transparent interop in nqp-js/rakudo-js to the degree coffescript because the language is too far removed from javascript 13:34
Kristien how does nqp-js do stuff like Int? 13:35
pmurias what do you mean by that?
Kristien well rather, uint32
e.g. integer arithmetic and overflow stuff 13:36
JS has only floats so you have to use bitwise operations on integers
pmurias that's what I use
Kristien nice
pmurias I currently have int32 only 13:37
nqp doesn't expose uint32
Kristien OK
dalek ecs/coerce-multi: b994904 | hoelzro++ | S13-overloading.pod:
Document COERCE
pmurias having 64bit integers is a harder problem
13:37 sqirrel joined
hoelzro ok, I have implementation, tests, and specs for COERCE in the coerce-multi branch on the various repos 13:37
what's the next step to getting this accepted/rejected into the current spec? 13:38
pmurias Kristien: the exact code for something like adding two integers is pastie.org/9868250 13:39
13:40 DieGraueEminenz joined
Kristien m: my uint $x = 0; $x = $x - 1; say $x 13:41
camelia rakudo-moar 9f1544: OUTPUT«-1␤»
vendethiel obviously...
Kristien :V
13:43 brrt joined
pmurias bbl& # job interview for what I fear might be a php job :( 13:43
Kristien PHP is nice.
vendethiel :( 13:44
brrt Kristien - that's one of those things you're going to find a lot of people disagreeing with 13:47
:-P
Kristien What is?
brrt php's niceness
Kristien Oh :P
I wish I were competent enough to implement a static type system.
brrt php is effective, *if* your program is a CGI-style form-to-database CRUD 13:48
13:48 DarthGandalf left
brrt otherwise, it's horrible 13:48
14:00 Kristien left 14:01 dayangkun joined
nwc10 pmurias: I'm curious - where in the world are you? 14:02
(To be clear, I'm not hiring, nor am I asking "for a friend")
[and this is not because I have no friends :-)] 14:03
14:04 salv0 left, salv0 joined 14:06 Kristien joined 14:07 go|dfish left
brrt how many qualifications do you need for a question :-) 14:08
anyway, last year the perl devroom was quite full
14:09 _4d47 joined
moritz nwc10: where on the planet are you that you're *not* hiring? :-) 14:09
hzhou321 Kristien: instead of using bitwise operations, what's wrong with converting to integer back and forth? 14:12
nwc10 moritz: we *were* hiring. But the new sysadmin starts on Monday
and also, there's no space for any more warm bodies
14:12 rindolf joined 14:16 darutoko- joined 14:17 darutoko left
Kristien hzhou321: there are no integers. 14:19
hzhou321 Kristien: I thought you were implementing integer types in Javascript
14:25 [Sno] left
andreoss how do i add a new bench case in perl6-bench? I see there're 67 benches, i found some of them in ./perl5 and ./perl6, but not all of them. 14:26
14:26 kaleem joined 14:28 Sqirrel_ joined 14:30 raiph joined
timotimo andreoss: there are many more in microbenchmarks.pl 14:34
andreoss thanks 14:39
timotimo: if I need to generate some auxiliary input where I place it 14:40
moritz andreoss: can't you put into a heredoc? 14:41
14:41 lestrrat left
Kristien I'm part of a conspiracy that denies the existence of heredocs. 14:43
andreoss moritz: i guess it wouldn't scale this way. I would have to generate random ints within bench case, it may affect results.
moritz andreoss: but you assume that reading from disc is faster than generating random ints?
14:44 lestrrat joined 14:45 sqirrel left
andreoss % seq 1 100000 | time perl -ne '' 14:48
0.02user 0.00system 0:00.02elapsed 87%CPU (0avgtext+0avgdata 3948maxresident)k
0inputs+0outputs (0major+174minor)pagefaults 0swaps
'~/src/perl6-bench' (master % u=)
% seq 1 100000 | time perl6 -ne ''
15.73user 0.22system 0:17.28elapsed 92%CPU (0avgtext+0avgdata 196208maxresident)k
39896inputs+0outputs (159major+44841minor)pagefaults 0swaps
moritz: i guess it should be a separated benchmark case 14:49
moritz andreoss: aye 14:51
andreoss: the you should add -CS to the perl 5 benchmark
andreoss: because Perl 6 also decodes the UTF-8, which the perl 5 doesn't do as-is 14:52
14:52 kaleem left
Kristien m: my uint8 $x = 255; $x += 1; say $x; 14:53
camelia rakudo-moar 9f1544: OUTPUT«256␤»
andreoss moritz: what's -CS? 14:54
Kristien m: my uint32 $x = 2**32-1; $x += 1; say $x;
camelia rakudo-moar 9f1544: OUTPUT«4294967296␤»
andreoss % seq 1 100000 | time perl -Mopen=":std,:encoding(utf-8)" -ne 'utf8::decode $_' 14:55
0.07user 0.00system 0:00.08elapsed 85%CPU (0avgtext+0avgdata 5600maxresident)k
14:57 lestrrat left 15:05 Kristien left 15:06 lestrrat joined 15:07 kaleem joined, fwilson left, molaf joined 15:11 Woodi joined 15:13 sqirrel joined 15:14 kurahaupo left 15:16 kaleem left, gfldex joined 15:17 lestrrat left 15:21 lestrrat joined 15:22 dayangkun left
rjbs- So, what's going on on FOSDEM Friday? :) 15:25
15:26 Rounin left, lestrrat left
tadzik slide hacking... :P 15:26
15:27 fwilson joined 15:28 lestrrat joined 15:29 kaleem joined
moritz wouldn't the conference be more fun if you did the slide hacking before? :-) 15:31
El_Che rjbs-: there is a drink
15:31 kurahaupo joined
tadzik moritz: I wouldn't know :P 15:31
15:32 abraxxa left, Kristien joined 15:33 rjbs- is now known as rjbs, rjbs left, rjbs joined 15:36 lestrrat left
FROGGS andreoss: does that cover your bug? github.com/parrot/parrot/issues?q=...s%3Aclosed 15:37
15:38 yqt left 15:40 brrt left 15:44 lestrrat joined 15:47 kaleem left 15:48 mr-foobar joined 15:51 Kristien left 15:53 lestrrat left 15:56 telex left 15:58 telex joined 15:59 lestrrat joined
andreoss FROGGS: i have a simple script for building rakudo on cron, i found out today that it doesn't work anymore. As i see Configure.pl trying to get sources from git repositories with wrong tags. So I can't build master anymore. The attempt to build the latest release ends with linkage errors. 16:04
may be i'm doing something wrong 16:05
PerlJam "build master"? You mean "nom", right? 16:07
FROGGS andreoss: can you gist your build commands? 16:08
16:09 andreoss_ joined 16:10 andreoss left, sqirrel__ joined 16:13 Mouq joined, AndChat-458964 joined
andreoss_ PerlJam: what branch comes from just cloning repo? 16:13
dalek p: 3766c15 | Mouq++ | Configure.pl:
Correct --git-reference doc, mj41++
16:14
16:14 sqirrel left
dalek kudo/nom: 21265fc | Mouq++ | Configure.pl:
Correct --git-reference doc, mj41++
16:14
16:14 Sqirrel_ left 16:16 raiph left
PerlJam andreoss_: pretty sure you get nom by default. 16:18
(unless the universe has shifted and I didn't notice :) 16:19
16:20 lestrrat left 16:22 raiph joined 16:25 lestrrat joined, sqirrel__ left
masak you get nom by default. 16:28
16:28 sqirrel__ joined 16:29 spider-mario joined 16:31 andreoss_ left, profan left 16:32 lestrrat left, profan joined
Mouq What's buggy about RT #68572 ? 16:35
synopsebot Link: rt.perl.org/rt3//Public/Bug/Displa...l?id=68572
Mouq m: role A { class B {} }
camelia ( no output )
Mouq 'class' is lexically scoped to A. I could see a role that uses a local class internally in one of its methods... and I don't really see why we should forbid a user from being able to do so 16:36
16:37 lestrrat joined
PerlJam Mouq: S12:106 16:38
synopsebot Link: perlcabal.org/syn/S12.html#line_106
Mouq Oh! Idk why I thought class was automatically my. PerlJam++ 16:39
PerlJam Mouq: probably because P6 leans heavily on lexicals :)
Mouq True :) 16:40
raydiak good morning #perl6 o/ 16:43
16:43 zakharyas left
hoelzro o/ raydiak 16:44
raydiak hi hoelzro how goes it? 16:45
16:47 [Sno] joined
japhb .ask andreoss Do you still need help creating your perl6-bench test? 16:48
yoleaux japhb: I'll pass your message to andreoss.
hoelzro it's going alright; how about yourself? 16:49
dalek kudo/nom: 358d1d9 | Mouq++ | src/Perl6/Grammar.nqp:
[Pod] Allow indented code blocks to contain blank lines, moritz++

Previously, this code would produce two code blocks, where one was preferred:
   =begin pod
   Here's our Foo role:
   role Foo {
   has $.bar;
   method baz { ... }
   }
   =end pod
ast: 88d0e1e | Mouq++ | S26-documentation/04-code.t:
Add test that indented code blocks span blank lines
16:52 AndChat-458964 left