»ö« 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:10
girafe left
00:25
bjz joined
00:28
pierre_ joined
00:40
tushar joined
00:47
pierre_ left
00:54
pierre_ joined
00:57
espadrine left
00:59
pierre_ left
01:03
ocbtec left
01:11
ufobat left
01:15
bjz left
|
|||
protium | Any idea why I'd be getting this while trying to build moarvm? | 01:19 | |
linking libmoar.so | |||
linking moar | |||
./libmoar.so: undefined reference to `mp_set_long' | |||
01:21
zacts left,
bjz joined
01:22
bjz left
|
|||
MasterDuke | what os are you using? | 01:29 | |
protium | Linux | 01:31 | |
Gentoo, specifically | 01:32 | ||
For the most part, on stable branch | |||
MasterDuke | hmm, and how did you get moar? | 01:38 | |
01:40
perlawhirl left,
sammers left
|
|||
protium | Portage | 01:40 | |
The default build environment (like ports for BSD) | |||
2016.10 | |||
MasterDuke | hmm, not sure. i don't use gentoo, but i'm pretty sure others have successfully built moar on it | 01:43 | |
01:43
cdg joined
01:44
bjz joined
|
|||
MasterDuke | have you tried just cloning it and building manually? | 01:44 | |
protium | Well, no, but I guess I could do that | ||
In general, I prefer staying within the package management system for obvious reasons (easier to maintain, keep sane env) | 01:45 | ||
You mean clone it hot off the main branch on github? | |||
MasterDuke | yeah | ||
if you don't specify a prefix it'll keep everything in its directory, you don't need to worry about polluting your filesystem | 01:46 | ||
can at least figure out if it's your system in general or the portage script | 01:47 | ||
01:47
cdg left,
bjz left
|
|||
protium | Yeah, good point | 01:48 | |
01:48
cdg joined
|
|||
protium | Alright, will give it a shot | 01:48 | |
01:51
cdg left
01:52
bjz joined
02:43
tushar left
02:55
pierre_ joined
02:59
tushar joined
03:00
pierre_ left
03:11
Rawriful left
03:20
Ifdog joined
03:21
Ifdog left
03:28
mayathecat joined
03:31
djbkd joined,
djbkd left,
kent\n left,
djbkd joined
03:33
kent\n joined
03:35
shin_ joined
03:42
mayathecat left
03:43
pierre_ joined
03:48
shin_ left
03:50
mayathecat joined
03:52
noganex joined
03:56
noganex_ left
03:57
mayathecat left
04:00
BenGoldberg left
04:02
bjz_ joined,
bjz left
04:09
aborazmeh joined,
aborazmeh left,
aborazmeh joined
04:15
mayathecat joined
04:21
mayathecat left
04:27
grondilu left
04:32
mayathecat joined
04:42
pierre_ left
|
|||
seatek | if I override a method in a child class... is there a way to call the original (non-overridden) method from the child? | 04:42 | |
PARENT.method-name doesn't error or warn about anything... but it doesn't call the method either | 04:54 | ||
04:54
djbkd left
|
|||
MasterDuke | m: class A { method a() { say "parent" } }; class B is A { method a() { say "child"; callsame }}; B.a | 04:56 | |
camelia | rakudo-moar c963ef: OUTPUT«childparent» | ||
seatek | ha! just "callsame"! wow. nice. :) thanks MasterDuke++ ! | 05:01 | |
i never would have thought to look for that in the docs under functional programming' | 05:02 | ||
05:03
pierre_ joined
|
|||
MasterDuke | depends what you want to do though. that only works if you want to call the parent's method from the overridden child's method | 05:04 | |
05:05
mayathecat left
|
|||
seatek | perfect for me! but yeah, i see what you mean. i just wanted to keep the parent method as the "default" and for special cases, override it, but still not have to redefine all the "defaults".. so callsame as the first thing worked perfectly | 05:05 | |
(i never can remember if i have to update things in more than 1 place later on) | 05:06 | ||
never trust yourself is my motto | |||
MasterDuke | m: class A { method a() { say "parent a" } }; class B is A { method a() { say "child a" }; method b() { say "child b"; self.^mro[1].a }}; B.b | ||
camelia | rakudo-moar c963ef: OUTPUT«child bparent a» | ||
05:07
mayathecat joined,
pierre_ left
|
|||
seatek | i knkew there had to be something with the mro | 05:07 | |
though why element 1 i have no idea | |||
MasterDuke | i would think there's a way with PARENT somehow, but i don't remember what it is | 05:08 | |
m: class A { method a() { say "parent a" } }; class B is A { method a() { say "child a" }; method b() { say "child b"; self.^mro }}; B.b | |||
camelia | rakudo-moar c963ef: OUTPUT«child b» | ||
MasterDuke | m: class A { method a() { say "parent a" } }; class B is A { method a() { say "child a" }; method b() { say "child b"; say self.^mro }}; B.b | ||
camelia | rakudo-moar c963ef: OUTPUT«child b((B) (A) (Any) (Mu))» | ||
seatek | I tried PARENT::method method() and PARENT. the same | ||
i even tried SUPER ;) | 05:09 | ||
MasterDuke | [1] because it's the parent, [0] would be self, [2] grandparent, etc | ||
seatek | hey, that's tidy and makes sense | ||
05:10
mayathecat left
|
|||
seatek | would your parent at ^mro[1] have a ^mro[1] to their parent, and just no sense of the child? | 05:12 | |
MasterDuke | m: class A { method a() { say "parent" } }; class B is A { method a() { say "child" }; method b() { say "b"; say self.^mro } }; class C is B { method c() { say self.^mro } }; B.b; C.c | 05:13 | |
camelia | rakudo-moar c963ef: OUTPUT«b((B) (A) (Any) (Mu))((C) (B) (A) (Any) (Mu))» | ||
05:14
djbkd joined
|
|||
seatek | that's a lot to stuff into places. is C's stuff refencing B's stuff? It must keep its own scope in each... but compiling the code... this gets complex. i suppose it's ok it took so long | 05:20 | |
05:31
Cabanossi left
05:34
Cabanossi joined
|
|||
seatek | I started to add documentation for callsame to the secion on overriding methods... but i'm not sure i should. what if people wanted to call with parameters... then they'd have to go the mro route, and that's a little funny | 05:34 | |
05:39
Herby left
05:41
perlawhirl joined
05:48
djbkd left
|
|||
seatek | well, i'm going to put mention of it in there, anyway. i spent a lot of time looking for how to do it and i think it's probably not that uncommon. but mabye people won't want it there because it's a little funny | 05:48 | |
dalek | c: 9ccd0f2 | seatek++ | doc/Language/classtut.pod6: How to access overridden parent methods Maybe should not have this here because it's a little freaky. |
05:49 | |
synopsebot6 | Link: doc.perl6.org/language/classtut | ||
05:53
tushar left
06:17
wamba joined
06:39
canopus left
06:41
aborazmeh left
06:45
canopus joined
06:48
mayathecat joined,
raiph left
06:51
mayathecat left
06:56
pierre_ joined
06:57
darutoko joined
07:01
pierre_ left
07:24
skids left
07:38
CIAvash joined
07:39
CIAvash left
07:40
zacts joined
07:50
pierre_ joined
07:59
Tonik joined
08:09
CIAvash joined
08:11
Actualeyes left
08:16
Tonik left
|
|||
dalek | c: a15ca0b | gfldex++ | doc/Language/classtut.pod6: link rather then duplicate content |
08:30 | |
synopsebot6 | Link: doc.perl6.org/language/classtut | ||
08:42
Actualeyes joined
08:46
u-ou is now known as no-n
08:49
Ifdog joined
08:51
no-n is now known as u-ou
|
|||
Ifdog | Excuse me but why "prompt" wont response to when in repl in windows? | 08:51 | |
seatek | gfldex: although an esoteric answer, since it will lead people there from the section on inheritance, that's a much better answer if people can chew for a bit on it. thanks! :) | 08:52 | |
Ifdog | Wont response to keys . | ||
08:55
perlawhirl left
08:56
maybekoo2 joined,
Ifdog left
08:57
RabidGravy joined
|
|||
samcv | i love perl6 so much ♥ | 08:57 | |
promises are amazing, channels supplies. it makes me so happy | 08:58 | ||
just came here to say this :P | |||
seatek | samcv: i can't wait to start playing with some of that :) | 08:59 | |
samcv | Proc::Async is great too. though i need to figure out how to get proc::async to capture stderr from rakudo | 09:00 | |
i'm running perl6 on moarvm from proc async, i can capture stderr if i do like: note "message"; to print to stderr, but if there's an error in the code i don't see it | |||
but the perl6 bin is a shell file, so maybe i will have different result if i just don't go through that | 09:02 | ||
nope that didn't fix it hm | 09:05 | ||
09:07
firstdayonthejob joined
09:09
labster left
|
|||
samcv | if i run it using the shell and proc async i capture the stderr of what i think is the rakudo compilier and moarvm | 09:12 | |
so i guess i'll do that for now | |||
RabidGravy | I've got at least one module that has a test that runs a Perl 6 program | 09:19 | |
Audio::StreamThing does it to have the icecast client in a different process | 09:20 | ||
samcv | does it use a shell when it runs it? | 09:21 | |
RabidGravy | let me look | ||
no | 09:23 | ||
github.com/jonathanstowe/Audio-Str.../030-run.t | 09:24 | ||
09:26
espadrine joined
09:35
espadrine left,
rindolf joined
09:41
seatek left
09:51
brrt joined
|
|||
gfldex | samcv: see irclog.perlgeek.de/perl6/2016-07-20#i_12870811 | 09:52 | |
09:52
TEttinger left
|
|||
samcv | thanks :) | 09:54 | |
10:14
FROGGS joined
|
|||
FROGGS | masak: JavaScript really has won :o) - turbo.github.io/ | 10:14 | |
we could perhaps do the same with OpenGL or so... | 10:15 | ||
10:18
domidumont joined,
inokenty left
10:22
domidumont left
10:23
domidumont joined
10:30
domidumont left
10:32
pierre_ left
|
|||
timotimo | OpenCL or cuda, yes | 10:33 | |
it even has a bit of OpenCL(?) code in the middle with the "run" function | 10:34 | ||
10:34
pierre_ joined
10:37
perlawhirl joined
10:49
brrt left
|
|||
RabidGravy | on a related note I keep meaning to get an fpga board for a similar purpose | 10:56 | |
11:01
domidumont joined
11:02
grondilu joined,
domidumont left
11:03
domidumont joined,
domidumont left,
domidumont joined
11:04
setty1 left
|
|||
dalek | c: 7093f32 | gfldex++ | doc/Type/Proc/Async.pod6: fix markup |
11:04 | |
synopsebot6 | Link: doc.perl6.org/type/Proc/Async | ||
11:07
girafe joined
11:08
ale1ster joined
11:09
ale1ster left
|
|||
grondilu | how would you deal with anonymous unions with NativeCall? | 11:18 | |
e.g. struct Foo { int type; union { char name; int code; }; } | 11:19 | ||
11:23
pierre_ left
|
|||
timotimo | grondilu: i'd probably build two versions of Foo and nativecast between them ... | 11:25 | |
grondilu completly forgot what nativecast does | 11:26 | ||
timotimo | github.com/timo/SDL2_raw-p6/blob/m...aw.pm#L419 | 11:27 | |
11:28
bart joined,
bart is now known as brrt
11:34
setty1 joined
11:39
cibs left
11:41
cibs joined
11:43
maybekoo2 left
|
|||
FROGGS | grondilu: you can also stick a union in there... | 11:43 | |
m: use NativeCall; class u is repr<CUnion> { has uint8 $.name; has int32 $.code }; class Foo is repr<CStruct> { has int32 $.type; HAS u $.u }; | 11:45 | ||
camelia | ( no output ) | ||
FROGGS | using nativecast like in the SDL2 example might also be nice, because you'd have a specialized Foo "subclass" then, instead of accessing the union members as $foo.u.name | 11:46 | |
11:50
maybekoo2 joined
|
|||
gfldex | brrt++ # brrt-to-the-future.blogspot.de/2016...ation.html | 12:03 | |
12:04
CIAvash left
12:08
cdg joined
|
|||
tbrowder | .tell viki last chance to object to my module breakup/naming scheme at github.com/tbrowder/Misc-Utils-Perl6 | 12:14 | |
yoleaux | tbrowder: I'll pass your message to viki. | ||
tbrowder | .tell ilmari last chance to object to my module breakup/naming scheme at github.com/tbrowder/Misc-Utils-Perl6 | ||
yoleaux | tbrowder: I'll pass your message to ilmari. | ||
12:20
rindolf left
12:25
rindolf joined
12:35
domidumont left
12:53
pierre_ joined
12:56
kurahaupo__ joined
|
|||
RabidGravy | okay this windows laptop has been "checking for updates" for over an hour now | 12:59 | |
12:59
wamba left
|
|||
timotimo | i've been told windows update has an algorithm in it that's extremely bad when many needed updates pile up | 13:00 | |
perhaps like "exponential" bad even | |||
www.wsusoffline.net/ - i'm not sure if this helps | |||
masak | top o' the Sunday to you, #perl6 | 13:07 | |
DrForr | Afternoon. | 13:10 | |
lizmat | masak DrForr timotimo RabidGravy o/ | 13:11 | |
RabidGravy | Rarr! | 13:12 | |
masak | .u dinosaur | 13:13 | |
yoleaux | No characters found | ||
masak | (...yet...) | ||
13:15
tyil joined
|
|||
tyil | does anyone know how I can add a header to a GET request made with HTTP::UserAgent? I currently have the following snippet termbin.com/bqa9 | 13:16 | |
13:16
kurahaupo__ is now known as kurahaupo
|
|||
tyil | but if I simply pass the %headers as the 2nd arg, it cannot resolve the caller | 13:17 | |
lizmat | RabidGravy might know | 13:19 | |
RabidGravy | you can do it | ||
though I don't know what "pass the %headers as the 2nd arg, it cannot resolve the caller" means | 13:20 | ||
an example of it failing would be good | 13:22 | ||
13:22
cdg left
|
|||
tyil | Use netcat. | 13:22 | |
woops | 13:23 | ||
wrong copy/paste | |||
termbin.com/657y | 13:24 | ||
timotimo | it seems like it wants the header fields as named arguments | ||
so it expects you to flatten your headers hash | 13:25 | ||
RabidGravy | er | ||
you are passing a Hash | |||
you just pass them items as normal named arguments | |||
so something like "$ua.get('foo.com/', Gorilla => 'bananas')" | 13:27 | ||
that's what the slurpy *%headers does | |||
tyil | ah | ||
it doesnt fail to run if I pass it like that | |||
RabidGravy | I know | ||
tyil | getting a 400 reply now, so I seem to have something to fix still, but now I can continue on that | 13:28 | |
thanks | |||
RabidGravy | :) | ||
I don't like that AUTOGEN malarkey though, methinks some prototypes in there might be called for | 13:29 | ||
tyil, if you want finer grained control of the request, it;s make an HTTP::Request object and then pass that to $ua.request | 13:30 | ||
.get is just a helper for the simple case really | |||
there are also a bunch of helper subs in HTTP::Request::Common for the most usual types of requests | 13:32 | ||
13:38
inokenty joined
|
|||
RabidGravy adds an issue to HUA to remind him to do the prototypes | 13:39 | ||
tyil | with the HTTP::Request and HTTP::UserAgent.request() it works | 13:42 | |
thanks a ton :> | |||
tbrowder | hi, #perl6 | 13:48 | |
question of the day ref arrays: is returning a generated container from a sub expensive as compared to filling an input container with the generated data? | 13:52 | ||
timotimo | should be about the same cost | 13:53 | |
though if you can re-use the input container a lot, you can get a bit more performance out of the whole thing | |||
but it shouldn't be much | |||
14:02
pierre_ left
14:05
maybekoo2 left,
raiph joined
|
|||
stmuk_ | I wonder how many hours of my life are spent waiting for gcc | 14:07 | |
FROGGS | I guess less than waiting for clang and msvc | 14:08 | |
14:09
raiph left,
girafe left
14:11
raiph joined
14:13
raiph left,
raiph joined
14:15
raiph left,
raiph joined
14:19
Rawriful joined
14:30
Rawriful left
14:31
raiph left
14:32
raiph joined,
Rawriful joined
14:38
Rawriful left
14:40
Rawriful joined
14:41
bjz_ left
14:43
perlawhirl left
14:46
wamba joined
14:59
tushar joined
15:19
cdg joined
15:20
cdg_ joined
15:24
cdg left
15:32
maybekoo2 joined
15:39
djbkd joined,
djbkd left,
djbkd joined
15:44
skids joined
15:54
domidumont joined
16:01
mayathecat joined,
meteorologytoday joined
16:03
meteorologytoday left
16:05
cdg joined
16:06
mayathecat left,
cdg_ left
16:07
meteorologytoday joined
16:09
xinming_ joined
16:12
xinming left
16:18
xinming joined
16:20
TakinOver joined
16:21
xinming_ left
16:22
ajr_ joined
|
|||
dalek | osystem: 3a4ca29 | titsuki++ | META.list: Add MeCab to ecosystem See github.com/titsuki/p6-MeCab |
16:24 | |
osystem: 69b5094 | titsuki++ | META.list: Merge pull request #264 from titsuki/add-mecab Add MeCab to ecosystem |
|||
ajr_ | Is anyone around who saw my comments about Rakudo* on Raspberry Pi? | 16:26 | |
(Yesterday) | |||
16:27
ggoebel left
16:29
CIAvash joined,
ggoebel joined
16:33
kaare__ is now known as kaare_
|
|||
ajr_ | Has anyone successfully installed Rakudo* 2016.10 on a Pi? | 16:34 | |
(Or given up after failing to do so?) | 16:35 | ||
16:35
cdg left
|
|||
DrForr | I believe it's been done; I haven't tried however. (I do have an RPi, been meaning to do it.) | 16:35 | |
ajr_ | Dr. Forr - I've just started trying, and I'm getting errors in the "make" stage. Hoping to learn from others. | 16:37 | |
DrForr | Well, that would not be me at the moment :/ | ||
ajr_ | At the moment, my suspicion is that the process is getting killed because it runs out of available memory. | 16:39 | |
DrForr | Well, that can be solved with ulimit, I do believe. Or at least the OOM killer can be staved off. How much RAM is it taking? | 16:41 | |
16:46
djbkd left
16:49
Rawriful left
16:50
Actualeyes left
16:51
zakharyas joined
|
|||
japhb | .tell tadzik Ping re: my Terminal-ANSIColor PR: github.com/tadzik/Terminal-ANSIColor/pull/6 | 16:53 | |
yoleaux | japhb: I'll pass your message to tadzik. | ||
RabidGravy | ajr_, I may have done but let me try | 16:54 | |
is it by any chance complaining about the compiler? | |||
I seem to recall that the default version of gcc is no good, and you have to install the newest version | 16:55 | ||
I have unplugged one of the Pis from the network temporarily 'ang on | |||
tadzik | japanoise u | 16:56 | |
yoleaux | 16:53Z <japhb> tadzik: Ping re: my Terminal-ANSIColor PR: github.com/tadzik/Terminal-ANSIColor/pull/6 | ||
tadzik | arr, keyboard stupid | ||
japhb: thanks, didn't have a moment to test it yet, will doo soon :) | |||
RabidGravy | ajr_, yeah I have "gcc (Raspbian 4.8.2-21~rpi3rpi1) 4.8.2" I believe the default is something 3ish | 16:57 | |
DrForr | m: class Foo::Bar is Foo { }; class Foo { }; | ||
camelia | rakudo-moar 736ab1: OUTPUT«5===SORRY!5=== Error while compiling <tmp>'Foo::Bar' cannot inherit from 'Foo' because it is unknown.at <tmp>:1» | ||
RabidGravy | but just building to check that nothing gone broken in the meantime anyway | 16:58 | |
DrForr | Interesting, my error must be to do with roles then. | ||
RabidGravy | ajr_, so if you haven't done so already, it's install the gcc-4.8 package and then update the 'gcc' alternative to make that one the default gcc | 17:01 | |
17:01
meteorologytoday left
|
|||
japhb | tadzik: Ah, thanks. You mentioned checking it after a movie, and I was thinking "Wow, heck of a long movie!" ;-) | 17:02 | |
ajr_ | DrForr - The process manager showed around 700 of the available 735MB at the highest point I saw. My attention was probably distracted by some exciting paint drying. | ||
RabidGravy - I just updated to what I believe is the latest iteration of the OS, but I'll check for the gcc version. | 17:03 | ||
RabidGravy | I think the gcc version is crucial here | 17:04 | |
I'm just updating a windows machine that hasn't been updated for a year and a half | 17:05 | ||
japhb | tadzik: I am actually starting to use it in my Terminal-Print example: github.com/japhb/Terminal-Print/bl.../rpg-ui.p6 (That's not PR'ed back to the upstream yet, because I'm using development of the example to drive API and performance improvements to Terminal-Print itself.) | ||
RabidGravy | it's rather tedious | ||
DrForr | You're in better hands than mine, as I said I haven't tried yet. I got a new RPi from OSCON swag so I'll probably try later this week. | ||
ajr_ | RabidGravy: What are the symptoms of the gcc problem? What error messages at what stage? | 17:08 | |
RabidGravy | I can't remember to be honest | ||
it was like a year and a half ago :) | |||
ajr_ | Never mind, I was just hoping to whittle down the possibilities. I'm lucky to remember stuff a week and half ago. :-)* | 17:09 | |
stmuk_ | ISTR the rPI gcc was quite dramatically broken | ||
17:09
qub joined
|
|||
RabidGravy | but with the gcc version above and an otherwise stock Raspbian it builds fine | 17:09 | |
stmuk_ | I think it was either signal 11 or an internal gcc error | 17:11 | |
RabidGravy | yeah I think it was some internal gcc error regarding some strange asm macro | 17:12 | |
17:12
xinming left
|
|||
RabidGravy | actually yeah, it was a code generation error of some kind whereby it got confused while trying to make the asm stage | 17:13 | |
17:14
telex left
17:17
Rawriful joined
17:18
telex joined
|
|||
stmuk_ | this windows 10 ubuntu subsystem thing is quite good | 17:19 | |
although rakudo doesn't build under it | 17:20 | ||
DrForr | They don't like competition :) | 17:23 | |
17:26
xinming joined
|
|||
RabidGravy | is it somewhat like coLinux was a few years back, with a Linux kernel running as a Windows service? | 17:32 | |
mst | I believe it's more like the way e.g. netbsd's linux ABI emulation modules work | 17:33 | |
17:40
TakinOver left,
tushar left
17:41
zakharyas left
17:45
labster joined,
Lucas_One left
17:48
setty1 left
|
|||
geekosaur understands it as running *alongside* the windows "kernel", since it's a microkernel arch | 17:49 | ||
17:50
Lucas_One joined
|
|||
geekosaur | which is why it gets to do things windows can't, like true fork() | 17:51 | |
qub | hello! how to reset eof "flag" on $*IN? (in case of recieving multiple EOFs) - i tried binary "read", but it didn't help - pastebin.com/K1kUk4aq | ||
17:52
lichtkind joined
|
|||
geekosaur | eof is not a character, you can't "eat" it | 17:52 | |
17:52
Lucas_One left
|
|||
moritz | can can reopen STDIN though | 17:54 | |
s/can/you/ | |||
mst | geekosaur: oh, hmm, possibly | 17:55 | |
moritz | used to work with $*IN = open('-') but that doesn't seem to work anymore; dunno how it's done today | ||
geekosaur | that may not b what they are seeing, I don't know. stdio often does remember eof on terminal because people get confused when eof isn't really eof | ||
maybe libuv does too | |||
17:56
Lucas_One joined
17:57
geekosaur left,
geekosaur joined
|
|||
ajr_ | BTW, what's the justification for the "put" command? It's not obvious what makes it different from the other output commands. | 17:59 | |
17:59
BenGoldberg joined
|
|||
DrForr | The inverse of 'get'. | 17:59 | |
tadzik | japhb; hah, yeah, now I remember! Sorry, I totally forgot then | 18:01 | |
mst | tadzik: did you play with timotimo's POSTBUILD yet? | 18:02 | |
tadzik | japhb: I was mostly concerned if it didn't accidentally break some existing functionality, since the module has no tests | ||
mst: no, but the patch looks a lot like my AFTERPARTY from years ago :) Can't find that one anywhere though | |||
18:03
ugjka is now known as lahey,
lahey is now known as ugjka
|
|||
qub | moritz: tried to reopen pastebin.com/8vsgpdDh, but got error "read string requires an object with REPR MVMOSHandle" | 18:05 | |
18:05
CIAvash left
18:06
setty1 joined
|
|||
geekosaur | no, that would not work, stdin does not have a determinable path | 18:06 | |
qub | but docs.perl6.org/type/IO$COLON$COLONSpecial | 18:08 | |
geekosaur | the process inherits a file descriptor, it has no idea where that fd came from. and it may not *have* a path if it's e.g. a pipe or a socket | ||
18:08
labster left
18:10
brrt left
|
|||
geekosaur | also after $*IN.close there is not going to be a way to get it back | 18:10 | |
(ok, I can see IO::Special but I suspect you need $*IN.path.Str. and you *do* need to not .close, or nothing will save you) | 18:11 | ||
"let me just go back in time and not have closed it, so I can reopen it even if it stopped existing like a pipe or socket does" | |||
18:13
Rawriful left
18:14
Rawriful joined
|
|||
qub | in case of .path.Str "open" tries to open file in working dir, but still no luck with open without close: pastebin.com/xC1dsMei | 18:14 | |
18:18
CIAvash joined
18:21
TakinOver joined
|
|||
geekosaur | if I understand IO::Special correctly that would seem buggy | 18:21 | |
what exactly are you trying to reopen / read past eof on, anyway? | 18:23 | ||
qub | next "file" | 18:24 | |
geekosaur | ... | ||
what next "file" | |||
is this a socket, is this a pipe, is this a terminal, is this a magtape, is this a ??? | 18:25 | ||
qub | i have endless stream on stdin in which files are separated with eof char (ASCII 04) | 18:26 | |
geekosaur | uh | 18:27 | |
18:27
TakinOver left
|
|||
geekosaur | you still have nto answered my question. and ASCII 04 is not actually EOF. it is a command *to the terminal driver* that causes it to produce a short read to the program | 18:27 | |
Hotkeys | m: say grep * < 1000, map * ** 2, (1, 3 ... *) | 18:28 | |
camelia | rakudo-moar 9a6379: OUTPUT«(...)» | ||
Hotkeys | m: say eager grep * < 1000, map * ** 2, (1, 3 ... *) | ||
why doesn't this work? | |||
camelia | rakudo-moar 9a6379: OUTPUT«(timeout)» | ||
jast | because it applies the test against an infinite series | 18:29 | |
that's my guess, anyway. grep doesn't know that it can abort after the first test that returns false... | |||
18:29
TakinOver joined
|
|||
Hotkeys | fair | 18:30 | |
Is there a convenient way to do squares up to X with a sequence alone? | |||
lizmat | how many do you need? | ||
Hotkeys | (1 ** 2, 2 ** 2 ... $x) essentially | 18:31 | |
lizmat | Hotkeys: slice it | 18:32 | |
m say (1,2,4...*)[^10] | |||
m: say (1,2,4...*)[^10] | |||
camelia | rakudo-moar e42b68: OUTPUT«(1 2 4 8 16 32 64 128 256 512)» | ||
lizmat | m: my $x = 20; say (1,2,4...*)[^$x] | 18:33 | |
camelia | rakudo-moar e42b68: OUTPUT«(1 2 4 8 16 32 64 128 256 512 1024 2048 4096 8192 16384 32768 65536 131072 262144 524288)» | ||
jast | that works if the number of elements is known; in this case it would happen to work because you can determine the correct limit using a logarithm | 18:34 | |
Hotkeys | specifically the sequence I'm doing is squares of odd numbers actually so | 18:35 | |
jast | ...[^log(1000)/log(2)] | ||
Hotkeys | 1², 3², 5² ... 1000 | ||
18:35
ajr_ left
|
|||
jast | no wait, that doesn't make sense :) | 18:35 | |
sqrt(1000) actually | |||
qub | geekosaur: i need to enter arbitrary text line by line in terminal and send it to program by pressing ctrl+d | 18:36 | |
jast | I'm too tired to think about this | ||
qub: so just keep reading and whenever you get a short read, you know that the next read will start another file. unfortunately there will be no way to signal "this is the last file" but if your stream truly is infinite that shouldn't matter | 18:38 | ||
18:39
vendethiel joined
|
|||
Hotkeys | does p6 have a function equivalent to takewhile? | 18:40 | |
timotimo | Hotkeys: map with "last" | ||
18:40
FROGGS left
18:41
canopus left
|
|||
geekosaur | jast, I think the point is that it stops after the first eof, which is a common thing that levels above the system call (such as libuv) do on terminals so that xxx^D works as expected by naïve programs) | 18:41 | |
but I suspect this is one of those things where we need to do something to libuv, and can't | 18:42 | ||
jast | I just tried with a tiny P5 program, I can keep reading beyond the first ^D | ||
oh yeah, libuv, didn't think about the internals :) | |||
18:42
FROGGS joined
|
|||
qub | yes, i tried to port p5 script | 18:44 | |
18:45
BenGoldberg left
|
|||
dalek | osystem/MARTIMM-patch-1: 1d00beb | (Marcel Timmerman)++ | META.list: Pod::Render module Pod::Render module and pod-render program to render pod to html using Pod::To:HTML and markdown using Pod::To::Markdown. First can also be converted to pdf using wkhtmltopdf when installed. The module is a sort of wrapper to add better css support. |
18:46 | |
18:46
seatek joined
|
|||
FROGGS | m: say map { .² }, (1, 3, 5 ... sqrt(1000)) # would be nice if *² worked too | 18:47 | |
18:47
mxco86 left
|
|||
camelia | rakudo-moar e42b68: OUTPUT«(1 9 25 49 81 121 169 225 289 361 441 529 625 729 841 961)» | 18:47 | |
Hotkeys | oh that is nice | 18:49 | |
18:51
canopus joined,
pmurias joined
|
|||
pmurias | hi | 18:51 | |
18:53
nightfrog left
18:56
FROGGS left
18:57
nightfrog joined
|
|||
dalek | osystem: 1d00beb | (Marcel Timmerman)++ | META.list: Pod::Render module Pod::Render module and pod-render program to render pod to html using Pod::To:HTML and markdown using Pod::To::Markdown. First can also be converted to pdf using wkhtmltopdf when installed. The module is a sort of wrapper to add better css support. |
18:57 | |
osystem: a49baa0 | Altai-man++ | META.list: Merge pull request #265 from perl6/MARTIMM-patch-1 Pod::Render module |
|||
18:58
pmurias left
19:04
TakinOver left
19:07
TakinOver joined
19:08
TakinOver left
19:11
pmurias joined,
FROGGS joined
19:13
Tonik joined
19:14
bart joined,
bart is now known as brrt
19:15
mayathecat joined
19:16
brrt left
19:18
tushar joined
|
|||
japhb | .tell tadzik I ran a few ad-hoc tests of both the new and old functionality, and fixed a couple bugs because of that ... did you want me to create a test file as part of the PR? | 19:18 | |
yoleaux | japhb: I'll pass your message to tadzik. | ||
tadzik | japhb: nah, no need :) looking at the PR right now | ||
yoleaux | 19:18Z <japhb> tadzik: I ran a few ad-hoc tests of both the new and old functionality, and fixed a couple bugs because of that ... did you want me to create a test file as part of the PR? | ||
japhb | Oh, cool beans | 19:19 | |
19:20
mayathecat left,
mayathecat joined
|
|||
tadzik | hm, maybe a line for example.pl though? | 19:22 | |
19:22
darutoko left
19:25
domidumont left
19:26
El_Che joined
|
|||
japhb | tadzik: Yeah, can do. | 19:27 | |
tadzik | ossum | ||
19:29
mayathecat left
19:32
CIAvash left
19:34
jast left
19:37
xinming left
19:38
mayathecat joined
19:43
mayathecat left
19:46
bjz joined,
labster joined
19:51
BenGoldberg joined
19:52
girafe joined
|
|||
japhb | tadzik: Looks like you merged the first one, so I made the example.pl extension a new PR | 19:56 | |
20:00
raiph left
20:04
shlomif joined
20:15
Tonik left
20:17
setty1 left
20:19
mayathecat joined
20:22
bjz_ joined,
mayathecat left,
bjz left
20:24
shlomif left
20:39
TEttinger joined,
bjz_ left
20:45
bjz joined
20:48
iH2O joined
20:53
iH2O left
20:56
bjz left
20:57
kurahaupo left,
kurahaupo__ joined
20:58
qub left
21:21
zrr joined
21:23
qub joined
21:25
lolo78 joined,
kurahaupo_ joined,
cdg joined,
kurahaupo_ left
21:26
cdg left,
cdg joined
21:27
kurahaupo__ left,
qub left
21:28
kurahaupo__ joined
|
|||
lolo78 | Hi everyone. | 21:29 | |
A person that I know wants to rewrite his Perl 5 application in Perl 6. Part of it is a GUI written with Web technologies and using HTML5+ Canvas + Jquery, etc. I have no experience with Web development, especially not in P6. Is there any module or framework that you would recommend? | |||
moritz | lolo78: the state of P6 web frameworks is not very advanced right now; I guess my advice would be to use Inline::Perl5 (or Inline::Perl6 from p5) to gradually migrate business logic to p6, but keep using whatever p5 webframework the app i susing now | 21:32 | |
*using | |||
zostay | what does this mean? "Cannot invoke this object (REPR: Null; VMNull)" | 21:33 | |
moritz | zostay: it means that you're trying to invoke something, but that somthing is a NULL on a very low level | 21:34 | |
geekosaur | something internal leaked out into perl6 level | 21:35 | |
lolo78 | Moritz: Thanks Moritz. Right now, I think the P5 application is using CGI, so it might be a good idea to upgrade to more modern technologies. If there is no framework, maybe there are still a few modules that can be used. It's not a full web application, but an application using a Web browser and HTTP for its graphical interface. Maybe a couple of good modules might be sufficient. I was... | 21:37 | |
...thinking about things like github.com/gfldex/http-server-simple or similar things. | |||
zostay | that's kind of what i figured, any suggestion on how i can track it down? | 21:38 | |
RabidGravy | lolo78, I've been using HTTP::Server::Tiny + Crust for a few things, works well for me | 21:39 | |
moritz | zostay: do you have a backtrace? if not, try with --ll-exception | ||
zostay | nope and nope then either | 21:40 | |
RabidGravy | zostay, the pre-eminent cause of that is something like a .wrap or other low level operation on a callable that would cause it to get saved as an attribute during compilation | ||
and the resulting closure "disappearing" during the pre-compilation | |||
lizmat | m: use nqp; (nqp::null)() # zostay | 21:41 | |
camelia | rakudo-moar c5c600: OUTPUT«Cannot invoke this object (REPR: Null; VMNull) in block <unit> at <tmp> line 1» | ||
RabidGravy | there are tickets for it in RT | ||
21:41
qub joined
|
|||
zostay | RabidGravy++ i am doing something like that and commenting out bits of that code at least change what's happening in a way that might help me find, thx | 21:43 | |
qub | regarding non-working multiple eof-s in $*IN: where should i send the bug report: rakudo/nqp/moarvm/libuv? | 21:44 | |
moritz | qub: rakudo | ||
zostay | Perl 6 is such a joy to play with when it's a joy. When it isn't, it's like being nibbled to death by cats. | ||
moritz | that's where bug reports go unless you're quite sure what layer it's in | 21:45 | |
qub: that said, what exactly is the desired behavior? | |||
RabidGravy | regarding that, I think it was BMC Remedy that stored custom comment fields in a large BLOB in the database separated by FF characters | 21:48 | |
21:49
bjz joined
|
|||
RabidGravy | there's no end of crack addled behaviour in software that originated in the pre-modern era | 21:49 | |
I've just done a test on Linux and it will happily "$*IN.slurp-rest' something with an embedded 004 in it | 21:53 | ||
geekosaur | yes, because that is not actually EOF | ||
21:53
maybekoo2 left
|
|||
geekosaur | this is a tty driver-specific behavior, the stty-d eof char causes a short read | 21:53 | |
the tty eof char is not passed on | 21:54 | ||
RabidGravy | right, but then I'm not sure what we are talking about | ||
geekosaur | stdio, and probably libuv, make eof "sticky" on terminal filehandles, because the common idiom of looking only for an 0-length read will fail if you type xxx^Dyyy | ||
21:55
bjz left
|
|||
geekosaur | (that is, programs will handle the initial short read as a normal read that returned less than usual, and expect the next read to return 0. with ttys the next read returns more data, so libs like stdio and probably libuv remember they saw the short read and return EOF from then on unless "reset" | 21:55 | |
RabidGravy | right, so how is it in the data that qub is talking about then? | 21:56 | |
21:56
bjz joined
|
|||
geekosaur | qub's complaint is they are sending data via terminal, control-d, then the next set of data, control-d, ... | 21:56 | |
the short-read workaround prevents this because after the first short read, the handle is considered to always be at EOF | 21:57 | ||
RabidGravy | well, it's just stick the terminal in "raw" mode with stty then | ||
geekosaur | but then you can't detect end at all unless you watch for some magic sequence at the beginning. also you will need some way to pass through a control-D that is *not* an eof | ||
basically, replacing one can of worms with a smellier one | |||
lizmat | perhaps an IO::Handle.split( FF ) could work ? | 21:59 | |
RabidGravy | I'm feeling the hate growing, despite having maintained a large proportion of the P5 Term::* modules into the 21st centurt | ||
y | |||
geekosaur thinks the thing being done here could be done better some way... | |||
tar|uuencode and uudecode/split on the remote, or something | 22:00 | ||
22:00
FROGGS left
22:01
bjz left
|
|||
RabidGravy | or, y'know providing a sane modern interface or something | 22:01 | |
22:04
VVbrJVldCqK joined
|
|||
VVbrJVldCqK | www.youtube.com/watch?v=3EsJLNGVJ7E & wikileaks.org/podesta-emails/emailid/15893, www.reuters.com/article/us-usa-elec...SKBN12Z2SL & wikileaks.org/podesta-emails/emailid/3774 (ctrl+f qatar) - please don't let these be buried | 22:04 | |
22:04
VVbrJVldCqK left,
seatek left
|
|||
RabidGravy | wikileaks being an agent of the russian state now and all | 22:05 | |
twats | |||
right, that's me done for the day, have fun | 22:06 | ||
lizmat | good night, RabidGravy | ||
22:11
RabidGravy left
|
|||
lizmat wonders whether we should auto-purge any drive-by messages like the one from VVbrJVldCqK just now | 22:13 | ||
basically the ones with /join /msg / quit and nothing inbetween | 22:14 | ||
(from the clogs, I mean) | 22:15 | ||
TEttinger | but that would bury the spam! and it asked not to bury the spam with a "please" | 22:19 | |
22:25
setty1 joined
22:37
AlexDaniel joined
22:41
pmurias left
|
|||
grondilu | if the message also contains only URLs, then yes. | 22:45 | |
oh there was an additional request not to burry the thing indeed | 22:46 | ||
(my bad) | |||
22:58
bjz joined
23:00
bjz left
23:07
grondilu left
23:09
kurahaupo__ left
23:14
seatek joined
23:24
cdg left
23:31
tushar left
23:35
firstdayonthejob left
23:46
lolo78 left
23:51
xinming joined
23:56
rindolf left
|