»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg camelia perl6: ... | irclog: irc.perl6.org | UTF-8 is our friend!
Set by sorear on 25 June 2013.
00:13 naddiseo joined
naddiseo Is there a way to declare union types? 00:14
00:14 ab5tract joined
vendethiel naddiseo: no 00:20
naddiseo: you might be interested in timotimo's adt module
naddiseo Does subset Foo where (Int | Str); work ? 00:21
raiph m: subset Foo where (Int | Str)
camelia ( no output )
vendethiel naddiseo: yeah, but as a untagged union.
(and runtime-typechecked)
naddiseo K, I think that's what I want. 00:22
Now to figure out "P6opaque: no such attribute '$!signature'"
00:23 pmurias_ left 00:27 Ugator left 00:35 aborazmeh joined
raydiak m: subset Foo of Str|Int; my Foo $foo; $foo = "foo"; say $foo; 00:36
camelia rakudo-moar 30edf7: OUTPUT«foo␤»
raydiak m: subset Foo of Str|Int; my Foo $foo; $foo = 123; say $foo;
camelia rakudo-moar 30edf7: OUTPUT«Type check failed in assignment to '$foo'; expected 'Foo' but got 'Int'␤ in block <unit> at /tmp/VLfMSGO_zs:1␤␤»
raydiak ^, ^^ which of those is broken? 00:37
00:40 night0x joined
raydiak thought we were of the strict typing persuasion, meaning maybe the "foo" shouldn't have worked, but ianae 00:41
raydiak rather hopes he is wrong about that 00:42
naddiseo m: enum A <Block>;subset B; 00:43
camelia rakudo-moar 30edf7: OUTPUT«===SORRY!===␤P6opaque: no such attribute '$!signature'␤»
naddiseo Yeah.. what's that about?
I know it's something to do with "Block" 00:44
but that error is very uninformative.
00:46 night0x left 00:48 pdcawley left
raydiak naddiseo: agreed it's not very helpful...sometimes --ll-exception can help give a clue with those unhelpful internal error messages 00:49
raiph m: enum A <Code> 00:50
camelia rakudo-moar 30edf7: OUTPUT«===SORRY!===␤P6opaque: no such attribute '$!signature'␤»
raiph m: enum A <Block>
camelia ( no output )
raiph m: enum A <Foobar>
camelia ( no output )
raiph m: enum A <Named> 00:52
camelia ( no output )
naddiseo Thanks for your help. I'm off now. 00:55
00:56 naddiseo left, night0x joined 00:57 Brian_ joined 00:59 night0x left, aborazmeh left 01:00 aborazmeh joined, Brian_ left 01:07 dayangkun joined 01:08 night0x joined 01:10 PZt joined 01:11 night0x left 01:18 gfldex_ left 01:29 dayangkun left 01:33 ab5tract left 01:51 hekmek left 01:54 raiph left 01:58 labster joined 02:05 grettis left 02:08 night0x joined 02:09 Vlavv joined 02:15 ab5tract joined 02:17 rmgk is now known as Guest15907, rmgk_ joined, Guest15907 left, rmgk_ is now known as rmgk 02:26 raiph joined 02:27 hekmek joined 02:43 ninjazach joined 02:49 night0x left
raiph m: enum A <Code> #123457 03:07
synopsebot Link: rt.perl.org/rt3//Public/Bug/Displa...?id=123457
camelia rakudo-moar 30edf7: OUTPUT«===SORRY!===␤P6opaque: no such attribute '$!signature'␤»
03:09 atroxaper joined 03:16 atroxaper left 03:17 dj_goku joined 03:18 ab5tract left 03:22 ssqq joined, ninjazach left 03:25 ninjazach joined 03:30 hekmek left 03:32 Mso150 joined 03:46 jack_rabbit joined 03:50 Mso150 left
JimmyZ m: enum A <Str> 03:55
camelia ( no output )
03:55 ssqq left 03:58 noganex joined 04:01 noganex_ left 04:10 raiph left 04:12 anaeem1_ joined, anaeem1_ left 04:13 anaeem1 joined 04:14 atroxaper joined 04:18 anaeem1 left, anaeem1 joined 04:20 atroxaper left 04:27 ninjazach left 04:31 aborazmeh left, aborazmeh joined 04:32 aborazmeh left 04:37 doublelel joined
TimToady m: le 42 # French? 04:43
camelia rakudo-moar 30edf7: OUTPUT«===SORRY!=== Error while compiling /tmp/RUKgoSEL0M␤Undeclared routine:␤ le used at line 1. Did you mean 'lc'?␤␤»
TimToady don't get the error here either
m: == 42 # French?
camelia rakudo-moar 30edf7: OUTPUT«===SORRY!=== Error while compiling /tmp/FL5NlYBVcx␤Preceding context expects a term, but found infix == instead␤at /tmp/FL5NlYBVcx:1␤------> ==⏏ 42 # French?␤»
TimToady
.oO(c'est la life, universe, and everything)
04:44
(continuing a conversaton that started on #moarvm) 04:46
04:52 mr-foobar left 04:58 doublelel left 04:59 esaym left 05:02 ab5tract joined 05:06 esaym153 joined 05:07 ab5tract left 05:08 kaare_ joined 05:11 doublelel joined 06:07 pecastro left 06:15 kaare_ left
moritz timotimo: at least for the perl6.org domains, yes 06:21
mathw Does anyone know how NativeCall looks for libraries and more importantly how I can get it to look somewhere it's not currently looking? 06:26
moritz mathw: iirc you can pass absolute pathes to the "is natve" trait 06:32
06:36 Woodi left, kaare_ joined
mathw hmm I don't think this is a library path problem 06:40
06:51 ab5tract joined 06:56 ab5tract left 07:02 erkan joined
moritz I looked at prices for signing of wildcard certs: www.sslshopper.com/best-ssl-wildca...icate.html 07:02
"ouch"
07:02 rindolf joined
moritz maybe we should wait for letsencrypt.org/ 07:03
or offer self-signed certificates until then
07:08 perturbation joined 07:14 ab5tract joined 07:19 ab5tract left
moritz it's a bit perverse that firefox shows more security warnings for self-signed certificate than for an unencrypted connection 07:21
07:21 Isp-sec joined 07:24 darutoko joined 07:27 erkan left 07:30 erkan joined 07:33 perturbation left 07:44 gfldex joined 07:52 FROGGS joined
dalek : 9f8892a | FROGGS++ | misc/perl6advent-2014/schedule:
picked slot 20
08:06
FROGGS I hope that's okay (I didn't follow discussions here on channel for a few days) 08:07
JimmyZ masak: s/sekkind/second/ ? 08:12
08:14 virtualsue joined 08:22 brrt joined 08:23 blackbolt joined 08:25 Woodi joined
blackbolt hi, can someone help me? "cannot look up attributes in a type object" here's code: pastebin.com/wsgmxy6D 08:27
brrt blackbolt - i'll try
blackbolt :) 08:29
08:30 rurban joined
brrt ok, first thing i spot is that in perl6, class instance variable are prefixed with a twigil 08:31
m: class Foo { has $.bar; }; my $f = Foo.new(:bar(4));
camelia ( no output )
brrt or
blackbolt ohhh, i rebuild code. there is "$.dataBase" 08:32
brrt m: class Foo { has $!bar; method gist { $!bar.gist } }; say Foo.new(:bar("Hai"))
camelia rakudo-moar 30edf7: OUTPUT«(Any)␤»
brrt (i would have somewhat expected that to work, hmm) 08:33
and... i'm a little foggy on initializers, but i think you want submethod BUILD rather than method new
or even sub new
08:34 erkan left
blackbolt i want to create connection with DB 08:34
08:37 erkan joined, erkan left, erkan joined
FROGGS m: class Foo { has $.bar; method gist { $!bar.gist } }; say Foo.new(:bar("Hai")) 08:41
camelia rakudo-moar 30edf7: OUTPUT«Hai␤»
FROGGS make the attribute public
08:42 Mso150 joined
FROGGS so in pastebin.com/wsgmxy6D line 3 should read 'has $.dataBase;' and line 12 should be '$!dataBase = ... 08:43
though, the variables in line 13 are undeclared
(at least in the pasted code, I guess they are declared and initialized before the class definition) 08:44
blackbolt ohhh thanks, that help FROGGS 08:45
08:46 virtualsue left
FROGGS :o) 08:46
08:48 kaleem joined 08:49 telex left 08:50 telex joined
Woodi hallo today :) 08:50
q: can I clone from git repo in one directory to other dir ? or maybe copy will do ? 08:51
jnthn Woodi: Yes, just git clone /that/directory /where/you/want/it 08:52
Woodi ok. I can. but for backap I just pack&unpack repo directory ? or git is more sensitive ? 08:54
jnthn The .git directory contains the full repo history, so if that's in your backup then you've what you need. 08:57
Woodi I wonder about inodes and some such becouse I hear git is "filesystem"... but for now I just need somewhere to compile :) thanx jnthn++ 08:59
09:00 davido__ joined 09:02 davido___ left 09:04 Isp-sec left
Woodi anyway, R* probably is a lot of work, could we cut something down ? 09:05
09:06 TuxCM left 09:07 |Tux| joined 09:09 molaf__ joined 09:11 atroxaper joined 09:13 molaf_ left 09:19 atroxaper left 09:28 erkan left, hekmek joined
masak JimmyZ: fixed; thanks. 09:30
antenoon, #perl6
09:31 erkan joined, mvuets joined
mathw hi #perl6 09:42
JimmyZ m: my num $x = 3.5; 09:48
camelia rakudo-moar 30edf7: OUTPUT«This type cannot unbox to a native number␤ in block <unit> at /tmp/i0Olun1iis:1␤␤»
JimmyZ m: my num $x = 3.5e0 # known?
camelia ( no output )
jnthn Yes, and correct. 09:49
rindolf mathw: hi, sup? 09:50
mathw I was trying to get NativeCall to talk to ncurses and I couldn't :( 09:52
jnthn: oh I ran into that one earlier, what's the reasoning? 09:53
jnthn 3.5 is a Rat
mathw oh
well no wonder it won't unbox
jnthn The error could do with mentioning the type in question, mind... 09:54
09:59 fhelmberger joined 10:02 erkan left
mathw yes it's a LTA error message 10:04
10:05 erkan joined, erkan left, erkan joined
mathw Now I just need to memorise literal formats for things which can unbox to num and I'll be a happy man 10:05
except for the ncurses problem that is
However, ncurses is a problem by itself 10:06
10:08 virtualsue joined 10:12 ptc_p6 joined
mathw are there kinds of native library that NativeCall just can't handle yet? 10:19
I keep getting "cannot locate native library libncurses.so" but it's right there - however, it's a text file which says INPUT(libncurses.so.5 -ltinfo) in it 10:20
moritz mathw: Num literals always contain an e, like 1e0 10:21
10:21 ab5tract joined
jnthn mathw: That's a linker script, looks like, not an actual library. 10:21
mathw yeah
jnthn So no surprise trying to dynamically load it doesn't end well... 10:22
mathw I'm trying to find the real library...
jnthn It's named right there in the script?
libncurses.so.5 ?
mathw presumably gcc, if it saw that, would know what to do with it
yes it is
but it appears to be invisible
jnthn Oh. :S
mathw also
Cannot locate native library 'libncurses.so.5.so' in method postcircumfix:<( )> at lib/NativeCall.pm6:129 10:23
it's putting .so on the end for me
that's from an is native('libncurses.so.5') trait
10:25 ab5tract left
Woodi mathw: there was same problems with ncurses before. maybe corect one is in /lib somewhere ? 10:27
mathw Woodi: hah! it is 10:28
silly
Woodi ppls use some tricks in modules to get corect one
mathw on the other hand, if NativeCall insists on looking for libncurses.so.5.so it's going to be perpetually disappointed regardless of the path searched 10:29
itz I put a sym link in on debian so I had a shared lib with .so on the end
(probably not a good solution)_
mathw it's a solution if you happen to be in a position to do that 10:30
it's not a good long-term solution though
Woodi but that linker "script" problem should be resolved by linker or some other _system_ tool... or NativeCalls works in not standard way ?
itz I assume NativeCall should be modified to support .so.\d as well as .so 10:31
jnthn Patches welcome ;)
Gotta go for a bit &
FROGGS itz: NativeCall does not attempt to locate a library, though it fiddles with its name... 10:32
mathw: is it possible that your NativeCall is outdated?
10:32 erkan left
FROGGS mathw: there were patches in that area lately 10:32
itz oh so it just appends .so to libfoo?
FROGGS itz: yes
sort of 10:33
itz I should just look :)
FROGGS mathw: I am thinking of that commit: github.com/jnthn/zavolaj/commit/14...e17f94b6f7
itz: github.com/jnthn/zavolaj/blob/mast...l.pm6#L104
10:35 erkan joined
mathw FROGGS: I installed it this morning 10:35
yeah that's not going to help because <alpha> won't match a digit will it 10:36
moritz correct
mathw It doesn't mess with it until I put the .5 on the end
10:37 abraxxa joined
itz # TODO: more extension guessing 10:37
mathw yeah I'm just trying to think of what the rules should be
itz maybe glob a number and pick the highest>
Woodi hmm, NativeCall is not a part of Rakudo ? NC is probably very good candidate for standard module. actually I prefer to have NC in the "core" over object stuff and grammars ;) 10:38
10:39 nige joined
itz hmmm I'm wondering whether this is actually a path rather than filename issue 10:41
mathw: are you a debianish 32/64 bit mixed library system? 10:42
mathw itz: yeah it's an Ubuntu box
Woodi: it's in Rakudo Star, that's about as core as it gets 10:43
itz locate libncurses.so shows one without a numerical suffix
10:43 ab5tract joined
FROGGS which is the linker script, no? 10:43
mathw itz: which is a linker script. NativeCall doesn't seem to be able to handle it
itz oh yeah ASCII text
FROGGS mathw: NativeCall just delegates to dlload or what it is called
mathw dlopen() 10:44
I assume
FROGGS yeah, that
mathw or whatever the VM uses - NativeCall just asks NQP to do it
I'll have to hack NativeCall to not mess with the name and see if that works
thent ry to figure out a suitable patch
FROGGS github.com/MoarVM/MoarVM/blob/mast...all.c#L578 10:45
Woodi mathw: R* is *such* official thing ? I didn't know that...
FROGGS Woodi: it is what we think official means 10:46
Woodi I like R* and also that official bit :) but I thinked it was: let's show the World we are here, we have something working and we are damn you forum-X NOT dead!" 10:49
mathw R* is what it's expected people will actually install and use 10:50
so you get a compiler and some useful modules
so ultimately it should be safe to assume people will have NativeCall 10:51
among other things
rather like Perl 5 programmers can assume that you've got Data::Dumper
Woodi but by removing some modules from R* we can promote our modules online repository :) make habits of using it in CPAN way 10:53
and "where is D::D" is FAQ #1 :)
10:53 brrt left 10:54 darutoko- joined
mathw yes! Once I get NativeCall looking for the right library it works nicely 10:56
oh there'll be loads of modules that aren't in *
but I think NativeCall ought to be
this ncurses binding I'm working on probably oughtn't 10:57
10:57 darutoko left, Mso150 left 11:01 erkan left
mathw jnthn: I sent a pull request for a fix to NativeCall which detects ".so.<.digit>+$" and leaves it alone, to allow loading libfoo.so.43 etc. Working for me. 11:01
itz mathw++ 11:04
11:04 erkan joined 11:05 atroxaper joined, virtualsue left
geekosaur that's not a general solution since the runtime library can look like libfoo.so.1.5.9 or etc. 11:06
mathw good point 11:07
easy enough to fix though 11:08
11:09 smls joined
geekosaur and, as a general thing, it still bugs me a bit that NativeCall needs what the primary Linux distributions consider devel / link-time libraries even though they only need it for the .so symlink 11:09
but I have no idea how to fix that sanely
11:10 atroxaper left
smls Maybe it should be possible to specify both the library name and version (as separate fields), and let it construct/guess the .so name based on both? 11:11
mathw I think there's a more general solution in here somewhere 11:12
that allows cross-platformness as well
but I don't have time to do that right now. Time to go wrestle with .NET again
The pull request is updated anyway, now handles .so.1.2.3.2.2.3.2 etc. 11:13
moritz mathw++ 11:14
11:22 ab5tract left 11:23 ab5tract joined
rurban are there ever more than 3 subversions? 11:24
I think the limit is 3
Woodi but why dlopen not all that automatically ? 11:28
not do*
11:31 erkan left
itz "Plain Threads are the GOTO of todays computing" 11:34
11:34 erkan joined
huf what's manual memory management then? :) 11:36
i guess threads fit a bit better since they're also used to muck up control flow :)
rurban I believe they prefer coros via fibers 11:38
Ulti manual memory management was the GOTO of last Tuesday
Woodi modularisation with routine calls replaced gotos ?
huf dont forget loops and if/else 11:39
Woodi dye 11:40
they don't have loops back there ??
huf well, they had at *least* if by the time we got the goto we know
Woodi so we need to lern to like shedulers in every not trivial case ? 11:43
JimmyZ top 11:46
11:52 smls left 11:53 erkan left 11:56 ab5tract left 11:57 atroxaper joined 11:58 Ugator joined 12:01 krunen joined
Woodi defining <<constant lib = 'libncursesw.so.5';>> and using it in <<is native( lib );>> works for me. so probably '.5' suffix makes the trick, on Debian at least. 12:02
but I have /usr/lib/libncursesw.so which is a linker script... anyone know what should deal with that script ? do dload() should trigger execution of that script or script needs to be parsed to have file for dload() call ? 12:04
12:09 blackbolt left
vendethiel wow, can't believe I didn't knew about ?& 12:14
masak it's mostly there for consistency with ~& and +&, IIUC.
it's not very useful.
unless you happen to be Dijkstra and hate short-circuiting. 12:15
vendethiel "¿¿ ¡¡ for the job. Ah, Unicode." You mean spanish, not Unicode :)
masak I guess. 12:16
12:16 erkan joined, erkan left, erkan joined
vendethiel masak++ 12:16
moritz how would you describe a Channel in a short sentence? 12:17
vendethiel
.oO( use the stream word, I dare you )
12:18
12:23 ab5tract joined
rurban Channel: typed messages 12:24
moritz rurban: not in Perl 6 land 12:27
JimmyZ gist.github.com/zhuomingliang/26e3...6848908793 # help, I can't get it working 12:31
moritz JimmyZ: the problem is that $!x and $!y are natives, so you can't bind to them 12:33
JimmyZ: you have to say submethod BUILD(:$x, :$y) { $!x = $x; $!y = $y }
JimmyZ: or leave out submethod BUILD altogether; the default works fine. 12:34
fwiw, the profiler shows that this program spends nearlly all its time in Point constructor 12:37
(method new)
JimmyZ moritz: the default is a bit slower 12:38
12:38 kaleem left 12:43 lizmat left
moritz JimmyZ: well, better than not working at all :-) 12:44
12:46 Alula left, robinsmidsrod joined 12:47 raydiak joined, Alula joined, ingy joined 12:48 hugme joined, ChanServ sets mode: +v hugme, ab5tract left
JimmyZ moritz: yeah, I'm tryig profile some codes. 12:52
12:55 erkan left
abraxxa tadzik: should i send the pull request for rakudobrew? 12:56
12:57 anaeem1__ joined
woolfy PerlJam: I will do a release when my head clears up, when I can learn again, and I will learn how to program in Perl 6, try to understand all the stuff related to a release... 12:57
12:57 anaeem1__ left 12:58 erkan joined
woolfy PerlJam: and I am afraid that might not happen in my lifetime anymore... Sorry. 12:58
13:01 anaeem1 left
tadzik abraxxa: dind't you? :) I didn't have time to look through it properly yet 13:02
masak hugs woolfy
abraxxa tadzik: no, wanted to know before if you're ok with my code
woolfy masak++ 13:03
moritz also hugs woolfy
masak woolfy: I wish you get better, but regardless of that, you're a very important help to the Perl 6 community. 13:04
tadzik abraxxa: oh, just send it, if I'm not it'll be easier for me to point it out :)
masak woolfy: thank you.
woolfy: if you want, I could explain closures to you every Thursday. I think I would enjoy that. :P
woolfy oww... too many hugz and too many nice words, can't handle that. 13:05
masak fwiw, Perl 6 is a very nice language to grok closures in for the first time.
moritz woolfy: no need to handle it, just let it happen :-)
woolfy No idea what closures are. Even lizmat cannot explain them too me, and she really tried, several times.
masak resists the urge to explain right now 13:06
woolfy is happy with that resistance 13:07
masak .u 𝌛 13:08
yoleaux U+1D31B TETRAGRAM FOR RESISTANCE [So] (𝌛)
13:08 dayangkun joined
rurban woolfy: closures are just functions with lexical variables 13:11
lexical: compile-time private 13:12
woolfy rurban: thanks for the explanation, that's what lizmat told me repeatedly, and still, I don't get it, nor do I know what the significance is. 13:13
rurban: so leave it at that...
rurban nothing special. a normal function
masak rurban: that's what Wikipedia says too. I find it a most unhelpful explanation -- and wrong -- unless you understand closures already. 13:14
13:14 hekmek left
masak that "are just" part hides all the interesting bits, and the reason you'd want them in the first place. 13:14
rurban the big difference was in 1984 when all vars were dynamic
moritz woolfy: there's no significance, they are just handy sometimes :-)
13:15 hekmek joined
woolfy eekkk... stop that, all go back to developing Perl 6, MoarVM, NQP, Parrot! Grrr! :-) 13:16
masak hehe
moritz happily does
masak aussi
moritz actually, doc writing
masak actually, sekkrit project
rurban just endless regression tests on various machines
moritz masak: to be revealed in the advent post on the 24th? :-) 13:17
when I have a Promise instance, how do I schedule code to be run when the promise is broken? 13:19
m: my $p = start { sleep 0.1; say "done 1" }; $p.in(10).then({ say 'done 2'}).result 13:22
camelia rakudo-moar 30edf7: OUTPUT«Invocant requires a type object, but an object instance was passed␤ in method in at src/gen/m-CORE.setting:20897␤ in block <unit> at /tmp/e9pFhStUFA:1␤␤»
masak moritz: no, I can't promise that. development's been slower than I initially thought.
arnsholt masak: I find that a common theme with technical Wikipedia articles. Clear and straightforward if you know it already, all but inscrutable if you don't 13:23
13:23 andreoss joined
arnsholt Heck, some of them are inscrutable even if you do know it. The article on Hidden Markov Models for example, is complete gibberish (unless you're a statistican) 13:24
andreoss do cached functions share a cache between threads?
nige here is a draft advent post - perl6advent.wordpress.com/2014/12/2...83df5bcefa 13:25
13:25 Rounin joined
nige feedback welcome 13:25
13:26 kaleem joined
andreoss nige: 404 13:27
moritz nige: you could link to doc.perl6.org/type/Perl6%3A%3AMetam...od_methods when talking about .^methods 13:28
nige hmm - ok
moritz: looking
moritz andreoss: you need a wordpress account (and be logged in) to preview, I believe
andreoss: if you /msg me your email address, I'll send you an invitation 13:29
nige: nice post
nige moritz good suggestion - have added link 13:30
vendethiel do we have an extensive advent post about MAIN subroutines? I think I could write something on abusing it, along with subsets, for great good 13:34
I thought about writing a role-abusing post, but that's nowhere near mainstream reasonable
moritz vendethiel: perl6advent.wordpress.com/2010/12/0...main-subs/ 13:35
vendethiel: but that's four years ago; if you want to write about it again (and add some new facets), that's fine
13:36 jack_rabbit left
vendethiel starts on writing a gist 13:38
I'll see if I can come up with more interesting stuff :) 13:39
Ha, but, what's the syntax wordpress accepts? bbcode?
moritz vendethiel: HTMLish 13:40
vendethiel doesn't look great. but hey, I can use <a> and stuff I guess
moritz vendethiel: basically HTML, but it'll insert <br/> for linebreaks, and <p> boundaries for newlines
vendethiel alright, thanks. 13:42
13:43 psch joined
psch hi #perl6 \o 13:43
andreoss m: my int $x = 4; my int $y = 2; my int $r = $x / $y ; 13:50
camelia rakudo-moar 30edf7: OUTPUT«This type cannot unbox to a native integer␤ in block <unit> at /tmp/57YkYcK2G6:1␤␤»
timotimo yeah, the / operator gives you a Rat
you want div instead
moritz m: my $p = Promise.new; $p.break; say $p.result 13:59
camelia rakudo-moar 30edf7: OUTPUT«False␤ in method result at src/gen/m-CORE.setting:20851␤ in block <unit> at /tmp/DPnqRJb6YW:1␤␤»
moritz m: my $p = Promise.new; $p.break; say $p.cause 14:00
camelia rakudo-moar 30edf7: OUTPUT«False␤␤Error while creating backtrace: Op 'backtrace' needs an exception object␤ in method new at src/gen/m-CORE.setting:12115␤ in method backtrace at src/gen/m-CORE.setting:12266␤ in code at src/gen/m-CORE.setting:12276␤ in method gist at…»
moritz bug, I'd say?
m: say so Promise 14:02
camelia rakudo-moar 30edf7: OUTPUT«Invocant requires an instance, but a type object was passed␤ in method Bool at src/gen/m-CORE.setting:20855␤ in sub prefix:<so> at src/gen/m-CORE.setting:4296␤ in block <unit> at /tmp/DzQ3LHQz2i:1␤␤»
moritz also a bug
m: say Vow 14:06
camelia rakudo-moar 30edf7: OUTPUT«===SORRY!=== Error while compiling /tmp/ahBo0I3hPu␤Undeclared name:␤ Vow used at line 1␤␤»
dalek c: 8000e26 | moritz++ | util/new-type.p6:
Add a util for generating a stub doc for a new type
14:12
c: 43b8eb8 | moritz++ | lib/Type/Promise.pod:
document Promise
kudo/nom: 413a2d5 | moritz++ | src/core/Promise.pm:
Make Promise.Bool a multi

otherwise "so Promise" dies
14:13
nige vendethiel I'd like to see another MAIN advent entry - always been partial to a Perl5 modulino - and MAIN is modulinos on steroids 14:14
www.drdobbs.com/scripts-as-modules/184416165 14:15
for a 'modulino' reference
moritz also MAIN now supports better usage messages when semantic comments/pod is attached
14:16 abraxxa left
nige indeed 14:16
moritz that's something that has been mentioned before, but only in passing
nige a work colleague uses "Munner" - multiple runner - for lots of devops work - search.cpan.org/~micvu/App-Munner-0.../Munner.pm 14:18
a mash up of MAIN + Munner + Modulinos could be an interesting advent post idea ...
talking of $work bbl & 14:19
colomon ponders 14:20
colomon suspects modulinos may not be the best way of doing things in p6 14:21
vendethiel moritz: do we have an advent post on subsets? 14:23
colomon vendethiel: pretty sure there's one of those from the early days
moritz vendethiel: I'd have to search too (I don't know all the 120+ topics so far by heart :-) 14:24
vendethiel yeah, you knew the other one because you wrote it :)
moritz vendethiel: well, I (co-)wrote at least 20 advent posts so far, I'm pretty sure I don't remember all the topics I wrote about :-) 14:25
vendethiel moritz: yes, pod comments is a big part ofi t 14:26
moritz vendethiel: day 24 is still up for taking (unless TimToady++ wants to claim it) 14:28
vendethiel: or a 25th post-advent special :-)
andreoss how to evaluate a list eagerly, but not wait until calculation is ready? 14:29
moritz andreoss: my $promise = start { eager @list }; 14:30
andreoss: and when you want to wait, say 'await $promise'
andreoss i.e always evaluate ahead
moritz: it won't work with infinite lists 14:31
dalek kudo/nom: deb1e6d | timotimo++ | src/core/Attribute.pm:
a tiny speedup for auto-generated attribute accessors
moritz andreoss: don't wait for the promise then
andreoss: or you can simply iterate the list, that will evaluate it 14:32
timotimo m: say "an improvement of { 19718.16ms
camelia rakudo-moar 30edf7: OUTPUT«===SORRY!=== Error while compiling /tmp/oViOY2Qc2J␤Unable to parse expression in block; couldn't find final '}' ␤at /tmp/oViOY2Qc2J:1␤------> say "an improvement of { 19718.16⏏ms␤ expecting any of:␤ …»
timotimo ...
m: say "an improvement of { 18815.48 / 19718.16 } was had in one benchmark."
camelia rakudo-moar 30edf7: OUTPUT«an improvement of 0.9542209 was had in one benchmark.␤»
14:32 ecocode joined
timotimo 4.5% is definitely not "nothing". nice. 14:32
the commit also reduces the amount of scalars generated 14:33
to 1/3rd in this benchmark's case 14:34
m: say "gc time went down to { 3374.84 / 3733.63 }" 14:35
camelia rakudo-moar 30edf7: OUTPUT«gc time went down to 0.9039032␤»
14:35 liztormato joined
timotimo interesting 14:35
liztormato moritz: vendethiel i'll gladly give up my slot
vendethiel no no no
liztormato No? 14:37
I've already done 3
14:38 kaleem left
masak arnsholt: "it's easy if you know it" 14:40
arnsholt: it's a really hard problem to explain something to someone whose background/prior knowledge you don't have a handle on. 14:41
arnsholt: nLab is the same, for what it's worth. I can sort of see that what they say makes sense, and hangs together, and consistently uses a vocabulary and a set of techniques -- but it all hangs together in such a way that the only way to know something is to know everything. 14:42
arnsholt Yeah. AKA, teaching is hard 14:43
mathw yes, teaching is hard 14:44
PerlJam arnsholt: yeah, but nLab is an example of making it *harder* :)
masak despite this, I like nLab. 14:45
arnsholt has never heard about nLab
masak arnsholt: this is a good place to start. ncatlab.org/nlab/show/nPOV 14:48
arnsholt Right. Looks interesting 14:49
I think. Modulo not knowing anything about category theory, or much math beyond basic calculus \= 14:50
=)
masak category theory is basically a useful mapping language between disciplines of mathematics. 14:51
it's useful to computer scientists exactly to the extent computer science is mathematics. i.e. some branches of it more than others. 14:52
andreoss moritz: it defenetly evaluates iterations one by one paste.fedoraproject.org/161315/14190007/
mathw I've never managed to get my head around category theory 14:53
this was a slight impediment while attempting to get a PhD in a language research group
andreoss any time it starts a promise a dot printed, new line will be printed when promise is accessed
masak maybe I should hold a category theory seminar on IRC.
mathw I don't really think I need to know it anymore 14:54
I'm not designing type theories
Woodi woolfy: probably easiest way to start programming (or needeing it) is to become sysadmin on some *nix system :) eg. agregate some common things into script
PerlJam Woodi: I dunno ... there are many Perl people that starting programming for entirely different reasons and I'd say "become a sysadmin" would have been way too high a bar for many of them. 14:58
15:00 ecocode left 15:01 isBEKaml joined, rindolf left
andreoss i don't know what this type of evaluation is called, "lazy" is not the right term i guess. 15:01
"lookahead evaluation"". is it a thing? 15:02
vendethiel not sure
Woodi PerlJam: I think administration is simpler then programming. and I can't agree that sysadmin job is way to high for anyone :) but I understand it in "traditional" Unix/BSD way - rc scripts or /etc/init.d, /etc thingies, /var thingies..
isBEKaml Woodi: that's because you know where to look and what those stuff entails. Can't generalize/extrapolate that for the rest... 15:04
15:06 liztormato left 15:09 erkan left
Woodi isBEKaml: key thing is _need_ to do something or wanting it. sysadmin job is simpler then netadmin job which is simpler to expert programming and so on... 15:09
masak doesn't think woolfy needs to be a sysadmin ;)
hoelzro morning #perl6 15:10
15:11 atroxaper left, kaare_ left 15:12 erkan joined, erkan left, erkan joined
PerlJam Woodi: Any, need is a prerequisite; but there are many more needs than just those relating to computing fields. Look at the human genome project, the need was for sequencing the genome; programming just became a way to get computers to tell you stuff about your lab results. 15:13
er, s/Any/Aye/
mathw the way to start programming is to have a problem you can solve by writing a program 15:14
OR to just be really interested
PerlJam people come to programming from many fields. Some of the ones I've bumped into came from "library science" (I'm still not quite sure what that is :), publishing, astronomy, bioinformatics, GIS, and nursing. None of those people would have ever learned to program if they had gone through "sysadmin" to get there :) 15:16
psch aughs at PerlJam tripping his balanced parens parser 15:17
mathw library science is about the remarkably difficult task of classifying, indexing and finding published information
PerlJam heck, I started programming "seriously" because I was playing with AutoCAD in the mid 1980s and wanted it to automatically tally materials costs for the things I designed.
mathw my boyfriend does a bit of coding just because he needs AutoCAD to do stuff sometimes 15:18
although his last thing was some kind of Excel VBA atrocity
I decided not to enquire too closely
don't want to risk actually having to see the code
PerlJam mathw: where is the scientific method employed in library science? 15:19
15:19 andreoss left
jnthn is squeemish enough about having to see VB, let alone VBA :) 15:19
isBEKaml PerlJam: autoLISP? :-)
PerlJam isBEKaml: yep :) 15:20
isBEKaml does AutoCAD still come with that LISP variant these days?
PerlJam I dunno I haven't used AutoCAD in years
vendethiel moritz: how do you write a piece of code in wordpress-html?
isBEKaml vendethiel: dunno about WP. Why not just use <pre></pre> for preformatted tags? 15:21
vendethiel well, because you don't get syntax hl
isBEKaml ah
mathw PerlJam: no idea. I didn't say it was well-named. 15:22
15:22 davido__ left
psch vendethiel: WP has [code] and <code>, the former can take a language="" attribute and adds a horizontal scrollbar. beware html entities with both of those 15:24
15:24 davido__ joined
dylanwh My wife does cad -- yes, autolisp still exists. 15:25
PerlJam someone had some excellent syntax highlighting in one of the earlier advent entries this year. Find the entry and ask how he/she did it. :)
dylanwh "every other language/framework they've added is in some sort of deprecation cycle"
15:26 FROGGS left
rurban Many people came from AutoLISP 15:26
dylanwh I've oftne used autolisp as a counter-point when people say elisp is horrible. Although I've only recently used elisp, I once had to make autolisp speak to a perl webapp and Lotus Notes 15:28
moritz vendethiel: I personally just write pod, and then use pod2html
no syntax hilighting, but that's OK, IMHO
dylanwh (for lotus notes, I implemented a bad 1-lisp so I didn't have to write business login in Lotus BASIC)
hoelzro I was bringing some old (2+ years) code up to speed, and I noticed that Str.encode returns a specific type depending on the encoding (ex. utf8) 15:29
I had a method declared as 'returns Buf', but apparently a utf8 isn't a Buf, so it always failed; what would be the proper returns declaration to deal with the results of a Str.encode 15:30
(without getting as specific as utf8, that is)
moritz m: say utf8 ~~ Blob
camelia rakudo-moar deb1e6: OUTPUT«True␤»
moritz hoelzro: Blob
hoelzro ah ha 15:31
thanks moritz
moritz m: say Buf ~~ Blob
camelia rakudo-moar deb1e6: OUTPUT«True␤»
15:31 treehug88 joined
hoelzro so utf8 isa Blob, and Blob does Buf? 15:31
Woodi hey, thes day "sysadmin job" is just doing stuff on your laptop :) and I still think that way is very simple way to some need for programming. never say that it is _only_ way, just good. 15:33
dalek volaj: fc4fdf6 | (Matthew Walton)++ | lib/NativeCall.pm6:
Detect libnames with .so.<.digit>$ and use them unchanged.

