»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'p6: say 3;' or rakudo:, or /msg camelia p6: ... | irclog: irc.perl6.org or colabti.org/irclogger/irclogger_logs/perl6 | UTF-8 is our friend! Set by moritz on 22 December 2015. |
|||
00:02
RabidGravy left
00:16
cdg left
00:18
jabus left
00:22
rickbike left
00:23
aindilis left
00:24
aindilis joined,
CurtisOvidPoe left
00:26
CurtisOvidPoe joined
00:27
Actualeyes left
00:29
pierre-vigier joined
00:37
wollmers left
00:45
spider-mario left
00:55
yqt left
01:03
jme` left
01:07
yeahnoob joined,
pierre-vigier left
01:09
lokien_ left
01:14
pierre-vigier joined
01:19
cpage_ left
01:22
pecastro left
01:24
cpage_ joined
|
|||
pierre-vigier | Any way to uninstall a module? | 01:31 | |
yoleaux | 14 Jan 2016 07:21Z <nine> pierre-vigier: panda does not yet support versioned requires | ||
01:33
protium joined
01:36
leont left
01:38
BenGoldberg joined
01:40
pierre-vigier left
01:41
woodruffw left,
woodruffw joined
01:44
pierre-vigier joined
01:46
pecastro joined
02:02
adu joined
02:03
xpen joined
02:04
adu left
02:05
pecastro left
02:06
pdcawley_ joined
02:07
pdcawley left
02:15
pierre-vigier left
02:16
pierre-vigier joined
02:24
harrison_ joined,
harrison_ left,
cognominal left
02:25
cognominal joined
02:27
pecastro joined
02:29
yurivish left,
azawawi joined
02:32
pecastro left,
pecastro joined
02:45
Actualeyes joined,
ilbot3 left
02:47
ilbot3 joined
03:02
maybeyes joined
|
|||
maybeyes | p6: my @ls = qx "ls"; @ls.elems.say | 03:03 | |
camelia | rakudo-moar 3259ba: OUTPUT«qx, qqx is disallowed in restricted setting in sub restricted at src/RESTRICTED.setting line 1 in sub QX at src/RESTRICTED.setting line 11 in block <unit> at /tmp/tmpfile line 1» | ||
timotimo | hm. does zef do uninstall? | ||
otherwise, allegedly it's only a few lines of patch once that one branch is merged ... | 03:04 | ||
mspo | so rakudostar has p6doc but is otherwise out of date; rakudobrew gets you up to date but is missing p6doc | 03:06 | |
sortiz | mspo: panda can install p6doc | 03:09 | |
03:09
kid51_ joined
|
|||
mspo | oic | 03:10 | |
03:11
kid51 left,
kid51_ is now known as kid51
|
|||
azawawi | timotimo: nope | 03:14 | |
and hi :) | |||
mspo | if only the dependencies built ;) | 03:16 | |
URI:ver<v0.1.1>:auth<>:api<> already installed | 03:17 | ||
azawawi | i have been researching opencv + perl6 for a while... apparently github.com/Itseez/opencv_contrib/pull/15 is our only route atm for latest c++ api support otherwise it is plain legacy c api | ||
given nativecall not being able to do std::string c++ name mangling | 03:19 | ||
mspo | Unhandled exception: Method 'IO' not found for invocant of class 'Any' | ||
ugh | |||
03:22
dwarring left,
M___ left
03:23
maybeyes left,
mrons left
03:24
azawawi left
|
|||
sortiz | mspo: I guess I'm lucky ;) | 03:25 | |
03:28
kid51 left
|
|||
mspo | something | 03:44 | |
03:44
xpen left
|
|||
skids | .tell Zoffix I pushed some ramblings to user-experience | 03:45 | |
yoleaux | skids: I'll pass your message to Zoffix. | ||
03:47
xpen joined
03:53
noganex joined
03:56
noganex_ left
|
|||
autarch | how can I get the exit status of something run via qqx? | 03:56 | |
actually, maybe I should use run | 03:57 | ||
03:59
deepika__ joined
04:00
grassass left
04:01
Actualeyes left
04:02
deepika__ left,
colomon left
|
|||
autarch | m: my $proc = run( 'echo', 'hello', :out, :merge );say $proc.out.slurp-rest; | 04:04 | |
camelia | rakudo-moar 3259ba: OUTPUT«run is disallowed in restricted setting in sub restricted at src/RESTRICTED.setting line 1 in sub run at src/RESTRICTED.setting line 14 in block <unit> at /tmp/_tN2tbICEr line 1» | ||
autarch | that core dumps for me on my machine | ||
ah, it's the :merge that does it | 04:05 | ||
rt.perl.org/Ticket/Display.html?id=127273 | 04:07 | ||
ugexe | rt.perl.org/Public/Bug/Display.html?id=125756 | 04:10 | |
autarch | argh | 04:16 | |
I searched for core dumb | 04:17 | ||
dump* | |||
04:17
Actualeyes joined
|
|||
autarch | I'd merge the tickets if I could | 04:17 | |
04:28
colomon joined,
_nadim left
04:37
grassass joined
04:40
MadcapJake joined,
pierre-vigier left
04:50
skids left
|
|||
MadcapJake | hello everybody! I thought I'd take my own advice and try designing a more sleek perl6 logo: just some simple gimp hacking but still looks kind of nice, twitter.com/MadcapJake/status/6878...0397976578 | 04:52 | |
Probably won't quell any logo naysayers, but I saw python had a logo like this and I wanted to make things balanced in the world ;) | 04:53 | ||
The angle of camelia really makes me feel the text is off-center, but i used a vertical guide so ¯\_(ツ)_/¯ | 04:56 | ||
04:58
mtj_ left
04:59
mtj_ joined
05:03
pierre-vigier joined
05:07
lastAck99 left
05:12
BenGoldberg left
|
|||
autarch | cute | 05:15 | |
I don't know why people freak out over the logo - the logo is _way_ down on the list of things that will make or break perl 6 | |||
05:18
yurivish joined
|
|||
MadcapJake | agreed, it's definitely just an issue because people like to argue and they don't really know the langauge well enough to actually argue against anything meaningful :P but still I like reading various programming language websites and many of them have sleek modern interfaces that I think camelia just doesn't mesh well with. This took me all of 15 minutes to do so, nbd | 05:19 | |
05:22
linuxuser9000 joined
05:26
pierre-vigier left
|
|||
TEttinger | MadcapJake: this would be fun as an exercise to make a completely-different-tone, same-idea version of camelia. I may hop on this bandwagon, I think I may start by making a pixel/voxel art butterfly with P 6 on the wings | 05:26 | |
MadcapJake | Great idea! | 05:27 | |
I'd like to see a butterfly done in the vein of golang's gopher or plan 9's bunny | 05:28 | ||
TimToady | .oO(all your mascots are belong to us) |
05:30 | |
MadcapJake | :D definitely, let's take every other language's icon/logo/mascot and reimagine them as butterflies | 05:32 | |
we'll then print them and create an art exhibit called "Metamorphosis or How I Learned To Love Perl 6" and tour the world creating a massive Perl 6 fervor! | 05:34 | ||
autarch | I do think the perl websites could be improved - I wanted to make doc better but I got hung up on my rewrite of Pod::To::HTML - said rewrite works great except that it uses massive amounts of memory for reasons no one can explain | ||
perl6 websites, to clarify (I mean p5 too, but that's OT) | |||
05:38
bzipitidoo joined
|
|||
bzipitidoo | msg camelia p6: say "hi"; | 05:38 | |
05:38
cpage_ left
|
|||
MadcapJake | m: say "hi"; | 05:39 | |
camelia | rakudo-moar 3259ba: OUTPUT«hi» | ||
05:46
dj_goku left
05:50
_nadim joined
05:53
Cabanossi left
05:55
Cabanossi joined
|
|||
bzipitidoo | m: grammar Tst { rule TOP { ^ <blok>* $ }; rule blok { '(' ~ ')' [ <-[()]> | <blok> ]* }; }; say Tst.parse("((a) b)"); | 06:04 | |
camelia | rakudo-moar 3259ba: OUTPUT«「((a) b)」 blok => 「((a) b)」 blok => 「(a) 」» | ||
bzipitidoo | m: grammar Tst { rule TOP { ^ <blok>* $ }; rule blok { '(' ~ ')' [ <-[()]> | <blok> ]* }; }; say Tst.parse("((a)xb)"); | ||
camelia | rakudo-moar 3259ba: OUTPUT«Nil» | ||
06:06
pierre-vigier joined
|
|||
bzipitidoo | why doesn't this work? | 06:11 | |
m: grammar Tst { rule TOP { ^ <blok>* $ }; rule blok { '(' ~ ')' [ <-[()]> | <blok> ]* }; }; say Tst.parse("(ab)"); | |||
camelia | rakudo-moar 3259ba: OUTPUT«Nil» | ||
bzipitidoo | but this works: | ||
m: grammar Tst { rule TOP { ^ <blok>* $ }; rule blok { '(' ~ ')' [ <-[()]> | <blok> ]* }; }; say Tst.parse("(b)"); | |||
camelia | rakudo-moar 3259ba: OUTPUT«「(b)」 blok => 「(b)」» | ||
06:11
cpage_ joined
06:13
pat_js joined
|
|||
MadcapJake | TEttinger, TimToady: github.com/MadcapJake/metamorphosis | 06:18 | |
06:18
khw left
06:22
ParsonsNose left
06:31
bzipitidoo left
06:43
telex left,
pdcawley joined
06:44
telex joined,
pdcawley_ left
06:48
pierre-vigier left
06:51
xargs joined
06:53
bartolin_ left
06:54
pierre-vigier joined
06:56
bartolin joined
06:57
xinming_ left,
xinming joined
06:58
xargs is now known as zmisc
06:59
zmisc is now known as zcm
07:10
sjoshi joined,
domidumont joined
|
|||
[Tux] | csv-ip5xs 50000 18.452 12.835 | 07:13 | |
test 50000 23.319 22.679 | |||
test-t 50000 12.831 11.950 | |||
csv-parser 50000 51.315 0.925 | |||
07:13
rfarr joined
07:14
rfarr is now known as REF
07:15
lokien_ joined
07:16
domidumont left
07:17
domidumont joined
07:20
_nadim left,
_nadim joined
07:23
REF is now known as ref
07:25
_nadim left
07:26
bjz joined
07:31
_nadim joined
07:36
bjz left
07:42
rurban joined
07:45
firstdayonthejob joined
07:56
frankjh joined
07:57
_nadim left
08:04
abraxxa joined
08:07
b10m joined
08:11
darutoko joined
08:12
rurban left
|
|||
TEttinger | MadcapJake: bigger versions didn't look as good, but at icon size this isn't bad dl.dropboxusercontent.com/u/119146..._Pixel.png | 08:15 | |
08:17
bjz joined
|
|||
dalek | c: 48e04e2 | (Jim Davis)++ | doc/Language/glossary.pod: two typos and a missing paren |
08:18 | |
08:22
Helge joined
08:25
RabidGravy joined
08:28
pierre-vigier left
|
|||
RabidGravy | marnin! | 08:28 | |
Helge | Greetings | 08:29 | |
08:29
pierre-vigier joined
08:32
pierre-vigier left
08:34
Helge left
08:35
zakharyas joined
08:36
firstdayonthejob left
08:43
rurban joined,
rurban left
08:45
rurban joined
|
|||
dalek | c: 03d42fc | (Jim Davis)++ | doc/Language/ (4 files): assorted spelling/typo errors |
08:45 | |
08:46
rurban left
|
|||
pat_js | Yesterday TimToady said there was a thought that autothreading (of junctions) over if/given/when… blocks would be confusing. Is there some elaboration on that somewhere. Chatlogs would be fine. | 08:47 | |
masak | good morning, #perl6! | 08:48 | |
pat_js: dunno about a written-down elaboration, but I know I'd be confused if, say, `if all(1, 2, 3) { ... }` ran the block three times | 08:49 | ||
ditto given and while loops | 08:53 | ||
actually, that's yet another reason a for loop is not exactly sugar for a .map :) | |||
oh wait, it is... | 08:54 | ||
&map (or rather, its callback) also doesn't autothread over a junction by default | |||
pat_js | hmm. But with that you have to be super paranoid if you want Conditions to be true inside an if block | ||
masak | m: map { say $_ }, 1, any(2, 3), 4' | ||
camelia | rakudo-moar 3259ba: OUTPUT«5===SORRY!5=== Error while compiling /tmp/DasDIcSWmTTwo terms in a rowat /tmp/DasDIcSWmT:1------> 3map { say $_ }, 1, any(2, 3), 47⏏5' expecting any of: infix infix stopper postfix statement …» | ||
masak | m: map { say $_ }, 1, any(2, 3), 4 | ||
camelia | rakudo-moar 3259ba: OUTPUT«1any(2, 3)4» | ||
masak | m: map -> Any $_ { say $_ }, 1, any(2, 3), 4 # you'd have to do this | 08:55 | |
camelia | rakudo-moar 3259ba: OUTPUT«1234» | ||
08:55
rurban joined
|
|||
masak | pat_js: I don't understand what you mean -- could you elaborate with an example, p'haps? | 08:55 | |
08:55
Actualeyes left
|
|||
El_Che | .seen ovid | 08:57 | |
yoleaux | I saw Ovid 7 Nov 2014 15:43Z in #perl6: <Ovid> Hello, timotimo. | ||
El_Che | .seen curtisovidpoe | ||
yoleaux | I saw CurtisOvidPoe 9 Jan 2016 23:19Z in #perl6: <CurtisOvidPoe> In fact, some companies have built in-house COBOL compilers with custom extensions due to the fear of COBOL providers going bankrupt. | ||
CurtisOvidPoe | /me waves | ||
El_Che | ahaha | ||
silly me | 08:58 | ||
CurtisOvidPoe: question | |||
pat_js | m: for 4,(0&3) { if $_ != 0 {say 4/$_} else { say "I don't divide here" }} | ||
camelia | rakudo-moar 3259ba: OUTPUT«1Attempt to divide 4 by zero using div in block <unit> at /tmp/z6oVni3eQw line 1Actually thrown at: in block <unit> at /tmp/z6oVni3eQw line 1» | ||
El_Che | your blogpost about subset is kind of the only doc about it: blogs.perl.org/users/ovid/2015/02/a...erl-6.html | ||
CurtisOvidPoe | Shoot. | ||
masak | CurtisOvidPoe: wow, that is some serious risk mitigation. (building your in-house COBOL compiler.) | ||
pat_js | now think about what happens if that isn't iside a loop, but somewhere in the coode | ||
El_Che | CurtisOvidPoe: maybe could the subset part be adapted and added to the doc? | 08:59 | |
pat_js | s/cood/cod/ | ||
08:59
rurban left
|
|||
CurtisOvidPoe | masak: COBOL fell so dramatically that there were major concerns. Scary. | 08:59 | |
pat_js | for 4,(0&3) { if $_ != 0 && $_ !~~ Junction {say 4/$_} else { say "I don't divide here" }} | ||
08:59
linuxuser9000 left
|
|||
pat_js | m: for 4,(0&3) { if $_ != 0 {say 4/$_} else { say "I don't divide here" }} # "save" variant | 09:00 | |
camelia | rakudo-moar 3259ba: OUTPUT«1Attempt to divide 4 by zero using div in block <unit> at /tmp/PHljYLSzFj line 1Actually thrown at: in block <unit> at /tmp/PHljYLSzFj line 1» | ||
masak | pat_js: yes, got it. | ||
CurtisOvidPoe | El_Che: if people want to use if for that, that’s perfectly fine with me. | ||
RabidGravy | amd then you had years of really, really ugly programs as all the cobol programmers cross trained to visual basic and delphi | ||
masak | pat_js: in my view, the concern isn't that junctions are somehow mis-designed (and that if/while etc should also autothread over them), but that passing junctions around as values in a program is not compatible with responsible programming. | 09:01 | |
pat_js: OMNSHO, use of junctions should be *very* local. | |||
CurtisOvidPoe | One company I ran away from retrained the COBOL team I was on to use C++. Gave ‘em a two-week crash course and let them loose without even experts to back them up. | ||
masak | IMNSHO* | ||
CurtisOvidPoe: that's probably all too common. | |||
CurtisOvidPoe: object-orinted design -- how hard can it be, right? | 09:02 | ||
people even have prior experience with "objects" from real life! | |||
09:03
FROGGS joined
|
|||
CurtisOvidPoe | masak: what’s worse, COBOL code is completely procedural and COBOL itself has no concept of scope. Thus, you variable names like GLJ-030R-SUBTOTAL-TAX to simulate namespaces. Calling a function? Set your global variables, call the function, and inspect the globals that it alters. | 09:04 | |
pat_js | masak: I didn't assume that Junctions are mis-designed. I'm asking these questions to understand what they're designed for. | ||
Now I begin to see, that the auto-threads in perl6 must be super-light. | 09:05 | ||
CurtisOvidPoe | El_Che: if you do use that code for docs, be aware that the subset example I gave is ultimately a synonym for UInt. I didn’t know about UInt when I wrote that. | ||
09:06
CurtisOvidPoe left,
CurtisOvidPoe joined
|
|||
masak | pat_js: perl6advent.wordpress.com/2014/12/...junctions/ | 09:06 | |
CurtisOvidPoe: sounds both very dreary and error-prone at the same time. | 09:07 | ||
DrForr | That's what it was like back in the Elder Days :) | ||
CurtisOvidPoe | masak: it was exciting when it was created because it was state of the art. And it wasn’t too error prone because COBOL is so limited that many programs are small utilities that can only do one thing and they’re joined together using something called JCL. In many ways, it looks remarkably like a unix pipeline. | 09:08 | |
09:08
andreoss joined
|
|||
DrForr | Oh, gawds, when I was doing punchcards JCL was something you copied from one card to another painstakingly, with no idea of what it was. It just worked, and if you were a character off you'd be waiting another week for access to run your program. | 09:09 | |
El_Che | CurtisOvidPoe: I'll try to find the time to rewrite it (generic). Maybe you could have a look afterwards? My subset knowledge originates from your post :) | 09:10 | |
09:11
pmurias joined
|
|||
CurtisOvidPoe | El_Che: I’d be happy to. | 09:11 | |
El_Che | DrForr: what about the new Grammar + Actions tutorial rewrite you considered writing? | ||
CurtisOvidPoe: thx! | |||
DrForr | El_Che: Doing that for FOSDEM. | 09:12 | |
CurtisOvidPoe | DrForr: when I was doing JCL in the late 90s, even the senior COBOL devs didn’t know JCL. They would do exactly what you were describing, but using dumb terminal emulators on our PCs. | ||
pat_js | ah, okay. | ||
El_Che | DrForr: I would love to see some of it afterward in the regular perl6 doc. For me, the tutorials wasn't very clear at all :( | ||
DrForr: looking forward to your talk | 09:13 | ||
DrForr | Oh, you're coming? Cool. I'm hoping it'll be practice for FOSDEM :) | ||
Er, practice for OSCON. TDM conferences. | |||
pat_js | sorry, i don't know why I have a keyboard macrop for saying ah okay in the #perl6 buffer | ||
andreoss | m: say ().>>(1) | ||
camelia | rakudo-moar 3259ba: OUTPUT«()» | ||
andreoss | why this valid? | ||
El_Che | DrForr: I'll be the guy to rushing you out of the podium because you're time is up :) | ||
DrForr | Just use a cane. You can borrow mine. | 09:14 | |
El_Che | CurtisOvidPoe: ah good times! I have fond memories of participating in a Mainframe+Cobol to Solaris+java+cobol migration | ||
fond as "fond, now" | |||
andreoss | m: say (1,2,3).>>() | ||
camelia | rakudo-moar 3259ba: OUTPUT«Non-QAST node visited NQPMuWeird node visited: NQPMu===SORRY!===Unknown QAST node type NQPMu» | ||
09:14
Actualeyes joined
|
|||
DrForr | (yes, I'm still bringing the damn thing - My leg got tweaked just walking down the street on my way home from work on Tuesday.) | 09:15 | |
El_Che | DrForr: I'll try to reserve some non snow weather for FOSDEM | 09:16 | |
09:16
andreoss left
|
|||
pmurias | CurtisOvidPoe: was it your Perl 6 "killer app" idea to allow mixing cobol and perl 6 for migration? ;) | 09:16 | |
DrForr | Thanks, I'd appreciate it. As long as it's not like 2013 was when I almost didn't make it due to drifting on the way to the Belgian border. | 09:17 | |
CurtisOvidPoe | pmurias: Yes. There’s a lot of background for understanding why. There have been multipel attempts to solve the COBOL dlilemma and they face technical, social, and political probelms. With the Perl 6 migration hack, you can sidestep all of those problems. | 09:18 | |
El_Che | I feel a Inline::COBOL coming | 09:19 | |
CurtisOvidPoe: shall I change the title of your talk? :) | |||
CurtisOvidPoe | El_Che: I want to, but no time right now :) | 09:20 | |
DrForr | Gawd. COBOL support using Roman Numerals. I'm a bad, *bad* man :) | ||
pmurias | El_Che: I think what CurtisOvidPoe intended was more a cobol slang than just inline | ||
RabidGravy | DrForr++ # madness is the answer | 09:21 | |
DrForr | . o ( "They *SUCK*." ) | ||
CurtisOvidPoe | A slang would be better so that one could gradually replace the COBOL with Perl 6, one procedure at a time. | ||
DrForr | Sorry, that particular RHPS callback is virtually ingrained. | ||
CurtisOvidPoe: I'm working on something almost equally evil, we need to talk :) | 09:22 | ||
CurtisOvidPoe | DrForr: See you in a couple of weeks in Brussels :) | ||
09:22
andreoss joined
|
|||
DrForr | After a few stouts it could get ugly :) | 09:23 | |
09:25
salv0 joined
|
|||
CurtisOvidPoe | Nah, Brussels will always be lovely :) | 09:25 | |
09:26
pdcawley left
|
|||
El_Che | pmurias: COBOL slang. And to think I used to like CurtisOvidPoe... | 09:26 | |
09:26
zakharyas left
09:27
rindolf joined
|
|||
El_Che thing that CurtisOvidPoe and DrForr are laughing maniatically while petting a cat | 09:27 | ||
ks | |||
CurtisOvidPoe | El_Che: if it works, it’s a hell of a business model to get companies out of their COBOL trap. They want to (hell, their devs are literally dying), but haven’t found a way. It’s a multi-billion euro industry that has repeatedly tried and failed to solve this problem. | 09:28 | |
09:28
_nadim joined
09:29
lokien_ left
|
|||
TEttinger | CurtisOvidPoe: do eeeeet! this would be great for those businesses, for perl 6 as a community, and for the security of the customers of those businesses to not be running decades old cobol and instead be running perl 6! | 09:30 | |
andreoss | is there plans for rakudo-star 6c? | 09:31 | |
09:31
g4 joined,
g4 left,
g4 joined
|
|||
moritz | andreoss: yes, after the 2016.01 compiler rrelease | 09:32 | |
CurtisOvidPoe: aren't there any successful Java <-> Cobol interop products that would enable a gradual migration? | |||
CurtisOvidPoe | TEttinger: started once, but with one company at home and another one the way, I’d need a major investor to step up to the plate for this one :) | ||
RabidGravy | when I've got this dBase thing I've got down the back of the sofa finished, I'll have a think about a dBase/Clipper slang | 09:33 | |
lots of that stuff about still too | |||
_nadim | Good morning all. | ||
CurtisOvidPoe | moritz: those haven’t been too popular that I’m aware of. Miuch of COBOL is “dump out this file and let something else read it.” Don’t need Java/COBOL interop for that. Direct Java/COBOL interop also doesn’t solve the migration strategy. There have been tools to auto-rewrite COBOL into Java, but those have largely been regarded as a disaster: rewriting procedural crap with all global variables in to Java | 09:35 | |
“classes” means you’ve created a bunch of incomprehensible Java code and are likely handing it over to people with less business knowledge than the COBOL devs. | |||
moritz | CurtisOvidPoe: makes sense; thanks for the explanation | 09:36 | |
RabidGravy | yeah, there was also some thing that did Informix 4GL -> Java back in the day, generated the most awful code | ||
DrForr gets a nervous tic at the mention of Informix 4GL. | 09:37 | ||
_nadim | .see tadzik | 09:38 | |
.seen tadzik | |||
yoleaux | I saw tadzik 14 Jan 2016 23:34Z in #perl6: <tadzik> that'd be nice | ||
masak | CurtisOvidPoe: on the bright side, I can see the whole COBOL/JCL story working out quite well if managed well -- a bit like the now-popular "microservices" | ||
RabidGravy | for one period in 90s I was doing more I4GL than anything else, tapered off at the turn of the century | ||
masak | CurtisOvidPoe: I guess the key is to minimize damage by actually keeping each component small. (like you hinted at.) | 09:39 | |
DrForr mutters something about NewEra, goes back to figuring out what he should be doing. | |||
CurtisOvidPoe | If I had the time or the money, I’d work on it, but I don’t right now :) | ||
Also, the performance of Perl 6 would need to be DRAMATICALLY improved. Speaking of which, what’s the progress on that front? | 09:40 | ||
09:41
leont joined
|
|||
masak .oO( too much drama, not enough improvement ) :P | 09:42 | ||
tadzik | _nadim: I'm around | 09:44 | |
RabidGravy | well, it's fast enough to stream reasonably high bit-rate MP3 from disc (albeit with some NativeCall involved,) so I'm reasonably happy | ||
masak | RabidGravy: that sounds really nice | ||
pmurias | CurtisOvidPoe: I see commits with minor improvements for various things a lot, not sure if any major breakthroughs are comming soon | 09:45 | |
RabidGravy | I ought to actually make a real application with that at some point | ||
09:46
yeahnoob left
|
|||
CurtisOvidPoe | pmurias: Bummer. That and the existing bugs are the two major drawbacks for Perl 6 right now. | 09:47 | |
09:47
TEttinger left
|
|||
masak | CurtisOvidPoe: if you have the tuits, putting together a list of those bugs somewhere would surely be helpful | 09:47 | |
(preferably with links to RT) | |||
09:48
Floyd-ATC left
|
|||
CurtisOvidPoe | masak: Aside from the bugs I’ve posted via Rakudobug, they’re just general things people still keep stumbling on. One Pythonista I know has followed Perl 6 for a while with interest and he was complaining to me that he still regularly finds bugs. I do too, though with less frequency, so the general “not quite stable” sense seems to hold. | 09:49 | |
I expect that will improve, but the performance, that’s the killer. | |||
09:50
_Gustaf_ joined
|
|||
_nadim | tadzik: Hi, I tried to Panda install --forced this morning and it did not work, "error: already installed" plus some crazy stuff. Let me get you an output. | 09:50 | |
nine | _nadim: it's panda --force install | 09:51 | |
pmurias | CurtisOvidPoe: jnthn++ is planning to focus on improving performance this year | ||
nine | _nadim: hence the "panda [options] <action> # OPTIONS GO IN FRONT!! Not like git." in panda --help | ||
moritz | stability and performance are the big topics for 2016, yes | ||
DrForr | As long as perl 6 doesn't become stable in the biological sense in the foreseeable future... | 09:52 | |
tadzik | _nadim: yep, what nine says :) | 09:53 | |
_nadim | nine: bleahhh! and of course my screen is just big enough to scoll that out and show me the options indented under the command | ||
masak | CurtisOvidPoe: well, taking an 8-year perspective, bug count and frequency have both *definitely* gone down | ||
CurtisOvidPoe: I used to *average* one rakudobug a day. now it's much lower than that | 09:54 | ||
CurtisOvidPoe | Yes, I’m happy to see that. And yes, I’m looking forward to seeing what will happen by the end of the year :) | ||
09:54
andreoss left
|
|||
RabidGravy | maybe I'm not pushing the envelope much but I have only found one show-stopping (for me) bug in the last six months and that has gone away | 09:54 | |
_nadim | tadzik: yes, works fine, although options in the same order as most other programs do is nice too. but as always, one doe it wrong twice and then can go on ;) | ||
09:55
espadrine joined
|
|||
tadzik | _nadim: well, panda is not (anymore) trying to override Perl 6's default behaviour here | 09:55 | |
or MAINs rather | |||
which only allows options before for some reason | |||
hopefully if it annoys enough people we can make it work with both | 09:56 | ||
moritz | the main reason is that the option parser is the same that rakudo itself uses | 09:57 | |
and for perl 6, perl6 -c foo -x parses the -c as an option for itself, and -x as an option for the program being called | |||
though we can special-cases that if necessary | 09:58 | ||
masak | perl6.org/compilers/features lists Niecza as not having `goto`, but I distinctly remember sorear using a `goto` in a Perl 6 program on Niecza. | 09:59 | |
El_Che | masak: if niecza is abandoned, it is not better to remove it? | 10:00 | |
RabidGravy | I had a think about making something more like Mono.GetOptions using traits or something to mark the targets for options | ||
I'll probably won't get round to making it though | 10:01 | ||
masak | El_Che: there's a difference between "not actively developed" and "unusable" | ||
El_Che | masak: certainly | ||
10:02
leont left
|
|||
pmurias | CurtisOvidPoe: re minor improvements for various things I don't want to downplay those optimalizations as it's likely they improved those things loads, the MoarVM guys also seem to have some JIT improvements being worked on in a branch | 10:03 | |
10:03
ChoHag joined
10:04
andreoss joined
|
|||
El_Che | question: while testing a class (from class.t), can I access private methods to test the as well? Or do I need to mock a subclass, etc? | 10:05 | |
10:05
kjs_ joined,
yurivish_ joined
|
|||
RabidGravy | or insert accessors for the test | 10:05 | |
El_Che | ok, pretty much what I thought. thx | 10:06 | |
pat_js | m: sub de-thread (Junction $j, &test){my $b;(sub ($x, &y) {return unless y($x);$b=$x;})($j, &test);return $b}; (&all,&any,&one,&none).map({de-thread $_(3,4),4==*}).say; # doesn't recognize the type. | ||
camelia | rakudo-moar 3259ba: OUTPUT«(4 4 4 4)» | ||
10:07
yurivish left
|
|||
nine | I think....the named argument thing is actually quite easy to fix | 10:09 | |
RabidGravy | El_Che, 'ere you go | 10:17 | |
m: class Foo { method !bar() { "bar" }}; for Foo.^private_method_table.kv -> $name, $method { Foo.^add_method("public-$name", method (|c) { $method.(self,|c) })}; say Foo.public-bar | |||
camelia | rakudo-moar 3259ba: OUTPUT«bar» | ||
pmurias | CurtisOvidPoe: for the JavaScript backend I'm working on the performance is a big unknown as it will likely end up to be a complicated dance with the js JIT | 10:18 | |
jnthn | El_Che: I wrote some things on testing private methods in my STOMP module series, fwiw. | ||
El_Che | RabidGravy, jnthn: thx, looking are both examples | ||
jnthn | (My overall advice being: don't.) | 10:19 | |
El_Che | jnthn: as in "don't bother testing private methods"? | ||
jnthn | El_Che: As in "testing private methods makes your tests fragile in the face of what should be refactors completely scoped to the class, and so means your tests are less valuable than they should be for supporting refactoring" | 10:20 | |
10:21
pierre-vigier joined
|
|||
El_Che | jnthn: i see. It makes sense. | 10:21 | |
jnthn | Yeah. I doubt I'll get everyone to agree with me on this point. :) But I know I've felt much better supported by my tests since I started viewing them as Just Another Client of the code under test. | 10:22 | |
dalek | kudo/main_named_params: 84862ee | (Stefan Seifert)++ | src/core/Main.pm: Allow for named options to go after positionals for MAIN args Previously "panda install --force" would have panda's MAIN sub called with two positional arguments: ("install", "--force") With this patch, it's called as MAIN("install", :force) thus being more consistent with how other CLI programs work. |
||
nine | There you go. | ||
moritz: ^^^ | |||
tadzik: ^^^ | |||
RabidGravy | nine++ | 10:23 | |
arnsholt | jnthn: The argument makes sense, I think | ||
And private methods aren't part of the API, which is what you really want the tests to validate | |||
Which is the same argument as "tests are just another client", I suppose | 10:24 | ||
10:24
bjz_ joined
|
|||
nine | Testing private methods directly would be like trying to test some random block inside a sub directly. No one seems to be trying to do that either. | 10:25 | |
arnsholt | Heh. I like that analogy =) | ||
_nadim | nine++ | 10:26 | |
10:26
bjz left
|
|||
RabidGravy ponders whether he should put the entire 100+ line synopsis from the README into the pod as well | 10:27 | ||
10:28
Actualeyes left,
pdcawley joined
|
|||
pmurias | RabidGravy: synopsis of what? | 10:28 | |
RabidGravy | of this module | 10:29 | |
10:29
kjs_ left
|
|||
RabidGravy | github.com/jonathanstowe/Tinky/blo.../README.md | 10:29 | |
pmurias | how long is it normal for a Hague grant application to take from being sent to being avalible for community review? | ||
10:30
kjs_ joined
|
|||
pmurias | RabidGravy: a lot people don't read READMEs | 10:30 | |
RabidGravy | true, I usually copy the synopsis and description README <-> pod, it was more the size thing, but I guess that it's not an issue when the thing is precompiled | 10:32 | |
pmurias | RabidGravy: isn't the synopsis a bit large? | 10:33 | |
RabidGravy | probably | ||
jnthn | pmurias: A week or two in my experience | 10:34 | |
_nadim | RabidGravy: IMO README should be as short as possible, it's not documentation but a "path finder". the 100+ lines should go in the documentation not in the synopsis; way too long, way too intricate, and way not explained enough for anyone to dare trying to understand it. | 10:35 | |
10:36
ChoHag left
|
|||
dalek | p: e08c31d | (Pawel Murias)++ | src/vm/js/ (3 files): [js] Make pop/push/shift work on objects with positional_delegate. Fix return value of unshift. |
10:36 | |
p: 51c92e5 | (Pawel Murias)++ | t/nqp/59-nqpop.t: Test return value of nqp::unshift. |
|||
p: 4c29b0c | (Pawel Murias)++ | t/nqp/73-delegation.t: Test nqp::{pop,shift,unshift,push} working on an object with positional_delegate. |
|||
10:36
b10m left,
zakharyas joined
|
|||
RabidGravy | _nadim, you seem to be assuming I'm using at as a replacement for the rest of the documentation | 10:39 | |
tadzik | nine++ \o/ | ||
nine: so the previous behaviour was not spec(ulated), just implemented that way? | |||
DrForr | Re: Brussels were you mentioning www.public.nm.eurocontrol.int/PUBP...eway/spec/ ? | ||
10:40
pierre-vigier left
|
|||
_nadim | RabidGravy: No I was not assuming that. | 10:40 | |
RabidGravy | right | ||
10:41
pierre-vigier joined
|
|||
RabidGravy | y'see IMNSHO the thing is sufficiently large that it merits a large synopsis, that covers a broad range of the functionality, the size of the synopsis is not at question | 10:42 | |
_nadim | I disagree, large synopsis are not read which makes them moot | 10:43 | |
10:43
cfedde left
|
|||
_nadim | but there are different documentation styles, I am just sharing my thoughts. | 10:44 | |
10:44
cfedde joined
|
|||
nine | tadzik: the ugly truth is, that I don't actually read the spec all that much. Especially in cases where we don't have to speculate about what users are gonna need. We know that now. | 10:48 | |
tadzik | :] | ||
10:48
noganex left,
noganex joined
|
|||
nine | tadzik: FWIW this actually has been working before commit "Merge WIP snapshot 2 of main-usage" back in 2011 | 10:48 | |
tadzik | oh | 10:49 | |
10:49
Actualeyes joined
|
|||
nine | So it may have really been just a regression that was later codified into the spec tests | 10:49 | |
10:49
pdcawley left
|
|||
nine | Yet the speculation says: "As usual, switches are assumed to be first, and everything after the first non-switch, or any switches after a --, are treated as positionals or go into the slurpy array (even if they look like switches). Other policies may easily be introduced by calling MAIN explicitly." | 10:51 | |
pmurias | RabidGravy: imho the point of a synopsis is to offer a short "getting started" point | 10:52 | |
nine | .tell TimToady what do you think about github.com/rakudo/rakudo/commit/84862eef7d? It would fix the very frequent issues with panda allowing options only before command arguments (so no install --force) but violates your speculation from 2008) | 10:53 | |
yoleaux | nine: I'll pass your message to TimToady. | ||
pmurias | RabidGravy: OTOH some popular CPAN moduls have fairly long ones | 10:56 | |
nine | The synopsis is really the source for copy & paste ;) | 10:57 | |
It's also often pretty much everything you need and having it on top makes authors think about examples. Something that so much documentation is sorely lacking. | 10:58 | ||
11:02
rurban1 joined
11:05
pmurias left
11:06
pmurias_ joined
11:11
pmurias_ left
11:12
abaugher left
11:13
abaugher joined
11:14
lokien_ joined
|
|||
Humbedooh | slightly off-regular-topic; who will be at FOSDEM? :) | 11:15 | |
DrForr | Yo. | ||
(kinda have to be, seeing as I'm on the schedule.) | 11:16 | ||
Humbedooh | ah, giving a talk? | ||
DrForr | perl6 grammars, yeah. | ||
_nadim | Good documentation is difficult. And it is not alwas the module author who is best at finding what is missing. As for the synopsis being the source for copy-paste, by now we should be using much better systems. | ||
El_Che | Humbedooh: these people will be there: fosdem.org/2016/schedule/track/perl/ :) | ||
Humbedooh | anyone gonna be manning the Perl stand? :) | 11:17 | |
nine will attend, too | 11:18 | ||
Humbedooh will be manning a stand a few feet away from the perl stand :) | |||
El_Che | nine: great to hear | ||
Humbedooh: sure! | |||
DrForr | *PYTHON INFILTRATOR*! *cough* Hi. | ||
Humbedooh | a little Python never hurt....much...or well, doesn't kill you ;) | 11:19 | |
El_Che | sunday I will be manning the devromm 100% of the time, but I count on some booth time saturday | ||
Humbedooh | cool! I'll be at the ASF stand for most of the time :) | ||
El_Che | Humbedooh: asf? | 11:20 | |
Humbedooh | Apache Software Foundation | ||
El_Che | ah ok | ||
nine | Humbedooh: yeah, it doesn't kill you. It only sucks the joy out of your life. Not quickly and obvious as PHP. No, slowly and devious so you won't notice. | ||
El_Che find it difficult to recognize people when only knowing their irc handle... | 11:21 | ||
Humbedooh | well, I answer to Humbedooh if you yell it out loud at FOSDEM ;) | ||
it's been by nom de plume for the past 10 years | 11:22 | ||
El_Che | I am even sure I can pronounce it :) | ||
DrForr | I usually go by DrForr at conferences... | ||
Humbedooh | El_Che: it's easier to pronounce than my real name... :p | 11:23 | |
El_Che | DrForr: luckily I know your face by now :) | 11:24 | |
DrForr | Crap. | ||
RabidGravy | stuffed | ||
El_Che | That was my reaction as well :P | ||
11:27
kaare_ joined,
Psyche^_ joined
|
|||
RabidGravy | jnthn, will your STOMP stuff manifest as an actual module at some point, (or did it already and I didn't notice?) | 11:28 | |
DrForr | Never got around to seeing them when I was in London... | ||
11:29
ZoffixWin joined,
ZoffixWin left,
ZoffixWin joined
|
|||
RabidGravy | :) I've been in London forever and never got around to it either | 11:29 | |
jnthn | RabidGravy: Yes, that's the goal. Two modules that I created on the journey are already in the ecosystem. :) | ||
El_Che | jnthn: do you take requests? :) | 11:30 | |
jnthn | (Test::IO::Socket::Async and Concurrent::Iterator) | ||
El_Che: Sure; whether I issue responses is another matter ;) | |||
El_Che | hehe | ||
11:31
Psyche^ left
|
|||
RabidGravy | coolio, I think it would be nicer to use in an example of what I am doing at the moment than a straight up AMQP thing (and I'm not convinced Net::AMQP is working at the moment) | 11:32 | |
11:33
ZoffixWin left
|
|||
RabidGravy | actually I should test that | 11:33 | |
11:35
Dee22 joined
|
|||
RabidGravy | nope, totally b0rked by the Supply changes :-( | 11:36 | |
DrForr | Is there a reasonable way to typecheck a parameter as either X or Y? Something like sub foo ( (Str|Whatever) $x ) { } | 11:37 | |
RabidGravy | where X|Y | ||
DrForr | Ah, thanks. Checking... | ||
That'd solve a combinatoric explosion. | |||
s/solve/defuse/ # damn, missed one. | 11:38 | ||
RabidGravy | m: sub foo($x where Int|Str) { say "oke" }; foo(True); | ||
camelia | rakudo-moar 3259ba: OUTPUT«oke» | ||
RabidGravy | er | ||
11:38
AndyDee left
|
|||
RabidGravy | m: sub foo($x where Int|Str) { say "oke" }; foo(Num); | 11:38 | |
camelia | rakudo-moar 3259ba: OUTPUT«Constraint type check failed for parameter '$x' in sub foo at /tmp/LhPMaCfFOn line 1 in block <unit> at /tmp/LhPMaCfFOn line 1» | ||
RabidGravy | Bool being special in that regard I guess | 11:39 | |
DrForr | And checking the types afterwoard would be $x.WHAT ~~ 'Str'? Or is there a better way... | ||
jnthn | $x ~~ Str | 11:40 | |
RabidGravy | given/when should do the trick | ||
jnthn | You almost never need .WHAT | ||
Except for debugging or doing weird things | |||
DrForr | Didn't think so, but there wasn't much guidance in docs. Something else to poke at this weekend. | ||
RabidGravy | or just like typing more than is natural | ||
DrForr | It felt like using WHAT wasn't the right approach, mostly because of the whole capital thing :) | 11:41 | |
RabidGravy | off out shopping for a bit | 11:43 | |
11:47
RabidGravy left
11:48
marmay left
|
|||
gfldex | m: sub outer(::T){ sub inner(-->T){ say T.^name; T }; inner() }; outer(Int); | 11:57 | |
camelia | rakudo-moar 3259ba: OUTPUT«IntType check failed for return value; expected T but got Int in sub inner at /tmp/v0FyicXjJ_ line 1 in sub outer at /tmp/v0FyicXjJ_ line 1 in block <unit> at /tmp/v0FyicXjJ_ line 1» | ||
gfldex | should the type capture from &outer spill into &inner? | ||
11:59
FROGGS left
|
|||
jnthn | Don't know that can be made to work, or at least not easily. | 11:59 | |
Signatures are constructed at compile time. | 12:00 | ||
gfldex | if the inner would use it on a positions/named i could use a where clause | ||
but for the return type i would have to do it by hand, what would kill introspection | |||
dalek | c: be85e3d | (David Brunton)++ | doc/Language/operators.pod: s/a/an/ *an |
12:05 | |
c: 716b84e | (Brock Wilcox)++ | doc/Language/operators.pod: Merge pull request #352 from dbrunton/patch-2 s/a/an/ |
|||
moritz | PSA: if you notice people repeatedly submitting PRs to repos under the perl6/ organization on github, please ping me so that I can give them direct access | 12:06 | |
12:09
FROGGS joined,
Skarsnik joined
12:12
rimad left
12:18
kid51 joined
12:19
zakharyas left
12:20
zakharyas joined
12:21
lnrdo joined
|
|||
timotimo | is there any way for modules to react to different declared perl6 versions of the importing code? | 12:30 |