»ö« 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 | |
12:30
_Vi left
|
|||
timotimo | actually, what i was wondering was: how do we handle changes in NativeCall now that we've released 6.c? | 12:30 | |
12:32
abraxxa left,
kid51 left,
abraxxa1 joined
12:33
abraxxa1 left,
xpen left
|
|||
nine | timotimo: the version issue is one reason why I'd like Test to be moved to the ecosystem. Because it allows for installing multiple versions of Test at the same time. | 12:33 | |
For NativeCall it's more complicated, because that's really tied tightly to rakudo | 12:34 | ||
Maybe we should ship all versions of NativeCall and install them? | 12:35 | ||
timotimo | i don't see a reason why we couldn't, really :) | 12:36 | |
nine | I just wonder if we can make "use NativeCall" pick the version matching to $*PERL.version automatically. | 12:39 | |
timotimo | right | ||
that seems a bit more difficult | |||
unless we invent something like :perl6<...> for use and fill that automatically on use ... | |||
nine | Not if we use a CompUnit::Repository::Core for those two modules. | 12:40 | |
12:40
pierre-vigier left
|
|||
timotimo | oh | 12:40 | |
then we could have that without any dirty hacks, eh? | |||
nine | I've already wondered if having an ::Installation repo for just a single dist is a bit of an overkill | ||
12:40
c9874 joined
12:43
marmay joined
12:48
rurban joined,
virtualsue joined,
kjs_ left
|
|||
Skarsnik | Maybe freeze NC to bug fix and added feature only? | 12:49 | |
12:49
rurban1 left
|
|||
timotimo | no. | 12:51 | |
12:51
rurban1 joined
|
|||
timotimo | wait ... | 12:51 | |
how is NC freezed if we can add features? :) | |||
Skarsnik | Well NC is tricky, in it current state it's rather incomplete x) | 12:52 | |
12:52
rurban left
|
|||
nine | Skarsnik: nothing is ever complete ;) | 12:53 | |
12:54
AlexDaniel joined
|
|||
Skarsnik | Freezed as you can't change something already there. Maybe like some C++ lib allow for the add of feature via virtual method, but you can't change the rest to stay abi compat | 12:54 | |
12:54
kjs_ joined
|
|||
Skarsnik | I realise that will make 'new' code not compatible with 6.c NC, but | 12:54 | |
nine | I'd much rather use the same mechanism as for the core setting | 12:55 | |
timotimo | background for these questions is i'd like to post "the first irregular Perl 6 Non-Changes" on the weekly | ||
12:55
rurban1 left
|
|||
timotimo | since i seem to have some difficulty writing up the weekly changes right now, i could do something different | 12:56 | |
12:56
rurban joined
|
|||
timotimo | that post would point out our stability strategy for the future of 6.c | 12:56 | |
Skarsnik | for NC I rather have a document/test/spec that fix how stuff should be an aiming for a 'finished' version and otherwise considere the current one a Beta version x) | 12:58 | |
but that just my opinion | 12:59 | ||
12:59
kjs_ left
13:00
rurban left,
rurban joined
13:03
Actualeyes left,
Actualeyes joined,
rurban1 joined
|
|||
masak | .u 👀 | 13:03 | |
yoleaux | U+1F440 EYES [So] (👀) | ||
nine | timotimo: are you in #perl6-release? | 13:04 | |
timotimo | oh | ||
am not, but maybe i should be | |||
nine | It's certainly worth reading and backlogging. Very high signal to noise radio | ||
timotimo | on the other hand, the list of open channels at the bottom of my weechat was JUST made one line shorter when i closed a channel i didn't care much about | ||
you mean i should join and post a few kitteh pictures? | 13:05 | ||
nine | timotimo: irclog.perlgeek.de/perl6-release/ ;) | ||
13:05
rurban left
|
|||
timotimo | i'm reading it right now | 13:06 | |
El_Che | Can someone explain this to me: blogs.perl.org/users/aristotle/2016...l6wow.html ? | ||
(well know p5 hacker) | 13:07 | ||
n | |||
virtualsue | El_Che: Um, he said "wow". :-) | ||
nine | Either it's just that or he accidentally published an unfinished post :) | 13:08 | |
timotimo | hm. | ||
well, he ended the sentence with a full-stop. so i suppose it's finished? | 13:09 | ||
El_Che | he waits for the rakudo star release to make it an appraisal or sarcastic :) | ||
masak likes that post | |||
it's short, and to the point | |||
timotimo | so, would a good response be "I know, right?" | ||
virtualsue | also, it is the essence of plausible deniability | ||
moritz | though it does feel like it's more suited for twitter | ||
masak | timotimo: "didn't see that one coming, eh?" | 13:10 | |
El_Che | are office quotes still a thing? | ||
nine | sure | 13:11 | |
El_Che | "that what she said" (or he/it) | 13:12 | |
gfldex | m: package P { sub () is export(:ALL) {} } | 13:14 | |
camelia | ( no output ) | ||
gfldex | if i would be export i would complain | 13:15 | |
13:15
xpen joined
13:18
Ven joined
|
|||
Ven | hi, #perl6 | 13:18 | |
yoleaux | 11 Jan 2016 17:44Z <timotimo> Ven: SDL2 is stable enough to be used by students. the SDL2::Raw module ... not necessarily :P | ||
11 Jan 2016 17:45Z <timotimo> Ven: also, only an SDL2 package isn't enough to make great stuff; you'd ideally also have OpenGL bindings | |||
Ven | m: my %h; %h{set("a", "b")}++; %h{set("a Str|b")}++; %h.values[0].say | 13:19 | |
camelia | rakudo-moar 3259ba: OUTPUT«1» | ||
timotimo | oh it's le ven | ||
Ven | m: my %h; %h{set("a", "b")}++; %h{set("a Str|b")}++; say %h.perl | ||
camelia | rakudo-moar 3259ba: OUTPUT«{"a Str|b" => 1, "a b" => 1}» | ||
Ven | uh, so that's been fixed? | ||
timotimo: hi! | 13:20 | ||
13:22
pierre-vigier joined
|
|||
Ven | oh, obviously | 13:22 | |
m: my %h{Mu}; %h{set("a", "b")}++; %h{set("a Str|b")}++; say %h.perl | |||
camelia | rakudo-moar 3259ba: OUTPUT«(my Any %{Mu} = (set("a","b")) => 2)» | ||
Ven | that's a bit of a bummer :[ | ||
13:24
bpmedley left
|
|||
Ven | timotimo: we'll see how they manage... I installed 'em the 6 (ah, the joy of teaching them options like --prefix), and they started writing some of their exercises with it instead | 13:26 | |
13:26
pierre-vigier left
|
|||
timotimo | cool. | 13:27 | |
i hope it doesn't suck bigtime for them for some reason | |||
i've not really put much care into making SDL2::Raw friendly to use, yet | |||
i was hoping someone would build a module on top of that that gives users a nicer API | 13:28 | ||
13:32
bpmedley joined
|
|||
Ven | timotimo: hey, for now, they're used to C and PHP, so.. they'll be happy even with a half-pony :-) | 13:32 | |
timotimo | maybe it'd be interesting to show the cairo module, too ... though i'm not sure how well *that* one works! | ||
Ven | timotimo: they run mac :D | 13:34 | |
Skarsnik | my small experience with cairo make want to not use it x) | ||
timotimo | oh lord | 13:35 | |
why macs everywhere? | |||
Ven | timotimo: school | 13:37 | |
timotimo | :| | ||
are you running a lab of your own or something? | |||
Ven | nope | ||
"programming" school, has macs. | 13:38 | ||
timotimo | er, what i meant was: how come you get to recommend perl6 and SDL2::Raw to your peers? | ||
13:39
lokien_ left
13:43
olinkl left
|
|||
moritz | 3/w 18 | 13:47 | |
13:49
skids joined
13:50
ChoHag joined,
_Vi joined
13:52
lokien_ joined
13:55
xpen left
13:56
frankjh left
13:58
kjs_ joined
14:01
rurban joined
14:03
rurban1 left
14:07
dj_goku joined
|
|||
[Coke] | (niezca) is unusable, or I'd be running tests on it daily. | 14:10 | |
colomon feels a bit guilty about not having the tuits to get/keep niezca running | 14:12 | ||
Ven | talk about guilt.. | 14:13 | |
moritz | camelia: don't feel guilty; it's a large burden | ||
sorry, meant colomon | |||
colomon | maybe regret would be a better word for it. at any rate, I don’t even vaguely have the time to do it. | 14:14 | |
[Coke] | I would add (unmaintained) or something to the legend for niecza on the compiler features chart. | ||
Are LoLs still a thing? | 14:15 | ||
moritz | I don't think so | ||
jnthn | Not as a type, no | ||
moritz | [Coke]: I'd even remove it | ||
[Coke] | there's something that can be scratched off the features list. | ||
also shaped arrays are listed as not done | 14:16 | ||
14:17
luiz_lha joined
14:18
luiz_lha is now known as Guest24090
14:21
RabidGravy joined
|
|||
masak | colomon: if I understand right, what "killed" Niecza was the ng/nom transition in Rakudo. before that, Niecza was ahead and more featureful in places. after it, it would have needed its own ng transition to stay current, and sorear didn't feel that was worth it. | 14:22 | |
colomon | masak: I would have said it was MoarVM, but my memory may be fuzzy. | 14:23 | |
or perhaps rather MoarVM/JVM | 14:24 | ||
masak | no, I don't think so | ||
timotimo | i think moarvm came quite a bit later than niecza dying | 14:25 | |
though after ng/nom happened, niecza lived on for a little bit | |||
masak | that's my recollection too | ||
timotimo: oh, sure. it lived on. | |||
14:25
pierre-vigier joined
|
|||
timotimo | i mean, still got patches for a little bit | 14:25 | |
masak | but it got increasingly behind, blocked by lack of ng | ||
[Coke] | is nqp's TODO a list for nqp-js? | 14:27 | |
moritz | [Coke]: ja | 14:28 | |
[Coke] | can we kill nqp's doc/bootstrapping | ||
.ask pmurias if he can move nqp/TODO to nqp/docs/HACKING-js or something? | |||
yoleaux | [Coke]: I'll pass your message to pmurias. | ||
14:28
virtualsue left
|
|||
Ven | masak: lack of "ng"? | 14:29 | |
[Coke] | jnthn, pmurias - how hard would it be to generate a "so you want nqp to target another compiler" doc for nqp? recent talk of niecza made me think it might be nice to have an outline for someone interested in .net | 14:32 | |
14:33
lucasb joined
14:35
sjoshi left
|
|||
pierre-vigier | Hi all | 14:35 | |
timotimo | greetings, pierre-vigier | ||
pierre-vigier | I am facing issue in installing Test::META, where it tries to install Could not find META6:ver<0.0.4..*> | 14:36 | |
Ven | well met. | ||
pierre-vigier | however, at the same time, it's telling me it's not in the eco system :( | ||
RabidGravy | pierre-vigier, you may need to do a "panda update" first | 14:37 | |
14:37
virtualsue joined
|
|||
pierre-vigier | hum, all making sense now | 14:38 | |
Skarsnik | hm, how I can know if a type Array is typed? @array.WHAT.can("of") give me 3 candidates for a typed and 2 for a non typed; but I can't call of on a non typed | ||
pierre-vigier | someone told me panda does not manage yet version number | ||
i had an old version of META6 | |||
jnthn | m: my @a; say @a.of | ||
camelia | rakudo-moar 3259ba: OUTPUT«(Mu)» | ||
Skarsnik | Oh I was trying on WHAT | ||
jnthn | Seems like it can be? | ||
pierre-vigier | running panda --force install META6 furst worked | ||
nine | pierre-vigier: panda cannot install exact versions of modules, because we wouldn't know where to get that version from. | 14:39 | |
RabidGravy | at the current time things don't respect a "Foo:ver<0.0.1>" in the META info unfortunately, *but* the Test::META does require the newer version of META6 | ||
Skarsnik | m: my @tab; say @tab.WHAT.^can("of"); say @tab.WHAT.of; | ||
camelia | rakudo-moar 3259ba: OUTPUT«(of of)Cannot look up attributes in a type object in block <unit> at /tmp/hBWsZxubeh line 1» | ||
nine | Though probably versions are branches or tags on the linked github repo | ||
Skarsnik | m: my @tab; say @tab.WHAT.^can("of"); try {say @tab.WHAT.of}; | ||
camelia | rakudo-moar 3259ba: OUTPUT«(of of)» | ||
pierre-vigier | that was that indeed, updated META6 through a force install | 14:40 | |
Skarsnik | Shoud the of on WHAT work? or fail with a better message? x) | 14:41 | |
RabidGravy | I ought to put a note in the README | ||
we don't have a very good story around versioned dependencies as nine points out | |||
Skarsnik | It will probably not mix well with class version (that should probably not exists) | 14:42 | |
It sounds like a tricky version to handle version in module that is not annoying for module author | |||
RabidGravy | well the version comes from the META.info | 14:43 | |
Skarsnik | like DBIish has version for stuff | ||
but I honestly don't want to update everyfile if I do a 'release' | |||
jnthn | [Coke]: I guess we could try to write up a very high level guide | 14:44 | |
skids | The package version != the version of classes in it. | ||
Skarsnik | Yes, but what the meaning? | ||
moritz | Skarsnik: I want a 'p6-infra release --version=2.0.3' tool or so that creates a tarball, where each .pm6 file has this version, and all "use" statements within this module use the same version | 14:45 | |
Skarsnik | Yes, that probably why without a authoring tool that handle this kind of stuff. it's a mess x) | ||
RabidGravy | yeah, the "use Foo:ver<0.1>" version is taken from the "Distribution" which is from the META.info | 14:46 | |
Skarsnik | well DBIish is a weird case | ||
Should version allowed in a role but not a class? | |||
Probably make more sense | 14:47 | ||
RabidGravy | the "class Foo:ver<0.1>" version is (I think) only a available on Foo.^ver | ||
skids | Skarsnik: If someone is only using one class from a module, and another class changes, for example. But we are just not there yet as far as panda goes. | ||
RabidGravy | I think the ver is on all sufficiently package like things: package, module, class, role and grammar | 14:48 | |
it's for the convenience of consumers | |||
Skarsnik | m: class Foo {has @.t}; say Foo.^attributes[0].type.of; | 14:49 | |
camelia | rakudo-moar 3259ba: OUTPUT«(Mu)» | ||
Skarsnik | m: class Foo {has @.t}; say Bool(Foo.^attributes[0].type.of); | ||
camelia | rakudo-moar 3259ba: OUTPUT«False» | ||
RabidGravy | m: class Foo:ver<0.0.1> {}; say Foo.^ver; | 14:50 | |
camelia | rakudo-moar 3259ba: OUTPUT«v0.0.1» | ||
RabidGravy | but that's probably only useful if you want to allow different versions of the class and deal appropriately | 14:52 | |
but useful nonetheless | |||
14:54
rurban1 joined,
rurban left,
pierre-vigier left
14:55
_Gustaf_ left
15:01
rurban1 left,
rurban joined
|
|||
Skarsnik | is there a call to get the basename of a class? (like without her role and package name) | 15:02 | |
15:03
cdg joined
|
|||
gfldex | m: role R {}; class C does R {}; say C.new.WHAT; | 15:03 | |
camelia | rakudo-moar 3259ba: OUTPUT«(C)» | ||
gfldex | m: role R {}; class C does R {}; put C.new.^name; | 15:04 | |
camelia | rakudo-moar 3259ba: OUTPUT«C» | ||
gfldex | m: role R {}; class C does R {}; put C.^name; | ||
camelia | rakudo-moar 3259ba: OUTPUT«C» | ||
15:05
bowtie left
|
|||
Skarsnik | m: role R {}; module D {class C does R is export {}}; put C.^name; | 15:05 | |
camelia | rakudo-moar 3259ba: OUTPUT«5===SORRY!5=== Error while compiling /tmp/GIu85CvRgUUndeclared name: C used at line 1» | ||
gfldex | Skarsnik: ^^^, however, you may not get what you want | ||
Skarsnik | m: role R {}; module D {class C does R is export {}}; import D; put C.^name; | ||
camelia | rakudo-moar 3259ba: OUTPUT«D::C» | ||
Skarsnik | m: role R {}; module D {class C does R is export {}}; import D; put C.^shortname; | 15:06 | |
camelia | rakudo-moar 3259ba: OUTPUT«C» | ||
Skarsnik | hm | ||
15:06
rurban left,
rurban joined
15:07
bowtie joined
|
|||
Skarsnik | m: role R {}; module D {class C is export {}}; import D; my C $a .= new; $a does R; say $a.WHAT.^name; | 15:07 | |
camelia | rakudo-moar 3259ba: OUTPUT«D::C+{R}» | ||
Skarsnik | That what I mean x) | ||
m: role R {}; module D {class C is export {}}; import D; my C $a .= new; $a does R; say $a.WHAT.^shortname; | |||
camelia | rakudo-moar 3259ba: OUTPUT«C+{R}» | ||
Ven | m: module D{class C{}}; my D::C $a .= new; say $a.WHAT.^name; | ||
camelia | rakudo-moar 3259ba: OUTPUT«D::C» | ||
nine | skids: yes, classes can have completely different version than the dists. Yet I think using the dist's version as default for otherwise unversioned classes contained in the dist's comp units makes sense. | ||
Ven | omg, that's been "fixed"? amazing :D | ||
Skarsnik++ # now I can resume my work on Serialize::Tiny | 15:08 | ||
skids | nine: I agree, gradual versioning :-) | ||
15:08
lucasb left
15:09
rurban1 joined
15:10
molaf joined
15:11
rurban left
15:12
andreoss left
15:16
Zero_Dogg joined
|
|||
Zero_Dogg | Is there any quick way to know which adverbs can be applied to a core function? Specifically I'm looking for a way to use run from IO to capture stderr (:out captures stdout) | 15:17 | |
moritz | Zero_Dogg: like, reading the docs? :-) | 15:18 | |
m: say &run.signature.perl | |||
camelia | rakudo-moar 3259ba: OUTPUT«:(| is raw)» | ||
moritz | it accepts everything, because it passes them on to another routine | ||
RabidGravy | if the documentation omits the information then the documentation is faulty | ||
Zero_Dogg | moritz: yes, but I'm still new enough to p6 to not know quite where to look, It's not in the IO class docs, so I'm slightly stumped | ||
skids | m: &run.signature.say # Zero_Dogg | 15:19 | |
camelia | rakudo-moar 3259ba: OUTPUT«(| is raw)» | ||
skids | Oh hey that's different. | ||
m: &run.candidtates».signature.say | 15:20 | ||
camelia | rakudo-moar 3259ba: OUTPUT«Method 'candidtates' not found for invocant of class 'Sub' in block <unit> at /tmp/0CG84QgSZw line 1» | ||
moritz | Zero_Dogg: doc.perl6.org/routine/run says "See Proc for more details, for example on how to capture output." | ||
skids | m: &run.candidates».signature.say | ||
camelia | rakudo-moar 3259ba: OUTPUT«((| is raw))» | ||
moritz | Zero_Dogg: where "Proc" is a link :-) | ||
skids | I actually get a good signature for that locally. Oh --- restricted setting. | ||
moritz | Zero_Dogg: (and you get there by typing "run" in the search box on doc.perl6.org/) | ||
RabidGravy | I've concluded that Net::AMQP may be more knackered than it is my ability to fix right now if anyone else is willing to jump in | 15:21 | |
15:25
Zero_Dogg left
15:26
Zero_Dogg joined,
Zero_Dogg left,
Zero_Dogg joined
|
|||
Zero_Dogg | moritz: Thanks, still getting used to all the jumping around in the docs | 15:26 | |
interestingly, my perl6 coredumps when providing run with :merge | 15:29 | ||
RabidGravy | the documentation like everything else relies on volunteer input, so if you find them lacking then please either fix or report | ||
it shouldn't coredump ever (unless you are doing something which it can't control with NativeCall) | 15:30 | ||
Zero_Dogg | RabidGravy: was more of me not knowing where to look, really, they seem understandable once I actually found the right one | ||
RabidGravy | what is the version of the perl6 | ||
Zero_Dogg | This is Rakudo version 2015.12-44-g477830a built on MoarVM version 2015.12 | ||
RabidGravy | :( | ||
15:30
bpmedley left
15:33
felher left
15:34
grassass left,
tadzik left
15:36
rindolf left
15:37
bpmedley joined
15:38
tadzik joined
15:40
grassass joined,
felher joined
15:43
rurban joined
|
|||
timotimo | Zero_Dogg: there's already a bug filed about :merge causing a segfault; i think it got reported yesterday | 15:43 | |
sorry about that :( | |||
Zero_Dogg | timotimo: great. No worries, I got what I needed with :err anyway. :merge just sounded like a handy feature to try | 15:44 | |
15:44
rurban1 left
15:45
g4 left,
rindolf joined
|
|||
RabidGravy | as a matter of interest does anyone use "#|" style documentation in modules? | 15:46 | |
[Coke] | jnthn: if it's a time sink, don't bother; just wondering if having a guide like that might encourage any .net people hiding in the corners. | ||
DrForr | RabidGravy: I do in perl6-readline, I think. That or Marpa. | 15:47 | |
And I've started to use #`() comments, though I still kinda agree with Common Lisp's #(..#) :) | |||
15:48
aindilis left
|
|||
mspo | #`() isn't very nice visually | 15:48 | |
DrForr | The trailing ')' gets lost. | ||
mspo | DrForr: indeed | ||
DrForr rocks out to Kashmir. | 15:49 | ||
mspo | I think you can use something other than () but it has to be {} or []? | ||
like you can't use #`# #? | |||
15:50
pmurias joined
|
|||
moritz | it needs to be a bracketing character | 15:50 | |
DrForr | As in the Unicode property? /me goes looking. | 15:51 | |
(I think it got added in v6...) | |||
pmurias | [Coke] re TODO it's outdated , I'll move it when I get to my laptoo | 15:53 | |
yoleaux | 14:28Z <[Coke]> pmurias: if he can move nqp/TODO to nqp/docs/HACKING-js or something? | ||
Ven | Btw, DrForr , a COBOL slang would allow me to learn more COBOL alongside the way. | ||
So it's a good idea :P. | |||
DrForr | There's 'open' and 'close' properties. | 15:54 | |
(since 3.2) | |||
pmurias | Is there much value in knowing COBOL beyond curiosity? | ||
DrForr | Billions in legacy code? | ||
RabidGravy | you want to learn COBOL? Weirdo ;-) I learned it a little more than thirty years ago, because it was still a thing | ||
Ven | pmurias: COBOL is amazing. | ||
15:55
rindolf left
|
|||
moritz | there are lovers for everything :-) | 15:55 | |
Skarsnik | RabidGravy, I don't know if the pod generator read the WHY of class/attribute x) | 15:56 | |
RabidGravy | only if you write the code by hand on a coding sheet, hand it to a data entry clerk who makes punch cards which you get back at some point afterwards and then queue at the card hopper to get your program run | ||
Skarsnik, perl6 --doc does but it's not very pretty | 15:57 | ||
15:58
kjs_ left
|
|||
RabidGravy | learning to program like that is arguably a good thing as it ensures you work it all out in your head before committing it to a computer rather than dicking around with hundreds of micro-protoypes | 15:58 | |
pmurias | [Coke]: re create new backend docs the hardest part will be figuring what the hard parts for new people are | 16:00 | |
16:04
c9874 left
|
|||
DrForr horribly abuses 'multi sub' and is amazed at how well it holds up. | 16:04 | ||
PerlJam | DrForr: I'd like to see that horrible abuse as my imagination is currently lacking. | 16:06 | |
skids guesses many where clauses | |||
DrForr | Not really. | ||
class Atom {}; constant foo = Atom.new; multi sub parent( foo, @x is raw ) { } | 16:07 | ||
16:07
sftf joined
|
|||
DrForr | I'm using other parameter types as well, but that's an idea. | 16:08 | |
skids | implicit where cluases then :-) | ||
DrForr | If that's how the internals work, sure. | ||
skids | m: class Atom {}; constant foo = Atom.new; multi sub parent( foo, @x is raw ) { }; &parent.signature.say; | ||
camelia | rakudo-moar 3259ba: OUTPUT«(;; Mu | is raw)» | ||
jnthn | That plus the fact that we infer a nominal type from the type of the constant. | ||
&parent is the implicit proto, you need &parent.candidates[0] or so | |||
skids | m: class Atom {}; constant foo = Atom.new; multi sub parent( foo, @x is raw ) { }; &parent.candidates>>.signature.say; | 16:09 | |
camelia | rakudo-moar 3259ba: OUTPUT«((Atom $ where { ... }, @x is raw))» | ||
DrForr | Yeah. I'm a bit surprised that you can get away with differentiating just on the constant name, I'm sure something is being done implicitly. | ||
PerlJam | DrForr: Is that behavior specced? ;) | ||
DrForr | No idea, I'm just taking an idea and bending it into Perl. | 16:10 | |
skids | It's differentiating on the WHICH of the Atom.new I would imagine. | ||
jnthn | It's defined in terms of ACCEPT | ||
Yes, it's by design | |||
It's why base cases like multi fib(0) { 1 } work out | 16:11 | ||
*ACCEPTS | |||
PerlJam | DrForr: anyway, I wouldn't say that's horrible abuse; just a little weird | ||
DrForr checks to see if we're doing LTs at FOSDEM. | |||
Well, that's just a sample :) Can't reveal the rest *too* early :) | 16:12 | ||
No LTs, huh :( | |||
PerlJam predicts that someone will do a WAT-talk for Perl 6 this year. | 16:13 | ||
DrForr attempts to parse the acronym and fails. | 16:15 | ||
PerlJam | DrForr: www.youtube.com/watch?v=20BySC_6HyY | ||
skids | WAT is the anti-particle to DWIM. :-) | ||
mspo | oh I remember that | 16:16 | |
DrForr | Ah. | 16:17 | |
16:17
kjs_ joined
|
|||
mspo | what language is perfectly consistent? | 16:18 | |
skids | .oO(Not having a (b)acronym for it is rather appropriately frustrating) |
||
Ven | mspo: the Mu language | ||
virtualsue | i'd like to see someone try that with Go. "We have no WAT - we designed to be simple and consistent!!1!" "really? looky here" <brain melts> | ||
DrForr | Ddin't G\"odel prove that to be impossible for any useful language? | 16:19 | |
Ven | virtualsue: Go is inconsistent by design, but they very well know which place they chose to be inconsistent | ||
mspo | I like golang but can't stand the trend-driven style and "idiomatic" mantra | 16:20 | |
guess that's just immaturity | |||
I gave it up entirely after this: code.google.com/p/go/issues/detail?id=1435 | 16:21 | ||
virtualsue | i know at least one another language which has adherents which like to torment people with the idiomatic stick | 16:22 | |
mspo | that's a pretty major bug for a language for "building servers" | ||
idiomatic is a nice vocab word, though | |||
virtualsue: which? | 16:24 | ||
16:24
bdmatatu joined
|
|||
virtualsue whistles quietly, looks away | 16:24 | ||
RabidGravy | there's a sort of idionatic -> elegant -> concise -> obfuscated road to hell | ||
mspo | oh python? | 16:25 | |
well in go the definition of "idiomatic" changes with each blog post by rob pike | |||
all of a sudden $latestblog is *the way* to solve every problem | |||
virtualsue | RabidGravy++ | ||
geekosaur | p5 has been known to combine that road to hell with parti-colored bikesheds | 16:26 | |
RabidGravy | :) | ||
virtualsue | i think it often means "i would do x this way, you didn't, therefore your code wasn't idiomatic" | ||
16:27
kjs_ left
|
|||
DrForr | virtualsue: Joining us at FOSDEM? | 16:27 | |
virtualsue | indeed, DrForr | ||
16:27
domidumont left
|
|||
DrForr | (seeing as I didn't have much time to see people at YAPC...) | 16:27 | |
Or LPW for that matter,d ue to my own idiocy. | |||
Hotkeys | Hello all | 16:28 | |
I like idiomaticness to an extent | 16:30 | ||
If there is a common way to do something I'll probably do it like that | |||
virtualsue | oh, me too. but with an expressive, flexible language it does become a way for some enthusiastic senior devs to wear out their code review victims ;-) | 16:31 | |
Hotkeys | Yeah of course | ||
RabidGravy | why don't we use "vernacular" in place of "idiomatic" in some places, or "argot" | ||
Hotkeys | I like the look of "idiomaticity" over "idiomaticness" | ||
RabidGravy | it's a metaphor after all | ||
Hotkeys | I'm going to use that | ||
Even if it isn't a thing | 16:32 | ||
virtualsue | idiomatic becomes another "useful" word with a minor transformation | ||
16:33
pmurias left,
jme` joined
|
|||
MadcapJake | What reasons would lead to a "Cannot modify an immutable Str"? | 16:34 | |
16:34
prammer joined
16:35
jme` left
|
|||
pat_js | MadcapJake: a syntax error? Or you are trying to modify an immutable string ;-P | 16:35 | |
RabidGravy | MadcapJake, in what context? | ||
16:36
kjs_ joined
|
|||
MadcapJake | In a class, trying to change an attribute of an object with `$!object.text = ...` is that not okay? | 16:36 | |
jnthn | MadcapJake: Is the attribute marked "is rw"? | ||
MadcapJake | no :P | ||
RabidGravy | m: use NativeCall; class Foo is repr('CStruct') { has Str $.foo is rw; }; my $a = Foo.new(foo => "hshs"); | ||
camelia | rakudo-moar 3259ba: OUTPUT«Cannot modify an immutable Str in block <unit> at /tmp/m6SKxSPysZ line 1» | 16:37 | |
RabidGravy | that will do it for instance | ||
MadcapJake | jnthn: thanks, can't believe i forgot about that | ||
Hotkeys | So are private attributes read only by default | ||
? | |||
RabidGravy | no | ||
MadcapJake | this is what happens when I don't program in perl6 for a bit. gotta get my daily vitamins! Vitamin P6! | 16:38 | |
RabidGravy | all attributes are rw, the accessors that make them "Public" are ro by default | ||
Hotkeys | Ah | ||
nine | ~/win 36 | 16:39 | |
16:41
khw joined,
jme` joined
|
|||
MadcapJake | How come the String `split` method needs an empty string argument? Would be nice to just write `"abc".split` | 16:43 | |
jnthn | You can do that with "abc".comb | 16:44 | |
MadcapJake | jnthn: awesome! | 16:45 | |
RabidGravy | I can see the attribute/accessor thing is going to become a thing that people beat neophytes with in years to come, like the signature of "main()" in comp.lang.c back at the dawn of time | ||
masak | m: say 1 ≤ 2 | 16:46 | |
camelia | rakudo-moar 3259ba: OUTPUT«5===SORRY!5=== Error while compiling /tmp/wGv_W5ZgMkConfusedat /tmp/wGv_W5ZgMk:1------> 3say 17⏏5 ≤ 2 expecting any of: infix infix stopper postfix statement end statement modifie…» | ||
Skarsnik | RabidGravy, what is main good signature? int main(int ac, char *ag[])? | ||
well if you forget **env | 16:47 | ||
RabidGravy | I think the canonical one is "int main(int argc, char **argv)" yeah, only some systems pass the env | 16:48 | |
I still type just "main()" if I don't care about the arguments, as much as the compiler may bitch about it | 16:49 | ||
16:50
Ven left
|
|||
Hotkeys | I need to figure out a way to make znc give me scrollback more often than first connection | 16:50 | |
Skarsnik | int main; is the smallest sigseg you can do I think | ||
Hotkeys | but less often than all the time | ||
Skarsnik | the main symbole is here! | 16:51 | |
masak | m: constant R = rx/(..)(..)/; say so "abcd" ~~ R; say ~$0; say ~$1 | ||
Hotkeys | like first connection per machine | ||
camelia | rakudo-moar 3259ba: OUTPUT«Trueabcd» | ||
masak | \o/ | ||
Hotkeys | woo | ||
regex | |||
RabidGravy | I'm not sure I've written any C that someone paid me for this century | 16:52 | |
Hotkeys | me either | ||
then again before this century I was barely a person | |||
mspo | why use a constant R ? | 16:53 | |
RabidGravy | oh wait, yeah I made a rather "special" adaptation to the I4GL runtime to incorporate some SOAP functionality ;-) | ||
in around 2001 or something | |||
Hotkeys | No SOAP | ||
Radio | 16:54 | ||
* all laugh * | |||
* roll curtain * | |||
16:55
sivoais is now known as sivoais-ms
17:00
bowtie left
17:01
bdmatatu left
17:02
hankache joined,
zakharyas left,
kjs_ left
17:03
bowtie joined
|
|||
hankache | good * #perl6 | 17:04 | |
geekosaur sees i4gl, has flashbacks | 17:05 | ||
RabidGravy | hahahahahahaha | 17:06 | |
geekosaur | (let's just say, I ended up with the direct contact number of one of the developers for reporting bugs) | 17:07 | |
17:07
pat_js left
|
|||
RabidGravy | yeah, prior to the IBM takeover they were quite good to deal with | 17:07 | |
geekosaur 's experience with them goes back to pre-sql informix | 17:08 | ||
RabidGravy | I still love the database | ||
yeah, I started with it in the early 90s so just pre-Online and stuff | 17:09 | ||
17:09
_Vi left
|
|||
RabidGravy | this was at the point you could still use the C-ISAM stuff against the database files | 17:10 | |
17:13
_Vi joined
17:15
domidumont joined
17:18
rindolf joined
|
|||
RabidGravy | what was I doing again? | 17:22 | |
dalek | c: 694dd77 | (John Gabriele)++ | doc/Language/faq.pod: update link to glossary in faq. Closes #353 |
17:24 | |
17:25
prammer left
17:26
mkz left
|
|||
TimToady | .tell MadcapJake note that camelia has a lot of intentional asymmetry, in particular her left eye is not supposed to be quite centered; in addition to artistic reasons, there's a small pun on 'wall-eyed' there :) | 17:26 | |
yoleaux | 10:53Z <nine> 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) | ||
TimToady: I'll pass your message to MadcapJake. | |||
17:30
Hor|zon joined
17:33
mkz joined
|
|||
RabidGravy | is there a way of distinguishing a role from a normal class in a TypeConstraint? I want to store a role in a thing and can't tell if it is defined or not | 17:33 | |
an anonymous role I might add | 17:34 | ||
Skarsnik | look if it does RoleHOW comparing to ClassHOW? | ||
*trow random idea* | 17:35 | ||
RabidGravy | I don't think there is a single "RoleHOW" there are a bunch of different ones, like ParametricRoleHOW and so on | 17:36 | |
and I'm too scared to look at the code long enough to work out which I need ;-) | 17:37 | ||
TimToady | .tell MadcapJake I like the high-heel shoes, though :) | ||
yoleaux | TimToady: I'll pass your message to MadcapJake. | ||
jnthn | RabidGravy: .HOW.archetypes is often a better bet | 17:38 | |
RabidGravy: Taking one of the properties on there | |||
RabidGravy | Oooh | 17:39 | |
17:39
rurban1 joined,
rurban left
|
|||
Skarsnik | m: my $a = role {}; say $a.HOW.archetypes; | 17:39 | |
camelia | rakudo-moar 3259ba: OUTPUT«Method 'gist' not found for invocant of class 'Perl6::Metamodel::Archetypes' in block <unit> at /tmp/71fmU46ZGk line 1» | ||
17:39
lokien_ left
|
|||
jnthn | Yeah, you'll need to access one of the properties on it | 17:40 | |
It's pretty low level. | |||
Unlikely to change significantly though. | |||
17:40
perl6newbee joined
|
|||
Skarsnik | m: my $a = role {}; say $a.HOW.archetypes.name; | 17:41 | |
camelia | rakudo-moar 3259ba: OUTPUT«Method 'name' not found for invocant of class 'Perl6::Metamodel::Archetypes' in block <unit> at /tmp/PYBRTSwipn line 1» | ||
RabidGravy | composalizable | ||
crack monkeys | |||
jnthn | "Can be turned into something composable" :) | ||
English has such boring inflectional morphology, might as well harness the derevational :P | 17:42 | ||
RabidGravy | :) but composable is the puppy, cheers! | 17:43 | |
and surely you mean "derivisational" | |||
;-) | 17:44 | ||
17:44
bowtie left
17:48
bowtie joined
17:49
leont joined
|
|||
RabidGravy | but yeah, that works nicely, apart from the "applying the same role twice" bug I seem to have made | 17:51 | |
17:52
mkz left
|
|||
RabidGravy | "f not ?$!role.HOW.archetypes.composable { $!role = role { }; }" is what I'm going with | 17:54 | |
17:55
virtualsue left
|
|||
AlexDaniel | .u 🌛🌜🌝🌞 | 17:55 | |
yoleaux | U+1F31B FIRST QUARTER MOON WITH FACE [So] (🌛) | ||
U+1F31C LAST QUARTER MOON WITH FACE [So] (🌜) | |||
U+1F31D FULL MOON WITH FACE [So] (🌝) | |||
AlexDaniel | and of course | 17:56 | |
.u 🌚 | |||
yoleaux | U+1F31A NEW MOON WITH FACE [So] (🌚) | ||
TimToady | where's my SMILEY NEW MOON WITH FACE? | 17:57 | |
17:57
mkz joined
|
|||
TimToady | .oO(and the one with the rocket in its eye?) |
17:58 | |
17:58
dfcarpenterak joined
|
|||
TimToady | maybe we should allow people to make up their own glyphs for Perl 6, and then get them all incorporated into Unicode | 17:59 | |
RabidGravy | That's a great movie | ||
TimToady | we could get a whole plane to ourselves if we worked at it hard enough | ||
RabidGravy | well nobody else would want to get on | ||
;-) | |||
18:00
SCHAAP137 joined
|
|||
AlexDaniel | hmm @😊̋@ | 18:00 | |
18:00
firstdayonthejob joined
|
|||
AlexDaniel | or even @🐛@ | 18:00 | |
TimToady coins the term "unimosh" | |||
as in, unicode characters that squish in too tight on my terminal | 18:02 | ||
AlexDaniel | TimToady: by the way, somewhat unimosh related: rt.perl.org/Ticket/Display.html?id=127048 | ||
RabidGravy | yeah, there are definitely some characters I can't read, maybe it's a bad display, maybe it's a bad font, maybe it's my eyes | 18:03 | |
or a combination of all through | 18:04 | ||
er | |||
three | |||
Is "🐛" bug thing or a pine cone? | 18:05 | ||
AlexDaniel | .u 🐛 | ||
yoleaux | U+1F41B BUG [So] (🐛) | ||
TimToady | looks like a centipede here... | ||
18:05
jvcakg joined
|
|||
TimToady | or maybe a decipede... | 18:05 | |
18:06
sftf left
|
|||
AlexDaniel | yeah, looks like a centipede here too… I was hoping that authors of other fonts are a bit less radical when it comes to drawing bugs | 18:06 | |
RabidGravy | well it's an indistict blob with maybe some leg things round the outside with my eyes | ||
18:06
jvcakg left,
Hor|zon left
18:07
Actualeyes left
|
|||
TimToady | actually, it appears to have 22 appendages in my font, though presumably two of those might be antennae | 18:07 | |
AlexDaniel | “Guess what character is that” game: files.progarm.org/2016-01-15-20044..._scrot.png | 18:08 | |
RabidGravy | I might add that beer may be a contributing factor in my inability to discern the character | ||
18:09
leont left,
ZoffixW joined
|
|||
ZoffixW | m: my \list1 = |"a".."h"; my \list2 = <x y>; say list1 »Z||» list2 | 18:09 | |
RabidGravy | TimToady, you either have a massive screen or a microscope | ||
ZoffixW | Fun, eh? | ||
camelia | rakudo-moar 3259ba: OUTPUT«(timeout)» | ||
ZoffixW | m: my \list1 = "a".."h"; my \list2 = <x y>; say list1 »Z||» list2 | 18:10 | |
camelia | rakudo-moar 3259ba: OUTPUT«This Seq has already been iterated, and its values consumed(you might solve this by addding .cache on usages of the Seq, orby assigning the Seq into an array) in block <unit> at /tmp/uWQdUstN5O line 1» | ||
ZoffixW | Any way to make that result in <a x b y c d e f g h> ? | ||
18:10
hankache left
|
|||
TimToady | RabidGravy: I just hit CTRL-+ till it's big enough to see | 18:11 | |
RabidGravy | :) | ||
ZoffixW is looking at some Python Stack Overflow answers and finds shorter Perl 6 versions stackoverflow.com/questions/3469273...rs-from-an | |||
AlexDaniel | m: my @list1 = |"a".."h"; say @list1 | 18:12 | |
m: my @list1 = |("a".."h"); say @list1 | |||
camelia | rakudo-moar 3259ba: OUTPUT«[a b c d e f g h]» | ||
rakudo-moar 3259ba: OUTPUT«(timeout)» | |||
Hotkeys | Rip | ||
AlexDaniel | ZoffixW: ↑ here's your problem I think | ||
ZoffixW | m: |"a" | ||
camelia | ( no output ) | ||
ZoffixW | AlexDaniel, it is my problem or a rakudo problem? | 18:13 | |
s/it is/is it/; | |||
I guess even if it's wrong, it should show an error and not loop forever | |||
ZoffixW rakudobugs | |||
Oh wow | 18:14 | ||
m: .say for |"a".."h"; | |||
AlexDaniel | ZoffixW: it would be great to understand what is happening with it | ||
camelia | rakudo-moar 3259ba: OUTPUT«(timeout)1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515…» | 18:15 | |
RabidGravy | :-\ | ||
ZoffixW | m: .say for |"g".."z"; | ||
camelia | rakudo-moar 3259ba: OUTPUT«(timeout)1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515…» | ||
AlexDaniel | m: .say for (|"g") .. "z" | 18:16 | |
skids | m: .say for ('a',)..'h' # probably is what is happening | ||
camelia | rakudo-moar 3259ba: OUTPUT«(timeout)1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515…» | ||
Hotkeys | m: (|"a").perl.say | ||
camelia | rakudo-moar 3259ba: OUTPUT«slip("a",)» | ||
Hotkeys | Yeah | 18:17 | |
ZoffixW | m: .say for |"g"..42; | ||
camelia | rakudo-moar 3259ba: OUTPUT«123456789101112131415161718192021222324252627282930313233343536373839404142» | ||
Hotkeys | skids++ | ||
?p6> (|"a").succ | |||
Oops | 18:18 | ||
Syntax | |||
m: (|"a").succ | |||
camelia | rakudo-moar 3259ba: OUTPUT«Method 'succ' not found for invocant of class 'Slip' in block <unit> at /tmp/jYy69ukVpK line 1» | ||
Hotkeys | Darn | ||
skids makes a mental note to add a "precedence around ranges" item to the "traps" doc page. | |||
AlexDaniel | skids: yeah! perl6critic! | ||
18:18
rurban1 left
|
|||
ZoffixW | m: .say for |10..5 | 18:19 | |
camelia | rakudo-moar 3259ba: OUTPUT«12345» | ||
ZoffixW | ^_^ | ||
18:19
rurban joined
|
|||
Hotkeys | m: slip("a",).Int | 18:20 | |
camelia | ( no output ) | ||
Hotkeys | Why is it starting at 1 | ||
ZoffixW | 1 item list | 18:21 | |
skids | m: &infix:<..>.candidates>>.signature.say # Hrm it does not admit to coercion | ||
camelia | rakudo-moar 3259ba: OUTPUT«(($min, $max))» | ||
nemo | TimToady: yeah. terminals and unicode are kind of a problem | ||
TimToady: that's why I pad my unicode terminal games for readability | |||
AlexDaniel | m: my @list1 = ‘a’..‘h’; my @list2 = <x y>; say flat @list1 Z @list2 | ||
camelia | rakudo-moar 3259ba: OUTPUT«(a x b y)» | ||
AlexDaniel | ZoffixW: yeah, well. Z just stops when one of the lists ends | 18:22 | |
ZoffixW | m: my \list1 = "a".."h"; my \list2 = <x y>; say (list1 Z|| list2) | ||
camelia | rakudo-moar 3259ba: OUTPUT«(a b)» | ||
ZoffixW | I thought I saw some sort of "zip" operator.. that looked something like Z|| | ||
m: my \list1 = 0, "a".."h"; my \list2 = <x y>; say (list1 Z|| list2) | 18:23 | ||
camelia | rakudo-moar 3259ba: OUTPUT«(x "a".."h")» | ||
AlexDaniel | ZoffixW: unless you make both lists equal in length I don't think that it is going to work | ||
ah | 18:24 | ||
ZoffixW | Rakudobugged: rt.perl.org/Ticket/Display.html?id=127279 | ||
nemo | TimToady: m8y.org/tmp/testcase353.xhtml one of the silly things we were screwing around w/ in terminals | ||
TimToady: I never actually got this sort of thing to render right in anything *but* a terminal | |||
18:25
deniska left,
jme` left,
dfcarpenterak left
|
|||
ZoffixW | AlexDaniel, there gotta be a way! :) | 18:26 | |
RabidGravy | I think I just need to go back to using an actual vt220 or Wise-50 or something | 18:27 | |
ZoffixW | m: my \list1 = "a".."h"; my \list2 = <x y>; say list1 Z list2[0..list1.elems].map: *//'' | ||
camelia | rakudo-moar 3259ba: OUTPUT«Cannot call map(List: Whatever); none of these signatures match: ($: Hash \h, *%_) (\SELF: █; :$label, :$item, *%_) (HyperIterable:D $: █; :$label, *%_) in block <unit> at /tmp/jUCas_51NU line 1» | ||
ZoffixW | -_- | ||
18:27
rurban1 joined,
rurban left
|
|||
ZoffixW | m: my \list1 = "a".."h"; my \list2 = <x y>; say flat grep { .chars }, list1 Z list2[0..list1.elems].map: {$_//''} | 18:28 | |
camelia | rakudo-moar 3259ba: OUTPUT«5===SORRY!5=== Error while compiling /tmp/whWNxSjg1kMissing comma after block argument to grepat /tmp/whWNxSjg1k:1------> 3t1 Z list2[0..list1.elems].map: {$_//''}7⏏5<EOL> expecting any of: postfix» | ||
ZoffixW | Missing comma? Another bug | ||
RabidGravy | I binned the last dumb terminal I had when I cleared my mum's house some ten years ago | ||
TimToady | you can't use Z there without parens | 18:29 | |
the left list will slurp up the block | |||
ZoffixW | Missing comma? LTA error | 18:30 | |
^_^ | |||
AlexDaniel | m: my @l1 = ‘a’..‘h’; my @l2 = <x y>; say (|(@l1[$_], @l2[$_]) for ^(max +@l1, +@l2)) | ||
ZoffixW | m: my \list1 = "a".."h"; my \list2 = <x y>; say flat grep { .chars }, (list1 Z list2[0..list1.elems].map: {$_//''}) | ||
camelia | rakudo-moar 3259ba: OUTPUT«(a x b y c (Any) d (Any) e (Any) f (Any) g (Any) h (Any))» | ||
rakudo-moar 3259ba: OUTPUT«(a x b y c d e f g h )» | |||
AlexDaniel | now how do I say “nothing or element” | 18:31 | |
18:32
rurban1 left,
rurban joined
|
|||
ZoffixW leaves to deal with a crisis | 18:32 | ||
18:32
ZoffixW left,
TEttinger joined
|
|||
RabidGravy contemplates sacrificing some goats | 18:33 | ||
18:33
leont joined,
Dee22 is now known as AndyDee
|
|||
AlexDaniel | ah | 18:35 | |
there we go | |||
m: 'my @l1 = ‘a’..‘h’; my @l2 = <x y>; say (|(@l1[$_] if @l1[$_]; @l2[$_] if @l2[$_]) for ^max +@l1, +@l2) | |||
camelia | rakudo-moar 3259ba: OUTPUT«5===SORRY!5=== Error while compiling /tmp/7lVE6bOOrWUnable to parse expression in single quotes; couldn't find final "'" at /tmp/7lVE6bOOrW:1------> 3@l2[$_] if @l2[$_]) for ^max +@l1, +@l2)7⏏5<EOL> expecting any of: sing…» | ||
AlexDaniel | m: my @l1 = ‘a’..‘h’; my @l2 = <x y>; say (|(@l1[$_] if @l1[$_]; @l2[$_] if @l2[$_]) for ^max +@l1, +@l2) | ||
camelia | rakudo-moar 3259ba: OUTPUT«(a x b y c d e f g h)» | ||
AlexDaniel | “if” is a bit wrong though, it should be “if defined” or something | 18:36 | |
Hotkeys | m: my \list1 = "a".."h"; my \list2 = <x y>; say roundrobin(list1, list2) | ||
camelia | rakudo-moar 3259ba: OUTPUT«((a x) (b y) (c) (d) (e) (f) (g) (h))» | ||
AlexDaniel | Hotkeys: ok… | ||
Hotkeys | m: my \list1 = "a".."h"; my \list2 = <x y>; say flat roundrobin(list1, list2) | ||
camelia | rakudo-moar 3259ba: OUTPUT«(a x b y c d e f g h)» | ||
AlexDaniel | .tell ZoffixW “roundrobin is very similar to zip. The difference is that roundrobin will not stop on lists that run out of elements but simply skip any undefined value:” (Hotkeys++) | 18:37 | |
yoleaux | AlexDaniel: I'll pass your message to ZoffixW. | ||
Hotkeys | :D | ||
Woo I'm helping | |||
AlexDaniel | Hotkeys: how did you find it? :) | 18:38 | |
18:38
kjs_ joined,
lnrdo left
|
|||
Hotkeys | I looked at zip on docs.perl6.org :p | 18:39 | |
AlexDaniel | … | ||
Hotkeys | "If you just wish to skip missing entries in shorter sublists, use roundrobin instead" | ||
I was actually looking for some kind of flag that could be passed to zip | 18:42 | ||
But a whole other sub works too | |||
18:42
espadrine left
|
|||
AlexDaniel | m: m: my \list1 = "a".."h"; my \list2 = <x y>; say flat list1.roundrobin(list2) | 18:42 | |
Hotkeys | Like zip(@foo, @bar, :skip) or somethint | ||
camelia | rakudo-moar 3259ba: OUTPUT«Method 'roundrobin' not found for invocant of class 'Range' in block <unit> at /tmp/0D4nLPjPr6 line 1» | 18:43 | |
AlexDaniel | m: my \list1 = "a".."h"; my \list2 = <x y>; say flat list1.roundrobin(list2) | ||
camelia | rakudo-moar 3259ba: OUTPUT«Method 'roundrobin' not found for invocant of class 'Range' in block <unit> at /tmp/0TGrkIPPDF line 1» | ||
Hotkeys | It isn't a method its a sub | ||
AlexDaniel | m: my \list1 = "a".."h"; my \list2 = <x y>; say flat list1.zip(list2) | ||
camelia | rakudo-moar 3259ba: OUTPUT«Method 'zip' not found for invocant of class 'Range' in block <unit> at /tmp/XnHgBR7HS_ line 1» | ||
AlexDaniel | Hotkeys: sure. Why? | ||
Hotkeys | Idk | ||
I didn't make it | |||
:p | |||
m: ("a".."h") R <x y> #I wish this would work as an alternative to Z | 18:45 | ||
camelia | rakudo-moar 3259ba: OUTPUT«5===SORRY!5=== Error while compiling /tmp/buEowbFsMOMissing infix inside Rat /tmp/buEowbFsMO:1------> 3("a".."h") R7⏏5 <x y> #I wish this would work as an alt expecting any of: infix infix stopper» | ||
AlexDaniel | Hotkeys: R is a different thing :) | 18:46 | |
Hotkeys | Is it? | 18:47 | |
Apart from the language | |||
AlexDaniel | m: say 42 R, 69 | ||
camelia | rakudo-moar 3259ba: OUTPUT«(69 42)» | ||
Hotkeys | Oh | ||
What does it do | |||
AlexDaniel | reverses things | 18:48 | |
_nadim | I see this behavior: I have a module, installed with panda install .; and a scrip using the module. I make a change to the module and do a panda --force install . ; the old module is still used by the script! | ||
Hotkeys | ah | ||
_nadim | I generate an exception in the modules sub, still does the old behavior. | ||
AlexDaniel | m: say 2 R** 8 | ||
camelia | rakudo-moar 3259ba: OUTPUT«64» | ||
_nadim | tadzik: ^^. | 18:49 | |
18:52
_Vi left
|
|||
Hotkeys | AlexDaniel: that be crazy | 18:57 | |
18:57
cdg left
|
|||
AlexDaniel | Hotkeys: ? | 18:57 | |
Hotkeys | I like the reverse meta op | ||
That's all | |||
AlexDaniel | yeah, I even used it a couple of times :) | 18:58 | |
mainly when I didn't like the order of arguments… | |||
Hotkeys | m: 2, 3, * R** * ... * > 1000 | ||
camelia | ( no output ) | ||
18:58
kjs_ left
|
|||
Hotkeys | Aw | 18:58 | |
What'd I do wrong | 18:59 | ||
Oh | |||
nine | _nadim: does the module have a proper version? Does the script load a precise version of the module? | ||
AlexDaniel | m: say 2, 3, * R** * ... * > 1000 | ||
camelia | rakudo-moar 3259ba: OUTPUT«(2 3 9 729 58149737003040059690390169)» | ||
AlexDaniel | m: say 2, 3, { $^b ** $^a } ... * > 1000 | ||
camelia | rakudo-moar 3259ba: OUTPUT«(2 3 9 729 58149737003040059690390169)» | ||
Hotkeys | That's neat | ||
Yeah | 19:00 | ||
I knew the gross looking version | |||
AlexDaniel | so now that's a “gross looking version” :) | ||
19:00
hankache joined
|
|||
Hotkeys | Yeah look at how nice * R** * looks | 19:00 | |
It's almost as nice as | |||
TimToady | .tell nine rather than just ignoring the order of arguments, I think it would be more powerful to allow for cascaded MAIN-like things, so that we can differentiate the options before a command from the options after | 19:01 | |
yoleaux | TimToady: I'll pass your message to nine. | ||
AlexDaniel | as? | ||
Hotkeys | m: say 1, 2, * * * ... * > 50 | ||
camelia | rakudo-moar 3259ba: OUTPUT«(1 2 2 4 8 32 256)» | ||
Hotkeys | Sorry I'm on my phonr | ||
AlexDaniel | what about this | ||
m: say 2, 3, -> $a, $b { $b ** $a } ... * > 1000 | |||
camelia | rakudo-moar 3259ba: OUTPUT«(2 3 9 729 58149737003040059690390169)» | ||
Hotkeys | Oh no | ||
Not anonymous functions | |||
Am I using the right term | 19:02 | ||
I'm bad at terminology | |||
_nadim | nine: the script doesn't load a specific version. I even reinstalled the module with a new version, the script still uses an old version | ||
AlexDaniel | m: say 2, 3, sub ($a, $b) { $b ** $a } ... * > 1000 | ||
camelia | rakudo-moar 3259ba: OUTPUT«(2 3 9 729 58149737003040059690390169)» | ||
AlexDaniel | Hotkeys: I think that this is anonymous function ↑ | ||
and the previous one was a clojure or something | 19:03 | ||
though I usually don't care about the terminology, I just want it to dwim | |||
Hotkeys | Hmm | ||
I just assumed pointy blocks were essentially lambdas on their own | 19:04 | ||
AlexDaniel | m: say 2, 3, sub hello-there($a, $b) { $b ** $a } ... * > 1000 | ||
camelia | rakudo-moar 3259ba: OUTPUT«(2 3 9 729 58149737003040059690390169)» | ||
Hotkeys | Which they seem to be | ||
AlexDaniel | hm, what happens if you put a restriction there | ||
Hotkeys | It'll probably get mad if the type doesn't match | ||
AlexDaniel | m: say 2, 3, sub hello-there($a where * > 5, $b) { $b ** $a } ... * > 1000 | 19:05 | |
camelia | rakudo-moar 3259ba: OUTPUT«===SORRY!===Constraint type check failed for parameter '$a'» | ||
Hotkeys | Yeah | ||
AlexDaniel | LTA | ||
Hotkeys | LTA? | ||
AlexDaniel | yeah, no line number | ||
TimToady | and it could mention '* > 5' if it wanted to get fancy | 19:06 | |
it could conceivably even mention the 2 | 19:07 | ||
while we're at it, let's make backtraces print all the arguments to all the routines... | 19:09 | ||
well, the short ones, anyway | |||
AlexDaniel | TimToady: oh, again! | ||
I remember that | |||
nine | TimToady: sounds like a bit of a redesign of the whole MAIN mechanism to gain proper support for subcommands. I'd be fine with that :) I just don't feel qualified to do that. | 19:10 | |
yoleaux | 19:01Z <TimToady> nine: rather than just ignoring the order of arguments, I think it would be more powerful to allow for cascaded MAIN-like things, so that we can differentiate the options before a command from the options after | ||
TimToady | Hotkeys: Less Than Awesome | ||
nine | TimToady: OTOH I would still like to make it easier for plain normal CLI programs. Lots of tools don't care where the named arguments are in the command line and as a user I like that very much as it sames a lot of moving on the command line. Like "ack foo" -> "ack foo -A 5" | 19:11 | |
_nadim: what system are you on? | 19:12 | ||
19:12
sena_kun joined
|
|||
TimToady | we can make option movement easy, but I wouldn't want it to be the default | 19:12 | |
hankache | Hotkeys AlexDaniel it is called a "pointy block" or an "anonymous function" or a "lambda". Pointy block being the most perl6ish | 19:13 | |
TimToady | actually, option movement can easily be done with a preprocessor on @*ARGS before we call MAIN | ||
AlexDaniel | hankache: ok, pointy block. Thanks! | ||
hankache | AlexDaniel yw | 19:14 | |
TimToady | similarly, subcommands could be done by preprocessing into an array of captures, with one capture shifted off at each level | 19:15 | |
captain-adequate | TimToady: At the risk of sounding like a dumb dumb... Are you by any chance Larry Wall? | 19:17 | |
mst | right, making option movement the default has some serious disadvantages | ||
esp. with subcommands | |||
19:17
_nadim left
|
|||
RabidGravy | speaking of MAIN() is it just a "normal" sub in the top level package? and is it called like some normal multi by some code in the core? | 19:17 | |
mst | captain-adequate: he certainly claims to be. | ||
TimToady | captain-adequate: which one do you mean? last I looked, there were 137 Larry Walls in the U.S., and I'm only two of them.... | ||
RabidGravy | I have my doubts | 19:18 | |
captain-adequate | Awesome!! | ||
mst | I'd verify it via email, but he never actually replies to that | ||
and I'm not sure it counts if I get his wife to vouch instead ;) | |||
19:18
azawawi joined
|
|||
RabidGravy | he looks like him, but there are all these clues as to his real identity | 19:18 | |
azawawi | hi | ||
DrForr: ping | 19:19 | ||
hankache | if it walks like Larry and Talks like Larry....... | ||
TimToady | my mom claims that's my name, but she's 91 now, so maybe she's starting to lose it :) | ||
DrForr | azawawi: aroo? | ||
TimToady | (actually, she's still quite sharp for 91) | ||
azawawi | DrForr: hi | ||
19:19
_nadim joined
|
|||
_nadim | nine: suse | 19:20 | |
captain-adequate | I'm hoping for happy crazy by the time I'm 91. | ||
AlexDaniel | it seems like TimToady is not identified by NickServ right now, so that could be anyone | ||
azawawi | DrForr: looking at the IRC logs, you were doing some OpenCV bindings... any update? | ||
RabidGravy | it's the white cat and bald head and threatening up secret agents wiith lasers that gave him away | 19:21 | |
DrForr | Hrm. I can push what I have to github... | ||
azawawi | cool | ||
DrForr | Though it probably won't pass tests because it predates NC changes. | 19:22 | |
azawawi | DrForr: any luck with c++ api... or just c api for opencv? | ||
DrForr | Just the C stuff at the moment. | ||
Running the test suite right now, seems to be in a bit of flux. | 19:23 | ||
azawawi | DrForr: been trying to make it work for a couple of days... I am thinking of just wrapping the JNI Java shared lib | ||
RabidGravy | what is opencv anyway? | ||
awwaiid | RabidGravy: an open-source computer-vision library | 19:24 | |
19:24
bowtie left
|
|||
DrForr | I've got to get this done for my OSCON talk anyway, assuming I'm giving it. | 19:24 | |
awwaiid | RabidGravy: has a bunch of image/video algos that you can compose together and do neat things | ||
19:24
TimToady left
|
|||
azawawi | RabidGravy: basically a ton of video & image processing algorithm functions :) | 19:25 | |
awwaiid | RabidGravy: individually the algos aren't super interesting | ||
RabidGravy | oh right, is that the thing that google acid trip thing uses? | ||
DrForr | Let me move to the kitchen table and I'll push what I have. | ||
19:25
bowtie joined
|
|||
azawawi | DrForr: thanks | 19:25 | |
sena_kun | Hi, guys. I have a C call and an 'if' statement. When I do something like "If $var { call }" I got an "unhandled kind 1" error. If I remove if statement code will be completly okay. Is it a known bug? | ||
azawawi | DrForr: Haskell is plagued with the same problem we have for NativeCall ... C++ interop... Please take a look at this github.com/arjuncomar/opencv_contr...es/haskell | 19:26 | |
19:26
TimToady joined
19:27
TimToady left,
TimToady joined
|
|||
azawawi | DrForr: detailed description is in this pull github.com/Itseez/opencv/pull/1600/ | 19:27 | |
RabidGravy | the C++ interop sort of works, maybe the mangling needs some love but it basically works | ||
alpha123 | 50% of the time, C++ interop works all the time | 19:28 | |
azawawi | RabidGravy: even if it works, you cant use c++ objects... you need to re-wrap them in a sane p6 class | ||
RabidGravy | isn't that a "feature" ? ;-) | 19:29 | |
azawawi | RabidGravy: also Str -> std::string may need special handling :) | ||
RabidGravy | dive in and fix the mappings, I added a load last week | 19:30 | |
azawawi | RabidGravy: doing the c part is easy given that opencv has a python script that generates opencv function signature headers | ||
DrForr | Currently pushed as github.com/drforr/perl6-OpenCV2 - The test suite doesn't currently work, but it's got basic Array, Matrix, Scalar and Size interface classes. | 19:31 | |
azawawi | DrForr++ | ||
19:31
jshy joined
19:32
sena_san joined,
perl6newbee left,
sena_san left,
sena_kun left,
sena_san joined
|
|||
azawawi | DrForr: the reason i asked for this earlier is that i do not want to duplicate development efforts | 19:32 | |
19:32
FROGGS left
19:34
zakharyas joined,
Zero_Dogg left
|
|||
DrForr | Ah. Well, take a look at what's there, I'll take a few minutes now to see if what's broken is easily fixable. | 19:34 | |
19:34
Zero_Dogg joined
|
|||
RabidGravy | azawawi, if you're bored and liking NC stuff you could pick up the GDBM thing I couldn't get to work | 19:35 | |
azawawi | well im bored that's for sure | 19:36 | |
geekosaur | *everyone* has C++ interop problems | ||
mspo | skip GDBM and go straight to symas.com/mdb/ | ||
azawawi | RabidGravy: i ordered the Arduino kit but did not get the soldering iron :( | 19:37 | |
RabidGravy: so now i have two Arduino Uno-s, an Ethernet shield (addon), and 433 Mhz transmitter/receiver along with a couple of sensors :) | 19:38 | ||
19:39
yqt joined
19:40
muraiki joined
|
|||
azawawi | geekosaur: i noticed. C is way better in that aspect. | 19:40 | |
muraiki | is there a good way to use Proc::Async with react blocks? the problem lies in the need to call $proc.start... | ||
geekosaur | C is only better because it doesn't try. you do interop from the C++ side, export "C" ... | ||
RabidGravy | mspo, please feel free to contribute a binding to that to the ecosystem :) | 19:41 | |
geekosaur | (and those will be perfectly FFI-able, from any other language that has C interop) | ||
19:41
jevin joined
|
|||
mspo | RabidGravy: it is the best k:v | 19:41 | |
RabidGravy: it would be fun to try making a PP version that used similar methods (COW, etc) | 19:42 | ||
RabidGravy | as I say, carry on and make the binding and I'm sure it will be groovy | ||
mspo | RabidGravy: once I can get any module to install I might try :) | 19:43 | |
RabidGravy | slacker | ||
mspo | I guess I'm on an esoteric platform (netbsd) | ||
RabidGravy | not particularly esoteric | ||
mspo | RabidGravy: slacking is definitely something I do | ||
19:44
jme` joined
|
|||
mspo | I like to spend my free time reading LOTR to my infant son ;) | 19:44 | |
I think he's liking it so far | |||
azawawi | DrForr: so which version are we going to be targeting 2.4.x or 3.x? :) | ||
DrForr | Well, in my case OpenCV2 should be a good hint there :) | 19:45 | |
nemo | mspo: ah, captive audience ☺ yeah, I read Le Petit Prince to my daughter but that only worked until age 2 or so ☺ | 19:46 | |
now even the occasional pictures isn't enough | |||
19:47
_Vi joined
|
|||
DrForr | Pushed fixes, the compile test passes. FWIW I don't mind working on both in parallel though once I see the C++ bindings I might change my mind :) | 19:47 | |
mspo | nemo: yeah I read hitchicker's guide to my daughter until she could complain about it | ||
nemo: now I'm lucky to read the grinch for being "plot driven" | |||
nine | sena_san: I fear we're gonna have to see some more code to help you | ||
nemo | mspo: probably the most complex text she's willing to listen through in its entirety (repeatedly) is Horton Hears a Who | 19:48 | |
nine | oops...stale backlog | ||
nemo | mspo: but I think that's due to the silly voices dad does | ||
DrForr | I'd probably make a horrible parent, as my first thought would be "Fear and Loathing in Las Vegas" :) | ||
nemo | ♥ | ||
mspo | nemo: same; I'm waiting until I can move onto winnie the pooh | ||
RabidGravy | luck be on you with the opencv thing, looks enormous with loads of namespaces | 19:49 | |
nemo | DrForr: you know, it's weird what kids like. she looooves www.youtube.com/watch?v=4voeUXDWKL0 | ||
sena_san | nine, I already rewrite that part in different manner. I can't reproduce it in a small piece of code now, so I'll try to reproduce this error tomorrow and paste here a gist. | 19:50 | |
DrForr | Of course I've got the Rifftrax version of The Hunger Games running in the background... | ||
RabidGravy | y'see I think all kids should be brought up on a constant diet of minimal techno www.youtube.com/watch?v=le-T9UDqOZw | ||
DrForr | RabidGravy: Nod, a lot of my time was spent tearing apart the existing .h files into different classes. | 19:51 | |
sena_san | s/rewrite/rewrote/ | ||
nemo | mspo: I get the feeling our kids are roughly the same age btw | 19:52 | |
19:52
bowtie left,
hankache left
|
|||
leont | Is there any advantage to declaring a return type to subs and methods? | 19:53 | |
DrForr | Future optimization? | ||
RabidGravy | and introspection | ||
rjbs | Are those not checked? | 19:54 | |
_nadim | leont: may be useful when multis return differnt types | ||
TEttinger | RabidGravy: raise your kids on a healthy diet of ziltoid the omniscient | ||
RabidGravy | yes | ||
leont | I think they're checked, but that's not much of an advantage most of the time since I know what I'm returning | ||
rjbs | It is checked. | ||
nine | Today I finally decided to move from rekonq to chromium. I dearly miss rekonq already :/ | ||
rjbs | Heh, it's an advantage for me, because I make mistakes in return types once in a while. | ||
RabidGravy | m: sub foo() returns Bool { return class Foo {} }; foo() | 19:55 | |
camelia | rakudo-moar 3259ba: OUTPUT«Type check failed for return value; expected Bool but got Foo in sub foo at /tmp/Rax83kJPqP line 1 in block <unit> at /tmp/Rax83kJPqP line 1» | ||
rjbs | I appreciate the compile-time checking of it in other languages. | ||
runtime checking is somethin' | |||
flussence | nine: feels like I've used about a billion different browsers in the past few years. they all suck in unique ways :) | ||
mspo | I guess panda doesn't use a .packlist ? | 19:56 | |
AlexDaniel | rt.perl.org is very slow today… | ||
RabidGravy | well, compile time checking of return types is possible I guess but only if the routine body evaluates to a constant value | ||
mspo | nemo: almost 3 years and almost 3 months | ||
nine | flussence: I think my whole history has been: Netscape 4 -> Mozilla M15 to Seamonkey -> konqueror -> rekonq -> chromium | ||
nemo | mspo: pretty close! | ||
TEttinger | I was a big Firefox fan until some set of "improvements" in a major update made it use massively more memory and also crash with no warning on gif-heavy pages | ||
nemo | TEttinger: huh... how long ago was that? | 19:57 | |
TEttinger | years | ||
nemo | ah | ||
TEttinger: 'cause these days the bloated one is chromium I think | |||
mspo | nemo: time for computer stuff outside of work is..... difficult :) | ||
TEttinger | this is known to crash FF tommyettinger.github.io/home/PixVox...sions.html | ||
nemo | TEttinger: blog.mozilla.org/nnethercote/2013/...k-117-120/ | 19:58 | |
TEttinger | hm, when did I switch | ||
nine | _nadim: if the problem still persists, it would be cool if you could upload your rakudo/install/share/perl6 directory somewhere so I can have a look. | ||
mspo | yeah chrome isn't lightweight: groups.google.com/a/chromium.org/f...Z5ZK0K3gEJ | ||
nemo | TEttinger: usinga fair amount of memory but seems fine | 19:59 | |
leont | TEttinger: yeah, FF memory usage is ridiculous nowadays :-( | ||
TEttinger | I had hundreds of tabs open in firefox regularly, and some update made it impossible to load my previous set of tabs | ||
leont | I remember when they switched from refcounting to GC | ||
nemo | TEttinger: but, since the memshrink project firefox has been super aggressive at slashing memory. It's the only browser than ran on my old android phone | ||
mspo | "In the course of optimizing SyzyASan performance, the Syzygy team discovered that nearly 25000 (!!) allocations are made for every keystroke in the Omnibox. " | ||
leont | If it goes into global GC and you're 2GiB into swap, good luck! :-( | ||
19:59
dfcarpenterak joined
|
|||
nemo | TEttinger: anyway your page doesn't seem to be crashing *shrug* | 20:00 | |
TEttinger | hm, might only be if memory is low | ||
nemo | TEttinger: must be really low | ||
TEttinger | I've had crash reports from a netbook running windows and on my own 12 GB RAM machine when most of that RAM is used | ||
nemo | TEttinger: used a total of 1.4GiB of ram | ||
which is a lot | |||
but nowhere near enough to crash even a 32 bit machine | 20:01 | ||
flussence | I knew people (plural!) who have upwards of 1000 tabs in either firefox and chrome(!) | ||
TEttinger | not the machine, just FF | ||
nemo | TEttinger: I know. didn't crash either | ||
leont | My FF regularly 3-4 GiB virt on a 2GiB RAM machine, deliberate crash and relaunch is sometimes faster than a GC run | ||
nine | flussence: you do know....strange people | ||
nemo | TEttinger: chrome is using 2GiB | ||
and fair amount more CPU | |||
weird. what the heck is that page doing? | 20:02 | ||
20:02
bowtie joined
|
|||
nemo | I guess a ton of large images is all. RGBA pixmaps can get big | 20:02 | |
leont has seen it claim 20 GiB virt, that was "interesting" | |||
TEttinger | I'll check nmy response to you, nemo: i.imgur.com/qvglxXY.png | ||
nemo | TEttinger: the link to the about:crashes entry would be more helpful ☺ | ||
but yeah. seems fine here. dunno | |||
TEttinger | it also doesn't load all the gifs by default | 20:03 | |
nemo | ah. that could explain the significantly lower memory usage | ||
DrForr | awwaiid: Huh. t/02-OpenCV-Mat.t actually passes, it might actually be creating matrices. | ||
TEttinger | if I scroll, it loads more, and then it crashes for me | ||
nemo | TEttinger: yeah, that's probably related to that memshrink blog post I linked you to | 20:04 | |
flussence | somehow I ended up stuck with Vivaldi on my netbook - basically a buggy, heavyweight UI wrapper around chromium like those things that existed for IE6 in the early 2000's. I used to be able to compile chromium itself on that thing... :( | ||
nemo | TEttinger: ok. some of them aren't loading at all. says they contain errors | ||
could be due to the size | |||
TEttinger: I know Firefox is pretty aggressive about rejecting "zipbomb" images | |||
TEttinger | they don't contain errors. | ||
they are large | |||
nemo | for example one of my Hedgewars maps doesn't load for that reason | ||
mspo | iirc chromium doesn't compile on 32bit machines | ||
flussence | it used to! | 20:05 | |
mspo | like it's impossible to have enough memory to do the compile | ||
nemo | TEttinger: hg.hedgewars.org/hedgewars/raw-file...e/mask.png | ||
TEttinger: that map "contains" errors but is just due to the dimensions | |||
TEttinger: but I get why they are doing it | |||
TEttinger | loads fine in chrome | ||
nemo | I know | ||
is just about sanity limits | |||
$ file mask.png | |||
mask.png: PNG image data, 2048 x 32768, 8-bit/color RGBA, non-interlaced | |||
20:05
azawawi is now known as ziwix
|
|||
nemo | TEttinger: that image requires 256MiB of RAM to represent which is bordering zipbomb | 20:06 | |
ziwix | Better now no confusion with awwaiid :) | ||
dalek | c: 20d8f52 | (Zoffix Znet)++ | doc/Type/Supply.pod: C<> should be L<> |
||
20:06
sivoais-ms is now known as sivoais
|
|||
nemo | TEttinger: and that's not even counting the poor vRAM | 20:06 | |
flussence | mspo: Firefox had the same problem at one point; some of their official build machines were using a 32-bit version of win/osx. I think their workaround was to just update the OS instead of fixing the bloat... | 20:07 | |
nemo | TEttinger: but yeah, try this congressoamericano.blogspot.com/p/f...o-iii.html in both - it was from the memshrink blog | ||
some pathological site | |||
flussence: I can tell you I compile Seamonkey still on my 32 bit machine w/ a whole gig of ram. it ain't fast tho 'cause it uses swap a fair amount ☺ | 20:08 | ||
20:10
spider-mario joined
|
|||
TEttinger | nemo: it seems not to use more than 250 MB of RAM, hovering around 230 MB in chrome | 20:11 | |
hahaha | |||
I opened firefox and it re-opened the explosions page and crashed immediately | |||
nemo | TEttinger: seriously. can you link to the about:crashes entry ? | 20:12 | |
TEttinger | I didn't submit one that time, it happens so often | ||
nemo | TEttinger: link me to any one of them then | 20:13 | |
TEttinger | it isn't even giving me a crash report dialog | 20:14 | |
this is exactly why I use chrome | |||
nemo | TEttinger: I opened that congressowhatever in chromium and it is using 500MiB of RAM | ||
not terrible | |||
rindolf | nemo: wow. | 20:15 | |
nemo | Firefox 335 | 20:16 | |
20:16
darutoko left
|
|||
nemo | both measurements made w/ their own internal measurement tools | 20:16 | |
still a lot to be sure | 20:17 | ||
20:17
arlenik joined
|
|||
nemo | TEttinger: you sent me a link to a crash report dialog? O_o | 20:17 | |
TEttinger: so about:crashes has nothing in it? | |||
wonder if this is due to some extension or something | 20:18 | ||
nemo tries TEttinger's page on his wimpier laptop | |||
flussence | .oO( the only meaningful way to measure memory usage is to measure how much useful work a program gets done before it starts swap thrashing ) |
20:19 | |
TEttinger | crash-stats.mozilla.com/report/ind...cb42160115 | ||
arlenik | noob here, how do i do 'generic' classes in Perl6? say I want a Point class parameterized over dimension and numeric type. | ||
RabidGravy | so when panda says that is can't install something due to already installed it says "Foo:ver<blah>:auth<blah>:api<blah>" but I can't find the api part decribed anywhere is it actually a thing? | ||
20:20
sena_san left
|
|||
RabidGravy | arlenik, probably you want a parameterised role | 20:20 | |
nine | RabidGravy: I'm not sure where that actually came from. I think there was some discussion in November about it | ||
RabidGravy | arlenik, doc.perl6.org/language/objects#Para...ized_Roles | 20:21 | |
nemo | TEttinger: weird. I can't get it to happen on my laptop either. which obv has quite a bit less ram | ||
and a wimpier gfx card | |||
TEttinger | no idea what causes it other than scrolling | ||
there are larger gifs at the bottom | |||
nemo | 'course both are linux... hm *goes to coworker's desk* | 20:22 | |
yeah. I scrolled | |||
RabidGravy | nine, okay, it just sounds like a sensible thing given that one may want to alter the version for reasons of implentation details of something without changing the actual api | 20:23 | |
which is better than crude versioning | |||
TEttinger | under metadata there's a GraphicsCriticalError: | 20:24 | |
|[0][GFX1]: [D2D1.1] 4CreateBitmap failure Size(640,360) Code: 0x8899000c format 0|[96][GFX1]: [D3D11] 2 CreateTexture2D failure Size(16,16) Code: 0x887a0005|[92][GFX1]: [D3D11] 2 CreateTexture2D failure Size(16,16) Code: 0x887a0005|[93][GFX1]: [D3D11] 2 CreateTexture2D failure Size(16,16) Code: 0x887a0005|[94][GFX1]: [D3D11] 2 CreateTexture2D failure Size(16,16) Code: 0x887a0005|[95][GFX1]: [D3D11] 2 CreateTexture2D failur | |||
seems like a DirectX thing | |||
nemo | TEttinger: strange. not crashing on coworker's crappy windows laptop, and he's running eclipse, oracle, IE and Firefox on that poor thing, not to mention AV | ||
TEttinger | it mentions D3D11 | ||
nemo | hm | 20:25 | |
TEttinger | might be my not-bad NVIDIA GPU | ||
GTX 765M 2GB | |||
20:25
arlenik left
20:26
lokien joined
|
|||
nemo | TEttinger: aaaanyway. since you have a windows machine + chromium - does m8y.org/tmp/testcase429.xhtml render smoothly these days now? | 20:26 | |
lokien | heyy guys, firefox is great | ||
nemo | O_o | ||
TEttinger | to clojure with thee! | 20:27 | |
RabidGravy | all browsers are crap, it's just some are more crap than others | ||
TEttinger | but perl 6 is pretty good | ||
nemo: not totally | |||
there's some bars | |||
lokien | perl6 is fun, but clojure is love and life | ||
nemo | TEttinger: ah. known | 20:28 | |
lokien | firefox's getting a new engine, by the way, maybe it'll suck less | ||
nemo | TEttinger: hopefully should be fixed soon. The FF guys submitted a patch | ||
TEttinger: I was wondering more about CPU | |||
TEttinger | i.imgur.com/nfDEv6X.png | ||
nemo | yeah. I ran into that | 20:29 | |
TEttinger: my issue was more the CPU usage really | |||
MadcapJake | how can I make an object callable like a function? | 20:30 | |
yoleaux | 17:26Z <TimToady> MadcapJake: note that camelia has a lot of intentional asymmetry, in particular her left eye is not supposed to be quite centered; in addition to artistic reasons, there's a small pun on 'wall-eyed' there :) | ||
17:37Z <TimToady> MadcapJake: I like the high-heel shoes, though :) | |||
flussence | MadcapJake: define «method CALL-ME», iirc | 20:31 | |
20:31
travis-ci joined
|
|||
travis-ci | Doc build passed. Zoffix Znet 'C<> should be L<>' | 20:31 | |
travis-ci.org/perl6/doc/builds/102680437 github.com/perl6/doc/compare/694dd...d8f522a3eb | |||
20:31
travis-ci left
|
|||
nine | RabidGravy: or the other way round? Offer a module with two different APIs? | 20:31 | |
TEttinger | nemo: yeah it starts at 50% (so maxing out 4/8 virtual cores), then quickly goes down to maxing out one including the GPU process | ||
flussence has that page open, using about 137% CPU | 20:33 | ||
lokien has that page open in firefox, 3% cpu, everything smooth | 20:34 | ||
RabidGravy | nine, indeed that could work :) | ||
rindolf | Hi all! panda install gives me this - www.shlomifish.org/Files/files/text...da-err.txt | 20:41 | |
dalek | c: 00e10d5 | (Christopher Bottoms)++ | doc/Language/terms.pod: Updated π/pi and added τ/tau |
20:42 | |
c: b322bf7 | (Zoffix Znet)++ | doc/Language/terms.pod: Merge pull request #354 from molecules/patch-1 Updated π/pi and added τ/tau |
|||
osystem: 2dfc615 | Altai-man++ | META.list: Bzlib2 bindings. |
|||
osystem: 74bd14f | (Zoffix Znet)++ | META.list: Merge pull request #124 from Altai-man/master Bzlib2 bindings. |
|||
20:44
dfcarpenterak left
20:46
domidumont left,
domidumont joined
|
|||
MadcapJake | how come I can't seem to make a BUILD signature accept positional arguments? | 20:49 | |
muraiki | doc.perl6.org/language/objects#Obje...nstruction | 20:54 | |
MadcapJake: scroll down to "The third implication" | |||
masak | MadcapJake: what are you trying to accomplish? (I've known people to give .new positional parameters, but not .BUILD) | ||
rindolf | can anyone help me? | ||
muraiki | and note why that's considered a poor practice | ||
rindolf | <rindolf> Hi all! panda install gives me this - www.shlomifish.org/Files/files/text...da-err.txt | ||
20:55
lnrdo joined
|
|||
mspo | rindolf: you probably need to try reinstalling panda | 20:55 | |
rindolf: or getting your whole environment fixed up | |||
rindolf | mspo: ah. | ||
mspo | rindolf: after messing with it a bunch, last night I broke down and just used rakudobrew because that's what everyone in here uses | ||
rindolf | mspo: OK, let me see. | ||
muraiki | I also suggest simply using rakudobrew | 20:56 | |
rindolf | mspo: I am using rakudobrew | ||
mspo | rindolf: rakudobrew build panda then :) | ||
dalek | c: f8fa69e | (Shlomi Fish)++ | doc/Language/5to6-nutshell.pod: Fix tense due to pluralization |
||
c: 1a269ee | (Steve Mynott)++ | doc/Language/5to6-nutshell.pod: Merge pull request #355 from shlomif/shlomif--typos-corrections Fix tense due to pluralization |
|||
20:56
domidumont left
|
|||
rindolf | mspo: OK. | 20:58 | |
nine | rindolf: please upgrade your rakudo and panda. Then it should work. | ||
rindolf: your rakudo is severely out of date | |||
20:58
marmay_ joined
|
|||
nine | FWIW I've never used rakudobrew and also never had problems like that ;) | 20:59 | |
rindolf | nine: OK. | 21:00 | |
21:04
revhippie joined
|
|||
masak | same here. | 21:04 | |
Zero_Dogg | Does .lines on .out of a Proc-object (ie. created with run) return lines until EOF, ie. until the subprocess exits? | 21:07 | |
21:07
dfcarpenterak joined
|
|||
masak | Zero_Dogg: ...as opposed to what? only returning some of them? | 21:09 | |
Zero_Dogg | masak: as opposed to only returning whatever was pending at the time | 21:10 | |
b2gills | It's lazy if thats what you mean | ||
Zero_Dogg | nod, not quite what I meant. I've got a subprocess returning way fewer lines than it's suppose to, so just trying to figure out if the problem is in my code or the subprocess, sounds like the subprocess has some problem then if .lines reads until eof | 21:11 | |
21:11
cdg joined
|
|||
revhippie | In perl6 terms, "eager" is the opposite of "lazy"? | 21:12 | |
21:12
bowtie left
|
|||
masak | Zero_Dogg: I would expect .lines to read until eof, even if the lines haven't been produced yet. i.e. I'd expect .lines to block in that case. | 21:12 | |
Zero_Dogg | masak: right, that's what I was wondering. Thanks | ||
21:12
lokien left
|
|||
masak | Zero_Dogg: if you have a genuine case of it not doing that, then it sounds like we might want to report a bug :) | 21:12 | |
MadcapJake | What am I doing wrong here: hastebin.com/uqujayovum.txt | 21:13 | |
I get "useless use of constant string" for my description of the test | |||
Zero_Dogg | masak: it could very well be the subprocess acting up, so I'll need to verify that before jumping to that :) | ||
21:13
ziwix left
|
|||
MadcapJake | I get `Cannot call is(Str)` | 21:13 | |
masak | revhippie: "eager" and "lazy" are two modalities among at least four. there's also "hyper", and "race" (both of which are "more eager" than eager) | ||
MadcapJake: accidental semicolon at last line | 21:14 | ||
MadcapJake: after the `$buffer.text` | |||
MadcapJake | ooph! haha | ||
21:14
bowtie joined
|
|||
MadcapJake | masak: thanks! | 21:15 | |
21:16
linuxuser9000 joined
|
|||
timotimo | o/ | 21:17 | |
rindolf | OK, after I did git clean -dxf on my rakudobrew install and rebuilt/reinstalled rakudo and panda, I am getting this again - www.shlomifish.org/Files/files/text...da-err.txt | ||
zhmylove | Is this a normal perl6 code to download args to 01.htm .. XX.htm ? : my $c = 1; for @ARGS {`curl -o $c++.fmt('%02d').htm $_.subst("'","\\'",:g)`} | ||
rindolf | zhmylove: Perl 6 should have an HTTP module. | ||
timotimo | rindolf: could it be you also have to nuke ~/.perl6/ ? | ||
and also: how come these Download/unpack/... paths are in there? | 21:18 | ||
rindolf | zhmylove: and are you interested in capturing the output of the curl command? | ||
timotimo: that's where I placed rakudobrew. | |||
zhmylove | rindolf: hmm, actually not. I'm going to read about perl6 http | ||
timotimo | rindolf: it could be that rakudobrew insists on ~/.rakudobrew, but i have no clue | 21:19 | |
masak | zhmylove: that seems to have several errors in it. | ||
rindolf | timotimo: hmm... | ||
masak | zhmylove: have you actually tried running that? | ||
zhmylove: there's no `` in Perl 6, for example. | |||
rindolf | timotimo: www.shlomifish.org/Files/files/text...da-err.txt - this is what I get after I nuke ~/.perl6 | ||
timotimo: fine, let me try with ~/.rakudobrew | 21:20 | ||
timotimo | :< | ||
if it can't be found, how was panda able to get installed? | |||
is "which perl6" the right one? | |||
or "which panda" to be exact | |||
zhmylove | masak: nope, I hadn't tried this version. There was say "curl..." | 21:21 | |
timotimo | (we're getting more and more fed up with rakudobrew causing difficulties, we may end up not recommending it any more in the future) | ||
21:22
kjs_ joined
21:23
zakharyas left
|
|||
mst | do we have a list of failure modes? | 21:23 | |
it definitely doesn't have to be ~/.rakudobrew | |||
rindolf: what exact command are you running? | |||
timotimo | OK | ||
mst | I mean, how did you 'rebuild everything' | 21:24 | |
you've not actually told us what you did yet, which makes debugging difficult | |||
rindolf | mst: I placed bin in my PATH, and did "rakudobrew build moar" and "rakudobrew build panda" and then "panda install Pod::To::HTML". | 21:25 | |
timotimo | dinner time! | ||
mst | rindolf: please show me exactly what commands you ran. | 21:26 | |
describing what you did is still not helpful | |||
21:27
linuxuser9000 left
|
|||
rindolf | mst: OK. | 21:27 | |
mst: I'll use "script". | |||
masak | zhmylove: you might want to try qqx[] instead of `` | ||
mst | pasting the shell session in full would also be fine. | ||
masak | zhmylove: but even then, you can't just do $c++ inside of it like you do, you'd need something like { $c++ } | 21:28 | |
21:28
kjs_ left,
rurban1 joined
21:29
rurban left
21:30
sena_kun joined
21:35
azawawi joined
|
|||
azawawi | DrForr: finally it is working :) | 21:35 | |
21:36
bdmatatu joined
|
|||
azawawi | DrForr: github.com/azawawi/scripts/blob/ma...cv_test.p6 # C++ API wrapper for reading/showing images in OpenCV :) | 21:36 | |
21:37
dfcarpenterak left
|
|||
mspo | doc.perl6.org/language/variables.ht...Declarator should that be blank? | 21:38 | |
bdmatatu | Hi folks: how can I print the Pod for a module from the command line (like perldoc module)? | 21:39 | |
tadzik | p6doc may be what you want | ||
bdmatatu | I haven't been able to make it work.. | ||
stmuk_ | p6doc only currently works with the core pod | 21:40 | |
bdmatatu | I thought maybe I could look at $module.WHY in a one-liner..? | 21:42 | |
stmuk_ | if anyone knows of any ecosystem modules which use pod that would help :) | ||
bdmatatu | DBIish for instance | ||
skids | Sum has exntensive POD, even if it is somewhat broken. X::Protocol has some POD as well, and is not broken (last time I checked) | 21:44 | |
MadcapJake | how come I can't seem to access a fellow module? The name is properly matching the path, but it still says "Could not find '&Edit'" | 21:46 | |
should i be using `use lib 'lib'` | 21:47 | ||
rindolf | mst: [and all]: OK, now after I did a rm -fr rakudobrew and a fresh git clone , then I can run panda install fine. | ||
mst | rindolf: which leaves us no wiser as to what went wrong originally, but at least it's working now | 21:48 | |
21:50
linuxuser9000 joined
|
|||
rindolf | mst: yes, well, previously I had an old install of rakudobrew, and I did "git clean -dxf" there (which didn't delete the inner repositories) and then tried to run the build commands, as can be seen in the succeeding transcript here - www.shlomifish.org/Files/files/text...ipt.txt.xz . | 21:50 | |
21:53
cpage_ left,
cpage_ joined
|
|||
zhmylove | masak: thank you very much! | 21:54 | |
21:55
skids left
|
|||
MadcapJake | anyone have any help for modules? I have two files «lib/Command/Buffer.pm6» and «lib/Command/Edit.pm6» and they are both classes. In my Buffer class, I call «Edit.new(...)» and I'm getting «Could not find symbol '&Edit'» | 21:56 | |
oops I call «Command::Edit.new(...)» | 21:57 | ||
21:59
lnrdo left,
sena_kun left
22:02
lnrdo joined
|
|||
RabidGravy | did you "use" the module? | 22:08 | |
MadcapJake | yeah | ||
22:08
bdmatatu left
|
|||
nine | How's Command::Edit declared? | 22:09 | |
RabidGravy | does the Command/Edit actually define Command::Edit? | ||
MadcapJake | it's declared as `class Edit { ... }` | ||
RabidGravy | yeah, you need to fully qualify it | ||
nine | So it's called Edit, not Command::Edit | ||
MadcapJake | doh! Thanks nine RabidGravy! | 22:10 | |
RabidGravy | except then it shoud be lib/Edit.pm | ||
MadcapJake | ok cool | ||
sortiz | \o #perl6 | ||
RabidGravy | I've taken to doing everything in one file until such time as it becomes unfeasibly large | ||
sortiz | .tell mspo I'm working in a p6-LMBD | 22:11 | |
yoleaux | sortiz: I'll pass your message to mspo. | ||
MadcapJake | RabidGravy: that's where I was and then I split the files and got really confused! :P | ||
RabidGravy | right | ||
22:12
ely-se joined
|
|||
leont tends to do a «unit package Foo;» at the top of compilation units with multiple classes | 22:12 | ||
RabidGravy | module works too | 22:13 | |
22:13
bzipitidoo joined
|
|||
RabidGravy | package however has the advantage of being able to be preent in multiple compilation units | 22:14 | |
22:15
perlawhirl joined,
perlawhirl left,
perlawhirl joined
|
|||
perlawhirl | hi perlers | 22:16 | |
o/ | |||
RabidGravy | erp | ||
perlawhirl | was watching an old talk by lizmat which had 'rand.sleep', however that no longer seems to work and it seems it should | 22:17 | |
m: rand.sleep | |||
camelia | rakudo-moar 3259ba: OUTPUT«Method 'sleep' not found for invocant of class 'Num' in block <unit> at /tmp/vaFDj5bSIY line 1» | ||
RabidGravy | no it doesn't not for a while | ||
ely-se | m: say set("a Str|b") === set("a", "b") | ||
camelia | rakudo-moar 3259ba: OUTPUT«True» | ||
perlawhirl | RabidGravy: but sleep rand works? so why not rand.sleep ? | 22:18 | |
RabidGravy | m: say rand.WHAT | ||
camelia | rakudo-moar 3259ba: OUTPUT«(Num)» | ||
flussence | numeric objects don't have methods for OS-level sleep for the same reason they don't have a .listen method that sets up a UDP socket on the given port number | ||
RabidGravy | yeah | 22:19 | |
AlexDaniel | similar question: why @a.zip(@b) is not there? | ||
ely-se | Z is an operator | ||
perlawhirl | ok, so i can't use .sleep as a method call at all? | 22:20 | |
ely-se | @a Z @b | ||
RabidGravy | of course you can always make it yourself | ||
AlexDaniel | ely-se: oh really? | ||
perlawhirl | nah, all good... the reasoning makes sense... just wanted to make sure it wasn't a mistake | ||
AlexDaniel | m: .say for zip <1 2 3>, <a b c>; | ||
camelia | rakudo-moar 3259ba: OUTPUT«(1 a)(2 b)(3 c)» | ||
ely-se | AlexDaniel: yes! There's also X for cartesian product | ||
RabidGravy | m: role Boo { method sleep() { sleep(self) }; my $a = 1 but Boo; $a.sleep; | 22:21 | |
camelia | rakudo-moar 3259ba: OUTPUT«5===SORRY!5=== Error while compiling /tmp/o1Gf6w9UecMissing blockat /tmp/o1Gf6w9Uec:1------> 3ep(self) }; my $a = 1 but Boo; $a.sleep;7⏏5<EOL>» | ||
ely-se | m: say(<1 2 3> Z~ <4 5 6>) | ||
camelia | rakudo-moar 3259ba: OUTPUT«(14 25 36)» | ||
RabidGravy | m: role Boo { method sleep() { sleep(self) }}; my $a = 1 but Boo; $a.sleep; | ||
camelia | ( no output ) | ||
RabidGravy | etc | ||
perlawhirl | thanks =) | ||
RabidGravy | if something feels natural to you, just make it | 22:22 | |
AlexDaniel | ely-se: well, the question is why we have ‘zip’ sub but no ‘.zip’ method | ||
ely-se | You can already use Z operator for infix notation | ||
AlexDaniel | ely-se: hm. Good point | 22:23 | |
perlawhirl | there is such a thing as 'there are too many ways to do it' :) | ||
revhippie | don't you blaspheme in here | ||
perlawhirl cowers | |||
AlexDaniel | cowers :D | ||
ely-se | cowards | 22:24 | |
sjn | cow-has | ||
(moo) | |||
RabidGravy | zip doesn't seem to fit easily as a method of one array on another, it's an operation on two arrays | 22:25 | |
PerlJam | perlawhirl: we do have a .zip method ... on Supply :) | ||
RabidGravy | I want a zippidahdoodah method | ||
sjn | r: my method zippidahdoodah ($zippedid-dey) { ... }; # my-oh-my what a wonderful day | 22:27 | |
camelia | ( no output ) | ||
ely-se | .oO(CowHOW) |
22:30 | |
22:31
cpage_ left,
espadrine joined
22:32
marmay_ left
22:33
firstdayonthejob left
22:35
rindolf left,
ssotka joined
22:38
perlawhirl left
22:44
espadrine left
22:45
espadrine joined
|
|||
AlexDaniel | “Ruby To Perl6 – Nutshell” hmmm… what about having “Perl 6 To Python – Nutshell” just for fun? :) | 22:45 | |
22:46
kaare_ left,
firstdayonthejob joined,
kaare_ joined
22:47
muraiki left,
yurivish joined
22:48
kaare_ left,
kaare_ joined
|
|||
dalek | p: 1d08541 | (Pawel Murias)++ | TODO: Remove the nqp-js TODO, will be readded in a proper place once it's updated. |
22:52 | |
22:53
pmurias joined
|
|||
pmurias | [Coke]: do we have people who are intersted in adding new nqp backends but don't know where to start? | 22:55 | |
22:57
cpage_ joined
|
|||
azawawi | # Image de-noising is now working in Perl6 opencv prototype :) github.com/azawawi/scripts/blob/ma...cv_test.p6 | 23:00 | |
num32 -> C float # Error: Cannot unbox to a native integer | 23:03 | ||
23:07
pi1 left
23:12
pi1 joined,
lnrdo left
|
|||
dalek | c: 22840f1 | (Jim Davis)++ | doc/Type/S (2 files): typos/spelling errors |
23:13 | |
23:14
azawawi left
23:15
skids joined
|
|||
Skarsnik | what does opencv? | 23:16 | |
+do | |||
23:16
espadrine_ joined
|
|||
Skarsnik | well hwhatever he is gone x) | 23:16 | |
23:16
espadrine left
|
|||
timotimo | computer vision stuff | 23:20 | |
MadcapJake | how do you destructure a hash (but not in a signature)? | ||
timotimo | what do you mean? signatures is exactly what you use to destructure stuff, no? | 23:21 | |
MadcapJake | but i want to destructure a hash into some variables | ||
23:21
azawawi joined
|
|||
MadcapJake | i.e., «my (% (:$replacement, :$from, :$to)) = $other;» | 23:21 | |
azawawi | Skarsnik: im back :) i switched my linux dev vm off | ||
timotimo | use := there | 23:22 | |
azawawi | Skarsnik: if you want to take a video feed from your web camera, and do some face/object detection, then opencv is the thing is to use | ||
Skarsnik | Oh ok | 23:23 | |
MadcapJake | timotimo: with that i get a positional arg error | ||
Skarsnik | Did you try gptrixie on this? | ||
azawawi | Skarsnik: basically it has tons of ready made image processing algorithms | ||
Skarsnik | but you will need to add ref type first on it x) | ||
23:24
livyathan left
23:25
M-matthew is now known as Matth3w
|
|||
timotimo | ah | 23:26 | |
also use a % on the RHS | |||
or perhaps \%$ | |||
azawawi | Skarsnik: interesting stuff like this docs.opencv.org/2.4.11/ | ||
23:27
captain-adequate left
|
|||
Skarsnik | I have a look tomorrow x= | 23:29 | |
dalek | c: 28d006b | (Jim Davis)++ | doc/Language/objects.pod: Change sample value to possibly minimize confusion It's not 100% clear with the `1, 2` example that `$!y` isn't being calculated from the `$!x`. |
23:31 | |
23:31
yurivish left
|
|||
MadcapJake | m: class Game { has $.team1-score = 0; has $.team2-score = 0 }; my $game = Game.new; my (% ($team1-score)) := $game; say $team1-score; | 23:32 | |
camelia | rakudo-moar 3259ba: OUTPUT«Too few positionals passed; expected 1 argument but got 0 in block <unit> at /tmp/QhEDc0LDqY line 1» | ||
MadcapJake | timotimo: can you show me what you mean, there's the pattern I'm looking for | ||
azawawi | timotimo: that's one of things Perl 5 does have... The Cv on metacpan is basically old C API and unmaintained since 2013. So if we can make this happen, maybe we can convince Chris Marshall (PDL - Perl Data language) to make a Perl 6 version | 23:33 | |
23:33
cdg left
|
|||
RabidGravy | Is PDL the one that also defines hundreds of different musical scales? | 23:35 | |
timotimo | you forgot the : in there, MadcapJake | ||
(% (:$team1-score)) | |||
m: class Game { has $.team1-score = 0; has $.team2-score = 0 }; my $game = Game.new; my (% (:$team1-score)) := $game; say $team1-score; | 23:37 | ||
MadcapJake | m: class Game { has $.team1-score = 0; has $.team2-score = 0 }; my $game = Game.new; my (% (:$team1-score)) := $game; say $team1-score; | ||
camelia | rakudo-moar 3259ba: OUTPUT«Too few positionals passed; expected 1 argument but got 0 in block <unit> at /tmp/wtdIPwpymA line 1» | ||
rakudo-moar 3259ba: OUTPUT«Too few positionals passed; expected 1 argument but got 0 in block <unit> at /tmp/OC_An2wbxm line 1» | |||
timotimo | lol. | ||
m: class Game { has $.team1-score = 0; has $.team2-score = 0 }; my $game = Game.new; my (% (:$team1-score)) := \$game; say $team1-score; | |||
camelia | rakudo-moar 3259ba: OUTPUT«Potential difficulties: To pass an array, hash or sub to a function in Perl 6, just pass it as is. For other uses of Perl 5's ref operator consider binding with ::= instead. Parenthesize as \(...) if you intended a capture of a single var…» | ||
timotimo | m: class Game { has $.team1-score = 0; has $.team2-score = 0 }; my $game = Game.new; my (% (:$team1-score)) := $game.Capture; say $team1-score; | ||
camelia | rakudo-moar 3259ba: OUTPUT«Too few positionals passed; expected 1 argument but got 0 in block <unit> at /tmp/5aiJtglWJq line 1» | ||
timotimo | m: class Game { has $.team1-score = 0; has $.team2-score = 0 }; my $game = Game.new; my (:$team1-score) := $game.Capture; say $team1-score; | ||
camelia | rakudo-moar 3259ba: OUTPUT«Unexpected named argument 'team2-score' passed in block <unit> at /tmp/fv9qCGDHsp line 1» | ||
timotimo | m: class Game { has $.team1-score = 0; has $.team2-score = 0 }; my $game = Game.new; my (*% (:$team1-score)) := $game.Capture; say $team1-score; | 23:38 | |
camelia | rakudo-moar 3259ba: OUTPUT«Unexpected named argument 'team2-score' passed in sub-signature in block <unit> at /tmp/j4Dtd7Ho9E line 1» | ||
RabidGravy | I've got a thing down the back of the sofa that defines the classical modes but not having anything to use it for makes it pointless to release atm | ||
timotimo | seems to force you to put all of them in there | ||
stmuk_ | /me wonders why Distribution has 'ver' and 'version' | ||
-" " | |||
23:38
z8 joined
|
|||
RabidGravy | stmuk_, "too much crack" | 23:39 | |
timotimo | verdammt! | ||
23:40
rurban joined
|
|||
RabidGravy | maybe a *% to sip up the unwanted args | 23:40 | |
23:41
rurban1 left
|
|||
MadcapJake | RabidGravy: how would you do that? | 23:41 | |
RabidGravy | m: class Game { has $.team1-score = 0; has $.team2-score = 0 }; my $game = Game.new; my (:$team1-score, *%) := $game.Capture; say $team1-score; | 23:42 | |
23:42
Zero_Dogg left
|
|||
camelia | rakudo-moar 3259ba: OUTPUT«0» | 23:42 | |
RabidGravy | like that | 23:43 | |
23:43
Zero_Dogg joined
|
|||
MadcapJake | cool, so what's this Capture method? | 23:43 | |
neat, so it's like an argument list | 23:44 | ||
RabidGravy | m: class Game { has $.team1-score = 0; has $.team2-score = 0 }; say Game.new.Capture | ||
camelia | rakudo-moar 3259ba: OUTPUT«\(:team1-score(0), :team2-score(0))» | ||
RabidGravy | no, it exactly is an argument list | ||
MadcapJake | wow, that's really cool | ||
RabidGravy | I'm not sure it's that cool but it's possible | 23:45 | |
masak | 'night, #perl6 | ||
azawawi | night | 23:46 | |
MadcapJake | RabidGravy: well it means you can destructure outside of signatures :P | ||
how can i write to these variables? | 23:47 | ||
23:47
azawawi left
|
|||
MadcapJake | m: class Game { has $.team1-score = 0; has $.team2-score = 0 }; my $game = Game.new; my (:$team1-score, *%) := $game.Capture; say $team1-score; $team1-score += 1; say $team1-score; | 23:48 | |
camelia | rakudo-moar 3259ba: OUTPUT«0Cannot assign to a readonly variable or a value in block <unit> at /tmp/nlEPmuKFXd line 1» | ||
timotimo | ah. may need "is copy" there? | 23:49 | |
RabidGravy | or an is rw on the attribute | ||
MadcapJake | where though, it won't let me put it inside the parentheses or lhs before the bind, is it after the Capture call? | 23:50 | |
RabidGravy | which gets you into "weird action at a distance" territory | ||
m: class Game { has $.team1-score is rw = 0; has $.team2-score = 0 }; my $game = Game.new; my (:$team1-score, *%) := $game.Capture; say $team1-score; $team1-score += 1; say $team1-score; | 23:51 | ||
camelia | rakudo-moar 3259ba: OUTPUT«0Cannot assign to a readonly variable or a value in block <unit> at /tmp/vd0QZQjpM6 line 1» | ||
RabidGravy | ah, okay false understanding | ||
thank goodness | |||
MadcapJake | o_0 | 23:52 | |
RabidGravy | m: class Game { has $.team1-score is rw = 0; has $.team2-score = 0 }; my $game = Game.new; my (:$team1-score is rw, *%) := $game.Capture; say $team1-score; $team1-score += 1; say $team1-score; | ||
camelia | rakudo-moar 3259ba: OUTPUT«5===SORRY!5=== Error while compiling /tmp/wbDFsPFnccCannot use 'is rw' on an optional parameterat /tmp/wbDFsPFncc:1» | ||
RabidGravy | m: class Game { has $.team1-score is rw = 0; has $.team2-score = 0 }; my $game = Game.new; my (:$team1-score is copy, *%) := $game.Capture; say $team1-score; $team1-score += 1; say $team1-score; | ||
camelia | rakudo-moar 3259ba: OUTPUT«0Cannot assign to a readonly variable or a value in block <unit> at /tmp/4K0vX4sFO5 line 1» | ||
RabidGravy | nope | ||
faith restored | 23:53 | ||
MadcapJake | so this is not possible then? | ||
AlexDaniel | m: say ‘✋’; say <✊ ✋ ✌>.pick | 23:54 | |
camelia | rakudo-moar 3259ba: OUTPUT«✋✌» | ||
AlexDaniel | awww | ||
m: say ‘✌’; say <✊ ✋ ✌>.pick # ok let's try again | |||
camelia | rakudo-moar 3259ba: OUTPUT«✌✌» | ||
AlexDaniel | m: say ‘✊’; say <✊ ✋ ✌>.pick | ||
camelia | rakudo-moar 3259ba: OUTPUT«✊✋» | ||
AlexDaniel | camelia: :< | ||
23:56
firstdayonthejob left
|