»ö« 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:00
canopus joined
00:02
mempko joined
00:04
mcmillhj joined
00:09
n1lp7r left
00:16
BenGoldberg joined
00:17
mr-foobar joined
00:24
pierre_ joined
00:28
mcsnolte left
00:35
darutoko joined
|
|||
bioduds | do you guys know about koans? | 00:38 | |
any for perl6? | |||
00:40
MilkmanDan joined
00:46
Actualeyes left
|
|||
profan | does anyone have some examples of how to use perl6's macro system anywhere? | 00:49 | |
i've seen a few mentions of quasi and macro but really no more examples beyond the most basic, would be appreciated :) | |||
00:51
cognominal joined
|
|||
geekosaur | at the moment there isn't a lot to say, because it was tagged experimental due to problems with it | 00:53 | |
anything more interesting than the basic examples tend to throw weird errors | 00:54 | ||
00:58
skids joined
|
|||
arw | [Coke], timotimo: unstuck yes, i've got it doing what i wanted. pbot.rmdir.de/sKwAyzCdctRMrsIzvBTIfQ | 00:58 | |
[Coke], timotimo: thanks alot for all your patience and help, wouldn't have managed without. | |||
profan | geekosaur: ah, shame :P, at least i know then | 00:59 | |
arw | .o( and yes, that code needs cleaning up, but now is bedtime ) | ||
01:00
MilkmanDan left
01:03
mcmillhj left
01:06
Zoffix joined
|
|||
Zoffix | bioduds, yeah, I know about them, but am not aware of any Perl 6 ones. You should definitely make some! | 01:07 | |
MasterDuke | profan: i think 007 ( github.com/masak/007 ) is considered the farthest anyone has gone with macros | ||
01:13
cdg left
|
|||
Zoffix | bioduds, Dave Doyle was also suggesting we make some. So you should :) twitter.com/meraxes | 01:14 | |
01:14
cognominal left
|
|||
bioduds | definitely | 01:16 | |
I bet if we join we can put up one. I'm still learning P6 | 01:17 | ||
Zoffix | \o/ | 01:18 | |
bioduds, that's the best time to write them. You can still see them for how good they are from the perspective of someone new to P6 | |||
And if you need space to host them, I'm sure we can find one. | 01:19 | ||
01:20
mcmillhj joined
|
|||
bioduds | well | 01:25 | |
I will then | |||
01:44
MilkmanDan joined
01:50
mcmillhj left
01:54
Actualeyes joined
01:57
pierre_ left,
ShimmerFairy joined
02:03
pierre_ joined
02:04
lucasb_ left
02:08
pierre_ left,
pierre_ joined
02:24
mspo joined
02:25
cyphase left
02:26
kyclark_ joined
02:29
mempko left
02:30
cyphase joined
02:32
wamba joined
02:35
nowan left
02:39
nowan joined
02:46
mcmillhj joined
02:47
noganex joined
02:49
noganex_ left
02:50
rodarmor joined
|
|||
dalek | ateverable: 3510065 | MasterDuke17++ | / (2 files): Convert benchable to use the Perl 6 SVG::Plot |
02:51 | |
02:52
mcmillhj left,
kyclark_ left
02:55
NEveD joined
02:57
revdiablo joined,
edenc joined
03:00
labster left,
prussian joined,
adrusi joined
03:01
cibs left
03:02
prussian left,
prussian joined
03:04
DrForr joined
03:05
harmil left
03:06
cibs joined,
geraud joined
03:13
bob777 joined
03:14
adu joined
03:26
labster joined
03:31
skids left
03:32
adu left
03:33
kyclark_ joined
03:39
adu joined,
wamba left
03:53
mcmillhj joined
03:55
obfusk_ joined
03:56
Actualeyes left
04:08
Cabanossi left
04:10
cognominal joined
04:12
Cabanossi joined
|
|||
awwaiid | bioduds: koans, ala ruby-koans, would be fantastic. Is on my TODO list, but that is a lazy-infinite generator so unlikely to happen | 04:19 | |
Xliff | I have a module A::B with submodules A::B::C..E | ||
I would like to be able to load symbols from A::B::C, et all from A::B via 'use A::B :c' | 04:20 | ||
Can I do that without dealing with the export mechanism? | |||
04:24
mcmillhj left
04:34
cognominal left
|
|||
Xliff | I'm getting "Malformed UTF-8" when attempting to open a file. What do I need to do to fix that? | 04:37 | |
04:44
kyclark_ left
04:47
BenGoldberg left
05:00
pierre_ left,
pierre_ joined
05:04
lizmat left
|
|||
awwaiid | j: say CORE::.keys | 05:05 | |
camelia | rakudo-jvm cd19db: OUTPUT«ContextRef representation does not implement elems in block <unit> at <tmp> line 1» | ||
Xliff | Ooh! Rakudo-JVM! | 05:08 | |
awwaiid, do you know if the user can extract the extra values form a use statement ala 'use Module "i want this string"' | 05:09 | ||
05:10
pierre_ left
05:19
pierre_ joined
05:22
prussian left
|
|||
awwaiid | Xliff: I think you can write an EXPORT sub that will be passed those values. docs.perl6.org/language/modules#Ex..._Importing has some examples. | 05:22 | |
05:23
prussian joined,
pierre_ left
05:25
lizmat joined
05:26
lizmat left
05:27
lizmat joined
|
|||
Xliff | awwaiid++ # Thanks! | 05:33 | |
05:37
Actualeyes joined
05:38
pierre_ joined,
leont joined
|
|||
lizmat | j: dd CORE::.iterator | 05:39 | |
camelia | rakudo-jvm cd19db: OUTPUT«ContextRef representation does not implement elems in block <unit> at <tmp> line 1» | ||
lizmat | :-( | ||
05:43
pierre_ left
05:44
prussian left,
prussian joined
05:45
leont left
|
|||
awwaiid | lizmat: since you merged that PR, should I close the RT, or do we wait to close RT for a release? | 05:49 | |
lizmat | what was the RT again ? | 05:50 | |
awwaiid | rt.perl.org/Ticket/Display.html?id...a32f2d32a2 | ||
#129020: [JVM] REPL does not work anymore: 'ContextRef representation does not implement elems' | |||
synopsebot6 | Link: rt.perl.org/rt3//Public/Bug/Displa...?id=129020 | ||
lizmat | no, please keep open | ||
awwaiid | ooo fancy | ||
ok -- then close upon release? | 05:51 | ||
lizmat | awwaiid: well, it should be closed when completions work again on JVM maybe | ||
awwaiid | ah. ya, there is that | ||
lizmat | or maybe a new ticket should be made about ContextRef not having .elems suppoart | ||
I understand it was a small change in MoarVM | 05:52 | ||
I assume it's going to be a similar small change on the JVM | |||
awwaiid | I opened RT#129092 re ContextRef jvm | ||
synopsebot6 | Link: rt.perl.org/rt3//Public/Bug/Displa...?id=129092 | ||
lizmat | (but I could be o so wrong :-) | ||
awwaiid | lizmat: for ^C in the REPL, I read up on your implementation and have a better (though not totally complete) understanding of why the .tap on the signal(SIGINT) happens in another thread, and thus why we likely need to embrace concurrency | 05:54 | |
lizmat: I tried to build some toy examples of merging STDIN and a signal into a single supply as another approach, but haven't gotten it to work so far | 05:55 | ||
lizmat | well, we need to anyway somehow :-) | ||
05:56
pierre_ joined
|
|||
lizmat | fwiw, I'm working on it as well now | 05:56 | |
I put some part of the original patch just in (centralizing the reset logic) | |||
awwaiid | gist.github.com/awwaiid/7f1c6819ec...3de14e2ab3 is my toy | ||
05:57
adu left
|
|||
awwaiid | ah nice. I touched some code that might conflict in github.com/rakudo/rakudo/pull/847, but now see that my PR is already merged | 05:57 | |
ah, I see your commit | 05:59 | ||
lizmat: did you type the output of 'sub reset(--> Nil) {...}' as an optimization? | 06:00 | ||
06:00
pierre_ left
|
|||
lizmat | yeah, and as an indicator it's not supposed to return anything | 06:00 | |
awwaiid | So the big thing I want is for people to be able to call 'REPL.here' at any random spot in their code and have it drop down into the REPL hooked into that lexical scope. Probably integrated in with some debugger stuff. I've been getting closer. I'm fascinated by the subtle differences between EVAL and compiler.eval implementations. | 06:04 | |
06:04
nadim joined
|
|||
awwaiid | I use binding.pry in ruby-land all the time, and find it essential. I have LREP::here that works for p6, but would be better in the core | 06:05 | |
lizmat | Strange consistency starts :-) | 06:06 | |
nine | masak: TimToady++'s giving a keynote about your blog :) | ||
lizmat | act.yapc.eu/ye2016/talk/6881 | ||
06:07
nwc10 joined
|
|||
nwc10 | LIVE TimToady youtu.be/A3ZSt5QKEAg | 06:07 | |
awwaiid | ooo | 06:08 | |
nwc10 | with a fluffy camelia in front | 06:09 | |
(product placement) | |||
awwaiid | thelackthereof.org/Perl6_Colons has a list of lots of colons :) | 06:10 | |
06:10
prussian left
|
|||
awwaiid | Is that a 4x4 grid of televisions? | 06:11 | |
06:12
prussian joined
06:14
prussian left,
pierre_ joined,
prussian joined
|
|||
lizmat | awwaiid: yes | 06:22 | |
awwaiid | fancy | 06:25 | |
I want a pile of camelia stickers | |||
06:31
leont joined
06:33
autarch joined
06:38
domidumont joined
06:42
domidumont left
06:43
domidumont joined
06:46
rkazak joined
06:50
rkazak left
07:08
webstrand left
07:09
labster left
07:11
webstrand joined
07:12
leont left
07:17
firstdayonthejob joined
07:22
mcmillhj joined
07:25
bjz joined
07:27
mcmillhj left
07:30
cognominal joined
07:31
bjz left,
rindolf joined
07:34
RabidGravy joined
07:39
harmil_wk left
07:40
killbill joined
|
|||
masak | 'o morning, #perl6 | 07:41 | |
Xliff | RabidGravy: github.com/Xliff/p6-color-names | ||
masak | nine: ...about my blog? /o\ | ||
Xliff | Now to figure out the best way to abstract everything in Color::Names::* behind Color::Names. Any ideas? | 07:42 | |
07:42
ab6tract joined
|
|||
ab6tract | github.com/ab5tract/Terminal-Print | 07:42 | |
nine ^^ | |||
masak | "it turns out the person we thought was the stakeholder wasn't the stakeholder" (from livestream) -- been there, done that ;) | 07:43 | |
Xliff | masak: Blog? | 07:44 | |
07:44
Actualeyes left
|
|||
masak | Xliff: irclog.perlgeek.de/perl6/2016-08-26#i_13093189 | 07:44 | |
killbill | Why I don't see last line? $ perl6 -ne 'LAST .say' file.txt | 07:45 | |
yoleaux | 7 Aug 2016 23:39Z <TimToady> killbill: Try something like this: say '𝐀𝐁𝐂'.NFKD.Str === 'ABC' | ||
nine | masak: Title was Strange Consistency and he started off by showing your blog | ||
masak | oh, ok :) | ||
...I should really redecorate my blog... :P | |||
07:46
bjz joined
|
|||
masak | killbill: because bug, I'd say | 07:47 | |
killbill: mind if I rakudobug it? | |||
nine: by the way, nowadays when I know about CT's "natural transformations", I think that's what I was after when I talked about "strangely consistent" things | 07:48 | ||
at least most of the time | |||
07:50
g4 joined,
g4 left,
g4 joined
07:53
leont joined,
cognominal left
07:57
lizmat left
07:59
killbill left,
rindolf left
|
|||
masak submits killbill's LAST bug | 07:59 | ||
07:59
leont left
08:01
lizmat joined
08:03
leont joined
08:07
DrForr_ joined
08:09
Actualeyes joined
08:11
imcsk8_ joined
08:12
matt_ joined,
matt_ is now known as Guest49357
08:13
imcsk8 left
08:14
nadim left
08:20
zakharyas joined
|
|||
ab6tract | jnthn: looking into the bug i mentioned yesterday with nine++ | 08:23 | |
seems to be related to async hash construction, but like a good heisenbug it hides when golfed | |||
08:24
mvorg joined
|
|||
nine | jnthn: crashes with consistent backtrace in a free() in extract_key so most probably actually MVM_string_flatten. We're creating hashes with static keys so maybe the key strings are flattened by multiple threads at the same time. | 08:24 | |
ab6tract | notably, it *appears* to stop crashing when wrapping with a Lock protect call | 08:28 | |
08:33
DrForr_ left
08:40
rindolf joined
|
|||
jnthn | nine: Yeah, I'm aware of that one...it won't go away until the hash re-work I've got planned is done, which I guess will happen after I'm done with the array one to fix a similar set of crashes upon mis-use | 08:40 | |
nine | jnthn: ok. I'm curious what a fix would look like? | ||
08:40
nadim joined
|
|||
jnthn | nine: Implement hashing that doesn't need the flattening first :) | 08:41 | |
nine | Sounds good :) | ||
08:42
leont left
|
|||
jnthn | It was a hack enforced by using ut_hash, which seemed like a better idea than a home-grown impl, but by this point we've customized the thing so much anyway... :) | 08:42 | |
ab6tract | lucky for my case (not having perl6 explode while showing my fancy pants matrix-y screensaver thingy), the Lock "fixes" it | 08:43 | |
jnthn | Phew. :) | 08:44 | |
nine | Probably another workaround would have been to just create a similar hash (using the same constant keys) before starting all the threads, wouldn't it? | 08:47 | |
jnthn | Aye | 08:49 | |
08:56
zakharyas1 joined,
zakharyas left
|
|||
ab6tract | seems to work :D | 08:59 | |
09:03
chienjo joined
09:07
chienjo left
09:09
bjz_ joined
09:11
bjz left
|
|||
ab6tract | .u u+2620 | 09:13 | |
yoleaux | U+2620 SKULL AND CROSSBONES [So] (☠) | ||
ab6tract | .u u+2621 | ||
yoleaux | U+2621 CAUTION SIGN [So] (☡) | ||
ab6tract | .u u+2622 | ||
yoleaux | U+2622 RADIOACTIVE SIGN [So] (☢) | ||
ab6tract | .u u+2623 | ||
09:13
nwc10 left
|
|||
yoleaux | U+2623 BIOHAZARD SIGN [So] (☣) | 09:13 | |
09:14
labster joined
|
|||
ab6tract | is there a quick way to get that .u functionality from the repl? | 09:14 | |
i guess we don't ship the unicode corpus with rakudo | |||
09:18
brrt joined
|
|||
jnthn | m: say uniname(0x2623) | 09:19 | |
camelia | rakudo-moar 508192: OUTPUT«BIOHAZARD SIGN» | ||
El_Che | mst talks is perltrelated | 09:21 | |
www.youtube.com/watch?v=A3ZSt5QKEAg | 09:22 | ||
perl6 related I meant | |||
Xliff | Is there a way to capture the options used after use statement? Ala "use Module :a :b 'c'"; Yes. The c is positional. | 09:24 | |
09:26
ab6tract left
09:27
nadim left
09:28
Actualeyes left
09:35
zakharyas1 left
09:39
leont joined
09:40
Zoffix left
|
|||
konobi | it's a normal method call on the Module, no? | 09:45 | |
09:45
lizmat left,
leont left
09:47
mcmillhj joined
09:52
brrt left,
mcmillhj left
09:59
mcmillhj joined
10:04
mcmillhj left
10:07
Guest49357 left
10:08
frithnanth joined
|
|||
frithnanth | m: for 1, 2, 3 -> $item { my $x; FIRST { $x = 42 }; say $item, $x } | 10:10 | |
camelia | rakudo-moar 508192: OUTPUT«1422(Any)3(Any)» | ||
10:11
mcmillhj joined
|
|||
frithnanth | Is this the expected behavior? | 10:11 | |
jnthn | Yes. | ||
Maybe you wanted `state $x`? | 10:12 | ||
frithnanth | @jnthn thanks | 10:13 | |
On the same topic | 10:15 | ||
m: for 1, 2, 3 -> $item { my $x = FIRST { 42 }; say $item, $x } | |||
camelia | rakudo-moar 508192: OUTPUT«1(Any)2(Any)3(Any)» | ||
frithnanth | I thought that FIRST could return a value | ||
10:16
mcmillhj left
|
|||
frithnanth | m: for 1, 2, 3 -> $item { state $x = FIRST { 42 }; say $item, $x } | 10:16 | |
camelia | rakudo-moar 508192: OUTPUT«1(Any)2(Any)3(Any)» | ||
jnthn | No, it's not one of the phasers that do that set. | ||
Probably in some future Perl 6 version we'll allow it :) | 10:17 | ||
*do that yet | |||
Note that since state variables are only initialized on the first iteration, then `state $x = 42;` would also work fine | 10:18 | ||
frithnanth | I see. Here: docs.perl6.org/language/phasers there's this note "Phasers marked with a * have a run-time value, and if evaluated earlier than their surrounding expression, they simply save their result for use in the expression later when the rest of the expression is evaluated" and FIST was one of those | ||
jnthn | Ah | ||
frithnanth | s/FIST/FIRST/ | ||
Probably the doc is ahead of the compiler :-) | |||
jnthn | Feel free to file a doc bug on that; the docs probably nabbed that list from the language design docs (which are speculative in nature) and didn't check the reality | 10:19 | |
Well, the docs are meant to tell users what they can do today. :) | |||
10:24
lizmat joined
10:27
nadim joined
10:37
leont joined
10:43
mcmillhj joined
10:48
mcmillhj left
|
|||
melezhik | good day! | 10:49 | |
anybody knows a doc on perl6 case operator? | |||
could not find a refs | 10:50 | ||
10:50
cognominal joined
|
|||
lizmat | given/when ? | 10:52 | |
melezhik | yes | 10:53 | |
Xliff | docs.perl6.org/language/control#given | 10:59 | |
10:59
zakharyas joined
11:00
pierre_ left
|
|||
melezhik | Xliff: thanks! | 11:01 | |
Xliff | yw =) | ||
Xliff finally grokked given/take just this week. | |||
Question: I have a set of modules A::B, and A::B::*. I want to abstract all of the modules A::B::* behind A::B in a selective manner. What is the best way to do this? | 11:02 | ||
I was hoping I could "use A::B :a :b;" to have A::B load A::B::A and A::B::B but I haven't found a good way to do that. sub EXPORT() doesn't seem to pick it up and I don't think UNIT::EXPORT has been implemented, yet. | 11:04 | ||
11:05
labster left,
labster joined
11:06
labster left
11:09
richi235 joined
11:13
cognominal left
11:15
mcmillhj joined
11:20
mcmillhj left,
rmmm left
11:27
leont left
11:30
mcmillhj joined
|
|||
mst | nine: hey, any chance of tweaking your install for -Perl5 to have 'make homeinstall' and 'make siteinstall' to be explicit, then make 'make install' default to site if it can, then first writable if not | 11:30 | |
11:34
mcmillhj left
|
|||
El_Che | why is SawyerX making perl 5 faster? It will make Perl6 look bad ;) | 11:35 | |
11:35
leont joined
|
|||
jnthn | To keep us on our toes :) | 11:37 | |
11:43
krunen joined
|
|||
tadzik | #damnitsawyer | 11:46 | |
arnsholt | OpenSSL is kind of odd | 11:51 | |
Error code are 32-bit ints, of which 12 bits are a reason code, 12 bits a function code and 8 bits a library identifier | 11:52 | ||
mst | that's probably the nicest thing I've ever heard anybody say about OpenSSL | ||
arnsholt | I'm trying to be diplomatic | ||
The docs are also an endless source of quotable material | |||
Like this one: "It can also occur of action is need to continue the operation for non-blocking BIOs." | 11:53 | ||
It can also occur of action is need! | |||
11:54
canopus left
11:55
frithnanth left
|
|||
jnthn | If it's BIO, it must be good for you... | 11:55 | |
Xliff | Is there a Perl6 equivalent to @INC? | 11:56 | |
11:56
matt_ joined
|
|||
mst | Xliff: $*REPO is a linked list of CompUnit::Repository objects | 11:56 | |
11:56
matt_ is now known as Guest815
|
|||
jnthn | m: say $*REPO.repo-chain # I think this traverses it for you | 11:57 | |
camelia | rakudo-moar 508192: OUTPUT«(inst#/home/camelia/.perl6 inst#/home/camelia/rakudo-m-inst-2/share/perl6/site inst#/home/camelia/rakudo-m-inst-2/share/perl6/vendor inst#/home/camelia/rakudo-m-inst-2/share/perl6 CompUnit::Repository::AbsolutePath.new(next-repo => CompUnit::Repository::NQ…» | ||
11:58
firstdayonthejob left
|
|||
mst | Xliff: I think the question is - | 11:58 | |
step back. explain what you're trying to achieve. | |||
11:58
leont left
12:00
mcmillhj joined
|
|||
Xliff | mst: I have. No body has answered. | 12:01 | |
I will repeat it again. | |||
<Xliff> Question: I have a set of modules A::B, and A::B::*. I want to abstract all of the modules A::B::* behind A::B in a selective manner. What is the best way to do this? | |||
<Xliff> I was hoping I could "use A::B :a :b;" to have A::B load A::B::A and A::B::B but I haven't found a good way to do that. sub EXPORT() doesn't seem to pick it up and I don't think UNIT::EXPORT has been implemented, yet. | |||
Thanks, jnthn++. If I don't use it now, it will be helpful later... for something. =) | |||
mst | "I want to abstract all of the modules behind A::B::*" doesn't actually parse | 12:03 | |
12:03
canopus joined
|
|||
mst | you're currently explaining what you're failing to implement | 12:03 | |
please take a further step back and explain the goal | |||
12:03
arw left
|
|||
Xliff | Er. That was the goal. | 12:04 | |
mst | why? | ||
what is the point? | |||
12:05
mcmillhj left
|
|||
Xliff | I have objects in A::B::A, A::B::B and A::B::C. | 12:05 | |
I don't want the user to have to touch those. | |||
nine | mst: how about DESTREPO=stie make install? | ||
mst | nine: would be fine by me | ||
Xliff | A::B will have the interface and the user can specify what decendents they want loaded. | ||
I mean in the end, I guess I could just leave it with A::B::A et all, but that would be messy. | 12:06 | ||
So I want one package to dynamically load other decendants in its namespace. | 12:07 | ||
With the user controlling which descendent packages to load. | |||
mst | that seems like a gun looking for a foot | ||
Xliff | Yes, it may seem so. That's why I am wearing my kevlar boots. | ||
12:08
leont joined
|
|||
literal | so you want something like "use POE qw(Component::Foo);" does for POE in Perl 5 | 12:08 | |
Xliff | If I can't get it to work, fine. I will try and find another method. | ||
mst | I've implemented this several times in perl5 | ||
Xliff | literal: Something like that, yes. | ||
12:08
ejf joined
|
|||
mst | and concluded it always ends up as a footgun | 12:08 | |
Xliff | mst: Warning noted and appreciated. I would still like to know if it is possible in Perl6. | 12:09 | |
mst | maybe find another module with custom EXPORT() logic and try and crib? | 12:10 | |
Xliff | mst: Well, that would be brute! | ||
I'll put that as Plan Z, for now. ;) | |||
mst | well, if you want to find out if it's possible, finding prior art would be a good way to tell | ||
Xliff | True enough. | ||
But iterating through modules.perl6.org hoping to find that needle....well... | 12:11 | ||
dalek | line-Perl5: 865e918 | niner++ | configure.pl6: Support DESTREPO for manually picking the make install target |
||
nine | mst: pushed | ||
12:11
n1lp7r joined
|
|||
Xliff | I'm willing to do it, but I've got higher priorities. | 12:11 | |
ejf | Heya everybody :-) I'm learning Perl6 and trying things out, and got stuck on something I can't really reason to myself about or find what is wrong. It concerns wrapping a sub with mod_trait:<is> throwing an error if I import said sub from a different module, but working just fine if I use the same code in the exact same module. Made a gist out of it: gist.github.com/eikef/7de3095f0034...5710df1faf | 12:12 | |
76 -- maybe somebody could point me in the right direction? | |||
(the error is Cannot invoke this object (REPR: Null; VMNull)) | |||
nine | ejf: link's broken | 12:13 | |
mst | Xliff: rt.perl.org/Public/Bug/Display.html?id=127305 suggests perhaps your problem is using 'unit module' ? | ||
Xliff | Proper link for ejf - gist.github.com/eikef/7de3095f0034...10df1faf76 | 12:14 | |
ejf | gist.github.com/eikef/7de3095f0034...10df1faf76 | ||
sorry, that got split into second line, I apologize | |||
AlexDaniel | melezhik: I'd love to see support for zstd :) (github.com/Cyan4973/zstd) | ||
dalek | osystem: c8bb5bf | (Alexey Melezhik)++ | META.list: Extract various archives using tar/unzip programs |
12:16 | |
osystem: 710dd14 | azawawi++ | META.list: Merge pull request #243 from melezhik/master Extract various archives using tar/unzip programs |
|||
Xliff | mst: I remember reading that, earlier but couldn't get it to work. | ||
nine | mst: $*REPO.need(CompUnit::DependencySpecification.new(:short-name<Inline::Perl5>)).distribution.meta.say | ||
mst: the provides and files keys contain what you need | 12:17 | ||
tbrowder | hi, #perl6! | ||
Xliff | I will try to work around "unit package" though. Thanks for the suggestion. | ||
mst | nine: ta | ||
tbrowder | I have a problem with a regex capture (using the latest rakudo from the nom branch). | ||
See my github gist "gist.github.com/tbrowder/d39967e5f...042812f2". I may be doing something stupid, but I get this error when it's executed: | 12:18 | ||
www.irccloud.com/pastebin/LIMG4q6Q/ | 12:19 | ||
AlexDaniel | melezhik: ah, it's something specific for Sparrowdo… nevermind then… :) | ||
nine | ejf: your issue may be a bug in rakudo (those REPR messages usually indicate that) or a DIHWIDT as trying to reason what exactly should be exported is kinda hard. | ||
ejf: sorry that I can't be more helpful there :/ | |||
melezhik | AlexDaniel: if Zstd has console clients I will | 12:20 | |
tbrowder | Note that if I remove the Int type I get another error about not being able to get 'succ' on a match type at the "++$serial" statement. | 12:21 | |
melezhik | looking at github.com/Cyan4973/zstd it's called zstd ? | ||
anyway you probably mean something out of sparrowdo scope ))) | 12:22 | ||
ejf | nine: when I also export the mod_trait:<is> the same thing happens, as it does when I have both of those things inside a class that is exported. Ultimately I'm trying to write an error handler that wraps NativeCalls to an external library. Maybe I am going about it the wrong way :) | ||
nine: should I put this snippet on RT as a bug? | |||
AlexDaniel | I'm just thinking that something is missing in this list ;) cyan4973.github.io/zstd/#other-languages | 12:23 | |
12:23
wamba joined
|
|||
AlexDaniel | I see Delphi, I see OCaml… something is not there, not sure what ;) | 12:23 | |
ejf | and thanks for looking at it. At least there then doesn't seem something very, very obviously wrong :) | 12:24 | |
nine | ejf: well you probably mean to export the wrapped sub but that would mean that rakudo has to process the traits in the right way and I'm not sure that's guaranteed. Could be that that's just a combination of features that's not really feasible to support. | 12:25 | |
ejf: could also be just a plain straight forward bug in rakudo :) I'm not familiar enough with that part to make a good guess and am too tired to start debugging right now | 12:26 | ||
12:29
zakharyas left
|
|||
ejf | nine: alright, thanks :-) I'll send in a bug report to be sure. If it's unsupportable that's an answer too which could yield a documentation PR :) | 12:32 | |
RabidGravy | I really ought to write some software | 12:34 | |
12:39
mcmillhj joined
12:44
leont left
12:47
Skarsnik joined
12:51
iH2O joined
12:54
iH2O left
|
|||
rindolf | RabidGravy: to do what | 13:01 | |
? | |||
13:02
cdg joined
13:03
rmmm joined
|
|||
RabidGravy | well actually finishing some of these ten modules that I've started in the last few months would be a start :) | 13:04 | |
13:08
domidumont left
13:10
domidumont joined
13:14
kyclark_ joined
13:15
smls joined
13:20
kyclark_ left
13:28
Guest815 is now known as matt_
13:32
kyclark_ joined
13:37
pierre_ joined
13:40
skids joined
13:42
leont joined,
DrForr_ joined
|
|||
tbrowder | Bye #perl6, I'll check for a response after I get home later today. | 13:42 | |
13:43
tbrowder left
13:49
MilkmanDan left
13:51
MilkmanDan joined
|
|||
smls | .tell tbrowder Change «$serial = $0;» to «$serial = +$0;». | 13:53 | |
yoleaux | smls: I'll pass your message to tbrowder. | ||
13:53
mcmillhj_ joined
13:55
mcmillhj left
13:57
MilkmanDan left
14:01
kyclark_ left
14:05
DrForr_ left
14:06
MilkmanDan joined
14:09
espadrine joined
14:10
cognominal joined
14:15
zakharyas joined
14:21
kyclark_ joined,
jameslenz joined
14:26
gfldex joined
14:27
sufrostico joined
14:29
MilkmanDan left
|
|||
gfldex | m: enum Noms('Greenstuff', 'Walkingstuff', 'Syntetics'); my %eaten{Noms}; %eaten{Greenstuff}++; dd %eaten, %eaten.keyof; | 14:30 | |
camelia | rakudo-moar 1a03ef: OUTPUT«Hash[Any,Noms] %eaten = (my Any %{Noms} = Noms::Greenstuff => 1)Noms» | ||
14:33
richi235 left,
cognominal left
14:34
richi235 joined
14:35
kyclark_ left
|
|||
Xliff | ejf: Odd. I've tried to export traits and didn't have much luck there, either. | 14:41 | |
gfldex | m: enum Noms('Greenstuff', 'Walkingstuff', 'Syntetics'); my %eaten{Noms} but role :: { method keys() { Noms.enums} }; %eaten{Greenstuff}++; dd %eaten, %eaten.keyof, %eaten.keys; | 14:42 | |
camelia | rakudo-moar 575dda: OUTPUT«Hash[Any,Noms] %eaten = (my Any %{Noms} = Noms::Greenstuff => 1)Noms(Noms::Greenstuff,).Seq» | ||
gfldex | m: enum Noms('Greenstuff', 'Walkingstuff', 'Syntetics'); my %eaten{Noms} but role :: { method keys() { 'oi!' } }; %eaten{Greenstuff}++; dd %eaten, %eaten.keyof, %eaten.keys; | ||
camelia | rakudo-moar 575dda: OUTPUT«Hash[Any,Noms] %eaten = (my Any %{Noms} = Noms::Greenstuff => 1)Noms(Noms::Greenstuff,).Seq» | ||
gfldex | why does it call the wrong .keys ? | ||
(wrong from my POV ofc) | |||
14:47
Actualeyes joined
14:49
movlex joined,
movlex left
14:50
movlex joined,
g4 left
14:51
movl left
|
|||
jnthn | gfldex: Try "does"? | 14:52 | |
gfldex | m: enum Noms('Greenstuff', 'Walkingstuff', 'Syntetics'); my %eaten{Noms} does role :: { method keys() { 'oi!' } }; %eaten{Greenstuff}++; dd %eaten, %eaten.keyof, %eaten.keys; | ||
camelia | rakudo-moar 575dda: OUTPUT«5===SORRY!5=== Error while compiling <tmp>Invalid typename 'role'at <tmp>:1------> 3 'Syntetics'); my %eaten{Noms} does role7⏏5 :: { method keys() { 'oi!' } }; %eaten{» | ||
jnthn | heh :) | 14:53 | |
Yeah, that ain't gonna do it | |||
gfldex | m: enum Noms('Greenstuff', 'Walkingstuff', 'Syntetics'); my %eaten{Noms} is Hash does role :: { method keys() { 'oi!' } }; %eaten{Greenstuff}++; dd %eaten, %eaten.keyof, %eaten.keys; | ||
camelia | rakudo-moar 575dda: OUTPUT«5===SORRY!5=== Error while compiling <tmp>Invalid typename 'role'at <tmp>:1------> 3ics'); my %eaten{Noms} is Hash does role7⏏5 :: { method keys() { 'oi!' } }; %eaten{» | ||
jnthn | does expects a typename after it | ||
I think (my %eaten{Noms}) does role :: { ... }; would work | |||
gfldex | m: enum Noms('Greenstuff', 'Walkingstuff', 'Syntetics'); (my %eaten{Noms}) does role :: { method keys() { 'oi!' } }; %eaten{Greenstuff}++; dd %eaten, %eaten.keyof, %eaten.keys; | ||
camelia | rakudo-moar 575dda: OUTPUT«Hash[Any,Noms]+{<anon|49843632>} %eaten = (my Any %{Noms} = Noms::Greenstuff => 1)Noms"oi!"» | ||
gfldex | m: enum Noms('Greenstuff', 'Walkingstuff', 'Syntetics'); (my %eaten{Noms}) does role :: { method keys() { Noms.emums } }; %eaten{Greenstuff}++; dd %eaten, %eaten.keyof, %eaten.keys; | 14:54 | |
camelia | rakudo-moar 575dda: OUTPUT«Method 'emums' not found for invocant of class 'Noms' in method keys at <tmp> line 1 in block <unit> at <tmp> line 1» | ||
14:54
leont left
|
|||
gfldex | m: enum Noms('Greenstuff', 'Walkingstuff', 'Syntetics'); (my %eaten{Noms}) does role :: { method keys() { Noms.enums.keys } }; %eaten{Greenstuff}++; dd %eaten, %eaten.keyof, %eaten.keys; | 14:54 | |
camelia | rakudo-moar 575dda: OUTPUT«Hash[Any,Noms]+{<anon|75746832>} %eaten = (my Any %{Noms} = Noms::Greenstuff => 1)Noms("Greenstuff", "Walkingstuff", "Syntetics").Seq» | ||
14:54
Skarsnik_ joined
14:55
mcmillhj_ left
|
|||
jnthn | bbiab | 14:55 | |
gfldex | :) | ||
14:55
infina left
14:56
mcmillhj joined,
infina joined
|
|||
Roamer` | ok, here's a weird one... | 14:57 | |
Is there a way for me to "mimic" the default values of some other method's parameters? | |||
14:58
Skarsnik left
|
|||
Roamer` | like, say, I want to add :nl and :enc to Shell::Capture.capture(), which invokes Proc.new(), and pass :nl and :enc to Proc.new | 14:58 | |
but only if they have been supplied to Shell::Capture.capture() | |||
I don't want to have several invocations of Proc.new, one with :nl, one with :enc, one with both, etc | 14:59 | ||
14:59
kjs_ joined,
MilkmanDan joined
|
|||
Roamer` | and, quite obviously, I don't want to go this way: | 14:59 | |
m: use v6.c; say Proc.^methods.first(*.name eq 'BUILD').signature.params.first(-> $param { ($param.name // '') eq '$chomp' }).default()() | |||
camelia | rakudo-moar 575dda: OUTPUT«Cannot find method 'Nil' on object of type List in block <unit> at <tmp> line 1» | ||
Roamer` | hm, this is weird, it works here on 2016.08 | ||
14:59
kjs_ left
|
|||
Roamer` | (it outputs "True", which is the default value for Proc.new :chomp) | 14:59 | |
15:00
zakharyas left
|
|||
Roamer` | so is there some less hacky (and, apparently, more portable across Rakudo versions) way of saying "only pass :$nl to Proc.new() if it is defined"? | 15:01 | |
15:01
kurahaupo joined
15:03
FlyingPanda joined
|
|||
FlyingPanda | Roamer`: camelia is restricted, so you don't get the same Proc as in non-restricted version | 15:04 | |
Roamer` | hmm, and I just thought of the quite obvious run ..., $nl.defined?? :$nl!! () ... but I'm not completely sure that it will work | ||
FlyingPanda | Roamer`: You can ninja them in: Proc.new: |(:$nl if $nl), |(:$enc if $enc) | 15:05 | |
Roamer` | FlyingPanda, oh, sorry, I didn't realize that... did I just summon you here by doing that? Sorry! | ||
FlyingPanda | Nah, I was just bored and passing by :) | ||
Roamer` | FlyingPanda, ah, yes, slips would work... thanks! | 15:06 | |
15:06
mcmillhj left
|
|||
RabidGravy | is anyone doing anything where they are testing a script that is part of a module distribution? | 15:06 | |
Roamer` | (and here I am yet again, coming up with a awfully (or wonderfully) convoluted hack instead of thinking of the obvious...) | ||
FlyingPanda | |(:) looks like a ninja if you tilt your head right, which is how I remember the syntax :) | 15:07 | |
15:08
rkazak joined
|
|||
FlyingPanda | RabidGravy: why? | 15:08 | |
RabidGravy | why what? | 15:09 | |
why am I interested in testing scripts? | 15:10 | ||
15:10
rba_ left,
rba_ joined
15:11
sufrostico left
|
|||
FlyingPanda | RabidGravy: why are you asking? | 15:11 | |
15:12
dustinm` joined
|
|||
RabidGravy | because I want to know if anyone has done anything where they are testing a script that is part of a module-distribution ;-p | 15:12 | |
FlyingPanda | ~_~ | ||
Well, I did lots of script testing, but since they weren't part of a module distribution, I guess I'm not the right fit for your survey. | 15:13 | ||
15:13
FlyingPanda left
|
|||
RabidGravy | because the script that I install as part of JSON::Infer may not have been working properly since February and it isn't tested, and if someone is doing tests of scripts I could save the reinvention of the wheel | 15:13 | |
Roamer` | RabidGravy, I'm doing something like this in a module that I haven't released yet... it's a large part of the reason why I wrote Shell::Capture | 15:15 | |
15:16
leont joined
|
|||
RabidGravy | I will however resist the urge to make something like Test::Script | 15:16 | |
for the time being | |||
Roamer` | RabidGravy, but if you're asking whether there is something a bit more like Perl 5's Test::Command, I don't know of any | ||
15:16
wamba left
|
|||
Roamer` | (but I *am* using Test::Command in Perl 5 in-house stuff) | 15:16 | |
RabidGravy | yeah I've used that before | ||
last big P5 project had tens of scripts which needed to be tested | 15:17 | ||
this would also suggest that either no-one has installed and used JSON::Infer since february or they have avoided the bug | 15:18 | ||
kyclark | I would love any suggestions to make this more Perl6-ish: | ||
yoleaux | 25 Aug 2016 22:57Z <MasterDuke> kyclark: /:i ^ keys?|values? $ / may not do what you want. the '^' and '$' don't distribute to the different values in an alternation. i suspect you want /:i ^ [key|value]s? $ / | ||
kyclark | github.com/kyclark/metagenomics-bo...-split.pl6 | ||
15:19
mcmillhj joined
|
|||
RabidGravy | I'm going to the former | 15:19 | |
15:19
infina left,
infina joined
15:20
pierre_ left
|
|||
[Coke] cautiously declares tmux an improvement over screen. | 15:21 | ||
Roamer` | RabidGravy, and now you've gone and made me push my horribly ugly, WIP, not even close to finished yet, thingy to Github just so I can suggest that you take a look at github.com/ppentchev/gang/blob/mas...st-local.t | 15:22 | |
gfldex | kyclark: in `my $out-fh = &next-fh();`the & is redundant | ||
Roamer` | of course, run-check() itself is in github.com/ppentchev/gang/blob/mas...st/Lib.pm6 | 15:23 | |
kyclark | OK, thanks. One thing I /REALLY/ don't like is the $*SPEC thing. I would rather import the functions I need from a module. Is there a way around this? | ||
15:23
mcmillhj left,
setty1 joined
15:24
rba_ left
|
|||
[Coke] | kyclark: what problem are you trying to solve ther? | 15:27 | |
gfldex | kyclark: see github.com/rakudo/rakudo/blob/02fd...th.pm#L234 | ||
[Coke] | (by using $*SPEC | ||
kyclark | Just want to use the catfile/catdir functions to put together a path to a resource | 15:28 | |
Also, is there a method to get the "basename" of a file minus its extension like in bash $(basename 'file.fa' '.'fa)? | 15:29 | ||
15:29
kjs_ joined,
mcmillhj joined
|
|||
Roamer` | RabidGravy, and, of course, now you've got me thinking about writing a Perl 6 Test::Command, but it may not happen very soon (or at all) :) | 15:29 | |
kyclark | Rather than "001-file.fa" I would rather make "file-001.fa" etc | ||
15:30
rkazak left,
kjs_ left
|
|||
b2gills | my &catfile = $*SPEC.^lookup('catfile') | 15:30 | |
gfldex | m: "file-001.fa".succ.say | ||
camelia | rakudo-moar 575dda: OUTPUT«file-002.fa» | ||
RabidGravy | Roamer, bwahahah - my entire purpose in life is tempting people to write more P6 modules | 15:32 | |
15:34
tbrowder joined,
tbrowder left
|
|||
Xliff | Are the CompUnit::Repository::* modules documented anywhere? | 15:40 | |
gregf_ | m: $*SPEC.curdir.say | 15:41 | |
camelia | rakudo-moar 575dda: OUTPUT«.» | ||
15:41
mcmillhj left
15:45
mempko joined
15:47
mcsnolte joined
15:50
mcmillhj joined
15:52
lust joined,
lust is now known as Guest58374
15:56
mcmillhj left
15:58
lustlife joined
16:00
lustlife left
16:03
kaare_ joined
16:05
canopus left
|
|||
gfldex | kyclark: could you put an example file for fasta-split on github? | 16:07 | |
16:08
mcmillhj joined,
iH2O joined
|
|||
RabidGravy | I'm finding myself increasingly annoyed with APIs that use halfCamel | 16:08 | |
ugexe | the CompUnit::Repository:: namespace is full of interface roles that basically document themselves | ||
RabidGravy | that's just dump | ||
ugexe | er, CompUnit:: namespace | ||
16:11
muraiki joined
16:13
canopus joined,
mcmillhj left
|
|||
kyclark | gfldex, I just pushed a new version that has a link to a sample file you can pull down from FTP | 16:14 | |
github.com/kyclark/metagenomics-bo...-split.pl6 | |||
16:14
domidumont left
16:15
harmil_wk joined
|
|||
[Coke] | if someone wants to package this up into a reply on the "bootstrap" thread on perl6-users; removing the p5 dep for building is nice to have; the language implementors have been focusing on providing a great language first; what would we replace the p5 dep with? | 16:15 | |
16:15
muraiki left
16:17
mcmillhj joined
16:25
iH2O left
|
|||
[particle] | good news for audrey and for open source: www.chinapost.com.tw/taiwan/nationa...net-to.htm | 16:26 | |
ugexe | m: my $basename = "foo.tar.gz"; say $basename.IO.extension # kyclark this may or may not matter to you | ||
camelia | rakudo-moar 575dda: OUTPUT«gz» | ||
16:28
mcmillhj left
|
|||
kyclark | ugexe, actually that reminds me that I need to handle gzipped files. Would I need to pipe the file through "gunzip" or is there a native library to decompress? | 16:28 | |
harmil_wk | [particle]: wow, that's kind of amazing. | ||
16:28
mcmillhj joined
|
|||
[particle] | indeed it is! | 16:29 | |
16:31
kjs_ joined
|
|||
[Coke] | holy crap it's [particle]. Hi, man. | 16:32 | |
[particle] | hey there, [Coke]! | 16:33 | |
ugexe | kyclark: `tar` also works. If its truly only gz (not tar as well) you can open on windows with powershell using something like `powershell "$xxx.NameSpace('output dir').CopyHere($xxx.NameSpace($gz_file).items(), 0x14)"` | 16:34 | |
kyclark | To find regular files in a directory, I should be able to do this: dir($path, test => *.IO.f) ??? | ||
ugexe | no | 16:35 | |
$test = none('.', '..') | |||
so by default only where `$CURRENT-PATH ~~ none('.', '..')` | |||
16:36
cyphase left
16:37
zacts joined
|
|||
ugexe | github.com/ugexe/Perl6-PathTools/b...hTools.pm6 # This shows how to filter by file (:f), directory (:d), with or without recursion (:r), and setting :$test to non-default values | 16:37 | |
the thing is, you probably *want* that none(".", "..") in addition to whatever other check you are trying to add | 16:39 | ||
not to override it totally | |||
16:41
lizmat left,
cyphase joined
|
|||
kyclark | ugexe, PathTools looks cool, but I can't install via panda. I get "Please remove leading 'v' from perl version in PathTools's meta info." | 16:41 | |
ugexe | ... there isnt a leading v though | 16:42 | |
github.com/ugexe/Perl6-PathTools/b...META6.json | |||
16:42
domidumont joined
|
|||
kyclark | In my REPL, "dir('.', test => *.IO.f)" works to find only files (excludes a directory), but in my script (on another machine) it doesn't | 16:43 | |
dalek | c: d5a91dc | (Jan-Olof Hendig)++ | doc/Language/phasers.pod6: FIRST does not return al value, see irclog.perlgeek.de/perl6/2016-08-26#i_13094318 |
16:44 | |
16:46
mempko left
|
|||
[Coke] | m: say Int(Int(3434)) # RT 128326 | 16:46 | |
camelia | rakudo-moar 575dda: OUTPUT«5===SORRY!5=== Error while compiling <tmp>Unable to parse expression in typename; couldn't find final ')' at <tmp>:1------> 3say Int(Int(7⏏053434)) # RT 128326» | ||
16:47
mempko joined
16:48
leont left
|
|||
ugexe | kyclark: regarding the leading v: you probably need to `panda update` as the leading V was removed in January | 16:48 | |
kyclark | ugexe: ==> Successfully installed PathTools | 16:49 | |
Thanks! | |||
ugexe | that'll probably fix a bunch of other weird module errors you may have encountered with a year-old META data list heh | 16:50 | |
16:51
leont joined
16:52
kjs_ left
|
|||
kyclark | Re: reading from a file or a pipe from gunzip, does anybody see a problem with this? | 16:53 | |
lpaste.net/180530 | |||
16:54
nadim left
|
|||
ugexe | it should work, but on windows you usually have to avoid passing absolute paths on the command line for many unix-y apps | 16:56 | |
github.com/ugexe/zef/blob/master/l...ar.pm6#L23 # This is how zef handles .tar.gz pipe. Note how it passes a *relative* path on the command line and sets run's :cwd parameter to make it act the same as the absolute path | 16:58 | ||
because `-c C:\\x\y/a/b/c.tar` doesn't always get passed correctly | |||
kyclark | Cool, thanks for sharing that. | 16:59 | |
17:02
domidumont left
|
|||
ugexe | github.com/ugexe/Perl6-Distributio...oc/Tar.pm6 # Mostly the same thing just as a role, just apply to a class with a `has $.prefix = 'my/file.tar.gz'` | 17:02 | |
17:03
canopus left
17:04
OnlineCop joined
|
|||
OnlineCop | I was referred here. Some of you from #perl probably recognize me. :P | 17:04 | |
ugexe | what is your referral code | ||
OnlineCop | I'm helping implement some PCRE2 into the regex101 site, and we're wondering if the format has changed from the "Perl 5" regex format to another layout. | 17:05 | |
17:05
leont left
|
|||
OnlineCop | ugexe: :) | 17:05 | |
17:05
zacts left
|
|||
ugexe | what do you mean by regex format? the syntax? | 17:05 | |
OnlineCop | Right. | ||
ugexe | yes it has changed | 17:06 | |
OnlineCop | I was looking at the "PSIX" regex syntax, and things were given as examples like /<[+-]>/ instead of /[+-]/ | ||
I don't know if that means that only "perl 6" regex has changed but "pcre2" format is the same, or if "pcre2" _is_ "perl 6" format. | |||
("pcre2" is the same as "pcre", that is) | 17:07 | ||
ugexe | im pretty sure perl6 regex is its own thing | ||
OnlineCop | If we don't need to change much as far as regex syntax goes for PCRE2, and only add in more features (I think there are now UTF8 or UTF16 by default, and possibly variable-length look-behinds or something...), then we'll try to account for that. | 17:08 | |
[particle] | from www.pcre.org/readme.txt: PCRE2 is written in C, and it has its own API. | ||
OnlineCop | I'm still going over the www.pcre.org/current/doc/html/pcre2syntax.html documentation with him to try to find the differences. | ||
geekosaur | that's not perl6 regex | 17:09 | |
OnlineCop | Okay, so "perl6 regex" and "pcre2" are not the same? | ||
[particle] | sorry, you're looking for syntax, not api. the syntax for pcre2 is close to pcre, which is close to perl5 and not much like perl6 regexes. | ||
geekosaur | pcre2 is pcre with some additions. it's still perl5-oriented | 17:10 | |
OnlineCop | www.pcre.org/current/doc/html/pcre2pattern.html states "PCRE2 tries to match Perl syntax and semantics as closely as it can." and I wanted to ensure that it's not saying that "PCRE2 tries to match Perl __6__ syntax and..." | ||
geekosaur | perl6 regex is a very different thing | ||
pcre2 is very definitely NOT perl 6 regex | 17:11 | ||
OnlineCop | Okay, awesome. Thanks for helping me understand the differences. | ||
[particle] | from www.pcre.org/pcre2.txt: Details of exactly which Perl regular expression features are and are not supported by PCRE2 are given in separate documents. See the pcre2pattern and pcre2compat pages. There is a syntax summary in the pcre2syntax page. | ||
17:11
canopus joined
|
|||
OnlineCop | www.pcre.org/pcre2.txt says to see the 'pcre2compat' pages, but www.pcre.org/pcre2compat.txt doesn't exist. :-/ | 17:12 | |
17:12
rudolfochrist joined
17:14
empT joined
17:16
tbrowder joined
17:21
darutoko left
17:22
canopus left
17:25
sufrostico joined
17:29
canopus joined
|
|||
Xliff | Thanks, ugexe++ # CompUnit:: | 17:29 | |
17:30
cognominal joined
17:39
kjs_ joined
17:44
empT left
17:48
iH2O joined
17:52
mvorg left
17:53
cognominal left
17:57
adu joined
18:07
n1lp7r left
18:13
labster joined
18:18
mcsnolte left,
iH2O left
18:26
wamba joined
|
|||
Xliff | are opendir and readdir supported in P6? | 18:26 | |
moritz | no, dir() is | 18:30 | |
Xliff | docs? | ||
18:31
cdg left,
OnlineCop left
|
|||
moritz | docs.perl6.org/routine/dir | 18:31 | |
18:31
kjs_ left,
cdg joined
|
|||
moritz | if you really need opendir and readdir, patch github.com/cspencer/perl6-posix :-) | 18:31 | |
Xliff | \o/ | 18:32 | |
moritz++ | |||
Now I vill google "basename perl6" | |||
moritz | or just look into the IO::Path docs | 18:33 | |
which contains all the path manipulation methods | |||
Xliff | Funny, I missed that in IO::Path... but maybe I was looking in IO::Handle by mistake. | 18:35 | |
18:36
kyclark left
|
|||
Xliff | But I now have a list of submodules in a given namespace. Now I need to figure out what to do with 'em. | 18:36 | |
18:36
cdg left
18:40
zakharyas joined
18:43
espadrine left
18:50
zacts joined
19:00
ptolemarch left
19:03
zacts left
19:06
ejf_ joined
19:08
Actualeyes left,
espadrine joined
19:09
ejf left
19:12
r_i_d joined
19:13
kjs_ joined
|
|||
r_i_d | Can anyone tell me why: my Int $x = Nil; $x ~~ Nil; returns false? | 19:13 | |
19:16
zakharyas left,
committable6 left
19:17
bisectable6 left
|
|||
Xliff | m: my $x = Nil; say $x ~~ Nil; my Int $y = Nil; say $y ~~ Nil; | 19:18 | |
camelia | rakudo-moar 575dda: OUTPUT«FalseFalse» | ||
Xliff | I'm thinking Nil always returns False in such contexts. | 19:19 | |
But I am not quite sure. | |||
m: say Nil ~~ Nil | |||
camelia | rakudo-moar 575dda: OUTPUT«True» | ||
Xliff | And that adds more confusion to the fire. | ||
19:19
nadim joined
|
|||
Xliff | m: my $x = Nil; say $x ~~ Nil; my Int $y = Nil; say $y =:= Nil; | 19:19 | |
camelia | rakudo-moar 575dda: OUTPUT«FalseFalse» | ||
Xliff | m: my $x = Nil; say $x ~~ Nil; my Int $y = Nil; say $y == Nil; | 19:20 | |
camelia | rakudo-moar 575dda: OUTPUT«FalseUse of uninitialized value of type Int in numeric context in block <unit> at <tmp> line 1Use of Nil in numeric context in block <unit> at <tmp> line 1True» | ||
r_i_d | what was that last one you did? =:= ? | ||
Xliff | Container equivalence | ||
m: my $x = Nil; say $x == Nil; my Int $y = Nil; | |||
camelia | rakudo-moar 575dda: OUTPUT«Use of uninitialized value of type Any in numeric context in block <unit> at <tmp> line 1Use of Nil in numeric context in block <unit> at <tmp> line 1True» | ||
r_i_d | ok, so like (Int) == (Int) ? | 19:21 | |
19:21
canopus left
|
|||
Xliff | Yeah. Comparisons to Nil are screwy. Best to use .defined | 19:21 | |
geekosaur | m: my $x = Nil; say $x ~~ Nil; my Int $y = Nil; say $y === Nil; | ||
camelia | rakudo-moar 575dda: OUTPUT«FalseFalse» | ||
r_i_d | Oh? that's perfect, I didn't know about .defined. Thanks! | ||
Xliff | m: my $x = Nil; say !$x.defined; my Int $y = Nil; say !$y.defined; | ||
camelia | rakudo-moar 575dda: OUTPUT«TrueTrue» | ||
19:21
benchable6 joined,
bisectable6 joined,
committable6 joined
|
|||
Xliff | ^^ That's probably what you are looking for. | 19:22 | |
r_i_d | Yep! that's exactly what I need. Thanks again! | ||
Xliff | yw! =) | ||
19:22
r_i_d left
19:23
espadrine left
19:28
kjs_ left
19:29
canopus joined
|
|||
dalek | c: d2466f4 | gfldex++ | doc/Type/Hash.pod6: remove leftover conflict marker |
19:37 | |
c: 85894ad | gfldex++ | doc/Type/Nil.pod6: fix typos |
|||
19:39
rudolfochrist left
19:46
Khisanth left
|
|||
tony-o | who is retupmoca? | 19:52 | |
and also, why are there so many michiganders in p6 | |||
timotimo | to find mst presentation in a live stream, just look for volume peaks :) | 19:56 | |
this wall of 4x4 TVs is ... amazing | 19:57 | ||
.seen retupmoca | 19:58 | ||
yoleaux | I saw retupmoca 8 Jun 2016 21:09Z in #perl6: <retupmoca> m: say ('a'..'d').rotor(2 => -1).perl; | ||
tony-o | timotimo: pics? | 19:59 | |
19:59
Khisanth joined,
vendethiel joined
|
|||
timotimo | youtu.be/LfrlqxzeSSE?t=3h26m12s - go back a few minutes to see it in "restart mode" | 20:00 | |
20:00
SmokeMachine____ left
|
|||
tony-o | nice | 20:02 | |
i'm guessing that's MST | |||
timotimo | yup | ||
20:02
BuildTheRobots left
20:05
cdg joined,
Possum left
|
|||
El_Che | good travels for those leaving yapce | 20:06 | |
20:08
xnrand left
|
|||
timotimo | i'm looking forward to getting all the changes mst made into our build system | 20:11 | |
my $$q = "'"'"'"; - this is the best thing ever | 20:13 | ||
wow, 6serv, that is amazing | 20:16 | ||
20:18
kjs_ joined
|
|||
timotimo | mst: that presentation was very entertaining and also quite informative | 20:18 | |
mst | timotimo: also, as of my lightning talk, it's even easier | ||
grab the 6serv.tgz | |||
unpack it | |||
install App::opan | |||
opan cpanm --installdeps . | |||
tony-o | this is super entertaining | 20:19 | |
mst | presto, running 6serv, if nothing blows up | ||
timotimo | fantastic | ||
when can we start grabbing your terrible ad-hoc patches and making them official parts of the build "system"? | |||
or would you like us (or yourself) to do a bit more of a "full rewrite" ;) | |||
mst | honestly, the makefiles aren't terrible except for (1) not consistently using the variables (2) YOU NEED MORE THAN ONE SORT OF PREFIX FFS | 20:20 | |
timotimo | right | ||
i've always been more than happy that we only have a single prefix where everything goes | |||
but that's admittedly short-sighted and egocentric | |||
(.. as fuck) | |||
mst | the configure scripts could probably do with being re-engineered with fire | ||
timotimo | right | ||
mst | what I was going to do was get as far as shipping what I have | 20:21 | |
timotimo | at some point the configure scripts are also going to be re-written in nqp and we'll perhaps ship a fully bootstrapped moar + nqp to run the configure stuff :P | ||
mst | then test an upgrade to .08 for them | ||
timotimo | does that sound insane enough? good. | ||
mst | then start figuring out how to get patches back into the makefiles | ||
if the configure scripts actually passed everything they knew to the makefile that would help | |||
also if the rakudo one had options at all | |||
timotimo | right | ||
20:22
MilkmanDan left
|
|||
timotimo | after the first months of dealing with perl6 at all, i've stopped using --gen-anything from the configure.pl anyway and just have the three check-outs provide the same thing to --prefix; i'm astounded that sysadmin you mentioned would flip table immediately instead of trying that, but i expect it wasn't actually documented in any unsurprising location at all | 20:23 | |
mst | well, no, once they'd recovered from "it shat all over my filesystem during configure time" they did go back and do that | ||
it just took them a while to stop being angry at having had to roll back their filesystem because of the massive violation of expectations | |||
timotimo | oh, shit, they used a system-wide --prefix? | 20:24 | |
mst | (remember that those install directly into prefix, no chance for DESTDIR) | ||
they were trying to setup freebsd ports | |||
20:24
kjs_ left
|
|||
mst | so it shat over /usr/local without warning | 20:24 | |
timotimo | until recently i didn't even have a clue DESTDIR would be anything different from --prefix, tbh | ||
mst | DESTDIR is required for packaging | ||
basically the --gen-* options need documenting as THIS WILL DO SOMETHING COMPLETELY INSANE | 20:25 | ||
20:25
nbg joined
|
|||
mst | rather than being recommended without explanation | 20:25 | |
timotimo | ah, yes, definitely | ||
mst | so, yeah, zfs snapshot rollback followed by taking a week to calm down | ||
20:25
mcmillhj left
|
|||
mst | I don't feel this is unreasonable | 20:25 | |
tony-o | Method 'input-line-separator' not found for invocant of class 'IO::Socket::INET' | 20:26 | |
mst | I'd tend to rm -rf something that did that to me on the grounds it clearly isn't production code or anything close | ||
"I'll try it again in a year, maybe they'll be less stupid" is a completely reasonable response to it to my mind | |||
timotimo | how do you feel about when --gen-nqp is used, the program will output a blinking, colorful warning that things will immediately be installed to live under the given --prefix and you have *countdown from 15* seconds to ctrl-c before your system gets augmented | ||
mst | that would certainly be a start | 20:27 | |
timotimo | though as far as i know we only "pollute" the bin folder, everything else goes under nqp/ or moarvm/ or rakudo/ or perl6/ somewhere | ||
so not a terrifying clean-up job | |||
mst | installing things, at all, without warning, during configure time | ||
is ... agh | |||
yes. it's not hard to clean up. but it's still *horrifying* | 20:28 | ||
timotimo | quite | ||
mst | "sure, I took a shit in your bathtub, but it was a solid shit so it'll be easy to carry to the toilet" | 20:29 | |
timotimo | i'm adding the ", and install" part to the configure.pl helps now | ||
and then to readmes | |||
mst | also, if we could have nqp --show-config actually say what *its* prefix is as well as moar's | 20:30 | |
that would simply stuff a lot | 20:31 | ||
I should probably try and jot down exactly what I think should be changed | |||
timotimo | that'd be fantastic | ||
mst | I mean, in terms of external behaviour | ||
[Coke] | mst: thank you for being bothered enough by this to fix it. :) | ||
mst | there was no freaking way I was putting my name to a cpan dist that used the current behaviour :P | ||
[Coke] | hoping this helps other packagers as well. | ||
timotimo | gist.github.com/anonymous/c0bec856...4350c49e1e - is that verbiage okay? | 20:32 | |
mst | no, because it still doesn't make it clear that it will install it direct to --prefix before Configure.pl completes | ||
and *that* is the violation of clue | |||
masak | mst++ # not giving up on us | 20:33 | |
mst | "Downloads, builds and installs NQP before completing configuration and writing Makefile" | ||
might be a little clearer | |||
timotimo | oh | ||
is putting "Immediately" in the front acceptable, too? | |||
mst | I would want 'before writing Makefile' in there as well | 20:34 | |
timotimo | OK | ||
mst | this is sufficiently insane from a how-configure-make-make-install-works-in-grown-up-software POV | ||
that it needs calling out really hard | |||
timotimo | i've put "before writing the Makefile" after the three options | ||
mst | that should help | 20:35 | |
I don't want people to be horrified at the immaturity before they get as far as actually getting rakudo installed | |||
timotimo | and i put "- at Configure time -" into the longer blob | ||
mst | we're in early days enough here that immaturity is ok, but we need a chance to hook them with fun before they realise just how immature ;) | 20:36 | |
20:36
SmokeMachine____ joined
|
|||
tbrowder | m: my $s = '. 1. '; say $s | 20:37 | |
camelia | rakudo-moar 575dda: OUTPUT«. 1. » | ||
yoleaux | 13:53Z <smls> tbrowder: Change «$serial = $0;» to «$serial = +$0;». | ||
20:37
aindilis left
|
|||
tbrowder | m: say $s | 20:37 | |
camelia | rakudo-moar 575dda: OUTPUT«5===SORRY!5=== Error while compiling <tmp>Variable '$s' is not declaredat <tmp>:1------> 3say 7⏏5$s» | ||
mst | timotimo: I mean, ideally, we'd figure out how to be able to build against an uninstalled version | ||
if the --gen-* options did the configure for each thing at configure time | 20:38 | ||
then built them in order at 'make time' | |||
then 'make install' installed all three | |||
they'd be totally sane | |||
also, I could've had one cpan dist instead of three | |||
but that probably requires more linker etc. fu than I honestly have | 20:40 | ||
timotimo | pushed another patch to the README.md | 20:41 | |
now i'll be AFK for a bit, and open to a bit more build system or documentation hackery later in the day, if need be | |||
20:41
mithaldu_ joined
20:43
Lucas_One joined,
nadim_ joined,
nadim left
|
|||
tbrowder | does anyone have any idea about what's wrong with the regex capture I example showed earlier? | 20:43 | |
20:44
mcmillhj joined
|
|||
El_Che | mst: I saw some of your talk through the streaming. "The story of my life in 50^W30minutes" | 20:44 | |
tony-o | tbrowder: did smls' message not do anything for you? | ||
20:42 <+yoleaux> 13:53Z <smls> tbrowder: Change «$serial = $0;» to «$serial = +$0;». | |||
mst | El_Che: yeah, pretty much | ||
El_Che | mst: were you able to make up for the disappeared time? (I didn't see the end, had to leave to a meeting) | 20:45 | |
tbrowder | sorry I didn't see that--thanks | ||
mst | El_Che: I finished at 29:59 apparently | 20:46 | |
El_Che | impressive | ||
mst | then I had tech problems and had to compress the perl6 one which was *designed* for 30min, did that in ~22 | ||
20:46
BuildTheRobots joined
|
|||
mst | which still meant finishing 10min late | 20:46 | |
tony-o | where are you from mst? | 20:47 | |
El_Che | mst: I saw most of the perl6 talk. The configure installing stuff made me laugh out loud | ||
a colleague came in to my office to check why :) | |||
mst | tony-o: lancashire, grew up near wigan, now in lancaster | ||
20:49
mcmillhj left,
cognominal joined
|
|||
El_Che | mst: takahashi slide method and faster presenting because of time contraints. I hope there weren't any epileptics in the room :) | 20:50 | |
mst | :D | 20:51 | |
oh, yeah, and I built an Alien-Rakudo-Inline-Perl5 after the talk with the aid of a couple tweaks to its installer from nine++ | 20:52 | ||
20:52
kipd joined,
ajr_ joined
20:53
adu left
|
|||
avar | mst: is that rakudo as a perl5 module? | 20:53 | |
mst | avar: as three. | ||
20:53
wamba left
|
|||
mst | avar: trout.me.uk/6dists/ | 20:53 | |
ajr_ | How do I identify the OS under which P6 is running? I can't find it in the docs. | 20:54 | |
mst | to try them out, run: | ||
cpanm -n App::opan; curl -L trout.me.uk/6dists/ | |||
bah | |||
cpanm -n App::opan; curl -L trout.me.uk/6dists/6serv.tgz | tar xzf -; cd 6serv; opan cpanm --installdeps . | |||
tony-o | m: $*OS.say; | ||
camelia | rakudo-moar bc187b: OUTPUT«Dynamic variable $*OS not found in block <unit> at <tmp> line 1Actually thrown at: in block <unit> at <tmp> line 1» | ||
tony-o | apparently i've been away too long | 20:55 | |
20:55
edehont joined,
skids left,
smls left
|
|||
tony-o | m: $*DISTRO.say; | 20:56 | |
20:56
edehont left
|
|||
camelia | rakudo-moar bc187b: OUTPUT«opensuse (13.2.Harlequin)» | 20:56 | |
tony-o | m: $*KERNEL.say; | ||
camelia | rakudo-moar bc187b: OUTPUT«linux (3.16.6.2.default)» | ||
20:56
kjs_ joined
|
|||
avar | mst: Cool, literal did the same thing @ work pretty much, but it's just called Six::Rakudo and is one dist that contains the rakudo-star release | 20:57 | |
and inline-perl6 then depends on it | |||
20:57
rindolf left,
mcmillhj joined
|
|||
mst | avar: yeah, that really doesn't count. mine installs to three independent prefixes and doesn't touch install dirs during configure time | 20:58 | |
for in-house use, what you did is totally reasonable | |||
but I was unwilling to amateur hour it :) | |||
20:58
skids joined
20:59
olinkl joined
|
|||
avar | Have you discovered that you need this monkeypatch on rakudo: | 21:00 | |
sed -i 's/"install"/"--nodeps", "install"/' tools/build/module-install.pl | |||
jnthn | mst++ # implementing installing to separate prefixes :) | ||
avar | there's a pull request for it, otherwise panda needs to go to the network to resolve deps | ||
mst | avar: I did not, because I ignored star, because its configure is even more of a nightmare and the current release manager keeps abusing other devs on twitter and won't speak to me on IRC since I called him out for attacking other perl5 devs because he's politically right wing and treats anybody who doesn't vote conservative like they're stupid. | 21:02 | |
I have better things to do with my life than deal with that | |||
21:02
pecastro left,
mcmillhj left
|
|||
tony-o | lol. what? | 21:02 | |
mst | also, nine gave me a manaul insaller for Inline-Perl5 so I don't need that | ||
21:03
skids left
|
|||
avar | Okey I don't know how star is put together, I assumed from the 2016.07 bit that this was basically a split-up version of the same thing | 21:03 | |
mst | the underlying releases have the same numbering | ||
star is basically a copy-pasta of rakudo's configure.pl from aages back with some stuff added to install extra modules, and then about 1/3 of the subsequent fixes to rakudo merged down | 21:04 | ||
I did not feel like dealing with that | |||
avar | For your MY::postamble sections: s/cp/$(CP)/g; s/perl/$(PERL)/g etc. | ||
mst | yeah, it's very much proof of concept quality | ||
avar | Anyway, looks really good, would me great to have this on the CPAN | 21:05 | |
mst | that's why I didn't even upload 'em as devrels yet | ||
avar | we hacked up or own because nothing like this was there, but would totally use it if it was there | ||
mst | didn't want smokers to deal with the obvious amateur hour bits in my attempts at de-amateur-houring the stuff I'm wrapping ;) | ||
avar | Does it have any modules like DBIish, or is that a rakudo-star only thing? | 21:06 | |
mst | ... my test run on $other_box just died because rakudo used 1Gb RAM building | ||
El_Che | from my docker infra use case I always pick rakudo and add modules needed by the app. | ||
mst | that's star only | ||
21:06
notbenh_ joined
|
|||
avar | We build ours from star and it comes with a couple of dozen modules | 21:06 | |
mst | star is meant as an example of how to include modules, from which you derive your own distribution | ||
avar | Yeah I was thinking that it would make sense to build those all as Alien-Rakudo-Module-$NAME or something, but we didn't get around to it, it's just one huge bundle | ||
mst | people packaging it was never what it was for, and every time people do that it makes bunny cry | ||
timotimo | mst: how terrible is it that moar's Configure.pl will hit the 'net to update its 3rdparty dependency submodules? | 21:07 | |
21:07
AngeloMichael joined
|
|||
mst | perl5's Configure needs to ssh into a system of the target arch for cross compilation | 21:07 | |
that sort of thing is filed under "gross but not actively evil" | |||
jnthn | timotimo: Does it actually do that for the release tarballs? | ||
mst | avar: that would be one way to do it. my plan is to build a hybrid cpan client designed for perl5/perl6 mixed apps | 21:08 | |
avar | mst: Well if there's something you're actually meant to package in the perl6 universe I'd be happy to use it. No disrespect to anyone here, but it seems *really* basic from a packaging point of view. | ||
mst | but I'm attempting to do it Right so as with all things involing perl6 and 'doing it right' (like, say, perl6), don't hold your breath | ||
avar | I.e. it's all "run this ad-hoc script and it'll give you a module", not "here's something you could easily make into a distro package" like perl5 | 21:09 | |
mst | correct | ||
I believe that what you're meant to package is the underlying actual releases, like I did | |||
but remember I'm still mostly a tourist here | |||
El_Che | mst: if you're looking on things to fix on the perl6 ecosystem, are you taking requests? | ||
mst | I'm trying to de-amateur-hour things for my own purposes, but I'm starting from the bottom up | ||
21:09
kjs_ left
|
|||
mst | I'm probably going to throw a chair and fix the freaking CUR format to not use freaking sha1s for the filenames | 21:10 | |
avar | Yeah same, that didn't seem so hard, it's just some C code talking to other C code, but I haven't found how to get stand-alone perl6 modules in some .tar.gz format or whatever that I can unpack, build, and package up as an rpm or whatever | ||
mst | jnthn: btw, remember I said the sha1s would horrify unix people, and had to explain why? | ||
avar | The same unix people who are using git for all their source control ?:) | 21:11 | |
mst | jnthn: I met a sysadmin at YAPC::EU who'd tried to get permission to use perl6 and discovering the sha1s was the point at which their boss went 'this breaks locate, this is not production ready, you're banned from using it' | ||
avar: my git *checkout* has lib/Foo.pm in it | |||
tony-o | the sha1 file names for precomp? | ||
mst | avar: my perl6 site directory has a sha1 file instead :( | ||
timotimo | jnthn: i don't think it does. i haven't looked if it touches the dependency git repos if you use --has-lib* in configure.pl; that might be worth a look-see. it's probably already fine, though | ||
mst | tony-o: for CUR | 21:12 | |
tony-o | yea | ||
should've voted for the extra file extension | |||
rather than the sha1 | |||
timotimo | i was phantasizing about a bunch of docker-using scripts/thingies that'll go through a bunch of different use cases for our configure scripts and tries to verify we handled things properly | ||
mst | I was thinking about much the same thing, except with less CADT | ||
timotimo | i.e.: regular user, installs under /home; packager, has a DESTDIR and fakeroot; embedded device developer, has to cross-compile for two different architectures; ... | 21:13 | |
21:13
cognominal left
|
|||
mst | yes | 21:13 | |
timotimo | what is CADT? | ||
21:13
mohae_ joined
|
|||
mst | timotimo: www.jwz.org/doc/cadt.html | 21:14 | |
21:14
mcmillhj joined
|
|||
timotimo | ugh :) | 21:14 | |
i remember that text | |||
your "i was thinking about much the same thing" was in response to my "phantasizing" bit? | |||
mst | yes | 21:15 | |
21:15
firstdayonthejob joined
|
|||
mst | just docker is currently in the CADT category for me | 21:15 | |
jnthn | mst: Did things already get changed so the SHA-1 is in the path, but the filenames are in a directory under that? But, sigh, you can't please everyone. | ||
mst | jnthn: no | ||
jnthn: well, it's enraging me as well | |||
tony-o | the extension thing was on the table before sha1 came about | ||
ugexe | need a internal puny encoder or some such to keep original file names | ||
timotimo | i was picking out docker in particular because it's more or less a solution to "i want to have a scratch filesystem with some distro installed and be able to just throw out the complete thing with the touch of one button when i'm done with it" | 21:16 | |
jnthn | mst: Good. That means it'll get solved. :) | ||
21:16
mohae left
|
|||
jnthn | (Not by me, though. Phew. :)) | 21:16 | |
timotimo | heh :) | ||
jnthn is *very* glad that other folks are now taking this stuff on, and only wish they'd done so about 6 months sooner than they did | |||
21:16
nadim_ left
|
|||
timotimo | who knew the solution would be to just throw some cash in mst's face :) | 21:17 | |
mst | the cash was a while back | ||
my problem was mostly lack of motivation | |||
tony-o | it's difficult to want to when PRs are rejected and that code magically ends up in the repo anyway | ||
timotimo | i'd just have to eat only ramen out of plastic bag-like containers for a month and then any bug that annoys me could get fixed by An Actual Professional! | ||
mst | lizmat's 'perl5 is the new perl4' lightning talk was basically a giant fuck you to my entire community and put me off for quite a while | ||
tony-o | mst: when was that? | 21:18 | |
jnthn | Well, I see we're back to whining, so I'll go have fun. :) | ||
mst | jnthn: meh | ||
jnthn: you whined I didn't help earlier | |||
jnthn: I told you why :P | |||
21:18
mcmillhj left
|
|||
jnthn | :P | 21:18 | |
ajr_ | $*OS and $*OSNAME both fail to identify the OS. Any other suggestions, anyone? | 21:19 | |
mst | also, y'know, if anybody'd included the perl5 toolchain team in any of this we could've helped it not be terrible in the first place | ||
jnthn: after chasing you into talking to the moose team and that helping, I sort of thought people might've worked that out when they got to the CUR implementation parts | 21:20 | ||
timotimo | ajr_: $*KERNEL and $*DISTRO? | ||
mst | and then I didn't notice until later | ||
cos I also suck | |||
awwaiid | never too late | 21:21 | |
avar | So maybe it's time for a perl6-porters?:) | ||
21:22
ufobat joined
|
|||
timotimo | we did have #perl6-toolchain and #perl6-release | 21:22 | |
no clue if they're actively being used | |||
ajr_ | timotimo: those discriminate between Linuxes - how does one identify Windows (generically)? | ||
ugexe | m: say $*DISTRO.is-win | ||
camelia | rakudo-moar bc187b: OUTPUT«False» | ||
ajr_ | Failing that, what's the generic name for those variables, so I can find them in the docs? | 21:23 | |
timotimo | right | ||
21:23
mcmillhj joined
|
|||
timotimo | .is-win is the right one | 21:23 | |
gfldex | ajr_: you poke around in the registry | ||
mst | timotimo: yes, we have #perl6-toolchain because I got fucked off and created it. | ||
timotimo | it won't tell you "windows" if you're running ubuntu on your windows 10, though | ||
at least i don't think it will | 21:24 | ||
but with ubuntu-inside-win10, you aren't as royally fucked as you are on windows on general | |||
so maybe it shouldn't give True for .is-win | |||
ajr_ | The original swamp I was trying to drain was telling the user what EOF character to use to terminate input | ||
gfldex | ajr_: docs.perl6.org/language/variables#..._variables | ||
timotimo | ajr_: did you know we do some automatic newline stuff For You? | 21:25 | |
mst | timotimo: depends if they've fixed stat() yet | ||
21:25
ItayAlmog joined
|
|||
timotimo | mst: i'm personally not going to touch windows for development with a quite long stick, so ... :) | 21:25 | |
i'm not even following the intricate details of that thing | |||
mst | ok, well, basically, at the moment it's more 'differently fucked' | ||
ajr_ | gfldex - thanks | 21:26 | |
21:26
lizmat joined
|
|||
ajr_ | timotimo: not sure I understand that | 21:26 | |
jdv79 | this is the first i'm hearing of a p5 is the next p4. odd. | ||
tony-o | was p4 the next p3? | ||
timotimo | ajr_: what exactly? | 21:27 | |
jdv79 | i started using perl at about 5.6 or whatever was just before so i have no idea | ||
mst | jdv79: it was a lightning talk, the theme of which was "you're obsolete and shit and we're you're only hope for the future" | ||
ajr_ | The "automatic newline" stuff | 21:28 | |
mst | I was not particularly happy about it | ||
you're welcome to go find a video, I'm not going to discuss it further | |||
21:28
nadim_ joined
|
|||
avar | mst: What day was it on? | 21:28 | |
mst | it was a while ago, and I don't even remember which conference, and honestly I've done my best to forget about it because I'd like to get over it and keep trying to bring the two communities together in spite of the periodic acts of idiocy like that from both sides, especially give right now I think the perl5 community is producing acts of idiocy of such forms rather more often ;) | 21:29 | |
timotimo | ajr_: ah, ok. i don't know how exactly it works nowadays; i think we translate at program boundary and inside perl6, \n refers to a "logical newline" and for the other meanings you use \x20 (or what ever the right ascii code is) and optionally the \x?? for \r | ||
avar | Ah, I thought you mean this YAPC that just finished | 21:30 | |
timotimo | maybe perl6 is only now becoming interesting enough for regular perl5 users that they need to panic or something | ||
21:30
mcmillhj left
|
|||
ajr_ | timotimo: I entirely agree with you about development on Windows, but there's a lot of it about, and I'm trying to write generic training examples. | 21:31 | |
jdv79 | mst: thanks for your extensive efforts, btw. much appreciated. | ||
timotimo | right | ||
i wonder how hard it'd be to get a camelia running on windows so we can just try shit out on the channel | |||
it'd potentially be expensive to get a windows host? | 21:32 | ||
hm. isn't windows 10 for vms available for free? | |||
21:32
woolfy joined,
mcmillhj joined
|
|||
timotimo | i really don't want to stick a hand in that particular hornet's nest, though | 21:33 | |
21:33
nadim joined
|
|||
timotimo | is there a pure-perl5 implementation of git that'd allow us to fetch our submodules during build time and maybe also for panda and such? | 21:36 | |
hm. actually ... shouldn't we just be able to use github's "give me a zip file of this repo at this commit" as a replacement for basically everything we use git for during build and panda installs? | 21:37 | ||
avar | yes, you should | ||
21:37
mcmillhj left,
nadim_ left
|
|||
ugexe | zef can already do that for module installs | 21:37 | |
21:38
parabolize left
|
|||
timotimo | very good. can you point that out on the mailing list thread i just posted to? | 21:38 | |
Message-Id: [email@hidden.address] | 21:39 | ||
ugexe | pure perl5 is possible via UA and simple api-url transforms | 21:40 | |
github.com/ugexe/Perl6-Distributio...Github.pm6 uses this method | |||
timotimo | ugexe: i meant a pure-perl git implementation :) | ||
which would require parsing blobs, trees, and commits | |||
ugexe | you can fetch all of those from the web ai i believe | 21:41 | |
timotimo | ah, yes | 21:42 | |
only if your server has recently run git-update-webserver-data-something-something | |||
but git probably has something on their server that implements the whole thing itself | |||
rather than relying on the stuff living on the filesystem | |||
at least i'd do it along those lines | |||
ugexe | api.github.com/repos/rakudo/rakudo...ecursive=1 # for brevity | ||
timotimo | oh, interesting! | 21:43 | |
21:45
setty1 left
21:46
dogbert17 left
|
|||
ajr_ | This my $EOF = "CTRL-" ~ ($*DISTRO.is-win ?? "Z" !! "D"); appears to do what I want - at least on Linux - thanks | 21:48 | |
timotimo | ah, nice. | ||
21:51
mcmillhj joined
|
|||
ItayAlmog | is it ok that my compiler will have a limit of 10 params when creating and using subs or methods? | 21:52 | |
21:52
imcsk8_ is now known as imcsk8
21:53
ajr_ left
|
|||
timotimo | that sounds like an extremely tight limit | 21:53 | |
21:55
mcmillhj left
|
|||
timotimo | m: sub a($,$,$,$,$,$,$,$,$,$,$,$,$,$,$,$,$,$,$,$,$,$,$,$,$) { }; a(1,2,3,4,5,1,2,3,4,5,1,2,3,4,5,1,2,3,4,5,1,2,3,4,5) | 21:56 | |
camelia | ( no output ) | ||
timotimo | why would there be a static limit? | ||
vendethiel | .oO( there's only so much RAM ) |
||
yoleaux | 22 Jul 2016 23:32Z <cog_> vendethiel: thx for the URL | 21:57 | |
tbrowder | .tell smls: thanks! the "+$0" did the trick | ||
yoleaux | tbrowder: What kind of a name is "smls:"?! | ||
vendethiel | yoleaux: it's about time you learn how to remove that trailing :. | ||
ItayAlmog | I am using (as of right now) 10 registers which are for general use as the way to pass params | ||
vendethiel | ItayAlmog: cdecl will pass arguments via stack starting from the 8th one, IIRC :) | ||
timotimo | oh hey ven | 21:58 | |
how are you doing? | |||
vendethiel | pretty good! how about you? | ||
tbrowder | .tell smls thanks! the "+$0" did the trick | ||
yoleaux | tbrowder: I'll pass your message to smls. | ||
timotimo | a bit meh | ||
vendethiel | aw | ||
ItayAlmog | This can be a good Idea using the stack for parameters, I will try and make so it will use both :D | ||
thanks | |||
vendethiel | np, gl :-) | ||
timotimo: what have you been up to? | 21:59 | ||
timotimo | this and that | ||
vendethiel | you mean $. and $! | ||
timotimo | un-bitrotting my GTK::Simple-based shooter recently | ||
i wanted to use our scintilla module for the code input thingie, but it doesn't seem to have an API for "what are the contents?" right now | |||
so that was ... not helpful :D | 22:00 | ||
22:00
kjs_ joined
|
|||
vendethiel | I remember that bit | 22:00 | |
vendethiel gets a PTSD flashback everytime he reads "GTK::Simple" :-P | |||
timotimo | sorry about that :( | 22:01 | |
vendethiel | don't be! it was so much fun. | ||
timotimo | i'm not saying it's your fault for using Mac OS X, but ... :\ | ||
vendethiel | yeah, I'm sorry for wanting a desktop. :P | 22:02 | |
mst | Mac OS X makes for a great OS for a TV | ||
I don't understand people who try to use it as a development machine ;) | |||
vendethiel | I don't understand people who try to use linux as a desktop machine :). | 22:03 | |
mst | neither do I, I'm sat at a windows+cygwin system with a freebsd VM | ||
vendethiel | you can be happy you managed to watch a video only after 5 hrs of fiddling with your settings, I can be happy stuff apple wants to work works :P | ||
22:03
dogbert17 joined
|
|||
mst | what? | 22:03 | |
don't accuse me of being one of them | |||
vendethiel | sorry; sorry! | 22:04 | |
mst switched back to windows because cygwin's X11 support was better than OS X | |||
meanwhile, I have managed to hit exactly 140 characters and have just tested this on a fresh user on a dev server | |||
twitter.com/shadowcat_mst/status/7...2365946883 | |||
I might be rather proud of that tweet :) | |||
masak | \o/ | 22:05 | |
mst++ | |||
vendethiel | (and there's no |sh ! mst++) | ||
timotimo | \o/ | ||
mst | that's one of the few things in this world that actually triggers my gag reflex. | ||
vendethiel | echo "let the hate"|you | 22:06 | |
22:12
leont joined
22:28
ufobat left
22:31
kjs_ left
22:39
RabidGravy left
22:49
leont left
|
|||
timotimo | vendethiel: did you read about the many multithreading stability improvements made recently? | 22:50 | |
22:51
skids joined
|
|||
vendethiel | timotimo: yes! | 22:56 | |
22:56
firstdayonthejob left
|
|||
vendethiel | I'm reading pretty much every single commit made by you++, lizmat++, jnthn++ (and a few others :-).) | 22:57 | |
I managed to sneak in Perl 6 in code generation, internal tools and some other areas. But nothing "running" yet... | 22:58 | ||
22:59
olinkl left
23:00
AngeloMichael left,
notbenh_ left
23:01
BuildTheRobots left
|
|||
vendethiel | timotimo: I still have a project that just crashes (moarvm gc: invalid status) using GTK::Simple. Did that ever happen to you? | 23:01 | |
(using supply.schedule-on and GTK::Simple::Scheduler) | |||
23:02
kipd left,
Lucas_One left
23:03
mithaldu_ left
|
|||
timotimo | not once :( | 23:06 | |
vendethiel | i do have a repro repo: github.com/vendethiel/moarvm-gcerr...solated.p6 if you ever get some time to look at it :) | 23:07 | |
23:08
zacts joined
|
|||
timotimo | that still crashes with very latest everything, i take it? | 23:09 | |
vendethiel | it was crashing around a month ago, before I left for some holidays. I'll need to re-try with latest everything. | 23:10 | |
23:10
nadim left
|
|||
timotimo | huh, the $c-o supply won't even ever emit anything at all? | 23:13 | |
vendethiel | it loads for a few (dozens) seconds, then when the window starts loading, it prints "Invalid GC status observed" and crashes | 23:14 | |
23:14
Lucas_One joined
|
|||
timotimo | it seems a bit smelly that you're changing the value of a TextView before actually running the app itself? | 23:15 | |
23:15
AngeloMichael joined
|
|||
timotimo | the loading for a few dozen seconds could very well be startup overhead | 23:15 | |
vendethiel | yeah | ||
timotimo | i recently made a measurement where a program with nothing but "use GTK::Simple" spends about 50% of its time in re-parsing the same json string over and over again a few hundred times | ||
but that's only the first time running after installing | 23:16 | ||
nine said we could change the implementation so it wouldn't have to parse the json stuff even a single time | |||
vendethiel | sounds amazing :-) | ||
jnthn | vendethiel: Some of the things I've fixed in the last couple of weeks stand a chance of fixing the memory corruption it's detected there. | ||
vendethiel | jnthn: that's amazing to hear! I'll be busy with a C school project this weekend, but I'll try to see if it's now working | 23:17 | |
jnthn | vendethiel: I found a few nasty things going on in a couple of concurrency constructs where GC safe-points were mishandled | ||
23:17
MilkmanDan joined
23:19
olinkl joined
23:20
Possum joined
23:22
zacts left
23:25
zacts joined
23:28
kipd joined
23:31
zacts left
23:32
cdg left
23:39
mithaldu_ joined
|
|||
tbrowder | p6: my uint $n = 4 | 23:42 | |
camelia | ( no output ) | ||
tbrowder | p6: my uint64 $n = 3; say $n | 23:43 | |
camelia | rakudo-moar 6a8278: OUTPUT«3» | ||
AlexDaniel | not sure why would you do that today though | 23:44 | |
m: my uint64 $n = 3; say $n; $n -= 5; say $n | |||
camelia | rakudo-moar 6a8278: OUTPUT«3-2» | ||
23:46
AngeloMichael left,
kipd left,
SmokeMachine____ left,
olinkl left,
Lucas_One left,
mithaldu_ left
|
|||
tbrowder | I need to convert an Int to an unsigned in to compare output from a hash program to a p6 hash function | 23:51 | |
avuserow_ | m: my uint64 $n = 3; say $n; $n -= 5; say $n; say $n.WHAT | 23:53 | |
camelia | rakudo-moar 6a8278: OUTPUT«3-2(Int)» | ||
avuserow_ | never mind, that didn't do what I thought it would | 23:54 | |
tbrowder | the p6 Digest::xxHash module wraps the C xxhash library and converts unsigned ints to p6 Ints; I want to compare the two outputs somehow | ||
Skarsnik_ | err, why $n type get changed | 23:58 | |
23:58
Skarsnik_ is now known as Skarsnik
|
|||
tbrowder | p6: my uint $n = 7; say sprintf "%x", $n | 23:59 | |
camelia | rakudo-moar 6a8278: OUTPUT«7» | ||
Skarsnik | probably because uint64 is a bastard type unlike unit? |