»ö« 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
miatomi left
00:01
Cabanossi left
00:02
Cabanossi joined
00:03
mcmillhj left,
eroux left,
mr-foobar left
00:04
TEttinger joined
00:06
perlawhirl left
00:08
bjz left
00:13
TheovdH left,
dct joined
00:14
bdmatatu joined
00:26
mcmillhj joined
00:30
Cabanossi left,
mcmillhj left
00:32
dct left,
Cabanossi joined
00:48
mcmillhj joined
00:49
bdmatatu left
00:53
mcmillhj left
01:09
aborazmeh joined,
aborazmeh left,
aborazmeh joined
01:13
mcmillhj joined
01:18
mcmillhj left
01:21
lukaramu_ left
01:40
mcmillhj joined
01:46
mcmillhj left
|
|||
samcv | ugh how do i use captures again with .subst i never get it right. so confusing | 01:52 | |
m: 'word'.subst(/(\w+)/, $0).say | 01:53 | ||
camelia | Use of Nil in string context in block <unit> at <tmp> line 1 |
||
02:02
mcmillhj joined
02:07
mcmillhj left
02:17
dj_goku left
02:28
dj_goku joined,
dj_goku left,
dj_goku joined
02:30
Cabanossi left,
b2gills left
02:32
Cabanossi joined,
b2gills joined
|
|||
llfourn | m: 'word'.subst(/(\w+)/, $[0]).say | 02:33 | |
camelia | 0 | ||
llfourn | m: 'word'.subst(/(\w+)/, $/[0]).say | ||
camelia | Use of Nil in string context in block <unit> at <tmp> line 1 |
||
llfourn | m: 'word'.subst(/(\w+)/, $/).say | 02:34 | |
camelia | Use of Nil in string context in block <unit> at <tmp> line 1 |
||
llfourn | hmmm | ||
m: "word".subst(/(\w+)/, { $0 } ).say # seems to work | 02:37 | ||
camelia | word | ||
02:38
cibs left
02:40
mcmillhj joined,
cibs joined
02:45
mcmillhj left
|
|||
Geth | whateverable: f03f0a2780 | (Aleks-Daniel Jakimenko-Aleksejev)++ | build.p6 Start from 2015.07 instead of 2015.10 This change has been there for a long time, but it was never committed. |
02:55 | |
whateverable: 9dc5935cba | (Aleks-Daniel Jakimenko-Aleksejev)++ | build.p6 Commit build.p6 as is For a long time this script was suffering due to various instabilities in rakudo (see issue #24). As of today, some of the bugs were fixed, but at the same time this script itself was wiggled into some stable state. I am afraid to touch it. Therefore, committing what we have without any clean up. In fact, there are some issues I can see right now, but the script is proven to work in practice… 🙈 |
|||
02:57
aborazmeh left
03:01
Cabanossi left
03:02
Cabanossi joined
03:03
khw left
03:06
mcmillhj joined
03:10
xtreak joined,
mcmillhj left
03:15
BenGoldberg left
|
|||
samcv | thanks ilbelkyr | 03:22 | |
err illfourn | |||
TEttinger | www.xkcd.com/1813/ | 03:23 | |
03:25
vike joined
03:28
hobbs left
03:29
noganex joined,
mcmillhj joined
|
|||
samcv | lol | 03:29 | |
03:30
Cabanossi left
03:31
hobbs joined
|
|||
samcv | i have read that new laptops aren't really much faster than older ones, i have sandybridge. do you guys think this is true. i need more speed but am thinking about maybe using another laptop i have and swapping in a quad core, if i can't get much faster speed by getting a newer 2 core laptop | 03:31 | |
03:31
noganex_ left
03:32
Cabanossi joined
03:33
sufrosti1o left,
sufrostico left,
sufrosti2o left
03:34
mcmillhj left
|
|||
TEttinger | woah, sandy bridge is rather old | 03:37 | |
how's the GPU, if any? | |||
samcv | gpu is fine for not gaming | 03:38 | |
i don't play games so that doesn't matter much | |||
but i have 16GB ram and SSD but i need more cpu speed | 03:39 | ||
have a 2.4GHz i5-2540M | |||
03:39
KDr2_c joined
|
|||
TEttinger | ram performance has improved a lot if you have ddr2 | 03:39 | |
samcv | er 2.6ghz. that's prolly stock | ||
2.6-3.3ghz | 03:40 | ||
03:40
mcmillhj joined
|
|||
samcv | i think i have ddr3 | 03:40 | |
yeah i have ddr3 | |||
TEttinger | there's ddr4 now and GPUs often have GDDR5 | ||
samcv | well i need cpu power though :) | ||
TEttinger | yes | 03:41 | |
I'd check notebookcheck | |||
samcv | i have a t540p and x220 (only laptop i actually use) | ||
so for 160 bucks i can buy a i7-4800MQ with 4 cores and 2.7Ghz to 3.7ghz. forget how much ram is in the other laptop. probably 8 | 03:44 | ||
and stick it in the t540 | |||
TEttinger | yours isn't bad, www.cpubenchmark.net/cpu_lookup.php...amp;id=812 | ||
motherboard? | |||
samcv | what? | ||
TEttinger | new ones probably use a newer socket | ||
can't just update processor usually | 03:45 | ||
03:45
mcmillhj left
|
|||
MasterDuke | ryzen is looking pretty nice... | 03:46 | |
so many cores | |||
samcv | these are all with 4 cores with the right sockets 46TDP or under ark.intel.com/Search/Advanced?s=t&...xTDPMax=47 | 03:47 | |
got an ebay search to search for all 8 lol | |||
checking cpubenchmark.net | |||
TEttinger | hm, your i5-2540 isn't on that list, samcv | 03:48 | |
samcv | that's another laptop | ||
TEttinger | ohhh | ||
samcv | point is the one i use atm has that i5 cpu | ||
other one is heavy but if it were super fast would probaby use it | 03:49 | ||
03:51
mcmillhj joined
|
|||
samcv | and those quad core cpu's aren't on that list | 03:51 | |
none of them | |||
TEttinger | mmmm | 03:53 | |
www.microsoftstore.com/store/msusa....333475500 | |||
samcv | maybe i need to search for it | ||
ok here www.cpubenchmark.net/cpu_lookup.php?cpu=4800mq | 03:54 | ||
8,515 vs 3,756 | |||
TEttinger | quite a bit better, mostly the twice as many cores thing | ||
samcv | yeah | ||
hopefully the TDP is not too much. but it's the chipset with nvidia gpu so has more cooling so i'm hoping i'll be fine | 03:55 | ||
TEttinger | are you in the US or somewhere in europe or somewhere else? | ||
samcv | disable the nvidia to save heat since they're 15TDP different i think | ||
US | |||
TEttinger | ok, I also know of some sites for buying laptops in europe, since people sometimes ask for help on that | 03:56 | |
the price range is ridiculous if you are buying something at a bad time for it | |||
03:56
mcmillhj left
|
|||
samcv | because of currency? | 03:56 | |
TEttinger | no, more sales | 03:57 | |
u-ou | perl6 rules | ||
i mean, hi | |||
samcv | hi | ||
TEttinger | if something's being discounted heavily due to a new processor version coming out, the last version is way better on price | ||
samcv | ah | ||
TEttinger | hey u-ou | ||
u-ou | I'm a beginner | 03:58 | |
but I know perl5 | |||
03:58
mcmillhj joined
|
|||
samcv | this is a good intro: learnxinyminutes.com/docs/perl6/ and then there's also docs.perl6.org if you know what yo uwant to look up | 03:59 | |
04:00
Cabanossi left
|
|||
u-ou | I started to read that one but didn't like it | 04:00 | |
I'm watching this youtube thing and reading the docs | 04:01 | ||
04:01
Cabanossi joined
04:04
cibs left
04:06
cibs joined
04:08
astj left
04:27
astj joined
04:28
cibs left
04:30
cibs joined,
jraglin joined
04:31
Cabanossi left
04:32
Cabanossi joined
|
|||
u-ou | how do you test if a value is of a given type? | 04:39 | |
AlexDaniel | ~~ | ||
m: say 42 ~~ Int | 04:40 | ||
camelia | True | ||
u-ou | ty | ||
04:41
astj left
|
|||
u-ou | is !~ the inverse of that? | 04:42 | |
AlexDaniel | !~~ | ||
u-ou | ty | ||
geekosaur | note there's corner cases here, because of subtyping (e.g. Bool values match Int because enums are subtypes of Int) | 04:43 | |
04:43
Cabanossi left,
astj joined
04:45
Cabanossi joined
04:46
kyan joined
|
|||
u-ou | > say True ~~ Int | 04:47 | |
AlexDaniel | m: say True ~~ Int | ||
camelia | True | ||
u-ou | but I got that as False :o | 04:48 | |
it looks like I'm using a really old version. | |||
04:49
mcmillhj left,
wamba joined
|
|||
samcv | perl6 --version | 04:51 | |
what is the output u-ou | |||
u-ou | 2015.11 lol | ||
geekosaur | that one might still have Bool as a boot-enum | ||
samcv | could be newer. how did you install it | ||
u-ou | apt | ||
on ubuntu | 04:52 | ||
geekosaur | (because Bool had to exist before enums did, in the setting) | ||
samcv | buggable, deb | ||
did i do that right | |||
geekosaur | huggable, deb | ||
huggable | geekosaur, CentOS, Debian, Fedora and Ubuntu Rakudo packages: github.com/nxadm/rakudo-pkg/releases | ||
samcv | there we go | ||
u-ou | I will just use docker run rakduo-star :p | 04:53 | |
samcv | what os do you have? | ||
u-ou | ubuntu | ||
samcv | i would just install the deb file from there after uninstalling with apt-get | ||
u-ou | alright | 04:54 | |
samcv | sudo deb -i blah.deb # i think that's how | ||
err | |||
dpkg i mean | |||
dpkg -i will work right | 04:55 | ||
just make sure to remove the old one first | |||
u-ou | cool | 04:57 | |
thanks | |||
AlexDaniel | commit: 2015.11 say True ~~ Int | 05:04 | |
committable6 | AlexDaniel, ¦2015.11: «False» | ||
AlexDaniel | heh | ||
I wonder when this happened exactly | 05:05 | ||
bisect: old=2015.11 say True ~~ Int | |||
bisectable6 | AlexDaniel, Bisecting by output (old=2015.11 new=43e0902) because on both starting points the exit code is 0 | ||
AlexDaniel, bisect log: gist.github.com/c01b7442ea01f5918b...1758b32cc8 | |||
AlexDaniel, (2015-11-23) github.com/rakudo/rakudo/commit/a0...d77f6a71ec | |||
05:07
mcmillhj joined
05:10
bwisti joined
05:13
mcmillhj left
05:21
Tonik joined
05:29
mcmillhj joined
05:32
xtreak left,
bwisti left
05:35
mcmillhj left,
xtreak joined
05:46
curan joined
05:49
mcmillhj joined
05:50
xtreak left
05:52
xtreak joined
05:54
mcmillhj left
05:56
Todd_ joined,
parv joined
|
|||
Todd_ | File question: If I open a file handle, then read the entire file, do I have to close it and reopen it to overwrite the file? In other words, how do i set the file pointer back thh\o the biginning? | 05:57 | |
06:00
mcmillhj joined
|
|||
samcv | Todd_, docs.perl6.org/routine/seek | 06:01 | |
look and you shall Seek | |||
Todd_ | Thank you Master! | 06:02 | |
06:04
Xliff_ joined,
mcmillhj left
06:05
smash joined
06:08
literal_ joined,
kshannon_ joined
|
|||
Todd_ | mumble, mumble: Undeclared routine: seek used at line 43 | 06:09 | |
samcv | it's a method | ||
Todd_ | 43: seek( $LogFileHandle, 0 ); | ||
samcv | so get an IO object and save it to a variable and then perform things on that handle | ||
06:09
reveres joined
|
|||
samcv | $var.seek(blah blah) | 06:09 | |
Todd_ | what do you mean? I already have the handle and have been reading from the file as a test. Now I want to overwrite the file, also as a test | 06:10 | |
06:11
Tonik left
|
|||
Todd_ | How does "$var.seek(blah blah)" set my pointer back to the beginning? And is the beginning zero or one? | 06:11 | |
samcv | 0 | ||
well the offset is from the specified location | 06:12 | ||
06:12
cibs left,
eythian_ joined,
drrho_ joined
|
|||
samcv | $var.seek(0, SeekFromBeginning) # i think | 06:12 | |
06:13
smash_ left,
revere left,
literal left,
kshannon left,
drrho left,
reveres is now known as revere,
g0d355__ left
|
|||
samcv | that's odd. how you specify the seeking tbh. as a SeekType type object. though i already knew our IO stuff had some oddities | 06:13 | |
06:13
cibs joined
06:14
john51 left
06:15
john51 joined
|
|||
Todd_ | Sam: that worked. Thank you again! | 06:15 | |
$LogFileHandle.seek(0, SeekFromBeginning); for @Log -> $Line { $LogFileHandle.print( "$Line\n" ) }; | 06:16 | ||
samcv | yay | ||
Todd_ | By the way, thanks to you guys, I can not use $_ in a for loop. I MUST name the guy! | ||
samcv | yay | 06:17 | |
for @whatever -> $var { } like that you mean Todd_ ? | |||
06:17
KDr2_c left
|
|||
Todd_ | yes! Makes what I am doign inside the {} far more maintainable as I knwo what $_ is suppose to be! I adore the feature! | 06:18 | |
samcv | :) so many great perl 6 features | ||
06:21
mcmillhj joined
|
|||
Todd_ | Sam: I am doing a first in, last out file. I read the file into an array, add something(s) to the end of the array, remove some stuff from the beginning or the array (maybe) and overwrite the original. I can see two ways of doing this. 1) remove elements from the beginiing of the array and writing the whole array back to the file, or 2) using a (gulp!) C loop and start writing from an index that skips over the lines to be removed. Yo | 06:22 | |
samcv | Todd_, you could just ditch the filehandle and use spurt | 06:23 | |
and it'll overwrite everything instead of like writing into the file itself | |||
if i'm describing things correctly | |||
seek will seek to a position and it will write from then onward. so if the changed array is shorter than the original one by the number of bytes, it will retain some old data at the end of the file | 06:24 | ||
06:24
Xliff_ left
|
|||
Todd_ | I want to remove lines from the top of the file and add lines to the bottom | 06:24 | |
06:24
Xliff_ joined
|
|||
samcv | so best to use `"Filename.txt".IO.spurt(@array.join("\n"))` | 06:24 | |
Todd_ | okay, so remove N elements from the beginning of the array first. | 06:25 | |
samcv | usually simpler to spurt and replace original file unless the file is big enough you want to get fancy | ||
06:25
mcmillhj left
|
|||
Todd_ | right now it is six line. The real file when I migrate it will be close to 1000 lines of text. Mostly "date time, no errors found" type stuff | 06:26 | |
If i spurt, do I need to seek first? | 06:27 | ||
samcv | nope | ||
if you use linux it's like doing `cat file > output.txt` | 06:28 | ||
Todd_ | Also, does shift have an option to shift N elements? or is it one at a time? | ||
samcv | yeah i think it does | ||
Todd_ | cat is a perfect example! Thank you! | ||
samcv | should be @array.shift(4) or something | ||
if it doesn't support it i'll eat my hat | |||
Todd_ | would it be a "Red Fedora"? Chuckle! | 06:29 | |
trying it now! | |||
samcv | m: my @a; for ^5 { @a.push('a') }; say @a.shift(3) | ||
camelia | Too many positionals passed; expected 1 argument but got 2 in block <unit> at <tmp> line 1 |
||
samcv | m: my @a; for ^5 { @a.push('a') }; say @a.shift | ||
camelia | a | ||
samcv | i guess i need to eat my hat now. also no it's a generic metaphorical hat :) | 06:30 | |
well Todd_ | 06:32 | ||
m: my @a; for ^5 { @a.push('a') }; say @a.shift xx 2 | |||
camelia | (a a) | ||
samcv | you can do this | ||
Todd_ | Ya, me too. Too many positionals passed; expected 1 argument but got 2 | ||
samcv | yeah just use xx operator | ||
will perform the command specified number of times and turn results into a Seq | 06:33 | ||
06:33
mcmillhj joined
|
|||
samcv | m: my @a = ('a'..'z'); say @a.shift xx 5; say @a | 06:33 | |
camelia | (a b c d e) [f g h i j k l m n o p q r s t u v w x y z] |
||
Todd_ | Yippee! | 06:34 | |
what did the xx do? | |||
06:34
darutoko joined
|
|||
samcv | <samcv> will perform the command specified number of times and turn results into a Seq | 06:34 | |
Todd_ | Like a loop. | ||
samcv | so shift's that many times, and the results of the shifts are a sequence of things | 06:35 | |
Todd_ | please tell me on the code level, you guys are just moving the element pointer and not moving data from one element to another down the line | ||
samcv | well it removes that many elements from the start of the array | 06:36 | |
and returns them | |||
Todd_ | I mean at the assembly code level. Are you just moving a pointer or are you actually moving data? | 06:37 | |
samcv | similar to how shift will remove the 1st element in the array and return one value. xx performs the command specified times and the result is a Seq object | ||
geekosaur | Todd_, that's internals and likely depends on the underlying type | ||
samcv | oh | ||
moving data | |||
well at least the array changes things | |||
geekosaur | also, "assembly code level"? this is mostly done at nqp level currently iirc | ||
samcv | the array has elements removed | ||
06:38
mcmillhj left
|
|||
samcv | and yeah what geekosaur said. it's removed from the array and if you don't use it, it'll probably be removed. if you do use it | 06:38 | |
then it'll just not be in the array | |||
but be in some other object | |||
Todd_ | I really don't want to do $x[0]=$[1]; $x[1]=$x[2] and so forth. Areyou guys telling the reference that the array starts in a differnt location? | 06:39 | |
06:39
wamba left
|
|||
samcv | elements are removed from the start of the array | 06:39 | |
06:39
ufobat joined
|
|||
samcv | you are discarding them right Todd_ ? just need them removed? shift can do that. or if you assign the result of shift to a variable you can hold onto that data | 06:40 | |
Todd_ | into the big bit bucket int he sky. I don't want them. Changing the poitner would be extremely fast. moving 1000 lines or more of text, not so much | 06:41 | |
samcv | m: my @array = 10, 20; @array[0].WHERE.say; my $var = @array.shift; $var.WHERE.say | ||
camelia | 140376078134104 140376078134104 |
||
samcv | in this case it is exactly the same object that gets put into `$var` | ||
Todd_, i would think shift should be pretty fast. | 06:42 | ||
Todd_ | cool! | ||
06:42
mcmillhj joined
|
|||
samcv | m: my @array = lines; say @array.elems | 06:42 | |
camelia | 88 | ||
samcv | m: my @array = lines; @array.append(@array); say @array.elems | ||
camelia | 176 | ||
06:43
Cabanossi left
|
|||
samcv | m: my @array = lines; @array.append(@array) xx 1000; my $t1 = now; @array.shift xx 1000; say now - $t1; | 06:43 | |
ok maybe shouldn't have made it so big | |||
camelia | (timeout) | ||
samcv | m: my @array = lines; @array.append(@array) xx 10; my $t1 = now; @array.shift xx 1000; say now - $t1; | 06:44 | |
camelia | 0.0022920 | ||
samcv | m: my @array = lines; @array.append(@array) xx 100; my $t1 = now; @array.shift xx 1000; say now - $t1; | ||
camelia | (timeout) | ||
samcv | oh yeah. cause uh. it appends each doubly long array to itself. so i'm sure it grows pretty fsat | ||
but yeah it shifted 1000 elements in 0.002 seconds Todd_ so that's pretty fast | 06:45 | ||
06:45
Cabanossi joined
|
|||
samcv | m: my @array = lines; @array.append(@array) xx 100; say @array.elems | 06:45 | |
m: my @array = lines; @array.append(@array) xx 10; say @array.elems | |||
camelia | (timeout) | ||
90112 | |||
samcv | hahah. so xx 10 is 90,000 elemns, can't even imagine what xx100 is at the rate it grows | 06:46 | |
Todd_ | Then on the assembly code (or p code or whater is is being called) you are just moving an pointer. This is awesome and well though out. | ||
thought | |||
samcv | yeah i guess that's an alright c analogy. though it's not 100% accurate. but essentially in perl 6 terms | ||
06:47
mcmillhj left
|
|||
samcv | geekosaur, why don't we have a .shift(10) ? should we? | 06:47 | |
parv | samcv, would 10 be number of first n elements or an index k? | 06:48 | |
samcv | it would shift the first 10 elements and return a sequence or something | ||
geekosaur | samcv, isn't that splice? | ||
parv | ok. | 06:49 | |
geekosaur | shift was modeled after the shell | ||
samcv | geekosaur, well splice implies splicing some other thing in there | ||
as opposed to just removing them | |||
geekosaur | but even from the earliest perl version that had it, the some other thing could be empty | 06:50 | |
samcv | m: my @array = 1,2,3,4; @array.splice(0, 2).say | ||
camelia | [1 2] | ||
samcv | ok looks like man page can be updated for splice | ||
splice geekosaur ? | 06:51 | ||
06:51
RabidGravy joined
|
|||
geekosaur | ? | 06:51 | |
samcv | you mean splice in perl 5 or whatever | ||
geekosaur | yes | ||
(but splice predates perl 5 iirc.) | 06:52 | ||
think it came in in one of the later perl 3 patchlevels? | |||
06:52
mcmillhj joined
|
|||
samcv | so that means we should not allow you to shift(Int) number of elements? | 06:53 | |
geekosaur | Todd_, btw, the problem with that kind of optimization is that Perl 6 does not require that a thing that quacks like an array actually be an array. Such a pointer swizzling optimization could be provided for things backed by an actual array, but you need a fallback for when it's not. | ||
samcv, well, it could be allowed but you have to think about duplication of work | 06:54 | ||
Todd_ | and that would be why you can develope 10 times faster in Perl than in C. | ||
samcv | true geekosaur | ||
geekosaur | (also splice is generally slower than the others because it always works from a fixed position) | ||
er | 06:55 | ||
samcv | slower than shift? | ||
geekosaur | backwards that | ||
samcv | shift is slower? | ||
geekosaur | splice is slower because it can start anywhere, shift is faster because it starts at the same place always | ||
samcv | k | ||
so that means there may be a reason to allow you to shift X number of elements | |||
geekosaur | ...but that's older-perl, where you always used it on an actual array, vs. perl 6 where it might not actually be a vm array | ||
probably want to discuss this with lizmat | 06:56 | ||
samcv | kk | ||
06:56
xtreak left
|
|||
samcv | i mean if it simply performs shift specified number of times, the normal shift will do its work right? | 06:56 | |
and act accordingly | |||
Todd_ | oh bugger, I keep capitizing My and If. mumble | 06:57 | |
samcv | heh Todd_ | ||
06:57
mcmillhj left
|
|||
geekosaur | .oO { use Slang::Todd_ } | 06:57 | |
samcv | geekosaur, you can unshift an array | 06:58 | |
geekosaur | (could probably do that, starting from Slang::Tuxic or something) | ||
Todd_ | does .oO correspond to a bad word? | ||
samcv | err iugnore me | ||
geekosaur | thought bubble | ||
samcv | misread something | ||
wait nvm. you _can_ unshift an array of things onto another array | |||
so would make sense if you can shift a certain number of things off an array | |||
06:58
domidumont joined
06:59
xtreak joined
|
|||
samcv | that may be a more compelling reason than my others for adding this. will talk with lizmat | 06:59 | |
geekosaur | right. the questions are (a) older-perl decided not to do them because of overlap with splice; (b) while .shift(N) can be optimized when backed by an actual array, it ends up degrading to a loop when not so backed | 07:00 | |
Todd_ | uh oh. Back to my Modula2 days. I just declared `my Int $NewNumLines;` Bad Todd. No soup for me! | ||
parv | thanks samcv (about your proposed shift function, regardless of that being available later) | 07:01 | |
geekosaur | possibly other questions as well, depending on where this fits in types vs. roles like Positional | ||
samcv | Todd_, the capitalization thing you mean? | 07:02 | |
07:02
mcmillhj joined
|
|||
samcv | yeah of course geekosour | 07:02 | |
geekosaur | (I suspect, the way things are currently set up, there is no good way to optimize for the array-backed case if you put it in Positional) | ||
07:02
brrt joined
|
|||
geekosaur | (but that's likely a lizmat question) | 07:02 | |
07:03
rindolf joined
07:04
mst joined
07:07
mcmillhj left
|
|||
Todd_ | `My $var` and `If $var > 0`. Drives me nuts | 07:08 | |
I am capitilizing the first letter of a sentence | 07:09 | ||
07:13
mcmillhj joined
|
|||
Todd_ | at least I am FINALLY remembering to add my semicolons at the end. | 07:14 | |
I am going to call it a night | |||
Thank you guys for all the wonderful help! | |||
07:17
mcmillhj left
07:20
brrt left
07:25
nadim_ joined
|
|||
samcv | night Todd_ | 07:28 | |
07:28
wamba joined
|
|||
Todd_ | :-) | 07:28 | |
07:28
Todd_ left
|
|||
Woodi | hallo #prl6 :) | 07:34 | |
parv | holla | 07:35 | |
Woodi | samcv: if you want more CPU power I will strongly suggest desktop - laptop cpus always are weeker. aaaand on top of that shiny, paper-thin laptop with moderate cpu :) | 07:36 | |
samcv | i have a desktop. i never use it though | ||
07:37
mcmillhj joined
|
|||
parv was admiring iPad Mini w/ keyboard few hours ago. Don't tell to Woodi noone. | 07:37 | ||
Woodi | samcv: other option is remote work/testing. but not for business stuff, IMO. | ||
samcv | though the cpu i'm looking at is 2x the speed of the one i have now. so that is plenty good enough for my uses | 07:38 | |
Woodi | samcv: even x220 is haevy, and T series is even better ;) | ||
samcv | though wish the t540p were lighter and smaller. x220 is smaller and lighter. well heavy for today i guess | ||
but t540 is like more than double the weight it feels like | |||
Woodi | that's why I proposed paper-thin laptop :) but this excludes powerfull cpu | 07:39 | |
samcv | also if networking goes out how will i work if i remote into something. i cannot have that | ||
07:39
kurahaupo__ joined
|
|||
Woodi | and in last days we had first Ryzen bugs :) | 07:40 | |
samcv | desktops are power inefficient as well. kind of wasteful to keep on | ||
Woodi | samcv: just GPUs are power ineficient :) | ||
samcv | need to see if the quad core that was an option on the t540p had a different heatsink/fan. | 07:41 | |
07:42
mcmillhj left,
tojo joined,
bjz joined
|
|||
samcv | Woodi, well the whole motherboard + power supply it all adds up | 07:43 | |
plus cpu's not designed to be as power efficient because when you don't have a battery, minimum tdp is not as important for the motherboard and chipset as a whole | |||
Woodi | samcv: but I just planning to switch from X series back to T. or even from whole Lenove thanx to backdors... China ppls realy know how to destroy their own good product... | ||
samcv | backdoors? | 07:44 | |
Woodi | smash: Intel have 65 Watt desktop cpus | ||
fish-something... | |||
samcv | i like sushi | ||
Woodi | samcv: I'm afraid of sushi :) it's raw food... | 07:45 | |
u-ou | how do I use the bot? | ||
Woodi | huggable: hug u-ou | ||
huggable hugs u-ou | |||
u-ou | lol ty | ||
but how do you run perl? | 07:46 | ||
6 | |||
Woodi | u-ou: there are some docs I think, will try to find | ||
u-ou | huggable: 1 + 1 | ||
huggable | u-ou, nothing found | ||
Woodi | m: say 1+1 | ||
camelia | 2 | ||
u-ou | cool thanks | ||
Woodi | np :) | ||
u-ou | i like sushi too! | ||
kurahaupo__ | Woodi: sushi is to cooking as a bikini is to tayloring: there's nowhere to hide if you make a mistake, so it's generally more trustworthy than ordinary food | 07:47 | |
Woodi | I like butter cream from raw eggs :) | ||
samcv | u-ou, how to run perl6? | ||
as in how to install? or like documentation or tutorials on programming | |||
u-ou | m: say 1+1 | ||
camelia | 2 | ||
u-ou | how to do that :P | ||
Woodi | kurahaupo__: I know it's safe :) just never tried becouse it's feel scary :) | ||
samcv | u-ou, you just did it! | 07:48 | |
u-ou | I know | 07:50 | |
because Woodi showed me how | |||
samcv | i wasn't sure what the question was though :P | 07:51 | |
07:52
g4 joined
|
|||
u-ou | that's why I told you lol :p | 07:52 | |
07:53
kurahaupo__ left,
kurahaupo__ joined
|
|||
u-ou | what's an idiomatic way to insert a Pair into a hash? just %h{p.key} = p.value? | 07:55 | |
07:56
mcmillhj joined
|
|||
u-ou | s/p/$p/g | 07:57 | |
07:57
kurahaupo__ left
|
|||
parv found Go to require drastic reorientation (feels low level & verbose; Java-like) than Perl 6 or Python when coming from Perl 5, shell; may try Go again when have more free time to pay attention. | 07:59 | ||
08:01
brrt joined
08:02
mcmillhj left
08:06
mcmillhj joined
|
|||
u-ou | ahh, method push | 08:07 | |
08:10
xinming_ is now known as xinming
08:11
mcmillhj left
08:16
wdna joined
|
|||
u-ou | pony | 08:16 | |
08:20
ChoHag left
|
|||
Woodi | some story: for years I was looking on thinkpads business-grayish displays with pity... but not so long ago I got "new" 99% sRGB, wide screen with Reader Mode. I turned ON this becouse on my previous gaming monitor I used reader mode all the time (discovered it few months ago) - with this I can look on monitor without half-close eyes... some days later in the office I look on thinkpad and something started | 08:22 | |
to bother me... "Why it is so gray? ... | |||
... I din't turn readr mode on... Do it even have such mode?" And then I got some DING moment: It's build in! TaDa! My dear ThinkPad ! | |||
ok, maybe it's not good story... | |||
anyway, with 430 or 440 old keyboard is gone... one more reason to drop thinkpads... is it realy so big problem to keep best keyboard in new models ??? | 08:24 | ||
TEttinger | heh | 08:26 | |
08:26
brrt left
|
|||
TEttinger | yeah, the old thinkpads were supposed to be amazing, my brother had one that I think was an IBM thinkpad, dropped it from arm to concrete multiple times while walking to class, around 2008-2012 era. it still runs | 08:27 | |
very slowly, but it still runs | |||
timotimo | my first one was a t23, it was fantastic | 08:28 | |
08:28
mcmillhj joined
|
|||
timotimo | i ran gentoo on it for no good reason | 08:28 | |
08:31
ChoHag joined
|
|||
timotimo | i'm replacing my mouse with one that can keep a drag going and usually only clicks once when i press the mouse button once! | 08:32 | |
Woodi | I play CS1.6 on T41 fo years... legs on the table, laptop on legs, me on sofa :> too bad for me that 41 was last model with some part un-soldering from heat and non-rigid base :) | 08:33 | |
08:33
mcmillhj left
|
|||
moritz just returned from a small cross-country skiing tour o/ | 08:34 | ||
Woodi | hi back moritz :) | 08:35 | |
moritz: nice blue picture you got :) | |||
timotimo | huh, you can't cross the country on skiis! | ||
08:35
dakkar joined
|
|||
moritz | depends on the country :-) | 08:36 | |
08:36
Peter_R left
|
|||
timotimo | clearly there's only one The Country | 08:36 | |
moritz | and it's blue? | 08:37 | |
08:37
Peter_R joined
08:38
zakharyas joined
08:40
mcmillhj joined
|
|||
moritz | perlgeek.de/images/view-beitostolen.jpg | 08:40 | |
timotimo | now i get it | 08:41 | |
08:42
Wanderer68 joined
|
|||
Woodi | nice and blue but I wasn't talking about that - don't have spy software installed in moritz++ camera :) I means picture with origami butterfly and blue background :) | 08:43 | |
08:43
Cabanossi left
|
|||
moritz | Woodi: yes, I thought so, but couldn't resist :-) | 08:44 | |
Woodi | to the topic: flow based programming could be relevant to hyper/race... it even use buffers like lizmat++ prototype... | 08:45 | |
08:45
mcmillhj left,
Cabanossi joined
08:48
wamba left
|
|||
lizmat | Files=1180, Tests=55954, 192 wallclock secs (11.65 usr 4.55 sys + 1151.96 cusr 103.22 csys = 1271.38 CPU) | 08:50 | |
Woodi | and as I understand Sponge approach it gets methods and seq and work on it in paraller but internally. that's one of the ways of working with data - prepare all data, define work, execute. it have adventage that it [can] know size of work. but I thinked hyper/race was more like adding paralleism to pipe, size of elements to transform is not know, you can only request more (maybe with buffering internally) | ||
samcv | can i get bisectable to run a code from a gist or something? anyone know | ||
Woodi | samcv: not me. but you have a gist ? you can try :) | 08:51 | |
samcv | lol i suppose | ||
bisectable6, gist.github.com/samcv/0df9fcc0c119...fbee6f24d7 | |||
bisectable6 | samcv, It looks like a URL, but mime type is ‘text/html; charset=utf-8’ while I was expecting something with ‘text/plain’ or ‘perl’ in it. I can only understand raw links, sorry. | ||
samcv | bisectable6, gist.githubusercontent.com/samcv/0...e/concat.t | ||
bisectable6 | samcv, Successfully fetched the code from the provided URL. | ||
Woodi | yay | ||
samcv | \o/ | ||
bisectable6 | samcv, Bisecting by exit signal (old=2015.12 new=43e0902). Old exit signal: 1 (SIGHUP) | 08:52 | |
08:52
TheovdH joined
|
|||
samcv | oh no | 08:52 | |
TEttinger | ? | ||
samcv | will have to narrow the bisect i think | ||
TEttinger | 2015.12, heh | ||
samcv | as soon as it tells me when it stopped exit code 1 | ||
though it is a .t file so maybe it failed 1 test? or just totally was broken. idk | 08:53 | ||
lemme check exit code | |||
yeah i get exit code 1 currently. so maybe it's always been this way | |||
bisectable6 | samcv, bisect log: gist.github.com/a293e9e03bc844d693...afdd42fdf3 | ||
samcv, (2016-03-20) github.com/rakudo/rakudo/commit/f6...c131744403 | |||
samcv | evalable6, gist.githubusercontent.com/samcv/0...e/concat.t | 08:55 | |
evalable6 | samcv, Successfully fetched the code from the provided URL. | ||
(exit code 1) ok 1 - ok 2 - ok 3 - ok 4 - ok 5 - ok 6 - ok 7 - ok 8 - ok 9 - ok 1… |
|||
samcv, Full output: gist.github.com/f3dedf562375bb8517...16dbab7b72 | |||
samcv | bisectable6, help gist.githubusercontent.com/samcv/0...e/concat.t | ||
bisectable6 | samcv, On both starting points (old=2015.12 new=43e0902) the exit code is 1 and the output is identical as well | ||
samcv, Output on both points: «04===SORRY!04=== Error while compiling /tmp/IFjR0Uw1S0Confusedat /tmp/IFjR0Uw1S0:1------> 03help https:08⏏04//gist.githubusercontent.com/samcv/0df9f expecting any of: colon pair» | |||
samcv | bisectable6, help | 08:56 | |
bisectable6 | samcv, Like this: bisectable6: old=2015.12 new=HEAD exit 1 if (^∞).grep({ last })[5] // 0 == 4 # See wiki for more examples: github.com/perl6/whateverable/wiki/Bisectable | ||
samcv | bisectable6, old=2016.04 gist.githubusercontent.com/samcv/0...e/concat.t | ||
bisectable6 | samcv, Successfully fetched the code from the provided URL. | ||
samcv, Bisecting by exit code (old=2016.04 new=43e0902). Old exit code: 0 | |||
samcv | hopefully i was not the one who broke it | 08:57 | |
bisectable6 | samcv, bisect log: gist.github.com/eced94a0890dd13e19...c6bdb8aaf9 | ||
samcv, (2017-03-22) github.com/rakudo/rakudo/commit/02...b23afc1f96 | |||
samcv | heh i broke it :P | ||
hehe | |||
08:58
wamba joined
08:59
mcmillhj joined
|
|||
Woodi | samcv: don't worry :) | 09:01 | |
09:01
jraglin left
09:03
wamba left
09:04
mcmillhj left,
nadim_ left
|
|||
Woodi | btw. I know it's very old school to have project code "tree" like in old days in Linux but I see a lot of merges with a lot of changes... maybe it would be good to slow down a little and having branches that are parallel to head for some time, for testing purposes ? | 09:04 | |
09:08
jonadab left
09:15
shdb left
09:17
shdb joined
09:18
cibs left
09:20
cibs joined
09:21
mcmillhj joined
09:26
mcmillhj left
|
|||
samcv | well this is just something we don't have test coverage yet. and as long as it's not close to the end of the month | 09:29 | |
change seemed sane and fine and i even added tests to support it. but today added some more tests for more exotic cases like korean text (three codepoints per visible character aka grapheme) and \r\n newlines | 09:30 | ||
timotimo | i really prefer short-lived branches over long-lived branches | ||
samcv | yes | ||
09:30
aborazmeh joined,
aborazmeh left,
aborazmeh joined
|
|||
samcv | i use personal branches though | 09:31 | |
timotimo | don't show anybody! :) | ||
samcv | then merge in or cherry-pick the commits into master | ||
heh timotimo | |||
09:32
mcmillhj joined
|
|||
timotimo | ugh, i have only looked at moar-gdb for a minute and a half and i'm already feeling like quitting | 09:32 | |
masak | don't give up! | 09:35 | |
you can do this! :+1: | |||
(hi, #perl6) | |||
(good... antenoon) | |||
09:36
movl left
09:37
mcmillhj left
|
|||
lizmat | m: dd ^10 .grep({ FIRST say "first"; LAST say "last"; $_ %% 2 }) # looks like FIRST phaser not working either :-( | 09:40 | |
camelia | (0, 2, 4, 6, 8).Seq | ||
lizmat | m: dd ^10 .map({ FIRST say "first"; LAST say "last"; $_ if $_ %% 2 }) # map does | 09:41 | |
camelia | first last (0, 2, 4, 6, 8).Seq |
||
timotimo | i now have written something in python that uses exceptions to cause a fall-back to be returned from a decorated function further up the stack | ||
not sure if terrible or genius | |||
09:43
Cabanossi left,
tojo left
|
|||
lizmat | sometimes I wonder whether we shouldn't disallow phasers in grep altogether | 09:43 | |
afk& | |||
09:45
Cabanossi joined
09:46
mtsd joined
|
|||
masak | lizmat: huh! phasers in grep... | 09:48 | |
lizmat: on the *one* hand, it seems consistent with control-flow keywords working in grep... | |||
masak stops to think if there is a counterargument | |||
lizmat: on the *other* hand, if it already works in .map, then that's at least an inconsistency, the kind we prefer to avoid ;) | 09:50 | ||
so, I guess, either un-implement it in .map (with a sufficiently stern motivation as to why You Did Not Actually Want phasers in .map and .grep), or implement it in .grep (with a mixture of pride and fear that that even works) | 09:51 | ||
007 chickens out on this one, big time. it just says "no" to anything lexotic. | |||
see github.com/masak/007/issues/145#is...-232278144 | 09:52 | ||
09:53
TheovdH left,
TheovdH joined,
mr-foobar joined
09:54
mcmillhj joined
09:55
n1ce joined,
Sound joined
09:57
lukaramu joined
09:59
mcmillhj left
10:07
bjz_ joined
|
|||
spider-mario | the release notes for rakudo 2017.03 say: | 10:07 | |
“It includes bugfixes and optimizations on top of the 2015.12 release of Rakudo, but no new features” | |||
are they supposed to refer to 2015.12? | |||
10:07
TEttinger left
|
|||
spider-mario | oh, right, that was the “official ‘1.0’ release”, wasn’t it? | 10:08 | |
(wow, already) | |||
10:08
bjz left
10:09
mtsd left
|
|||
timotimo | right | 10:10 | |
10:11
aborazmeh left
|
|||
Woodi | samcv, timotimo: I was proposing there to cherry-pick or merge head into branch with new big feature and test it fer few days, maybe a week with normal development patches. and then merge into head. but that require that testing would be done by someone or automatically, without it there is no point in one more step on the way... | 10:13 | |
10:13
aborazmeh joined,
aborazmeh left,
aborazmeh joined
|
|||
samcv | well we have a full suite of tests in roast repository | 10:13 | |
but if it's not catched by that, often it can be catch by people using the dev build, then it's fixed before release and tests are added so it never breaks again | 10:14 | ||
10:15
labster left
10:16
mcmillhj joined
|
|||
Woodi | samcv: I probably thinked that "catching" by ppls doing dev make one more temporal problem for them. but not saying everything is wrong now, no... | 10:17 | |
10:21
mcmillhj left
10:26
mxco86 left
10:29
parv left
10:31
bjz joined
10:32
bjz_ left
10:38
eythian_ is now known as eythian,
mcmillhj joined
10:42
literal_ is now known as literal
10:43
mcmillhj left
10:54
yqt joined
10:57
Cabanossi left
|
|||
samcv | Woodi, turns out it wasn't me who broke it :P | 10:58 | |
i merged it though. so. i guess maybe i'm to blame too. idk lol | |||
it is all okay though :) tests are now better | |||
11:00
Cabanossi joined
11:01
mcmillhj joined
11:02
abraxxa joined
11:06
mcmillhj left
11:10
pmurias joined
|
|||
pmurias | hi | 11:10 | |
masak | \o | ||
11:12
mcmillhj joined
|
|||
moritz | o/ | 11:16 | |
samcv | yes | 11:18 | |
11:19
mcmillhj left
|
|||
samcv | ok fix is now in MVM master will get somebody to bump nqp and mvm version for rakudo since i'm going to bed | 11:20 | |
11:22
xtreak left,
bjz left
11:23
mcmillhj joined
|
|||
moritz | can do (I hope :-) | 11:25 | |
timotimo | good night! | 11:27 | |
11:28
mcmillhj left
11:30
robertle left
11:43
bjz joined
11:45
robertle joined
11:47
mcmillhj joined
11:48
cibs left
11:50
cibs joined,
duncan_dmg joined
11:51
wamba joined
11:53
mcmillhj left
12:00
mcmillhj joined
12:03
awwaiid left
12:04
m44st4 left
12:05
mcmillhj left
12:14
mcmillhj joined
12:17
llfourn left
12:19
mcmillhj left
12:28
mcmillhj joined
12:32
mcmillhj left
12:34
gdonald joined
|
|||
[Coke] finds open.segment.com/fellowship (grant for open source developers) | 12:36 | ||
12:36
kyan left
12:42
effbiai left
12:43
faraco joined
12:47
mcmillhj joined
13:00
aborazmeh left
13:01
awwaiid joined
13:10
sufrostico joined,
sufrosti1o joined,
sufrosti2o joined
13:20
ufobat left
13:22
skids joined
13:31
cschwenz joined
13:32
cibs left
|
|||
cschwenz | given that IO::Notification.watch-path() watches the given path (docs.perl6.org/type/Supply#method_...tch-path), how do you 1) list all of the watched paths, and 2) un-watch a path? | 13:33 | |
13:34
cibs joined
13:35
lukaramu_ joined
|
|||
jnthn | For 1 you'd have to track yourself; For 2, should be handled by closing the tap | 13:36 | |
cschwenz | thanks jnthn :-) | 13:37 | |
jnthn | (On 1, we don't have that info around to hand back, so we'd have to explicitly do so also) | ||
13:39
lukaramu left
13:44
Cabanossi left,
cibs left
13:45
Cabanossi joined
13:46
cibs joined
13:47
MilkmanDan left
13:48
MilkmanDan joined
|
|||
timotimo | it'd be cool if there were a way to watch a path recursively ... but at least linux doesn't offer that afaik | 13:52 | |
jnthn | If recursive dir is for module-space then this surely is also :) | 13:54 | |
13:54
wdna left
|
|||
timotimo | fair enough | 13:57 | |
14:00
cschwenz left
14:03
wamba left
14:08
curan left
14:10
Ven joined,
Ven is now known as Guest65550
14:11
Guest65550 is now known as Ven`
14:12
AlexDaniel left
14:13
sufrosti2o left,
sufrostico left,
sufrosti1o left
14:17
ChoHag left
14:19
sufrostico joined,
ChoHag joined
|
|||
pmurias | why do we use 72 characters as the wrapping limit for commit messages? | 14:21 | |
Ven` | git convention IIRC. | 14:23 | |
masak | 80 - 4 spaces indent - 4 spaces for symmetry | ||
[Coke] | RT #131048 - this a Linenoise bug, I wonder? | 14:24 | |
synopsebot6 | Link: rt.perl.org/rt3/Public/Bug/Display...?id=131048 | ||
masak | Ruby has a new "absent" operator: medium.com/rubyinside/the-new-abse...3ef6cd0b99 -- but I struggle to understand what I would use it for | 14:31 | |
14:36
tokomer joined
|
|||
[Coke] | the main example seems to be "does not contain", but that seems better done for literals with a ! .contains | 14:36 | |
pmurias | the example that matches /* */ style comments is the one that makes sense in the blog post | 14:42 | |
Ven` | masak: it removes the need for some lookaheads | 14:43 | |
negative* lookaheads | |||
14:46
nhywyll joined
14:47
nhywyll left
14:51
jonas1 left
|
|||
pmurias | Ven`: is it really useful for anything other than matching something ending with a multi character delimiter? | 14:56 | |
15:02
cibs left
15:03
cdg joined
|
|||
Ven` | pmurias: it's useful when you want to make sure e.g. a delimiter is not present | 15:04 | |
<<I want \d+ \d+ with something inbetween that isn't "ven">> | |||
15:04
cibs joined
15:07
wamba joined
|
|||
pmurias | Ven`: how do you combine the absent operator with \d+? | 15:08 | |
Ven` | \d+(?~ven)\d+ | ||
15:12
bjz left
|
|||
b2gills | m: say '123 ven 32' ~~ /(\d+) (.*) <!{ $1.contains('ven') }> (\d+) / | 15:13 | |
camelia | 「123」 0 => 「12」 1 => 「」 2 => 「3」 |
||
b2gills | It would take more work to get the same semantics as (?~ ) | 15:14 | |
Ven` | ^ that's very very ugly and probably doesn't have very good performance due to backtracking (?) | 15:15 | |
b2gills | m: #`(There is space available) say '123 ven 32' ~~ /(\d+) <- 'ven'> (\d+) / | 15:18 | |
camelia | 5===SORRY!5=== Unrecognized regex metacharacter < (must be quoted to match literally) at <tmp>:1 ------> 3available) say '123 ven 32' ~~ /(\d+) <-7⏏5 'ven'> (\d+) / Unable to parse regex; couldn't find final '/' at <tmp>:1 ------> … |
||
15:34
cdg_ joined
15:35
tokomer left
15:37
cdg left
15:50
sufrostico left
|
|||
perlpilot | The implied * in (?~absent) bothers me for some reason. | 15:53 | |
15:57
Cabanossi left
15:58
Wcool joined
|
|||
Wcool | hi | 15:58 | |
faraco | hi | ||
Wcool | Does anyone know how to assign STDOUT or STDIN to a (file) variable? | 15:59 | |
like perl5: my $fh_out = *STDOUT; | |||
jnthn | The handle is in the $*OUT varialbe | 16:00 | |
(And $*ERR and $*IN) | |||
So my $fh_out = $*OUT | |||
Wcool | great, cheers | ||
16:00
Cabanossi joined
|
|||
faraco | question, is this a good practice just for STDOUT? perl6 -e 'my $message = q:x/ls -a/; say $message' | 16:01 | |
I mean, TIMTOWTDI right? | 16:02 | ||
16:02
tokomer joined
|
|||
gfldex | faraco: &say will be a bad idea in many cases | 16:04 | |
16:09
mcmillhj left
16:10
jraglin joined
|
|||
faraco | can I see an example, if you don't mind. | 16:10 | |
16:11
Wcool left
16:12
nhywyll joined
16:14
mcmillhj joined
|
|||
lucs | Holy cow! JH Conway will be in Montreal to give a conference in a couple of weeks. | 16:16 | |
lucs won't miss it | |||
DrForr loos at his Math::Game module :) | 16:17 | ||
16:19
mcmillhj left
|
|||
[Coke] uses perl 6 to safely truncate a utf8 string to fit into a 4000 byte varchar without having to worry about cutting a character into pieces. | 16:23 | ||
DrForr senses mySQL. | 16:25 | ||
16:27
mcmillhj joined
|
|||
mst | as if a million developers cried out, and were suddenly silently trunca | 16:29 | |
16:32
mcmillhj left,
araujo left
16:33
mcmillhj joined
|
|||
[Coke] | DrForr: Oracle | 16:33 | |
I was truncating to 4000 chars at first, but that failed because it's 4000 bytes. | 16:34 | ||
DrForr | mst++ | ||
16:37
tokomer left
16:38
mcmillhj left
16:40
zakharyas left
16:44
domidumont left,
araujo joined
16:50
mcmillhj joined
16:55
Sound left,
mcmillhj left,
thowe_work joined
16:58
Cabanossi left
17:00
abraxxa left,
Cabanossi joined
17:02
mcmillhj joined
17:08
xzhao left
|
|||
gfldex | faraco: say will truncate lists at 100 elements or output whatever an overloaded .gist returns on the object you call say with | 17:10 | |
17:13
xzhao joined,
xzhao left
17:15
xzhao joined,
kurahaupo__ joined
17:16
m44st4 joined
|
|||
m44st4 | Hi ! I'm currently trying to use socket in perl6, but i'm in front of a problem: when i use $socket.recv, i only receive the first 12 chars, i have to $socket.recv again to receive the rest. Does anyone have an idea about that? | 17:17 | |
17:19
rindolf left
|
|||
[Coke] | m44st4: are you passing any args to the .recv call? | 17:25 | |
m44st4 | i tried without and with a length | ||
but it looks like it stopped receive after the first whitespace | |||
geekosaur | if it's non-blocking, as libuv's sockets almost certainly are, all bets are off as to how many reads / how much data | 17:26 | |
if you were trying to rely on read lengths, on a stream socket, you are doing it wrong | |||
m44st4 | i don't understand what you mean | 17:28 | |
i thouth recv just receive data until \n | |||
geekosaur | I would expect it to mimic the C recv() call | ||
which just does binary data, it cares not about newlines | 17:29 | ||
m44st4 | hmm ok | ||
but i did not understand the reason why it stop receive | 17:30 | ||
17:31
rindolf joined
|
|||
geekosaur | because there is no guarantee that (a) the sending kernel (b) the receiving kernel (c) any network equipment between them will retain any notion of how it was sent | 17:32 | |
if you write out a line all at once in the sender, it's entirely possible for each character to be received in its own packet and potentially a separate recv() call needed for each. | |||
m44st4 | ok! that's clear :) | 17:33 | |
thanks | |||
geekosaur | if you need packets to be retained as packets, use UDP. (but I don't think libuv supports UDP sockets yet, so rakudo doesn') | ||
you might also just want to use normal handle-based I/O and .lines | |||
17:37
duncan_dmg left
17:41
raschipi joined
|
|||
jnthn | There is basic UDP support in IO::Socket::Async, fwiw :) | 17:42 | |
(And libuv does support UDP) | |||
geekosaur | heh | 17:43 | |
mst takes a moment to bemoan the absence of unix sockets | |||
geekosaur | also, while it's possible for that case I mentioned to happen, I'd probably be taking a close look at the network equipment if it actually did that | 17:44 | |
17:44
Cabanossi left
17:45
Cabanossi joined
|
|||
geekosaur | (that doesn't mean yours indicates a problem; lots of stuff can happen. 12 octets + header makes a bit more sense for a packet than 1 octet + header) | 17:45 | |
17:49
andrzejku joined
17:50
zenon joined
|
|||
zenon | p6: say "生"~&"死"; | 17:51 | |
camelia | 愛 | ||
17:58
cpage left
17:59
cpage joined
18:00
dakkar left,
n1ce left
18:01
sufrostico joined
18:02
n1ce joined
|
|||
faraco | p6: say "生"~&"死".ords | 18:09 | |
camelia | |||
18:11
cdg_ left
18:12
faraco left
18:16
mcmillhj left,
Wanderer68 left
18:18
mcmillhj joined
18:22
cibs left
18:23
mcmillhj left,
gdonald left
18:24
mcmillhj joined,
AlexDaniel joined,
cibs joined
|
|||
Geth | doc: 787882b6ab | (Zoffix Znet)++ | doc/Language/5to6-perlfunc.pod6 Update `pipe` info IO::Pipe does not offer what Perl 5's `pipe` routine does. |
18:27 | |
18:30
AlexDaniel left
|
|||
Geth | doc: 61ef0f6a4e | (Zoffix Znet)++ | doc/Language/5to6-perlfunc.pod6 s/suttle/shuttle |
18:30 | |
18:33
Ven` left,
domidumont joined,
Sound joined
18:35
raschipi left
|
|||
samcv | can somebody tell me why i get this error? gist.github.com/samcv/0df9fcc0c119...fbee6f24d7 | 18:35 | |
Variable '@ords' is not declared. line 29 | |||
but it is declared. | 18:36 | ||
geekosaur | in perl 5 it'd often mean a missing semicolon before it | 18:37 | |
18:38
eroux joined
|
|||
samcv | maybe you can dl and tell me what's going on. it's happened other times, and i've done really weird things to make it go away like restructuring all the code | 18:39 | |
this could be different than that, i really have no clue why | |||
18:41
nhywyll left
|
|||
geekosaur | oh | 18:41 | |
line 23 | |||
you're missing the replacement part from the S:g | |||
(boy is that a lousy error to report for that) | |||
18:43
Cabanossi left
18:45
Cabanossi joined
|
|||
andrzejku | hi:) | 18:47 | |
I find a leak in Perl6 probably documentation leak | 18:48 | ||
18:52
Tonik joined
18:53
cibs left
18:55
cibs joined
19:00
cibs left
19:01
cibs joined
|
|||
Geth | doc: 69d32dab7a | (Zoffix Znet)++ | doc/Type/IO/Handle.pod6 [io grant] Remove IO::Handle.z IO::Handle never had this method. |
19:06 | |
samcv | thanks Geth | ||
geekosaur, | |||
19:06
domidumont left
19:08
FROGGS joined
19:15
Tonik left
19:17
TEttinger joined,
sufrostico left
|
|||
Geth | doc: d02ae7d5b2 | (Zoffix Znet)++ | doc/Type/IO/Handle.pod6 [io grant] Remove IO::Handle.rw and .rwx IO::Handle never had these methods |
19:18 | |
19:21
ugjka is now known as thasia
|
|||
samcv | ty much geekosaur | 19:21 | |
19:21
darutoko left
19:22
thasia is now known as ugjka
|
|||
geekosaur | andrzejku, details? | 19:22 | |
andrzejku | geekosaur I need a secret document how to smuggle Perl6 in your company | 19:23 | |
I think many people just don't know how to | |||
geekosaur | generally you just start writing stuff in it, preferably to show coworkers how you'd easily solve some problem that's harder or requires more work in other languages | 19:24 | |
andrzejku | geekosaur personally I know one way which I practice with Perl that was "write Perl script" every time when you need write somekind of script and commit it silenty | ||
I commit this way some good scripts before my coworker see it | |||
geekosaur | I don't like that way because it gets you in trouble when someone else has to change it and has no idea what is going on | ||
you really need to *sell* it, not try to sneak it in; you're just antagonizing your coworkers otherwise | 19:25 | ||
timotimo | oh samcv is already back :) | ||
samcv | :O | ||
yes | |||
andrzejku | geekosaur ye but right now I am the worst case, my coworkers doesn't like perl they don't know perl6 and there no official perl6 compiler on production servers | 19:26 | |
geekosaur | [Coke]'s example is a good one, most common languages will have problems of one kind or another with truncating by whole Unicode characters instead of by bytes | ||
(assuming utf8 representation) | |||
andrzejku | geekosaur I think working underground is the best thing | ||
commit perl everywhere you can | 19:27 | ||
before your manager admit | |||
geekosaur | until someone gets back at you by committing idris code and making you maintain it :) | ||
andrzejku | or even more agressive way, rewrite existing scripts for refactoring or fixing bugs and commit perl | ||
geekosaur | or cobol | ||
andrzejku | that's no problem I can maintain perl it is even better | 19:28 | |
the problems become when people ask this "Can I write this in Perl?" | |||
and the people say: "NO" | |||
so I think working underground is the best thing which we can do for Perl | 19:29 | ||
become Perl6 partisanen | |||
19:29
setty1 left,
jdmmmmm joined
19:30
jdmmmmm left
|
|||
[Coke] | I think if you do that "underground", you're going to end up alienating more people against perl. | 19:31 | |
Using any perl here, I end up using it for things have a high time pressure on me, and usually an implicit one-use. if I need to use it for something longer laster, I make sure I get buyin on the technology side that I'm going to use a language that no one else here is necessarily an expert on because of the time issue. If you want longer term adoption, you're going to need buyin. if not, they'll just be cur | 19:33 | ||
sing your name as they rip our your code. | |||
geekosaur | that exactly, yes | 19:34 | |
that's why I said you should be selling it, not sneaking it | |||
*show* how you can do something more easily in perl 6. otherwise you annoy everyone else and potentially get fired for not being a team player or something | 19:35 | ||
andrzejku | geekosaur are you from USA? | 19:37 | |
geekosaur | yes | ||
andrzejku | geekosaur so you don't know how IT look in my country | ||
geekosaur | but you can get in trouble by annoying coworkers regardless of country | ||
19:37
lichtkind joined
|
|||
geekosaur | maybe not get fired for it, but still, people will find ways to get back | 19:37 | |
[Coke] | Yup. do what you will, we're just giving you our advice. | ||
andrzejku | in my country IT is pretty different | 19:38 | |
we earn shit here | |||
we do all things for USA/Germany etc. etc. | |||
so the people in projects change very quickly | |||
and the most companies here is like that | 19:39 | ||
we just do cheap it work for you | |||
so perl6 here didn't exist and it is hard to talk with someone about it | |||
[Coke] | perl6 doesn't exist anywhere. :) | ||
we're not that different in that regard, at least. | 19:40 | ||
lichtkind | in my mind it exists :) | ||
andrzejku | many US companies come here because they want to rewrite Perl into another language fast and cheap | ||
so it is pretty different situation | |||
and more difficult though | 19:41 | ||
the rich US programmers will never understand poor programmers | 19:43 | ||
19:57
tinita_ left
|
|||
samcv | andrzejku, what country? | 19:59 | |
19:59
Cabanossi left
20:00
Cabanossi joined
|
|||
andrzejku | samcv Poland | 20:01 | |
samcv | andrzejku, on the internet we are all equals :) | 20:02 | |
andrzejku | we pretend to be equal | ||
lizmat | .oO( eating our own dogfood if we're lucky ) |
20:03 | |
20:06
cdg joined
|
|||
andrzejku | I think if the one country will go into it independent way | 20:07 | |
then I am pretty sure the Perl Golden Era will come | |||
20:13
atweiden-air joined
|
|||
mst | geekosaur: I would love an excuse to work on idris for money | 20:13 | |
20:14
labster joined
|
|||
geekosaur | you would, I probably would, most other folks likely to give it the side-eye :) | 20:14 | |
atweiden-air | the method `make` docs say: "Sets the AST to $ast, and returns it." | 20:15 | |
can/should a grammar-actions method like `method abc($/) { make ~$/ }` be `is pure`? | |||
lichtkind | hai lizmat (h) | ||
lizmat | lichtkind o/ | ||
lichtkind | andrzejku: what exactly ou think rich programmer dont understand? | ||
atweiden-air | jw for code optimization's sake | ||
lichtkind | :) | ||
timotimo | i dont think we will ever optimize "is pure" methods | 20:16 | |
znless they are private methods | |||
but the only thing "is pure" currently will do is execute the function at compile time and substitute its result in place of the call | 20:17 | ||
so make is definitely not something that would wotk with that in general | |||
atweiden-air | timotimo: right, ok | 20:18 | |
about use of `make` in grammar-actions method... is it mutating the AST behind the scenes, or are the methods like `method abc($/) {...}` pure functions? | |||
timotimo | yiu mutate the ast attribute on the match obj passed in via $/ | 20:20 | |
20:20
bjz joined,
pecastro joined
|
|||
timotimo | i.e. make 1 is the same as $/.make: 1 | 20:20 | |
20:21
Sound left
|
|||
timotimo | which behaves as if it were $/.ast = 1 | 20:21 | |
atweiden-air | so what should be the return type of a method that ends with a `make`? | ||
i've experimented and it appears to be returning a container | 20:22 | ||
timotimo | shrug :) | ||
RabidGravy | anyone know enough abiout SSL to see if there is something *funny* about httpbin.org/ ? | ||
timotimo | put --> Nil in the sig | ||
that makes it easy :D | |||
also better performance, though the overhead of the grammar engine is immense | 20:23 | ||
atweiden-air | timotimo: ix.io/pd2 | ||
timotimo | "returns" is going to go awqy | 20:24 | |
away | |||
please use --> | |||
20:24
espadrine joined
|
|||
atweiden-air | with --> the return type does not make any difference | 20:25 | |
timotimo: why retire `returns`? | |||
RabidGravy | I do hope someone is going to send me 65 pull requests or there will be a lot of broken | ||
timotimo | heh. | 20:26 | |
i can have a try | |||
you can ask TT why. i dont remember the exact reason except parsing makes it a bad thing | 20:27 | ||
20:29
setty1 joined
|
|||
timotimo | like with "returns $foo or so? | 20:29 | |
ill drive home now | |||
so no irc for a bit | 20:30 | ||
20:30
cibs left
20:32
cibs joined
|
|||
RabidGravy | ah openssl s_client -connect httpbin.org:443 | 20:38 | |
CONNECTED(00000003) | |||
139647781410680:error:14077438:SSL routines:SSL23_GET_SERVER_HELLO:tlsv1 alert internal error:s23_clnt.c:769: | |||
gfldex | is zef creating the wrappers in /share/perl6/site/bin/ ? | 20:43 | |
20:44
Cabanossi left
20:45
Cabanossi joined
20:50
AlexDaniel joined
20:53
lichtkind_ joined
20:56
lichtkind left
21:00
skids left
21:04
atweiden-air left
21:05
araujo left,
araujo joined
21:09
mcmillhj left
21:10
FROGGS left
|
|||
AlexDaniel | committable6: why are you still here? | 21:12 | |
committable6 | AlexDaniel, ¦why: «Cannot find this revision (did you mean “all”?)» | ||
21:13
Cabanossi left
21:15
sufrostico joined,
Cabanossi joined
21:21
bjz left
21:24
cibs left,
n1ce left,
n1ce_ joined
21:26
cibs joined
21:37
rburkholder joined
21:38
setty1 left
21:43
Cabanossi left
21:44
andrzejku left
21:45
Cabanossi joined
21:47
cibs left
21:48
cibs joined
21:50
eroux left
21:51
eroux joined
|
|||
gfldex | lolibloggedalittle: gfldex.wordpress.com/2017/03/23/fo...nvenience/ | 21:54 | |
jferrero | m: my Str enum Mass (uno => "3", dos => "2"); say dos.value | 22:03 | |
camelia | 2 | ||
jferrero | m: Str enum Mass (uno => "3", dos => "2"); say dos.value | 22:04 | |
camelia | 5===SORRY!5=== Error while compiling <tmp> Two terms in a row at <tmp>:1 ------> 3Str7⏏5 enum Mass (uno => "3", dos => "2"); say expecting any of: infix infix stopper statement end statement m… |
||
22:06
cibs left
|
|||
gfldex | jferrero: the type of an enum value is infered from the first value of the first pair | 22:06 | |
22:07
cibs joined
|
|||
jferrero | m: use NativeCall; enum Mass (uno => int32(1), dos => 2); say dos.value | 22:07 | |
camelia | ===SORRY!=== Cannot invoke this object (REPR: P6int; int32) |
||
jferrero | thanks, gfldex | 22:08 | |
22:10
n1ce_ left
|
|||
jferrero | gfldex: I need to defined int32 NativeCall type for enum constants. Is possible? | 22:10 | |
22:11
mcmillhj joined
22:12
RabidGravy left,
Cabanossi left
|
|||
gfldex | I have very little knowledge about NativeCall | 22:13 | |
jferrero: if I would want to change that I would go and read other ppls code | 22:14 | ||
22:15
Cabanossi joined
22:16
mcmillhj left
|
|||
jferrero | From enum docs: "As value types Numerical and Str are supported." So... not. | 22:16 | |
AlexDaniel | jferrero: well, it does not mention natives :) | 22:17 | |
22:19
mcmillhj joined
|
|||
geekosaur | iirc it is intended that that will change someday but currently it's not possible to handle anything else? | 22:20 | |
22:25
pytuger joined
22:27
mcmillhj left,
n1ce joined,
wamba left
22:30
espadrine left
22:31
n1ce_ joined
22:32
pytuger left,
committable6 left,
benchable6 joined,
committable6 joined,
evalable6 joined,
ChanServ sets mode: +v benchable6,
ChanServ sets mode: +v committable6,
ChanServ sets mode: +v evalable6,
bisectable6 joined,
unicodable6 joined,
ChanServ sets mode: +v bisectable6,
ChanServ sets mode: +v unicodable6,
statisfiable6 joined,
ChanServ sets mode: +v statisfiable6
22:33
statisfiable6 left,
unicodable6 left,
benchable6 left,
bisectable6 left,
evalable6 left,
committable6 left,
n1ce left
22:36
committable6 joined,
ChanServ sets mode: +v committable6,
bisectable6 joined,
benchable6 joined,
unicodable6 joined,
ChanServ sets mode: +v bisectable6,
evalable6 joined,
ChanServ sets mode: +v benchable6,
ChanServ sets mode: +v unicodable6,
ChanServ sets mode: +v evalable6,
statisfiable6 joined,
ChanServ sets mode: +v statisfiable6
|
|||
Geth | routine-map: 21daef5c27 | (Zoffix Znet)++ | 2 files Fix incorrect report of `.file` ... for routines whose proto is not in the same file as the routine itself. |
22:36 | |
timotimo | good catch | ||
Geth | routine-map: 98c45fba9c | (Zoffix Znet)++ | 2 files Include compiler name and version on HTML page |
22:37 | |
22:37
bloatable6 joined,
ChanServ sets mode: +v bloatable6
22:41
Voldenet left
22:42
riatre_ is now known as riatre
22:47
Voldenet joined,
Voldenet left,
Voldenet joined
22:49
pytuger joined
22:50
BenGoldberg joined
22:51
pytuger left,
pytuger joined
22:56
pytuger left,
Sound joined
23:08
pytuger joined,
pytuger left,
pytuger joined
23:14
skids joined
23:17
zenon left
23:24
llfourn joined
23:26
cdg left
23:28
TheovdH left
23:31
rindolf left,
cibs left
23:33
cibs joined
23:35
pytuger left
23:36
rburkholder left
23:38
cibs left
23:40
cibs joined
23:43
rindolf joined
23:46
lukaramu_ left
23:50
pytuger joined
23:53
yqt left
23:55
pmurias left
23:58
adu joined
|