»ö« 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
bjz joined,
bjz_ left
00:07
skids joined
00:10
dct left
00:11
Sound left
00:30
lukaramu_ left
00:31
wamba left
00:38
kurahaupo left
00:40
agentzh joined
00:45
Cabanossi left
00:47
Cabanossi joined
01:02
Actualeyes left,
BenGoldberg joined
01:03
Redek joined
01:04
Redek left
01:07
bjz left
01:08
aborazmeh joined,
aborazmeh left,
aborazmeh joined
01:18
matt_ left
01:19
espadrine left
01:23
matt_ joined
01:24
matt_ is now known as Guest57537
|
|||
SmokeMachine | Hi! Im trying to fix the bug #130940... Could someone, please, take a look at my commit and please tell me if it's OK to PR it? I have run the spec tests and just started the stress test... (I didn't write the tests yet...) | 01:24 | |
synopsebot6 | Link: rt.perl.org/rt3//Public/Bug/Displa...?id=130940 | ||
Geth | whateverable: 39cec40933 | (Aleks-Daniel Jakimenko-Aleksejev)++ | 2 files Typo (“unstead” → “instead”) |
01:25 | |
01:25
committable6 joined,
ChanServ sets mode: +v committable6
|
|||
IOninja | FYI: next Rakudo release will include lexical require. Please read the information on how to upgrade your code: rakudo.org/2017/03/18/lexical-requi...rade-info/ | 01:30 | |
Geth | whateverable: e0565f7995 | (Aleks-Daniel Jakimenko-Aleksejev)++ | 8 files Change ⁇ ‼ back to ?? !! Rakudo no longer supports ⁇‼ ლ(ಠ益ಠლ) |
||
AlexDaniel | IOninja: so… what was this VIP thingy? | 01:31 | |
ah, 2017.04, nevermind | 01:32 | ||
01:32
aindilis left
|
|||
IOninja | AlexDaniel: "Very Installable Perl". My vision for what Rakudo Star should be. | 01:33 | |
AlexDaniel | :O | ||
IOninja++ | |||
IOninja | I set the date too early tho /o\ with the IO stuff on the plate. The first VIP release may be less than stellar. | 01:34 | |
SmokeMachine | the stress tests had only one test of t/spec/S10-packages/precompilation.rakudo.moar broken... | 01:35 | |
01:43
pochi left
|
|||
timotimo | only rakudo star is supposed to be stellar :P | 01:44 | |
01:45
pochi joined
|
|||
geekosaur | "[LTA] VIP isn't" :p | 01:48 | |
IOninja | :) | 01:52 | |
===> Searching for: Inline::Scheme::Guile:ver('0.1'):auth('github:drforr') | 01:53 | ||
Username for 'github.com': | |||
DrForr: huh... Weird that it's asking me for username.. | |||
Guess my ecosystem smokage is getting aborted early, because I'm not gonna enter that info :/ | |||
timotimo | can you somehow change the urls to git:// automatically? | 01:54 | |
IOninja | Is that why it's asking for pass? | ||
timotimo | there's also a configuration option that you can put your stuff into for this thing | ||
https:// will ask for pass, apparently | |||
maybe because it doesn't know if you just want to pull or if you want to push | |||
before the protocol forces it to decide whether to ask for password or nto | |||
IOninja | Weird that it does, considering all I want to do is clone (well, zef wants to do) | ||
Oh well. | 01:55 | ||
timotimo | aye, it's annoying, but a known bug | ||
IOninja | Guess I'll just pick a few dists instead of doing all of them (this will eventually be a dailyish automated run by a bot: build rakudo, ensure stresstests pass, and modules that used to work still work) | 01:56 | |
02:01
spebern left
|
|||
timotimo | Put this in your ~/.netrc and it won't ask for your username/password (at least on Linux and Mac): | 02:02 | |
machine github.com | |||
login <user> | |||
password <password> | |||
interesting | |||
help.github.com/articles/caching-y...rd-in-git/ | |||
that one seems saner | |||
samcv | why not use ssh? | 02:03 | |
timotimo | because then you have to somehow get zef to rewrite the url | ||
samcv | ah | ||
does zef always use https? | |||
timotimo | ionin wants an automated process that installs every module we have | ||
hm, don't think so | 02:04 | ||
ugexe | github.com/ugexe/zef/blob/master/r...g.json#L61 | ||
timotimo | oh, interesting | ||
ugexe | it should work if the uri ends in .git | ||
or starts with git:// | 02:05 | ||
IOninja | Yeah, I have caching setup on my normal boxes. But I don't want to cache any passwords on my "install strange code from ~100s of people you never met" VM :P | ||
ugexe | but it cannot guess that `...` without a .git at the end is a git url | ||
timotimo | yeah | ||
IOninja | The ecosystem munger removes all .git from https:// URLs | 02:06 | |
ugexe | ah so its zef applying https scheme over the git:// links which do have .git | 02:07 | |
maybe not | |||
"source":"github.com/skids/perl6-Proc-Screen.git" | |||
from ecosystem-api.p6c.org/projects.json | 02:08 | ||
02:08
bjz joined
|
|||
ugexe | yeah lots of https with .git | 02:09 | |
IOninja | Weird. 'cause: github.com/perl6/ecosystem/blob/ma...ist.pl#L84 | ||
ugexe | that is adding .git isnt it | ||
IOninja | doh >:) | 02:10 | |
Yes, it's adding .git to https URLs that end in just / | |||
ugexe | and i *think* .git/ is a valid git ending | ||
but that would s{.git/}{.git/.git} | 02:11 | ||
02:14
bjz left
|
|||
ugexe | really people should just be putting the .git at the end of the source-url themselves | 02:16 | |
samcv | i mean it's just a url, so it could be anything. but it's nice to have a .git to confirm what it is | 02:17 | |
i mean as far as zef in concerned, what else other than a git repo could it be? doesn't it only handle git repos? | |||
02:18
kaare_ left
|
|||
IOninja | I think that's why we added munging; people were putting all sorts of weird URLs up in that field | 02:18 | |
ugexe | no, it handles git repos, http/https, local paths, tar/zip/etc | ||
a url without an extension could be anything, so there is no way for zef to guess the protocol (re: https:// without a .git) | |||
02:18
bjz joined
|
|||
IOninja | Like non-working URLS. But I don't recall if was all just 'cause panda choked on them | 02:18 | |
ugexe | https works the best with work firewalls i believe | 02:19 | |
02:23
bjz left
|
|||
ugexe | when choosing what archive format to use for your packages remember that windows can unzip without installing additional software | 02:28 | |
if they install rakudo (not star) then they also have perl5 so those window users can untar | 02:30 | ||
02:35
curan left
|
|||
ugexe | a decent bit of work went into windows compatibility. it should even still work across volumes | 02:38 | |
including passing paths to gnu tar which doesn't accept volume from the command line | 02:39 | ||
02:44
cyphase left
02:46
kaare_ joined,
ilbot3 left
02:48
ilbot3 joined,
ChanServ sets mode: +v ilbot3
02:51
mcsnolte left,
dogbert2 joined
02:53
mtj_ joined,
mtj_ left,
mtj_ joined
02:54
LeCamarade left
02:57
LeCamarade joined
02:58
Mithaldu joined
02:59
ribasushi joined
03:03
cyphase joined
03:11
aborazmeh left
03:26
agentzh left
03:30
Cabanossi left
03:32
Cabanossi joined
03:34
geekosaur left,
geekosaur joined
03:35
noganex joined
03:37
noganex_ left
03:42
bjz joined
04:06
xtreak joined
04:08
mcmillhj joined
04:12
mcmillhj left
04:14
mcmillhj joined
04:19
wamba joined
04:20
mcmillhj left
04:30
Cabanossi left
04:32
Cabanossi joined
04:59
Cabanossi left
05:00
AlexDaniel left,
Cabanossi joined,
BenGoldberg left
05:01
bjz left
05:03
mcmillhj joined
05:05
vike joined
05:08
mcmillhj left
05:12
kurahaupo joined
05:18
xtreak left
05:19
xtreak joined
05:20
agentzh joined
05:25
mcmillhj joined
05:28
Cabanossi left
05:30
aborazmeh joined,
aborazmeh left,
aborazmeh joined,
mcmillhj left,
Cabanossi joined
05:33
effbiai joined,
bjz joined
05:35
andrzejku joined
05:42
mcmillhj joined
05:49
wamba left,
mcmillhj left,
wamba joined
05:59
araraloren joined
06:00
agentzh left
06:04
aborazmeh left
06:06
agentzh joined
06:07
khw left
06:09
khw joined
06:11
khw left
06:12
agentzh left
06:18
gdonald left
06:19
gdonald joined
06:23
skids left
06:31
mr-foobar left
06:41
andrzejku left
06:58
Cabanossi left
07:00
Cabanossi joined
07:02
andrzejku joined
07:06
mr-foobar joined
07:18
rindolf joined
07:27
mcmillhj joined,
xtreak left
07:30
xtreak joined
07:31
kurahaupo left,
mcmillhj left,
aindilis joined
07:33
mr-foobar left
07:44
Cabanossi left
07:45
Cabanossi joined
07:46
baest left
07:50
baest joined
07:58
Sound joined
08:02
mr-foobar joined,
araraloren left
08:03
mcmillhj joined,
kurahaupo joined,
araraloren joined
08:07
wamba left
08:08
kurahaupo left,
mcmillhj left
08:09
mcmillhj joined,
agentzh joined
08:13
araraloren left,
agentzh left,
mcmillhj left
08:14
araraloren joined
08:20
araraloren left
08:37
xtreak left
08:39
darutoko joined
08:40
jjido joined
08:42
xtreak joined
08:50
domidumont joined
08:53
xtreak left
09:00
RabidGravy joined
09:05
jjido left
09:13
Cabanossi left
09:15
Cabanossi joined
|
|||
RabidGravy | boom | 09:19 | |
RabidGravy wonders idly about a thing like a supply but has another supply that emits whatever the taps return | 09:20 | ||
09:22
mr-foobar left
09:23
xtreak joined
09:30
nadim joined
|
|||
nadim | Good morning. I use .WHERE to lookup an object with some text but the result varies. is there something else I could use for a hash? I don't want to spend time comparing elements. | 09:35 | |
geekosaur | .WHICH | 09:46 | |
.WHERE has the actual address, which can change after gc | |||
09:49
parv joined
|
|||
lizmat | nadim: feels to me you should explain what you want to do | 09:59 | |
perhaps a Set or a typed Hash would be more appropriate ? | 10:00 | ||
10:03
Dunearhp_ joined
10:15
n1ce_ left
10:29
Cabanossi left
10:30
Cabanossi joined
10:31
labster left
10:36
parv left
10:37
sena_kun joined
|
|||
nadim | geekosaur: I will try with .WHICH, if I recall well, I didn't use WHICH because not all types had it, IE, a Match object did not have one. | 10:40 | |
lizmat: still working on Data::Dump::Tree, adding an extra functionality. I need to lookup am object and a string, so I need to hash the object in some way. | 10:41 | ||
lizmat | .WHICH is then the answer | 10:42 | |
it's what typed hashes / Sets / Bags / .unique use internally | |||
10:45
TEttinger left
|
|||
nadim | lizmat: It seems to work. I have looked in the Todo and I wrote, some times ago, that .WHICH was broken for some types, IE match objects. | 10:46 | |
is there a list, or a programmatic way, to get a list of all built in objects, I could check all of them in one shot. | 10:47 | ||
lizmat | nadim: looks like nine fixed that in 7f26e8b2 last November | 10:48 | |
10:48
lukaramu joined
|
|||
lizmat | nadim: the border between built-in vs non-builtin is very vague | 10:48 | |
some built-in types don't even exist until you need them | 10:49 | ||
nadim | :) | ||
Anything that can be put in a data structure or that would appear when an object is dumped | |||
lizmat | m: .say for SETTING::.keys.sort # a sort of list, but this also includes internal builtins | 10:50 | |
camelia | !UNIT_MARKER $! $/ $=finish $=pod $?PACKAGE $_ $¢ &CHANGE-DIRECTORY &CHMOD-PATH ©-FILE &MAKE-DIR &QX &REMOVE-DIR &RENAME-PATH &SYMLINK-PATH &UNLINK-PATH &chmod © &link &mkdir &open &pipe &rename &r… |
||
RabidGravy | also in this mornings collection of mad shit my brane is telling me I want, default taps for supplies that only get called if there are no other taps | ||
lizmat | m: .say for SETTING::.keys.grep(*.starts-with("&")).sort # perhaps better | 10:51 | |
camelia | &CHANGE-DIRECTORY &CHMOD-PATH ©-FILE &MAKE-DIR &QX &REMOVE-DIR &RENAME-PATH &SYMLINK-PATH &UNLINK-PATH &chmod © &link &mkdir &open &pipe &rename &restricted &rmdir &run &shell &socket &spurt &symlink … |
||
lizmat | RabidGravy: a supply that doesn't get tapped, how would you tap that ? | ||
10:54
sena_kun left
10:55
sena_kun joined
|
|||
RabidGravy | well it's for a pattern that is sort of emerging in my head, whereby an object has, say, a supply of requests of some sort, each request has a promise, say, that tappers can keep or break, and one wants the default behaviour (in the presence of no other taps) to be that it is simply kept | 10:55 | |
lizmat | I think I lost you at the "it is simply kept" part | 10:57 | |
RabidGravy | the promise in the "request" :) | 10:58 | |
lizmat | perhaps a .then on the Promise ? | 10:59 | |
RabidGravy | well yes, but that doesn't deal with the case where it never gets kept or broken | 11:01 | |
lizmat | hmmm... | 11:03 | |
RabidGravy | so if I have something like "my $p = Promise.new; my $s = supply { whenever $something { emit $p } }; await $p" it may never finish | ||
11:03
bjz left
|
|||
lizmat | whenever Supply.in(10) | 11:04 | |
? | |||
that would give you a timeout, but that's not what you're looking for ? | |||
lizmat needs to be afk again to schlepp some heavy stuff | 11:05 | ||
RabidGravy | GET SCHLEPPING! | ||
11:14
Cabanossi left
11:15
Cabanossi joined
11:26
xtreak left
|
|||
RabidGravy | Hmm there appears to be a lack of an snmp library in the ecosystem | 11:26 | |
MUST RESIST | |||
11:29
xtreak joined
11:34
xtreak left
|
|||
RabidGravy | Oooh "EXPORTHOW::SUPERSEDE::class' conflicts with an existing meta-object imported into this lexical scope" now that's a new one | 11:36 | |
admittedly the piece of code that made that happen is using some stunt meta object hackery | 11:38 | ||
11:38
bjz joined
11:39
bjz left
11:40
jjido joined
11:58
Cabanossi left,
bjz joined
12:00
Cabanossi joined
12:09
jjido left
12:22
eliasr joined
12:23
bjz left
12:24
bjz joined
12:25
wamba joined
12:28
Cabanossi left
12:30
Cabanossi joined
12:32
wamba left
12:33
wictory[m] joined
12:40
dogbert2 left
12:42
andrzejku left
12:47
andrzejku joined
12:50
jjido joined
12:53
sukrishn joined
|
|||
RabidGravy | Am I being blind or is there no standalone HTTP response parser in the ecosystem? | 12:53 | |
12:56
jjido left
12:58
geekosaur left
|
|||
RabidGravy | Hmm maybe Grammar::HTTP | 12:59 | |
12:59
Cabanossi left
13:00
geekosaur joined,
Cabanossi joined
13:06
_DrForr joined
|
|||
_DrForr waves from Open Source Days. | 13:07 | ||
RabidGravy | hoo hoo | 13:08 | |
RabidGravy waves from his sofa | 13:09 | ||
_DrForr | Wow. Two minutes into this Python talk and the guy can't resist slagging Perl and my talk. Not even realizing that the speaker is sitting 3 rows away. | 13:10 | |
timotimo | don't forget, no PR is bad pr, _DrForr | 13:11 | |
he's basically making people who didn't notice aware of the existence of a perl-related talk | 13:12 | ||
_DrForr | Certainly Trump would agree. | ||
jeek | But, Trump is wrong about everything... | ||
timotimo | oh jeez, let's not talk about politics and especially not about trump in here, k? | 13:13 | |
El_Che | _DrForr: start with a remark about civility | ||
_DrForr | Wasn't my intent to mention him, just sort of slipped out. | 13:14 | |
timotimo | so is _DrForr's talk in the future or in the past? | ||
_DrForr | In the past. He at least heard about it because I mentioned Roman numerals. I'm sure if I didn't, he would have found something else. | 13:15 | |
timotimo | mhm | 13:16 | |
i wonder what that remark in particular sounded like verbatim | |||
but it's probably better to just forget about it i guess | 13:17 | ||
also, are your slides online? :D | |||
will there be a recording? | |||
_DrForr | No recording, and I think I already have a similar talk up on GH. | ||
13:19
Actualeyes joined
|
|||
timotimo | OK, fair enough | 13:20 | |
ISTR a talk like that in the past | |||
_DrForr | You've probably seen at least one. | 13:21 | |
El_Che | _DrForr: talking about grammars? | ||
timotimo | opensourcedays.org/community/talk?speaker_id=30 | ||
El_Che | thx | ||
timotimo | "builtin expression grammars" are in the abstract | ||
_DrForr | I threw a slide of a nearly-complete JSON grammar up there. | 13:22 | |
timotimo | probably without support for "strings that start in loose combiners" :P | ||
_DrForr | Probably not. | ||
13:23
mr-foobar joined
|
|||
timotimo | github.com/timo/json_fast/blob/mas...ast.pm#L83 :D | 13:23 | |
13:24
aborazmeh joined,
aborazmeh left,
aborazmeh joined
|
|||
IOninja | _DrForr: what was the slagging that tehy said? | 13:24 | |
timotimo | @drforr_topics.grep(*.interesting > 0.5).pick(1).say | 13:25 | |
IOninja | _DrForr: I forget who told me that, but someone said Python folks just can't stfu about Perl and slag it off on all their talks :) I didn't think it was THAT bad, but it's funny that you just corroborated that rumor :) | ||
useless use of 1 | 13:26 | ||
13:26
bjz_ joined
13:27
bjz left
|
|||
_DrForr | Oh, something to the effect of "If you thought having to deal with all those numbers, Perl now lets you use Roman numerals, to make it even more confusing." | 13:27 | |
13:28
mr-foobar left
|
|||
timotimo | huh, who has to deal with the numbers? | 13:29 | |
also, like, your criticism is stupid because, like, you can also put, like, the word "like" between like most keywords in like python | |||
RabidGravy | Nat Torkington "What is it with those Python fucks, anyway?" c. 2000 | ||
_DrForr | Yeah, it was *really* weak sauce. I even invited people to slag Unicode operators in the talk. | 13:30 | |
timotimo | <3 | 13:31 | |
what kind of numbers was he refering to btw? | |||
IOninja | _DrForr: bad publicity is good publicity. I'm sure there were plenty in the audience who thought it was both inappropriate and dumb :) | 13:32 | |
_DrForr | And. *AND*. This is incontrovertible proof that my talk went around the conference, and in enough detail that they could remember slides. | ||
IOninja | :) | ||
timotimo | yup, pretty good! | 13:33 | |
even if we don't impress anybody else at any conference, we'll at least get extremely attentive python users in all of our talks | |||
_DrForr | Not to mention my last slide goes to the heart of the matter, by going to the heart of matter. | 13:34 | |
timotimo | whoa, dude | ||
like, programming with quarks? or even ... strings? | |||
13:35
lukaramu_ joined
|
|||
_DrForr | I show the Laplacian equations for the Higgs Boson. | 13:35 | |
timotimo | well, everybody knows (though not everybody agrees) that strings make up all matter and energy | ||
RabidGravy | BRANES! | 13:36 | |
IOninja | I don't think anybody knows yet :) There's no experimental evidence for string theory... still? | ||
timotimo | (uh oh, this is the "political off-topic" thing again!) | 13:37 | |
_DrForr | He's asking for questions. Any good trolling suggestions? :) | ||
IOninja | _DrForr: yes, don't troll. | ||
timotimo | why do you print an exception's stacktrace with "exc.print_exception()" when "explicit is better than implicit"? :P | ||
someone on twitter says their fav feature of perl6 is the repl ... uh oh | 13:38 | ||
IOninja | heh | ||
13:38
lukaramu left
|
|||
timotimo | we really need to find a way to make that thing work better :| | 13:41 | |
_DrForr | Just talked about CamelCase not realizing where it came from :) | 13:43 | |
El_Che | I ran some WinVMs to test some code. Win7 and 8 where very vast. WIn 10 sluggish. I though Win10 had the reputation of being fast | 13:44 | |
IOninja has no issues with Win10 | 13:48 | ||
_DrForr | I have XP and 8 at home, no v10. | ||
IOninja | Other than "We're sending all your info to us, whether you like it or not" feature that you can't even disable. | ||
El_Che | I looking in maybe have a small win7 vm with office | 13:49 | |
IOninja | _DrForr: camel case came from Perl? | 13:50 | |
_DrForr | Hint: "camel" :) | 13:51 | |
timotimo just assumed camel case was older than perl | |||
IOninja | _DrForr: correlation does not imply causation. It's camel cause it looks like camel's humps | ||
"The name "CamelCase" is not related to the "Camel Book", the popular nickname of the book Programming Perl, " | 13:52 | ||
That's pretty much the only mention of Perl I see on en.wikipedia.org/wiki/Camel_case | |||
timotimo | also, camel case is actually about camelCase, not CamelCase, because that's DromedaryCase | ||
_DrForr | Not the first time I've been wrong :) | ||
IOninja | heh | ||
timotimo | even though everybody calls it CamelCase | ||
but all those people are wrong on the biology | |||
RabidGravy | are there any *new* languages with case insensitive identifiers? | 13:54 | |
timotimo | does visual basic count as new? | 13:55 | |
RabidGravy | :) | 13:56 | |
timotimo | i mean, there's visual basic .net | ||
a friend of mine once told me that visual basic .net is the only way to reach every single piece of functionality that .net has to offer | |||
or something like that | |||
RabidGravy | really? | ||
timotimo | i don't really remember the specifics. that was like 5 years ago | 13:57 | |
RabidGravy | I haven't been near it for ten years | ||
done some c# more recently | |||
13:58
mr-foobar joined
|
|||
Geth | ecosystem: araraloren++ created pull request #310: add binding for ftplib |
13:59 | |
14:00
araraloren joined
|
|||
Geth | ecosystem: 4ecaf69105 | loren++ | META.list add binding for ftplib (#310) github.com/araraloren/Net-FTPlib |
14:02 | |
14:05
tadzik joined,
Matthew[m] joined,
M-Illandan joined,
dp[m] joined,
unclechu joined,
ilmari[m] joined,
xui_nya[m] joined,
CIAvash[m] joined
|
|||
RabidGravy | does anyone use FTP anymore? | 14:09 | |
(genuine question) | |||
timotimo | homebrew folks use ftp quite a lot | 14:10 | |
at least on the 3ds, the wii u, the wii, and i think also the 'cube | |||
IOninja | RabidGravy: I do at work. | ||
RabidGravy: what's wrong with it? | 14:11 | ||
14:11
agentzh joined
14:12
Cabanossi left
|
|||
RabidGravy | I don't have an opinion about it | 14:12 | |
IOninja | And what's the alternative? scp? | ||
IOninja uses ftp for "it ain't broke" reasons. | 14:13 | ||
timotimo | "if someone fixed it, does that mean it's broke?" | ||
IOninja | I have a gazillion bookmarks in gFTP and I can click on files I want to transfer. It does the job. | ||
RabidGravy | It's just one of those thing like telnet that pre-date the internet as we know it | 14:15 | |
14:15
Cabanossi joined
|
|||
IOninja | You mean like HTTP and TCP/IP? :) | 14:16 | |
14:16
agentzh left
|
|||
RabidGravy | it predates TCP/IP yeah | 14:16 | |
14:16
aborazmeh left
|
|||
timotimo | to be fair, TCP/IP got a boatload of stuff added to it so that it can work with today's stuff | 14:16 | |
tbrowder | .tell masak i don't have any old masm on flppies or CD, but i did find this link: <www.phatcode.net/downloads.php?id=175> | ||
yoleaux | tbrowder: I'll pass your message to masak. | ||
araraloren | I made the module FTPlib as a practice, also it works good . | 14:17 | |
RabidGravy | sure, I wasn't criticizing the module, just surprised people use the ptotocol a lot | 14:18 | |
:) | |||
14:19
bjz joined
|
|||
tbrowder | .tell masak but i did find two old CDs (Dr. Dobbs 1988-2001 and C/C++ Journal 1990-2002) which i need to look at low-level because the old search box doesn't work on WIndows...i'll try on my Linux box | 14:19 | |
yoleaux | tbrowder: I'll pass your message to masak. | ||
araraloren | Ftp is a good way to shared file in my company | 14:20 | |
14:20
bjz_ left
|
|||
araraloren | I also use scp copy file from one to another frequently | 14:21 | |
El_Che | FTP-out-of-the-box-problems: not encrypted, active mode + firewalls | 14:22 | |
(but we all knew that :) ) | |||
IOninja | Isn't FTPS encrypted? | ||
El_Che | out of the box | ||
IOninja | Ah | ||
RabidGravy | yes, and network engineers hate active mode | ||
El_Che | FTP != ftps | ||
there is ftp + ssl as well | 14:23 | ||
araraloren | Is sftp ? | ||
Oh, SFTP is a part of SSH | 14:24 | ||
RabidGravy | yeah, it's "FTP like" but not strictly FTP | ||
timotimo | the sftp commandline utility that comes with openssh is super crappy, though | ||
RabidGravy | hey I remember the FTF that was part of the ICL OSLAN stack | 14:25 | |
timotimo | File Transfer & Food? | 14:26 | |
14:27
_DrForr left
|
|||
IOninja | Ven: ping | 14:29 | |
14:31
andrzejku left
|
|||
IOninja | .tell the contributors tool uses "ven" for, I assume, you. Probably needs more fields for you in the CREDITS file, unless you wanted to go as ven? | 14:31 | |
yoleaux | IOninja: I'll pass your message to the. | ||
IOninja | dam | ||
stupid robot | |||
.tell Ven the contributors tool uses "ven" for, I assume, you. Probably needs more fields for you in the CREDITS file, unless you wanted to go as ven? | |||
yoleaux | IOninja: I'll pass your message to Ven. | ||
araraloren | ... | 14:32 | |
14:32
IOninja is now known as the
|
|||
the | . | 14:32 | |
yoleaux | 28 Apr 2015 10:48Z <timotimo> the: video game i'm sinking so much time into these days is Disgaea 4. the bad thing is, it'll accept any amount of time you offer :) | ||
9 Oct 2015 21:12Z <lizmat> the: IterationBuffer doesn't have a descriptor | |||
14:31Z <IOninja> the: contributors tool uses "ven" for, I assume, you. Probably needs more fields for you in the CREDITS file, unless you wanted to go as ven? | |||
14:32
the is now known as IOninja
|
|||
IOninja | heh | 14:32 | |
Glad to see i"m not the only one :) | |||
araraloren | Hah.. | ||
14:34
geekosaur left
|
|||
MasterDuke | timotimo: i have spent so many hours with the Disgaea games... i bought a ps2 just to play the first one | 14:34 | |
14:36
geekosaur joined
14:39
araraloren left,
araraloren joined
14:47
NeuralAnomaly joined,
ChanServ sets mode: +v NeuralAnomaly
14:50
NeuralAnomaly left
14:51
NeuralAnomaly joined,
ChanServ sets mode: +v NeuralAnomaly
14:54
cibs left
14:56
_DrForr joined,
cibs joined
14:57
wamba joined
14:59
buggable left
|
|||
timotimo | i bought a ps4 just to play D5 :) | 15:00 | |
MasterDuke | i'm not sure i ever got 4, but i definitely don't have 5 yet | 15:01 | |
15:02
ambs joined
|
|||
timotimo | 4 is quite good. 5 is very good, but for different reasons | 15:02 | |
you should check out disgaea 5's soundtrack (but maybe in better sound quality than what youtube offers) | 15:03 | ||
15:04
jfuller joined
|
|||
_DrForr | I bought a PS2/3 just to play Katamari Damacy. And DDR, at least until I moved to a 2nd floor apartment. | 15:04 | |
MasterDuke | just added 5 to the amazon wishlist, but i'm still working on the games i got for christmas | 15:05 | |
timotimo | omg we love katamari | ||
15:06
jfuller left
|
|||
timotimo | btw, #perl6-gaming exists :) | 15:06 | |
_DrForr | Duly noted, once I'm on a network that doesn't block port 22... :) | ||
timotimo | for discussing both game playing as well as game developing | ||
_DrForr | Not that I really play all that much. | 15:07 | |
IOninja | Not that I really play all that much. | 15:08 | |
timotimo | *shrug* | 15:09 | |
15:09
sukrishn left
15:13
sukrishn joined
15:14
_DrForr left
15:17
_DrForr joined
15:20
AlexDaniel joined
|
|||
Geth | gtk-simple/WildYorkies-patch-1: 90cc1ab270 | Cale++ | META6.json add "gui" to tags |
15:21 | |
gtk-simple: WildYorkies++ created pull request #76: add "gui" to tags |
|||
gtk-simple: 90cc1ab270 | Cale++ | META6.json add "gui" to tags |
15:22 | ||
gtk-simple: d4f22bc59a | (Zoffix Znet)++ | META6.json Merge pull request #76 from perl6/WildYorkies-patch-1 add "gui" to tags |
|||
15:22
n1ce joined,
andrzejku joined,
Sound left,
sukrishn left
|
|||
timotimo | anybody know how to work appveyor? it's trying to install strawberry perl but there's no checksum set (somewhere?) so it aborts the build for security reasons | 15:24 | |
(in gtk::simple) | |||
15:24
Actualeyes left
|
|||
IOninja | timotimo: that sounds similar to the issue we had with rakudo's appveyor. Maybe compare the .appveyor files? | 15:24 | |
timotimo | OK, thanks | 15:25 | |
IOninja | huggable: lexical require :is: Upgrade info for lexical require: rakudo.org/2017/03/18/lexical-requi...rade-info/ | ||
huggable | IOninja, Added lexical require as Upgrade info for lexical require: rakudo.org/2017/03/18/lexical-requi...rade-info/ | ||
Geth | gtk-simple: cf20fc4fe7 | timo++ | appveyor.yml steal strawberry perl install line from rakudo's appveyor |
15:26 | |
timotimo | let's see if that does anything | ||
i wonder what the idea behind the 2016.11 release in the matrix was | 15:27 | ||
IOninja | what matrix? | 15:28 | |
timotimo | azawawi already changed that line to include --allow-empty-checksums like 2 months ago | ||
github.com/perl6/gtk-simple/blob/m...yor.yml#L5 | |||
the thing that tells it what differetn variants to try to build | 15:29 | ||
IOninja | Based on when that commit entered, I think the idea was "one release behind latest" | ||
*two releases behind latest | |||
15:30
xinming_ left
|
|||
IOninja | Ah: "latest Rakudo Star" | 15:30 | |
15:30
xinming joined
|
|||
IOninja | or previous rakudo star :P | 15:31 | |
timotimo | ok, that's 2017.01 now, right? | ||
IOninja | Yes. | ||
15:31
sukrishn joined
|
|||
timotimo | maybe it should have latest star, one-behind star, and rakudo nom? | 15:31 | |
it's doing stuff now | |||
i wonder why appveyor didn't build any commits after that one | 15:32 | ||
but now i added that repo in my account | |||
whatever the difference is | |||
15:37
NeuralAnomaly left,
BenGoldberg joined
15:38
NeuralAnomaly joined,
ChanServ sets mode: +v NeuralAnomaly
|
|||
nadim | I have: enum DDT_Address_Display (DDT_DISPLAY_NONE => 0, 'DDT_DISPLAY_ALL', 'DDT_DISPLAY_CONTAINER') ; later in an object I have: has DDT_Address_Display $.address is rw = DDT_Address_Display::DDT_DISPLAY_CONTAINER ; but I get this error: type check failed in assignment to $!address; expected DDT_Address_Display but got Int (0) | 15:39 | |
AlexDaniel | c: 2017.03 say 42 | 15:41 | |
committable6 | AlexDaniel, ¦2017.03: «42» | ||
AlexDaniel | \o/ | ||
15:44
Cabanossi left,
titsuki_ joined
15:45
Cabanossi joined,
titsuki left
15:48
jjido joined
|
|||
timotimo | nadim: huh, that seems wrong on two layers; first, it should be a DDT_Address_Display, and second it should give 2, not 0. | 15:50 | |
any chance you can create a short snippet we could reproduce the issue with? | |||
perl6 -e 'enum DDT_Address_Display (DDT_DISPLAY_NONE => 0, "DDT_DISPLAY_ALL", "DDT_DISPLAY_CONTAINER"); say DDT_Address_Display::DDT_DISPLAY_CONTAINER; class Test { has DDT_Address_Display $.address is rw = DDT_Address_Display::DDT_DISPLAY_CONTAINER }; say Test.new(); say Test.new(address => DDT_Address_Display::DDT_DISPLAY_ALL)' | 15:51 | ||
this is what i'm testing with locally and at least here it works | 15:52 | ||
nadim | I will try to corner it. now I am confused by the fact that it started working after a change that I ... have not made, bleahhh | ||
it works here too, I need to back track the last changes and find, hopefully, why. It did look simple enough to work at first sight. | 15:53 | ||
timotimo | OK, i hope we can figure this out | ||
MasterDuke | timotimo: IOninja's snippet spends 46% of its time in re_nfg at src/strings/ops.c:91 | ||
according to perf | 15:54 | ||
timotimo | oh, interesting | ||
MasterDuke | in a profile, the most expensive (by exclusive time) functions are join|SETTING::src/core/List.pm, parse-string|/home/dan/Source/perl6/modules/json_fast/lib/JSON/Fast.pm, !alt|gen/moar/stage2/QRegex.nqp, sequential-map|SETTING::src/core/Any-iterable-methods.pm | 15:57 | |
timotimo | mhh, i believe "join" and other concatenative operations have to ensure that dangling combiners will merge at the ends and beginnings of strings | 15:58 | |
i think that's what re_nfg is there for | |||
SmokeMachine | Is the release done? | ||
timotimo | ===> Building: GTK::Simple:ver('0.1.5') | 16:00 | |
501 Protocol scheme 'https' is only supported if IO::Socket::SSL is installed <URL:gtk-dlls.p6c.org/libatk-1.0-0.dll> | |||
this is a fun way to fail a continuous integration build | 16:01 | ||
IOninja | SmokeMachine: yes | 16:02 | |
SmokeMachine | IOninja: ok, thanks! | ||
Geth | gtk-simple: 36fe48c2eb | timo++ | appveyor.yml we need IO::Socket::SSL to download gtk dlls in appveyor |
16:03 | |
timotimo | MasterDuke: were you the one who used that neat memory profiler tool? | 16:05 | |
MasterDuke | timotimo: heaptrack? yeah | ||
IOninja | timotimo: I guess ::SSL needs to be a repreq of gtk-simple since it downloads DLLs during the build | 16:06 | |
timotimo | well, it's only a build-time prereq and only on windows | ||
IOninja | or something along those lines. Recall, you changed the site that hosts them to use HTTPS | ||
timotimo | i don't want to put it into the depends just for that | ||
IOninja | :/ | ||
timotimo | i put it into the build instructions for appveyor and that should be fine | ||
j75 | m: grammar T { rule TOP { ['>'](\w+)['<'] } } ; say T.parse(">test<") | ||
camelia | 「>test<」 0 => 「test」 |
||
j75 | m: grammar T { rule TOP { ['>'](.+)['<'] } } ; say T.parse(">test<"); | 16:07 | |
camelia | Nil | ||
IOninja | timotimo: what I mean is users installing it on Windows now aren't able to install it. | ||
j75 | why the different outputs? | ||
timotimo | because rule is regex + sigspace + ratchet | ||
IOninja | jdv79: .+ includes '<' and rules don't backtrack | ||
timotimo | the ratchet bites you in this case, because it forbids backtracking | ||
IOninja: wrong tab-complete :) | |||
m: grammar T { regex TOP { ['>'](.+)['<'] } } ; say T.parse(">test<"); | 16:08 | ||
camelia | 「>test<」 0 => 「test」 |
||
timotimo | ^- replace "rule" with "regex" and it's fine | ||
j75 | thanks!! | ||
16:08
Rawriful joined
|
|||
timotimo | YW | 16:08 | |
IOninja nags about SSL and Windows users again | 16:09 | ||
timotimo | it might be nicer to have a little thing in the build.pm that goes through powershell's wget if IO::Socket::SSL is missing | 16:10 | |
also, the gtk dlls are really out of date by now and i don't remember where we got them from | |||
nadim | timotimo: I am tired, the error code was for another line where the original untyped variable was assigned 0! Argg, I finish this and I go to bed! | ||
16:10
araraloren left
|
|||
timotimo | oh! | 16:10 | |
that's a relief, though :) | 16:11 | ||
nadim | yes it is :) since the same construct worked for another variable, i was starting to feel crazy. | ||
16:11
araraloren joined
|
|||
MasterDuke | timotimo: did you want to see any of the screens of a heaptrack profile of IOninja snippet? | 16:12 | |
timotimo | sure, show off anything you find suspicious, please | ||
nadim: i really know how that feels :) | 16:13 | ||
16:13
araraloren left
|
|||
timotimo | BBIAB | 16:13 | |
ugexe | `Fetching backends [git,wget,curl] not available to handle XXX://github.com/ugexe/Perl6-ecosystems.XXX` # anyone have a better idea for the error message zef should give to the user when none of its backends know how to fetch a url? (know how to fetch just means the url matches a pattern I expect it to understand) | 16:14 | |
MasterDuke | timotimo: overview i.imgur.com/bGqEmdg.png | ||
16:14
Khisanth joined,
Cabanossi left
|
|||
timotimo | ugexe: oh, oh, oh! | 16:15 | |
MasterDuke | timotimo: sizes i.imgur.com/bQNvLiZ.png | ||
timotimo | ugexe: could you set a dynamic variable $*ZEF_DOWNLOAD_SERVICE that i could use in gtk::simple's build.pm to grab the gtk dlls off of a https server? | ||
16:15
Cabanossi joined
|
|||
timotimo | MasterDuke: i wonder if the memory usage goes down a whole lot if an nqp::force_gc() is added near the end | 16:16 | |
MasterDuke | timotimo: fyi, i ran with --full-cleanup | 16:17 | |
timotimo: right before the script exits? | |||
ugexe | timotimo: Build.PM can be executed in a separate process/script... how would it see such a variable? | ||
I think you'd have to `use Zef::Fetch` directly (which is an aggregator of fetchers... so it will try all backends it knows of) | 16:18 | ||
MasterDuke | timotimo: fwiw, maxresident is the same with or without nqp::force_gc() | 16:20 | |
ugexe | its losely based on an old IO document that had an interface for custom uris like `IO::File.uri("some url")` | ||
MasterDuke | the graphs look about the same with nqp::force_gc() at the end | 16:22 | |
IOninja | SmokeMachine: in the future, would you please write more descriptive commits? It's very hard to understand what the change does when all the information it has is a number to a ticket (which is a wall of text and isn't always clear what the issue is). Here's a good info on good commit messages: chris.beams.io/posts/git-commit/ | 16:23 | |
SmokeMachine | IOninja: ok, sorry... | 16:24 | |
16:25
khw joined,
_DrForr left
|
|||
ugexe | timotimo: theoretically though something like that can work. for instance: zef can download the package list itself from http or git (not just modules - this is useful when git has its proxy info setup proper on windows) | 16:31 | |
16:33
jjido left
16:40
eliasr left
16:41
sukrishn left
16:43
cdg joined
16:44
agentzh joined
|
|||
IOninja | SmokeMachine: FWIW, Num and Int are different types. Nums don't contain Ints. | 16:45 | |
SmokeMachine: did you run spectest with github.com/rakudo/rakudo/pull/1042 ? | |||
Because it'd be very scary if it passes.... | 16:46 | ||
SmokeMachine | m: say Int ~~ Num | ||
camelia | False | ||
SmokeMachine | Strange! I did run! (Lots of times... trying to fix the problem...) | 16:47 | |
m: say Num ~~ Int | |||
camelia | False | ||
IOninja | SmokeMachine: probably crappy tests thenm | ||
m: say Int ~~ Numeric | |||
camelia | True | ||
IOninja | m: say [.^roles, .^mro ] for Int, Num | 16:48 | |
camelia | [((Real) (Numeric)) ((Int) (Cool) (Any) (Mu))] [((Real) (Numeric)) ((Num) (Cool) (Any) (Mu))] |
||
SmokeMachine | I'll fix that in a few moments... (I'm just going to take a shower) | ||
16:50
cdg left,
cdg joined
|
|||
IOninja | timotimo: is this PR still alive? github.com/rakudo/rakudo/pull/998 | 16:58 | |
17:00
jfuller_ joined
17:02
Skarsnik joined
17:08
jjido joined
|
|||
SmokeMachine | IOninja: strange: www.irccloud.com/pastebin/nPefX5FY/ | 17:10 | |
17:10
Sound joined
|
|||
SmokeMachine | as Num... | 17:10 | |
17:12
khw left
|
|||
timotimo | IOninja: it still needs some more implementation done on it | 17:12 | |
but i haven't looked into it any more since that last comment | |||
MasterDuke: yeah, maxresident wouldn't change, because it's worst at its peak | |||
it'd probably be more interesting to json-parse the same document multiple times in a loop and the ncompare what it's like when you force_gc after each run around the loop | 17:13 | ||
17:13
jjido left
|
|||
timotimo | IOninja: it's definitely something rakudo wants to have, just not sure if i can "just" implement it :P | 17:14 | |
but we have time until the release now ;) | |||
17:14
sukrishn joined
|
|||
timotimo | IOninja: did you just interpret my comments about "needs work" to mean "i will do this"? :P | 17:19 | |
IOninja | timotimo: I was just going through PRs and came across an old one. Well, it's *your* PR, I figured you'd do this :) If not, maybe PR should be closed or something? | 17:20 | |
m: 42.subst-mutate: Str, Str | |||
camelia | Cannot resolve caller subst-mutate(Int: Str, Str); none of these signatures match: (Cool:D $self is rw: |c is raw) in block <unit> at <tmp> line 1 |
||
IOninja | SmokeMachine: ^ that one doesn't hang, so the tests don't cover the bug. The tests should hang pre-fix and not-hang post-fix. | 17:21 | |
timotimo | i think since it contains both redo and last it could have 1/2 of it merged :P | 17:22 | |
SmokeMachine | IOninja: should that hang? Sorry, that was on purpose... im fixing... | ||
17:23
agentzh left
|
|||
IOninja | SmokeMachine: ah, it's cause the invocant isn't rw | 17:23 | |
m: ($ = 42).subst-mutate: Str, Str | |||
camelia | (timeout) | ||
BenGoldberg wonders why we *want* anything to hang. | 17:25 | ||
Unless I'm misreading. | |||
Oh I see, "should hang pre-fix" means, write a test, which, before the bug is fixed, hangs. | 17:27 | ||
How do you write a test for whether or not something hangs? | |||
IOninja | There's doesn't-hang() test util sub, but in this case just "using" the code and then `pass "doesn't hang"` is sufficient, since doesn't-hang is slow and sometimes gives false negatives | 17:29 | |
or rather false positives... | |||
... it says stuff hangs even when it doesn't... | |||
17:30
zakharyas joined,
sukrishn left
|
|||
IOninja | A'ight. Stuff got released. Some PRs got reviewed. Time to crack down on IO and finish up the Plan by end of Monday | 17:31 | |
IOninja vanishes into the shadows | |||
17:32
agentzh joined
17:33
sukrishn joined
17:42
dmaestro joined
|
|||
j75 | :m grammar T { rule TOP { \w+ } } ; class Act { method TOP ($/) { say so "test" ~~ /test/ } } ; T.parse("foo", actions => Act ) | 17:45 | |
17:45
cibs left
|
|||
j75 | why does that fail? | 17:45 | |
japhb | .ask IOninja Wait, do we really have a test routine that pretends to solve the *Halting Problem*? I ... what? | 17:46 | |
yoleaux | japhb: I'll pass your message to IOninja. | ||
17:47
cibs joined
|
|||
geekosaur | I think it's more a "this is something that used to infinite loop very early (e.g. in dispatching)" | 17:47 | |
but catching any such loop and ruling it out will be dubious because you can't pick a timeout that is both short enough to let testing proceed and long enough to cope with heavily loaded systems (including VM hosts) | 17:48 | ||
17:48
Sound left
17:50
Sound joined
|
|||
IOninja | SmokeMachi+│ IOninja: strange: www.irccloud.com/pastebin/nPefX5FY/ | 17:51 | |
yoleaux | 17:46Z <japhb> IOninja: Wait, do we really have a test routine that pretends to solve the *Halting Problem*? I ... what? | ||
IOninja | SmokeMachine: why strange? | ||
dmaestro | :m grammar T { rule TOP { \w+ } } ; class Act { method TOP ($/) { say "matched" } ; T.parse("foo", actions => Act ) | 17:52 | |
yoleaux | 11 Feb 2017 20:02Z <samcv> dmaestro: you're welcome! | ||
IOninja | SmokeMachine: in pre-fix version that goes through Cool candidate in your version it goes through Num candidate. | ||
m: 42.rindex: "2", 2.0 | |||
camelia | index start offset out of range in block <unit> at <tmp> line 1 |
||
sena_kun | m: grammar T { rule TOP { \w+ } } ; class Act { method TOP ($res) { "test" ~~ /test/; ~$res } } ; T.parse("foo", actions => Act) | ||
camelia | ( no output ) | ||
IOninja | m: 42.rindex: "2", 0.0 | ||
sena_kun | j75, ^ | ||
camelia | ( no output ) | ||
IOninja | SmokeMachine: ^ try that one with your fix. I bet it fails now | ||
SmokeMachine | IOninja: Sorry I took some time to understand what you sad... | ||
sena_kun | m: grammar T { rule TOP { \w+ } } ; class Act { method TOP ($res) { say so "test" ~~ /test/; } } ; T.parse("foo", actions => Act); | 17:53 | |
camelia | True | ||
sena_kun | j75, ^ | ||
j75 | thanks | ||
IOninja | japhb: it doesn't need to solve it in order to be useful: github.com/perl6/roast/blob/master...#L175-L212 | 17:54 | |
17:54
cdg left
|
|||
TimToady | geekosaur: you'd wanna pick a "timeout" based on, say, number of nqp instructions traversed | 17:55 | |
yoleaux | 15 Mar 2017 16:29Z <b2gills> TimToady: I wonder if we can take a measured approach to removing ‘returns’. We just remove it from all tests in ROAST (from the main branch only) and have it be a non-standard addition to the language that Rakudo has. | ||
SmokeMachine | IOninja: yes, failed... | ||
j75 | if i want access to $/ in the actions TOP method, is it not possible to use a ~~ regex comparison in there? | 17:56 | |
IOninja | SmokeMachine: 'cause I used a Rat, which isn't a Num (which is used in your fix) but it is a Cool (which is used before your fix) | 17:57 | |
j75: just don't name it $/ | |||
SmokeMachine | Should I change to Number? | ||
IOninja | j75: method TOP ($m) { say $m<some-capture> } | ||
SmokeMachine: to Cool | |||
SmokeMachine | ok! | ||
j75 | IOninja, makes sense! | ||
thanks | |||
17:58
Cabanossi left
|
|||
dmaestro | j75: I get "Cannot assign to a readonly variable ($/)", because the match tries to set the special match variable: $/ | 17:58 | |
17:58
nowan joined
|
|||
dmaestro | It can't modify it, since it's a parameter. | 17:59 | |
j75 | thanks, using a different variable name works | ||
18:00
Cabanossi joined
|
|||
BenGoldberg | Why not name it $/ and add 'is rw'? | 18:02 | |
IOninja | Why clobber your match? | ||
BenGoldberg | Or is copy? | ||
IOninja | Why clobber it? | ||
BenGoldberg shrugs. | |||
IOninja shrugs | |||
BenGoldberg | If you don't need it anymore? | 18:03 | |
IOninja | And if you later refactor code? | ||
And accidentally use it past-match | |||
It's equivalent to code like: my $msg = 'foo'; $msg.uc.say; $msg = 42 + $whatever; say $msg | 18:04 | ||
18:04
nowan left
|
|||
IOninja | Reusing same variable for unrelated things. | 18:04 | |
japhb | IOninja: My objection was the name. doesn't-hang() is misleading. finishes-quickly() is a little more accurate. | ||
IOninja | heh | ||
japhb: but completely misleading about the purpose of the test. | 18:05 | ||
japhb | .oO( finishes-within-expected-time() ) |
18:06 | |
18:07
nowan joined
|
|||
IOninja | That's overly-long and still is inaccurate with respect to what the test is meant to test for. | 18:08 | |
Your objection is the name claims it does something that's impossible to do, not that it's misleading. | 18:09 | ||
timotimo | finishes-before-heatdeath-of-universe | ||
IOninja | "Oh look! Finally, the solution to the ... oh crap! The name lied!" | ||
IOninja & # for real now :) | |||
geekosaur | works() :p | 18:15 | |
BenGoldberg | . o O (There are two hard things in computer science: cache invalidation, naming things, and off-by-one errors) | 18:20 | |
18:22
cibs left
|
|||
japhb | I love that renaming admits to #2 and causes #1. | 18:22 | |
18:22
sukrishn left
|
|||
BenGoldberg wonders if deoptimization is considered a form of cache invalidation. | 18:22 | ||
18:23
cibs joined,
jfuller_ left
|
|||
BenGoldberg wonders if the "does it hang" test sub should be maybe named after the test's raison d'etre, not the success mode: used-to-hang(&callable, $timeout, ...) | 18:27 | ||
18:37
Skarsnik left
18:40
Rawriful left
18:42
setty1 joined
18:44
Rawriful joined
|
|||
timotimo | i would argue deopt is cache invalidation but with a cherry on top | 18:44 | |
18:46
agentzh left,
agentzh joined
18:49
gdonald left,
gdonald joined
18:53
espadrine joined
18:59
bolangi joined
19:00
Rawriful left
19:01
nadim left
19:02
Rawriful joined
|
|||
geekosaur | arguably it's switching caches, which could invalidate both | 19:04 | |
SmokeMachine | IOninja: if you could review that again... I think I fixed you issues... | 19:06 | |
19:08
offby1 joined
|
|||
offby1 | What's the simplest way to serialize simple data? I thought there was json support built in but there appears not to be. Is there a reader that can read what e.g. $thing.perl writes? | 19:08 | |
offby1 waves at cxreg | 19:09 | ||
ugexe | EVAL | ||
offby1 | oho! | ||
how safe is that? | |||
apparently not very :-) | 19:10 | ||
19:14
Cabanossi left
19:15
Cabanossi joined
|
|||
BenGoldberg | Just install JSON::Tiny. | 19:16 | |
offby1 | fair enough | 19:17 | |
BenGoldberg | Or JSON::Fast | ||
Actually, on modules.perl6.org/ there seem to be about a dozen JSON modules. | 19:19 | ||
19:19
sukrishn joined
|
|||
offby1 | noooo :) too many | 19:19 | |
Did I imagine it, or was JSON support built-in at one point? | |||
ugexe | m: use nqp; sub serialize($o is copy) {my Mu $sh:=nqp::list_s; my $name="Ser_{nqp::time_n}"; my Mu $sc:=nqp::createsc(nqp::unbox_s($name)); nqp::setobjsc($o,$sc); nqp::scsetobj($sc,0,$o); my $s=nqp::serialize($sc,$sh); my Mu $iter := nqp::iterator($sh); while ($iter) {my $ss:=nqp::shift($iter)}; nqp::scdisclaim($sc); nqp::shift_s($sh); "{nqp::p6box_s(nqp::join(qq|\n|,$sh))}\n$s"}; say serialize("foo".IO); | 19:20 | |
camelia | 831C3CC373E7E7F4B1A5931496462F5495E4FF04 gen/moar/CORE.setting BEE2055C49CC1094743D6C0E8BA38BA3B74FD3D8 <tmp> /home/camelia FAAAAEgAAAACAAAAWAAAAAAAAABYAAAAWAAAAAYAAACIAAAAwAAAAAAAAADAAAAAAAAAAMAAAADAAAAAAAAAAMAAAAAAAAAAAQAAAAIAAAADAAAABAAAAF0B… |
||
ugexe | rakudo can parse json but its not supported | 19:22 | |
Rakudo::Internals::JSON.from-json and Rakudo::Internals::JSON.to-json | |||
they exist to load module meta data only, not to be a specced out json parser | 19:23 | ||
19:24
sukrishn left
|
|||
offby1 | *nod | 19:25 | |
ugexe | btw the above serialization code is from FROGGS work on nqp::serialize ops (ecosystem module Ser), which I think was intended to speed up module loading by using a different format. Unfortunately I think it doesn't work for a lot of cases | 19:26 | |
19:28
domidumont left
19:32
darutoko left
19:33
labster joined
|
|||
SmokeMachine | m: say from-json 「{foo: "bar"}」 | 19:33 | |
camelia | Invalid JSON: {foo: "bar"} in block <unit> at <tmp> line 1 |
||
SmokeMachine | m: say from-json 「{"foo": "bar"}」 | ||
camelia | {foo => bar} | ||
19:34
Ven joined,
Ven is now known as Guest27220
|
|||
offby1 | yeah, I seem to recall JSON requires anything string-like to be quoted | 19:35 | |
m: say to-json({1 => 2}) | |||
camelia | { "1" : 2 } |
||
MasterDuke | timotimo: i changed the snippet to do from-json 10 times in a loop, then ran it once just like that, and once with an nqp::force_gc() after the from-json in the loop body | 19:36 | |
heaptrack graphs looked the same | |||
i.imgur.com/dcspciw.png | 19:37 | ||
ugexe | what file are you testing? | 19:39 | |
ugexe was just coincidentally asking about performance of parsing ecosystem-api.p6c.org/projects.json | 19:40 | ||
MasterDuke | ugexe: a shortened form of this gist.github.com/zoffixznet/9d9783a...1daee7e813 | 19:43 | |
i downloaded and saved off the json | |||
timotimo | MasterDuke: that's not a leak, then :) | 19:45 | |
MasterDuke | timotimo: right, just very high mem use, but not leaking | 19:46 | |
timotimo | yeah | 19:47 | |
can i get the consumed graph for without force_gc? | |||
MasterDuke | i.imgur.com/yqTvkFi.png | 19:50 | |
timotimo | i find this surprising. | 19:51 | |
oh, i wonder if substr-ing out of bigger strings unnecessarily keeps old things around? | |||
19:56
buggable joined,
ChanServ sets mode: +v buggable
19:57
Rawriful left
20:00
BenGoldberg left
|
|||
geekosaur | might have been missed from when substr-rw was split out? or maybe not keeping track of references quite properly, or just that it can't gc the full string until referenced substrings go out of scope | 20:07 | |
IOninja | SmokeMachine: merged, but the tests for it is still unfixed. The subst-mutate one | 20:08 | |
SmokeMachine | IOninja: yes... Im running it to push it to my repo... | 20:09 | |
20:09
labster left
|
|||
MasterDuke | IOninja: btw, did you see my question about tests earlier today in #moarvm? | 20:09 | |
20:10
thundergnat joined
|
|||
IOninja | no | 20:10 | |
MasterDuke | irclog.perlgeek.de/moarvm/2017-03-18#i_14286223 | ||
thundergnat | Howdy perl6 | ||
IOninja | MasterDuke: no idea. How come attributes are not proper uint64 tho? | 20:11 | |
\o | |||
MasterDuke | that's a known problem. github.com/MoarVM/MoarVM/issues/393 | ||
thundergnat | Just upgraded to latest 2017.03 release. IOninja++ for the release, everyone++ ++ for all the effort. | ||
20:12
mxco86 left
|
|||
MasterDuke | i'm kind of working on a fix for it, but it may end up over my head, and even if not, may not come immediately | 20:12 | |
IOninja | MasterDuke: ah, ok. it's TODOed, but your change makes it die? Just change the fudge to skip(), I think | ||
SmokeMachine | IOninja: just pushed... | 20:13 | |
MasterDuke | IOninja: ok, thought that might be an acceptable solution, i'll give it a whirl and see what happens | 20:14 | |
IOninja: oh, and ++ for the release | |||
thundergnat | Quick question. Was it intended that reversing an array now returns a Seq? I know List is supposed to. Commit beda576. I sort-of surprised me that arrays do too now. | ||
*I was | 20:15 | ||
timotimo | geekosaur: that's moarvm-level stuff. there's nothing clever we can do except use nqp::indexingoptimized to turn it from a ropey string to a single-piece-of string | ||
which could definitely be a thing we can do in this case | |||
given we do it in the right place | |||
anyway, the moar heapanalyzer would be able to tell us what's going on | |||
thundergnat | m: say [1,2,3,4].reverse.WHAT | ||
camelia | (Seq) | ||
20:16
labster joined
|
|||
thundergnat | Not a big problem but it broke some working code. | 20:17 | |
IOninja | SmokeMachine: merged thanks. | ||
SmokeMachine: FWIW, Real is a role all numerics except Complex do. The 2.0 is a Rat | 20:18 | ||
SmokeMachine | IOninja: thank you! | ||
IOninja | m: .^name.say with 2.0 | ||
camelia | Rat | ||
IOninja | m: say 42 ~~ Real | ||
camelia | True | ||
SmokeMachine | IOninja: thanks... sorry... should I fix the msg? | 20:19 | |
IOninja | thundergnat: that's a known change. | ||
SmokeMachine: I already fixed it. | |||
thundergnat: and sorry for breakage :) | 20:20 | ||
SmokeMachine | IOninja: thanks! | ||
IOninja | thundergnat: hm.. the List.reverse->Seq is known at least. I'll mention the Array one it to lizmat. She's the expert on this stuff. | 20:21 | |
thundergnat | IOninja yeah List.reverse->Seq was definitely intended. I wasn't sure if Array.reverse->Seq was. | 20:23 | |
Like I said, it is easy to work around once known, but it did break a bunch of stuff. | 20:24 | ||
Geth | doc: 5ef456b391 | (Zoffix Znet)++ | doc/Type/Any.pod6 Any.reverse returns a Seq, not a List |
20:25 | |
doc: 3acfb391e1 | (Zoffix Znet)++ | doc/Type/List.pod6 List.reverse returns a Seq, not a List |
20:26 | ||
20:28
Cabanossi left
|
|||
IOninja | Looks like it was returning an Array pretty much by accident. As there's no Array.reverse; it uses the List.reverse (Arrays are Lists) | 20:28 | |
20:30
Cabanossi joined,
rindolf left
|
|||
thundergnat | Cool. I'd rather get the gains made by the change than the old behavior. IOninja++ er... Zoffix++ for updating the docs. | 20:31 | |
SmokeMachine | IOninja: Im reading #131009 and if I did understand, I think I disagree with that... I don't think [\,] and [,] should have the same return type... as [+] and [\+] don't have the same return type... | 20:35 | |
synopsebot6 | Link: rt.perl.org/rt3//Public/Bug/Displa...?id=131009 | ||
20:36
zakharyas left
20:37
rindolf joined
|
|||
IOninja | SmokeMachine: ah, right. | 20:37 | |
SmokeMachine: fixing the rest should be fairly easy then. I'm not sure what makes it use METAOP_REDUCE_LISTINFIX, but I guess that case also has the unwanted flattening that you fixed for [\,]. And for containerization, I see some ops just use .map({nqp::decont($_)}), so just need to stick that in a couple more places and it'll be good enough | 20:41 | ||
github.com/rakudo/rakudo/blob/79f2...ps.pm#L436 | |||
20:42
mxco86 joined
20:44
BenGoldberg joined
|
|||
SmokeMachine | IOninja: Ill try to fix that! | 20:44 | |
20:44
andrzejku left
20:49
sukrishn joined
20:53
sukrishn left
|
|||
SmokeMachine | m: say [minmax] <a b c>, <a e i o u> # what it should return? | 20:54 | |
camelia | "a".."u" | ||
Geth | doc: 559bd4ce27 | (Wenzel P. P. Peppmeyer)++ | doc/Type/Routine.pod6 link to WrapHandle |
20:56 | |
BenGoldberg | m: say 'a' minmax 'u' | 20:57 | |
camelia | "a".."u" | ||
BenGoldberg | m: say 'a' minmax 'b' minmax 'c' | ||
camelia | "a".."c" | ||
BenGoldberg | m: say 'a' minmax 'b' minmax 'e' | ||
camelia | "a".."e" | ||
SmokeMachine | m: say <a b c> minmax <a e i o u> | 20:58 | |
camelia | "a".."u" | ||
20:59
offby1 left
|
|||
BenGoldberg | Well, 'a' and 'u' are obviously the min and max ... it seems strange that it returns a Range, I'd expect a Pair, or a two element list, but *shrug* | 20:59 | |
IOninja | There are a lot of tests for it to return the Range. | 21:06 | |
except for Range.minmax, which returns a list | |||
21:07
tojo joined
21:11
jjido joined
21:23
rindolf left
21:36
jjido_ joined
21:38
dct joined
21:39
jjido left
|
|||
IOninja | gfldex: not sure about all of your dir(). Seems you want it to behave as a file-find routine, which is out of scope for dir(). And I think out of scope even for anything core, just because of so many ways there are to recursively find files (depth/breadth-first; lazy or all at-once, etc) | 21:44 | |
*all of your dir() examples | |||
21:44
jjido_ left
21:50
nadim joined
|
|||
IOninja | and the "it's an only method, so can't be augmented" issue is present in many, many methods, so it's not just the IO::Path.dir | 21:55 | |
SmokeMachine | m: say 42.index: Str | 21:58 | |
camelia | Cannot resolve caller index(Str: Str); none of these signatures match: (Str:D $: Cool:D $needle, *%_) (Str:D $: Str:D $needle, *%_) (Str:D $: Cool:D $needle, Cool:D $pos, *%_) (Str:D $: Str:D $needle, Int:D $pos, *%_) in block… |
||
IOninja | m: (try require Test) and ::('Test') | 22:00 | |
camelia | ( no output ) | ||
IOninja | m: (try require Test) and say "hi" | ||
camelia | ( no output ) | ||
IOninja | crap | ||
IOninja edits the upgrade instructions /o\ | |||
SmokeMachine | m: say [\minmax] <a b c>, <a e i o u> # what it should return? | 22:13 | |
camelia | ("a".."c" "a".."u") | ||
22:13
Cabanossi left
|
|||
SmokeMachine | 19:13 <SmokeMachine> m: say [\X] <a b c>, <a e i o u> # what it should return? | 22:13 | |
m: say [\X] <a b c>, <a e i o u> | 22:14 | ||
camelia | (((a b c)) ((a b c a e i o u))) | ||
22:15
Cabanossi joined
|
|||
SmokeMachine | m: say [\Z] <a b c>, <a e i o u> | 22:15 | |
camelia | (((a b c)) ((a b c a e i o u))) | ||
SmokeMachine | m: say [\X] <a b c>, <a e i o u>, ^5 | 22:16 | |
camelia | (((a b c)) ((a b c a e i o u)) ((a b c a e i o u 0 1 2 3 4))) | ||
22:16
pecastro left
|
|||
SmokeMachine | m: say <a b c> X <a e i o u> | 22:16 | |
camelia | ((a a) (a e) (a i) (a o) (a u) (b a) (b e) (b i) (b o) (b u) (c a) (c e) (c i) (c o) (c u)) | ||
MasterDuke | m: say [\elems] <a b c>, <a e i o u> | 22:17 | |
camelia | 5===SORRY!5=== Error while compiling <tmp> Preceding context expects a term, but found infix , instead at <tmp>:1 ------> 3say [\elems] <a b c>,7⏏5 <a e i o u> |
||
MasterDuke | m: say [\+] <a b c>, <a e i o u> | ||
camelia | ((a b c) 8) | ||
SmokeMachine | m: <a b c> + <a e i o u> | 22:18 | |
camelia | WARNINGS for <tmp>: Useless use of "+" in expression "<a b c> + <a e i o u>" in sink context (line 1) |
||
SmokeMachine | m: say <a b c> + <a e i o u> | ||
camelia | 8 | ||
22:20
sukrishn joined
|
|||
SmokeMachine | I think [\X] and [\Z] but I'm not sure about [\minmax] | 22:21 | |
*are wrong | |||
22:24
sukrishn left
22:25
tojo left
22:27
wamba left
|
|||
timotimo | "only method" - "dodge this!" | 22:36 | |
AlexDaniel | timotimo: so \r twice? github.com/timo/json_fast/blob/mas...pm#L15-L16 | 22:38 | |
timotimo | oh crap! | 22:39 | |
well, only a performance penalty, doesn't make things break | |||
pushing a fix | 22:40 | ||
22:40
jjido joined,
dct left
22:41
Voldenet left
|
|||
AlexDaniel | timotimo: how does that change help with memory performance, by the way? | 22:43 | |
timotimo | which change exactly? | ||
the \r\n one? | |||
22:45
jjido left
22:46
Voldenet joined,
Voldenet left,
Voldenet joined
22:48
ufobat joined
|
|||
AlexDaniel | timotimo: yes | 22:49 | |
timotimo | we do less joins and recursions | 22:50 | |
AlexDaniel | timotimo: ah, by the way, is .trans actually slower in this case? | 22:51 | |
timotimo | pushed and bumped version | 22:56 | |
*shrug*, not sure if i measured or not | |||
22:57
ufobat left
22:59
Cabanossi left
23:00
Cabanossi joined,
IRCFrEAK joined
|
|||
BenGoldberg | Wouldn't .trans work better than .subst ? | 23:03 | |
oops, nevermind. | |||
AlexDaniel | BenGoldberg: why “oops”? | 23:04 | |
nadim | Any doc on how to setup a module so it is in the travis integration? | ||
BenGoldberg | I didn't see that you suggested it already ;) | 23:06 | |
IOninja | nadim: docs.travis-ci.com/user/languages/perl6 | ||
23:06
sena_kun left
|
|||
IOninja | nadim: and go to travis-ci.org/profile/YOUR-GITHUB-USERNAME/ and click "Sync account" at top left and then find your repo and toggle it to ON | 23:07 | |
23:09
IRCFrEAK left
23:18
setty1 left
23:35
jeffythedragonsl joined
|
|||
jeffythedragonsl | hello | 23:36 | |
23:41
jjido joined
23:42
bjz left
23:45
jjido left
|
|||
jeffythedragonsl | quick question - does upgrading in Perl 1-4 ever break old scripts or does everything all the way back to 1987 still work? | 23:47 | |
*upgrading in Perl 1-5 that is | |||
jonadab | jeffythedragonsl: I believe the 2nd edition Camel presents a piece of Perl poetry written for an older version that no longer compiles under Perl 5. | 23:48 | |
Granted, it never did anything useful in the first place. | 23:49 | ||
23:50
sukrishn joined
23:51
RabidGravy left
|
|||
jeffythedragonsl | so it's a bit of a pathological case? | 23:52 | |
ugexe | scripts that depend on hash ordering | 23:53 | |
23:55
sukrishn left
|
|||
jeffythedragonsl | that sounds like something you usually don't want to depend on anyway | 23:56 | |
23:59
Cabanossi left
|