This allows things like "is native('libncurses.so.5')" which would previously attempt to load libncurses.so.5.so.
volaj: 64b11de | (Matthew Walton)++ | lib/NativeCall.pm6:
Extend recognition of libraries with .so.<digit>+ to .so(.<digit>+)+

This allows calling libraries named like libfoo.so.1.2.2
volaj: a0e685f | jnthn++ | lib/NativeCall.pm6:
Merge pull request #53 from mathw/master

Detect libnames with .so.<.digit>$ and use them unchanged.
jnthn hoelzro: No, Buf ~~ Blob. Buf is a mutable Blob, at least by spec. 15:34
hoelzro ahhhh
jnthn hoelzro: utf8 is a Blob 'cus if you can modify it, well, you can make it not be utf8 any more... :)
hoelzro always forgets the order of the arguments for ~~
it's RHS.ACCEPTS(LHS), right?
jnthn Right
Yeah, catches me out occasionally do, though the design makes sense. 15:35
s/do/too/
hoelzro $str ~~ $regex is a good mnemonic for me
Woodi actually, is .so.x(.\d)+$ a good thing ?
will work, no doubt :) 15:37
geekosaur will work until you hit something like old openssl (libssl.so.0.9.8f) 15:45
Ugator maybe only expand to .so if there is no .so? 15:47
15:48 mvuets left 15:50 sqirrel joined
vendethiel moritz: we have a very old post (2010) about smart matching which shows subset but not subset itself 15:51
mathw \o/ 15:53
Woodi: feel free to provide patches
This fixes my requirements for the immediate future 15:54
but I'm not convinced it's the right fix for all of the future
vendethiel mathw: I tried writing some tests for it, but it relies a lot on global $*ENV state
moritz vendethiel: then go for it 15:55
vendethiel moritz: I'm writing a MAIN advent right now :) 15:56
moritz vendethiel: do allocate a day in the 'perl6/mu' repo in file misc/perl6advent-2014/schedule 15:59
vendethiel moritz: only if I'm satisfied with what I wrote 16:00
16:01 doublelel left
moritz doc.perl6.org/type/Promise # feedback very welcome 16:01
vendethiel "my Int $a" <- typed variable? type-checked variable? 16:06
moritz typed variable
vendethiel is .IO.e still the prefered way to check if a file exists? I havn't been following up most of the latest IO refactorings... 16:09
.oO( if I take lizmat's post place on it, maybe I'll never know )
jnthn vendethiel: I don't recall that changing, though I've only been following so closely too 16:10
mathw I'm sure I saw that in someone's code recently 16:13
moritz vendethiel: yes, .IO.e is fine
mathw and it certainly works :)
16:13 liztormato joined
liztormato vendethiel: IO.e will continue to work 16:14
vendethiel amazing :)
16:14 ecocode` joined
liztormato Refactoring is mostly under the hood 16:14
vendethiel Do we have an advent calendar about POD-ing a subroutine parameters and stuff? 16:15
okay, good to know
PerlJam vendethiel: We've got perl6advent.wordpress.com/2011/12/1...g-perl-6/, but things have changed since then. 16:16
moritz liztormato: if you have a bit of time, a review of doc.perl6.org/type/Promise would be great 16:17
hoelzro PerlJam: did I forget to update that post?
16:18 doublelel joined
liztormato I was just looking at it 16:18
PerlJam hoelzro: not sure actually
16:18 isBEKaml left
moritz liztormato: I guess I should be more patient then :-) 16:18
hoelzro looks
I did
liztormato moritz: I understand method new is inherited. 16:19
But maybe it deserves a manual entry as well
At least stating the absence of named parameters
jnthn moritz: For .anyof, a cute example is Promise.anyof($something, Promise.in(2)); 16:20
16:20 mr-foobar joined
moritz liztormato: he, I also considered that :-) 16:20
jnthn: will add, thanks
liztormato Now you get the impression you cant or shouldnt Promise.new
16:21 FROGGS joined
moritz liztormato: maybe just an example in the synopsis at the beginning would help 16:21
liztormato Yup.
16:22 anaeem1_ joined
[Coke] once I install a fresh perl6, I have to do a panda rebootstrap from the panda source dir? 16:22
moritz [Coke]: yes 16:23
[Coke]: or you can use rakudobrew to do it all for you
jnthn moritz: It's worth maybe being more clear somehow that Promise.in, start, anyof, and allof are Promise "factories" that keep/break the Promise, and it's only ones made by Promise.new where you grab the vow and keep/break them yourself. 16:24
[Coke] moritz: note to self. never. ever. ever. do this at work. 16:25
because I do it every six weeks or so, long enough for me to forget that it just dies.]
moritz [Coke]: and I thought it opened a porn site while your boss was watching, or something like that
:-)
jnthn: good point 16:26
[Coke] moritz: normal path: upgrade perl6, reinstall. realize I've broken every installed module. run panda. panda is also broken. go to panda source, rebuild... dies halfway through because I forgot to set the http_proxy; rerun; dies near the end because something doesn't support http_proxy; switch to non-work wifi network, realize that at some point, the rebootstrap failed, and it didn't reinstall all my modules. 16:28
moritz [Coke]: :(
[Coke] so, nothing quite as bad as your scenario, but very frustrating, and I do it constantly. then I remember why I waited so long to do the update! ;)
ok, I think I am recovered now. :P 16:29
16:36 lizmat joined
dalek c: 347e492 | moritz++ | lib/Type/Promise.pod:
[Promise] incorporate feedback from jnthn++ and lizmat++

  * explain that you can only keep and break promises yourself if you created them with .new
  * timeout example for Promise.anyof
16:36
lizmat is finally back after a ~4 hour upgrade to Yosemite 16:37
dalek c: 79a7a83 | moritz++ | lib/Type/Promise.pod:
[Promise] Make it clear that method vow returns a Vow
16:38
16:39 liztormato left
moritz gist.github.com/moritz/b3819df0106dd7ff9b24 # draf for day 23 16:39
... now formatted 16:40
16:40 kaare_ joined
moritz *draft 16:40
16:41 sqirrel left
lumimies moritz: s/time address/time to address/ 16:44
moritz lumimies: thanks 16:48
fixed
vendethiel seems like S26 link is broken 16:50
moritz eeks, that's not generated by the usual synopsis build process :( 16:51
moritz tries perl6-m --doc=HTML S26-documentation.pod > S26.html 16:52
itz wonders why they bothered with 0x213B 16:54
moritz design.perl6.org/S26.html restored
vendethiel moritz++
dalek ecs: d8509e2 | moritz++ | S (2 files):
Update perlcabal.org/syn/ links to design.perl6.org
16:55
16:55 atroxaper joined
dalek href="https://perl6.org:">perl6.org: fd08d90 | moritz++ | source/ (30 files):
Update perlcabal.org/syn/ links to design.perl6.org
16:57
: d1f7714 | moritz++ | / (11 files):
Update perlcabal.org/syn/ links to design.perl6.org
16:58 doublelel left
moritz lumimies: did you like the draft? 17:01
vendethiel moritz: where is in S26 the part about adding comments to parameters? 17:03
hoelzro vendethiel: look for method cast in S26 17:06
method cast(#|{ A spell } Spell $s)
you could also put the params on separate lines interspersed by #|/#=
vendethiel hoelzro++ #was looking for "argument" or "parameter"
hoelzro vendethiel: I just happen to know that document fairly well =P
lumimies moritz: Yeah, especially the web scale :) 17:07
hoelzro vendethiel: #|/#= should work for any declaration 17:08
17:08 fhelmberger left 17:10 telex left
vendethiel alright 17:12
17:12 telex joined
vendethiel hoelzro: yeah, I know you made major changes to it =) 17:14
17:20 dayangkun left
moritz lumimies: :-) great 17:23
woolfy masak, Woodi: I have been "sort of a sysadmin" for quite some years, and used Perl (4 & 5) for that... Just the capability of learning new stuff and remembering stuff is a problem. Don't get a severe burnout, it will change your life. 17:37
gtodd ++ on masak not getting burned out 17:39
well ++ everyone not getting burned out
17:42 nige left
TimToady has been planning to do the 24th 17:46
17:47 erkan left 17:48 \Grrr joined, \Grrr left 17:49 erkan joined
dalek : c576b49 | (Carl Masak)++ | misc/perl6advent-2014/schedule:
book TimToady++ on 24th
17:50
17:50 erkan left, erkan joined
masak hey, I want it to happen ;) 17:50
17:51 rurban left
flussence m: await Promise.in(1).then({ fail }) # um, what? :) 17:55
camelia rakudo-moar deb1e6: OUTPUT«===SORRY!===␤Could not find symbol '&Return'␤»
FROGGS flussence: `fail` tries to return from the surrounding routine 17:56
therefore it tries to locate a Return symbol
m: { fail }
camelia rakudo-moar deb1e6: OUTPUT«Unhandled exception: ␤ at <unknown>:1 (/home/camelia/rakudo-inst-1/languages/perl6/runtime/CORE.setting.moarvm:throw:4294967295)␤ from src/gen/m-CORE.setting:13845 (/home/camelia/rakudo-inst-1/languages/perl6/runtime/CORE.setting.moarvm:sink:29)␤…»
FROGGS m: my $foo = -> { fail }; $foo() 17:57
camelia rakudo-moar deb1e6: OUTPUT«Unhandled exception: ␤ at <unknown>:1 (/home/camelia/rakudo-inst-1/languages/perl6/runtime/CORE.setting.moarvm:throw:4294967295)␤ from src/gen/m-CORE.setting:13845 (/home/camelia/rakudo-inst-1/languages/perl6/runtime/CORE.setting.moarvm:sink:29)␤…»
moritz m: await Promise.in(1).then(sub { fail })
camelia rakudo-moar deb1e6: OUTPUT«===SORRY!===␤Too many positionals passed; expected 0 arguments but got 1␤»
FROGGS m: await Promise.in(1).then(sub ($) { fail })
camelia rakudo-moar deb1e6: OUTPUT«Unhandled exception: ␤ at <unknown>:1 (/home/camelia/rakudo-inst-1/languages/perl6/runtime/CORE.setting.moarvm:throw:4294967295)␤ from src/gen/m-CORE.setting:13845 (/home/camelia/rakudo-inst-1/languages/perl6/runtime/CORE.setting.moarvm:sink:29)␤…»
FROGGS m: await Promise.in(1).then({ .break }) 17:58
camelia rakudo-moar deb1e6: OUTPUT«===SORRY!===␤Access denied to keep/break this Promise; already vowed␤»
FROGGS eww :o)
moritz FROGGS: works as designed 17:59
jnthn you break it in then by throwing :) 18:00
flussence after reading the code, I'm guessing the first error is referring to X::ControlFlow::Return...
it's a LTA error message (imho), and I think I've seen it happen before around faily code 18:02
jnthn I'm not really sure what the semantics of a Promise.start evaluating to a Failure should be
dalek : c19d955 | lizmat++ | misc/perl6advent-2014/schedule:
Free up day #22 for ++vendethiel
18:03
jnthn Does it break the Promise, or does it keep the Promise but the result is a Failure?
The latter keeps it non-fatal
lizmat vendethiel: there is no escape now
:-)
18:03 vendethiel left
flussence I'm not really sure what I'm *doing*, but I bet other people are gonna try the same thing somewhere down the line :) 18:03
TimToady lizmat: oops, he escaped 18:04
lizmat oh dear :-(
flussence anyway I thought the whole point of Failure is that it's a non-fatal, lazy exception that you can pass around...
second seems right to me
FROGGS moritz: yes, I thought so... 18:05
the 'eww' was more like: 'I should finally take a look at Promises'
jnthn flussence: That's my gut feeling too.
TimToady is it trying to pass it through a type constraint that doesn't allow for Failure? 18:06
jnthn Dunno 18:09
m: say Promise.start(sub ($) { fail "foo" }).result.perl 18:10
camelia rakudo-moar deb1e6: OUTPUT«===SORRY!===␤Too few positionals passed; expected 1 argument but got 0␤»
jnthn huh...
m: say Promise.start(sub ($) { fail "foo" }) 18:11
camelia rakudo-moar deb1e6: OUTPUT«Promise.new(scheduler => ThreadPoolScheduler.new(initial_threads => 0, max_threads => 16, uncaught_handler => Callable), status => PromiseStatus::Broken)␤»
jnthn will have to take a closer look...
Though I should probably be packing at the moment... :) 18:12
tony-o anyone using perl6+jvm on freebsd? 18:13
18:15 vendethiel joined 18:19 grettis joined 18:23 spider-mario joined, eiro left 18:24 eiro joined 18:25 rindolf joined 18:28 tgt joined 18:29 tgt left
lizmat jnthn: I'll have a look at that Promise issue 18:35
go pack! have fun! don't get (too) sick!
18:37 Mso150 joined 18:38 psch left 18:56 anaeem1_ left
moritz method send(Channel:D: \item) { 18:58
X::Channel::SendOnClosed.new.throw if $!closed;
nqp::push($!queue, nqp::decont(item));
}
isn't that prone to race conditions?
vendethiel probably is 18:59
flussence today I fixed a failing test in my code, but I still don't know *why* this works, and that's really bothering me... github.com/flussence/Test-ClientSe...257cea759b 19:01
lizmat moritz: hopefully the locking happens in the nqp::push on the $!queue ? 19:03
alternately, nqp::push in inherently lock free ?
jnthn lizmat: It's not that the op is 19:04
moritz lizmat: yes, but somebody could close the queue between the $!closed check and nqp::push, no?
jnthn lizmat: It's that $!queue has the REPR BlockingConcQueue
lizmat moritz: in which case you would get a different (or no) error
jnthn moritz: Yes, there's a race there
19:05 d4l3k_ joined
jnthn And you'd get no error, just a lost value. 19:05
bartolin tony-o: I'm running daily builds+spectests of rakudo.jvm on freebsd. but I don't do anything else with those.
jnthn It's a little tricky to fix in combination with the queue providing backpreassure, which it's going to need to. 19:06
moritz I'll open an issue
19:06 kaare__ joined 19:07 __rnddim__ joined, petercom1and joined, shlomif joined, BooK_ joined, hekmekk joined, muraiki_ joined 19:08 orevdiabl joined, vike1 joined, eviltwin_b joined, rindolf left, kaare_ left, dalek left, lue left, BooK left, petercommand left, hekmek left, eviltwin_b is now known as geekosaur, prammer_ joined, SHODAN joined 19:09 shlomif is now known as rindolf, d4l3k_ is now known as dalek, ChanServ sets mode: +v dalek
tony-o bartolin: i'm getting an error trying to build tag 2014.06 on freebsd with make: don't know how to make j-all 19:09
configures fine, make fails with that error, any ideas? 19:10
moritz tony-o: did you configure with --backends=jvm?
tony-o yes
19:10 muraiki_ is now known as muraiki
tony-o i built with --gen-nqp --gen-parrot --gen-moar --backends=moar,jvm,parrot 19:11
i haven't tried building with *just* jvm
moritz tony-o: does 'make m-all' and 'make p-all' work?
tony-o i'll give those a shot
bartolin tony-o: hmm, my daily builds started in october only.
tony-o: I'd try that first (only building with --backends=jvm) 19:12
tony-o bartolin: maybe i'll bump it up to october if m-all and p-all works
moritz tony-o: but why the interest in such an old version?
tony-o moritz: generating module graphs and all of that jazz
moritz tony-o: btw --backends=all exists
tony-o ty 19:13
bartolin tony-o: my daily builds are quite stable
tony-o bartolin: did you use pkg or ports to install jdk ? 19:14
bartolin tony-o: mom, have to look that up
tony-o mom?
moritz "moment" 19:15
tony-o moritz: gonna have to try it when i get home, accidentally disabled ssh 19:16
moritz tony-o: :-)
tony-o: the other day I ran an "ifdown br0" to disable the bridge interface, not knowing that it acted as the primary interface of the host 19:17
tony-o i know FROGGS has a matrix but i'm building out a huge array of OSes + perl6s to test all modules and create some graphs
bartolin tony-o: obiously I installed jdk with pkg ("pkg install openjdk")
tony-o moritz: lol, i've done that before too :)
moritz tony-o: and then had to do a trip to the data center to recover 19:18
tony-o mine was a ticket cause the server was in quebec
19:18 erkan left
lizmat dinner& 19:18
tony-o moritz: i'm working on something like this (this is a mockup) darcsys.com/smoke/module_build.html 19:19
moritz tony-o: nice 19:20
tony-o like npm for perl6
but with all the cool stuff metacpan has
19:21 erkan joined, erkan left, erkan joined 19:24 FROGGS left
bartolin moritz: if I fiddle with network or firewall configuration I sometimes schedule a (network-restart|firewall-reset|reboot) via at or cron -- say half an hour later. maybe the biggest problem is to re-schedule it if everything works fine 19:24
El_Che bartolin, moritz : I've found that at does a good job for that kind of thing 19:27
at +5m restore_something
moritz El_Che: yes, I think that's a good idea
El_Che of course, if you have console access, it's not as important 19:28
19:28 atroxaper left
moritz though on the virtual systems, I can just use virt-manager to open a terminal 19:28
El_Che there you go :)
TimToady oh for the good old days when a computer was just a computer... :) 19:29
moritz jnthn, lizmat: is Channel.poll the non-blocking version of Channel.receive?
jnthn moritz: Yes; returns Nil if there's nothing to receive, iirc 19:30
moritz jnthn: that seems to match my reading of the source code.
itz where does readdir live? if it has a home 19:34
moritz itz: there's a dir() function
m: say dir()
camelia rakudo-moar deb1e6: OUTPUT«"/home/camelia/rakudo-inst-2".IO "/home/camelia/ugexe-was-here".IO "/home/camelia/evalbot".IO "/home/camelia/test".IO "/home/camelia/.viminfo".IO "/home/camelia/rakudo-inst-1".IO "/home/camelia/.bashrc".IO "/home/camelia/.ssh".IO "/home/camelia/std".IO "/h…»
moritz those are IO::Path objects
itz ah ty 19:35
19:38 anaeem1 joined 19:45 rurban joined 19:48 FROGGS joined
FROGGS tony-o: what if you'd use the testers.perl6.org reports from its database? 19:51
19:51 hekmekk is now known as hekmek
bartolin tony-o: I was able to build rakudo.jvm 2014.06 on FreeBSD 10.1 (using OpenJDK 1.7.0_71 installed via pkg). my build command was 'perl Configure.pl --gen-moar --backends=jvm; make' 19:54
FROGGS tony-o: you can then still generate reports for all compilers and backends using panda 19:55
hoelzro does anyone know off hand where the "$^VAR" behavior is documented, particularly the part about $^ being ordered, and that order determining which parameter they represent? 19:57
bartolin FROGGS: could you point me to some instructions how to provide data for testers.perl6.org?
FROGGS bartolin: PANDA_SUBMIT_TESTREPORTS=1 panda install Foo 19:58
and 19:59
bartolin: PANDA_SUBMIT_TESTREPORTS=1 panda smoke
though, smoke will just attempt to install everything
it is not what one would expect by a smoke option 20:00
bartolin FROGGS: great. I hope I find some time to extend my daily test runs to smoke panda as well 20:01
itz everything in the ecosystem?
FROGGS that'd be awesome :o)
itz: yes
raydiak hoelzro: design.perl6.org/S06.html#Placeholder_variables 20:02
hoelzro thanks raydiak
raydiak yw
20:02 anaeem1 left
raydiak oh nice...design.perl6.org is more pleasant to read at than perlcabal.org/syn 20:03
moritz raydiak: you mean the URL? or the layout?
raydiak s/ at/ 20:04
FROGGS [Coke]: we've got a problem: github.com/coke/rakudo-star-daily/...figure.log
raydiak moritz: the url
moritz: does it want a new layout?
20:04 cognominal joined
moritz raydiak: it wants, yes 20:07
20:07 darutoko- left
moritz raydiak: something more p6ish :-) 20:07
El_Che "p6ish" :) 20:08
raydiak moritz: I can let that percolate in my head...feel free to spam out any more specific ideas you may have and I'll throw them in the pressure cooker too :) 20:10
El_Che are there any p6 books planned now it's closer to christmas?
the O'reilly one would be somewhat outdated :)
moritz raydiak: well, it has much more text content than www.perl6.org, so it shouldn't be as generous with the margins 20:11
raydiak moritz: indeed, the different structure of it will make it turn out differently than docs in several ways (esp the nav too)
moritz raydiak: and that also makes it more important that the body text remains black on white
raydiak sure 20:12
hoelzro moritz: re: your channel race condition ticket, I found similar behavior in IO.pm
raydiak oh, anyone else who has input to give is welcome too, of course...just don't tell me to write the whole thing as a webgl js app or something :)
hoelzro I was hoping to clean some of that up, but $work&$life 20:13
moritz raydiak: being able to read it with JS disabled is also a hard requirement from me :-)
raydiak moritz: we're on the same page there :)
raydiak has never in his past life as a professional software engineer and web developer, broken down and used js for things like layout or text rendering or other such fragile nonsense 20:15
moritz raydiak++
dalek rl6-roast-data: 00088f9 | coke++ | / (5 files):
today (automated commit)
20:16
c: f7ed0e0 | moritz++ | lib/Type/Channel.pod:
document class Channel
20:19
raydiak moritz: no promises on exact timing, things have been a bit rough here for me lately, and the impending holidays...but things like this which are fairly easy for me and make P6 look better generally go to the top of my list instead of the bottom :) 20:20
20:20 rindolf left, raiph joined
moritz raydiak: that's great, and no pressure :-) 20:20
raydiak: the mechanism that generates the synopsis HTML is a bit arcane, but I'll do my best in assisting with patching it 20:21
synopsebot: give me link to S02, will you? 20:22
or S02/Literals/
FROGGS S02:1
synopsebot Link: perlcabal.org/syn/S02.html#line_1
moritz who runs it? and can change the link to design.perl6.org?
FROGGS S02#Literals
tadzik does
dalek p/parrot-rpa: 25963c3 | rurban++ | src/vm/parrot/ (2 files):
nqp.ops: fix parrot compiler warnings, enable --debugging

BUFFER_IS_EMPTY was undeclared pmc_sub.h is from parrot fix const casts for comp_sc, nqp_nfa_run, IO_VTABLE* fix wrong free(fates) => mem_sys_free(fates)
moritz oh, it's on github 20:23
then I can too :-)
github.com/tadzik/synopsebot/pull/4 opened 20:25
20:26 Isp-sec joined
raydiak moritz: thanks, that'll be helpful to stop me from nerd-sniping myself over a tangled knot of sed or some other creativity-sapping obstacle 20:27
raydiak notices perl6now.com
whats that about?
moritz no idea, but it looks dangerous :-) 20:28
20:28 atroxaper joined
moritz or like a mis-configured webserver 20:29
raydiak moritz: doesn't it? anyway, while my head is in this space, do you think the fixed-width on the docs site is a mistake?
moritz raydiak: fixed width? what do you mean? 20:30
raydiak moritz: the content area is fixed to like 800 wide or so
moritz raydiak: doesn't look like it for me 20:31
raydiak: if I resize my browser window, it follows
raydiak: we're talking about doc.perl6.org, rightß
raydiak moritz: not if you go wide enough
moritz: yes
moritz s/ß/?/
ah, a max-width
raydiak yep 20:32
moritz that seems reasonable to me
because if lines becomes too long, it's hard to find the correct line
raydiak it's something I do when I'm worried about the spacey broken look of small text in big wide boxes
moritz when the eye scans from the right end of the line to left of the next line, and loses the correct vertical position
raydiak ah, that's what it is...some of these things I understand in a little more instinctual way...just look at it and feel "ugh" 20:33
anyway, I thought maybe that was part of what you were saying you don't want for design.perl6.org, which makes sense because there aren't any short parts to speak of :) 20:34
but thought I'd ask if it's offensive on the docs site too while I'm at it
moritz raydiak: no, what I meant is perl6.org/ 20:35
20:35 atroxaper left
moritz raydiak: that one has lots of whitespace everywhere, and probably too much for the design notes 20:35
20:35 mvuets joined
moritz (though maybe I'm misjudging that) 20:35
raydiak moritz: oic.../agree
nah really it's good for what perl6.org is (a collection of small parts) but I totally agree that it wouldn't be quite right for the design docs 20:37
moritz raydiak: then we're in violent agreement :-)
moritz wonders why the new types, Channel and Promise, won't show up in the search on doc.perl6.org 20:39
raydiak has noticed at different times many things seem to be missed by the search
esp keywords like the loops and so forth 20:40
moritz: I see Promise and Channel, think you have a cache issue
20:41 hekmek left
moritz they seem to be misisn in js/search.js 20:41
*missing
the good part is that it means I won't have to debug js
the bad part is that it means I'll have to debug htmlify.p6 :/
raydiak moritz: you mean for the keywords? I do see channel and promise in the search here 20:43
moritz raydiak: I mean in the search box in the top right (needs JS) 20:44
raydiak yes, the search box does show Promise and Channel for me
so either you have an old cached version loaded and it's not broken, or it is broken and I'm the one with the old cached version 20:45
moritz moritz@pat:~/p6/doc>grep Channel html/js/search.js 20:46
{ label: "Type: Channel", value: "Channel", url: "/type/Channel" },
I could have sworn it wasn't there just a moment ago
oh well
tony-o FROGGS: is testers.perl6.org down?
moritz raydiak: a ctrl + shift + r fixed it, thanks 20:47
FROGGS tony-o: not for me
raydiak moritz: yw...sometimes even that doesn't fix it for me, and I have to directly navigate to the js file and reload that
moritz raydiak: I think you just saved a ton of fruitless debugging time :-) 20:48
jnthn FROGGS, tony-o: Works for me here too
FROGGS tony-o: though very slow, because it still does too much dynamicly
raydiak \o/ /me did something genuinely useful today :)
jnthn FROGGS: testers.perl6.org/authors is "not found", though
tony-o there we go
moritz raydiak: one thing you could try it open a private tab/window (ctrl+shift+p) and load the site there
FROGGS jnthn: that's NYI :D
jnthn Oh, then I can assume I'm an awesome author until it is :P 20:49
tony-o lol
FROGGS *g*
I bet
moritz jnthn, lizmat: doc.perl6.org/type/Channel another thing to review when you have free time
raydiak moritz: oh nice one, never thought to use that for much besides multiple simultaneous logins to the same site
moritz raydiak: many people aren't even aware of the multiple logins use case 20:50
jnthn moritz: "...a thread-safe queue that helps you to a series of objects..." 20:51
I that's missing a verb... :)
moritz++ # working on concurrency docs 20:52
raydiak moritz: it blows peoples minds when I show them and they realize how many accounts they can have logged in to farmville at the same time :P
dalek c: 60a9e31 | moritz++ | lib/Type/Channel.pod:
Channel: missing verb, jnthn++
moritz raydiak: :-)
raydiak afk for a while...thanks for the chat moritz, makes my day a little better when I connect with a human being for a moment :) 20:54
moritz raydiak: have a fun afk time :-) 20:55
[Coke] FROGGS: that's from september 26th. 20:58
there is still a perl6 eval server running on host07 20:59
er, host07
ER HOST08! 21:00
FROGGS ohh, my bad
[Coke] FROGGS: looks like I dropped that on the floor when I stopped running things on host08. 21:01
I will see about getting that running again on hack.
21:14 azriel joined 21:21 Sqirrel joined 21:31 ptc_p61 joined 21:33 ptc_p6 left, atroxaper joined
masak 'night, #perl6 21:36
21:37 atroxaper left 21:48 go|dfish left 21:50 go|dfish joined
moritz support.ntp.org/bin/view/Main/Secur...tl_putdata I'm glad I haven't installed ntp on the new machines yet 21:57
22:01 __rnddim__ is now known as lue 22:10 gtodd left, gtodd joined
dalek c: 35f76f6 | lizmat++ | lib/Type/Channel.pod:
Some text tweaks, hope moritz++ is ok with them
22:10
geekosaur aaaand support.ntp.org is either not reachable from here or smashed flat...
lizmat smashed flat, I would presume 22:12
moritz geekosaur: buffer overflow in the ntp server, might allow remote code execution through crafted NTP packets 22:14
lizmat++ # doc rewording
geekosaur so I gathered from the url (I know far too much about ntp these days...)
moritz -> sleep 22:16
lizmat gnight, moritz 22:17
22:17 erkan left 22:20 erkan joined, erkan left, erkan joined 22:24 grettis_ joined 22:28 grettis left 22:34 FROGGS left 22:39 Rounin left 22:40 rurban left 22:42 mvuets left 22:43 kaare__ left 23:02 treehug88 left 23:06 carlin joined 23:08 Isp-sec left 23:23 spider-mario left, atroxaper joined 23:24 cognominal left, telex left 23:26 telex joined 23:28 araujo left 23:30 atroxaper left, Ugator left, araujo joined 23:31 Ugator joined
tony-o moritz: bartolin: appears the problem is that the JVM configure runs out of memory but it continues to configure for everything else (and i was sitting here watching text fly by) 23:39
23:48 vendethiel left
TimToady you should use make for that so it'll track the dependencies :P 23:53
Those who do not understand make are doomed to reinvent it--poorly. Then again, those who do understand make don't seem to do it any better... 23:58