»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg p6eval perl6: ... | irclog: irc.perl6.org/ | UTF-8 is our friend! Set by sorear on 4 February 2011. |
|||
00:06
awwaiid joined
00:07
jeffreykegler joined
00:08
jeffreykegler left,
jeffreykegler joined
00:17
colomon left
00:35
pyrimidine left,
Chillance left
01:18
grondilu joined
01:21
dayangkun left,
colomon joined
01:23
grondilu left
01:37
jeffreykegler left
02:10
FROGGS left
02:23
FROGGS joined
02:46
pyrimidine joined
02:47
autumn is now known as Leafyy,
Leafyy is now known as autumn
03:01
pyrimidine left
03:31
uvtc left
|
|||
colomon | rn: say FatRat.new(1, 10**100) | 03:37 | |
p6eval | niecza v24-23-g0520c7c: OUTPUT«1E-100» | ||
..rakudo a3869a: OUTPUT«0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001» | |||
benabik | That's a lot of zeros, but I somehow doubt that was 100 of them. | 03:38 | |
colomon | easy enough to check | 03:39 | |
r: say [+] FatRat.new(1, 10**100).gist.comb.map(* == '0' ?? 1 ?? 0) | 03:40 | ||
p6eval | rakudo a3869a: OUTPUT«===SORRY!===Found ?? but no !!at /tmp/4_ixLUJiBa:1------> 0**100).gist.comb.map(* == '0' ?? 1 ?? 0⏏)Confusedat /tmp/4_ixLUJiBa:1------> 0**100).gist.comb.map(* == '0' ?? 1 ?? 0⏏) expecting any of: … | ||
colomon | r: say [+] FatRat.new(1, 10**100).gist.comb.map(* == '0' ?? 1 !! 0) | ||
p6eval | rakudo a3869a: OUTPUT«No such method 'count' for invocant of type 'Int' in method reify at src/gen/CORE.setting:5568 in method reify at src/gen/CORE.setting:5491 in method reify at src/gen/CORE.setting:5491 in method gimme at src/gen/CORE.setting:5881 in sub at src/gen/CORE.s… | ||
sorear | r: say FatRat.new(1, 10**100).subst(rx/0*/, -> $x { $x.chars }, :g) | ||
p6eval | rakudo a3869a: OUTPUT«10.99010» | ||
sorear | r: say FatRat.new(1, 10**100).subst(rx/0+/, -> $x { $x.chars }, :g) | ||
p6eval | rakudo a3869a: OUTPUT«1.991» | ||
benabik | r: FatRat.new(1,10**100).Str ~~ /0\.(0*)1/; say $1.chars | 03:41 | |
p6eval | rakudo a3869a: OUTPUT«No such method 'chars' for invocant of type 'Any' in block at /tmp/t1K_vcMONZ:1» | ||
benabik | r: FatRat.new(1,10**100).Str ~~ /0\.(0*)1/; say $0.chars | ||
p6eval | rakudo a3869a: OUTPUT«99» | ||
sorear | looks good to me | ||
99 zeros | |||
colomon | sorear++ | ||
r: say [+] FatRat.new(1, 10**100).gist.comb.map({ $_ == '0' ?? 1 !! 0 }) | 03:42 | ||
benabik | Right, zero indexed. Looked short to me, but I guess my IRC window is wider than I thought. | ||
p6eval | rakudo a3869a: OUTPUT«Cannot convert string to number: radix point must be followed by one or more valid digits in '.⏏' (indicated by ⏏) in method Numeric at src/gen/CORE.setting:10511 in sub infix:<==> at src/gen/CORE.setting:2885 in sub infix:<==> at src/gen/CORE.setting:2885 … | ||
colomon | r: say FatRat.new(1, 10**100).gist.comb | ||
p6eval | rakudo a3869a: OUTPUT«0 . 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1» | 03:43 | |
colomon | r: say FatRat.new(1, 10**100).gist.comb.map({ $_ == '0' ?? 1 !! 0 }) | ||
p6eval | rakudo a3869a: OUTPUT«Cannot convert string to number: radix point must be followed by one or more valid digits in '.⏏' (indicated by ⏏) in method Numeric at src/gen/CORE.setting:10511 in sub infix:<==> at src/gen/CORE.setting:2885 in sub infix:<==> at src/gen/CORE.setting:2885 … | ||
colomon | r: say FatRat.new(1, 10**100).gist.comb.map({ $_ eq '0' ?? 1 !! 0 }) | ||
p6eval | rakudo a3869a: OUTPUT«1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0» | ||
colomon | duh | ||
r: say [+] FatRat.new(1, 10**100).gist.comb.map({ $_ eq '0' ?? 1 !! 0 }) | |||
p6eval | rakudo a3869a: OUTPUT«100» | ||
03:47
MikeFair_ joined
04:18
ggoebel_ left
04:23
rindolf joined
04:57
preflex_ joined
04:58
preflex left,
preflex_ is now known as preflex
05:12
SamuraiJack joined
05:13
alec__ left
05:17
alec__ joined
05:18
xinming_ joined
05:21
xinming left
05:30
arlinius left
05:59
daniel-s_ joined
06:03
daniel-s left
|
|||
moritz | \o | 06:08 | |
sorear | o/ | 06:11 | |
phenny: tell masak curl masak.org/carl/ # PHP error | 06:16 | ||
erm | |||
...do I have the wrong bot? | |||
phenny | sorear: I'll pass that on when masak is around. | ||
moritz | just ESLOW | 06:17 | |
sorear | aha | 06:19 | |
06:25
quester joined
06:27
arlinius joined
|
|||
[Coke] | I got a DB file for aloha if we want to restart him on feather. | 06:30 | |
06:37
kaleem joined
06:53
cosimo left
07:04
b1rkh0ff left
07:14
rindolf left
07:15
rindolf joined
07:18
FROGGS left
07:20
b1rkh0ff joined
07:25
rindolf left
07:26
rindolf joined
07:32
rindolf left,
rindolf joined
07:47
quester left
08:10
domidumont joined
08:23
thou left
|
|||
arnsholt | o/ | 08:24 | |
sjn | \o | 08:26 | |
08:34
FROGGS joined
08:38
domidumont left
08:39
domidumont joined
|
|||
arnsholt | sjn: Were you the one trying to wrap libxml with Zavolaj at the Oslo hackathon? | 08:40 | |
08:41
hoelzro|away is now known as hoelzro
08:42
kivutar joined
08:55
fhelmberger joined
08:58
kresike joined
|
|||
kresike | hello all you happy perl6 people | 08:58 | |
sjn | arnsholt: no, that wasn't me | 08:59 | |
arnsholt: I was one of the guys just hanging out (and organizing a little :) | 09:00 | ||
arnsholt | Ah, right | ||
moritz | I remeber it wasn't a #perl6 regular | 09:01 | |
but I don't know who :( | |||
arnsholt | Oh, well | ||
Maybe I'll get around to it at some point | |||
FROGGS | moritz: ohh, that narrows it down :P | 09:02 | |
arnsholt | Just wanted to point out that libxml bindings would be a lot more feasible now that the sized stuff has landed | 09:03 | |
FROGGS | I wish I had time to fiddle with it | 09:04 | |
arnsholt | If you find the tuits, you know where to find me | 09:05 | |
OH! And if you want to hack on the SDL stuff again, you can kill the terrible hacks you needed to get sized stuff as well | 09:06 | ||
09:06
cosimo joined
|
|||
FROGGS | arnsholt: right, thats exactly the point where I want to test this :o) | 09:08 | |
these hacks are horrible, and 64bit specific | 09:09 | ||
arnsholt | Excellent. It felt good to be able to close that bug =) | ||
FROGGS | ya | 09:10 | |
09:10
cosimo left
09:11
cosimo joined
|
|||
arnsholt | 'lo cosimo o/ | 09:11 | |
jnthn | morning o/ | ||
arnsholt | Hopefully this visit will be longer than the last one =) | ||
FROGGS | hi jnthn | ||
arnsholt | G'morning, jnthn | 09:12 | |
arnsholt is contemplating NativeCall string handling | 09:15 | ||
jnthn has meetings :) | |||
arnsholt | Lots of time to think of design issues then =D | 09:16 | |
moritz | arnsholt: please also think of blob handling :-) | 09:19 | |
arnsholt | Just huge chunks of bytes, you mean? | 09:22 | |
sjn | arnsholt: If you want some, I have lots of tuits to give away :) | 09:23 | |
although they're the wooden flat kind. :D | |||
moritz | arnsholt: yes | 09:24 | |
jnthn guesses we wanna use Buf for those, or something like that | |||
moritz | arnsholt: usually there's an out-of-band signalling of the lenght of the blob somewhere | ||
09:24
marloshouse_ joined
|
|||
moritz | jnthn: yes; the question is just how to design the interface to make sense to to the user | 09:24 | |
FROGGS | sjn: I'd took one :o) | ||
09:25
benabik left,
benabik joined
|
|||
arnsholt | At the NativeCall level, I think the person wrapping the API just has to cope with that part of it on their own | 09:25 | |
09:26
marloshouse left,
marloshouse_ is now known as marloshouse
|
|||
moritz | arnsholt: well, but somehow we need the ability to turn tuple of (pointer to blob, length) into a Buf | 09:26 | |
and the other way round | |||
arnsholt | Yeah, that's more annoying | 09:27 | |
This, essentially is what I'm pondering really | |||
Since strings in C are blobs =) | |||
FROGGS .oO( Buf.new( pointer => $pointer, length => $bytes ) ) | 09:28 | ||
sjn | FROGGS: feel free to get in touch next time you're in Oslo :) | ||
FROGGS | sjn: ohh, Oslo | ||
well, I try not to forget :/ | |||
09:29
kst left,
kst joined
|
|||
nwc10 | jnthn: do the meetings have food? | 09:32 | |
10:03
ObseLeTe joined
10:04
arlinius left
10:18
arlinius joined
10:20
pete_ joined,
pete_ is now known as Guest38296
|
|||
Guest38296 | This is the second time I've set aside a couple of days to really learn Perl6, and been caught by the build tool being unable to handle paths with spaces in | 10:21 | |
moritz | then please use a path without spaces | ||
it's a TODO for us, but it really, really shouldn't stop you | 10:22 | ||
Guest38296 | *shrug* my home dir on my dev box has a space in it | ||
I guess I could build a new VM, or use a different dev box, but most likely, I'll find a different project to hack on | |||
FROGGS | Guest38296: spaces are always a problem when compilers re involved... gcc cant handle that too when passing the path as an argument when invoking commands | ||
10:28
Guest38296 left
|
|||
arnsholt | Heh. I actually didn't even know that was a problem | 10:29 | |
10:31
daniel-s_ left
10:32
M_o_C joined
|
|||
moritz | IIRC parrot has fixed that problem, but nqp and rakudo haven't | 10:37 | |
FROGGS tries | 10:38 | ||
moritz re-clones parrot with 5 MB/s and still finds it slow | 10:40 | ||
if the #parrot folks go through on their plan to rip out much stuff, it might be worth considering whether to restart with a slimmed-down repo | 10:41 | ||
and keep a full-history archive somewhere else | |||
FROGGS | might be nice to be able to say --gen-parrot-branch=slim or so | 10:43 | |
to be able to switch and compare | |||
moritz | --gen-parrot=branch already works | 10:45 | |
FROGGS | perfect | 10:47 | |
Receiving objects: 27% (113060/407957), 30.81 MiB | 224 KiB/s | |||
-.- | |||
10:52
M_o_C left
|
|||
FROGGS | Building NQP ... | 11:01 | |
/usr/bin/perl Configure.pl --with-parrot=/home/froggs/dev/folder with spaces/install/bin/parrot --make-install | |||
moritz | eeks, this is a nasty problem. | ||
dalek | kudo/spacey: ebf80f9 | moritz++ | tools/lib/NQP/Configure.pm: Small preparation to allow paths with spaces |
11:02 | |
FROGGS | what if we add quotes to the makefile.in? | 11:03 | |
dalek | p/spacey: 8282ac5 | moritz++ | tools/lib/NQP/Configure.pm: Small preparation to allow paths with spaces |
||
moritz | FROGGS: well, I fear that'll be necessary | ||
FROGGS: though I'd much rather prefer to add the quotes in Configure.pl | |||
11:06
sqirrel joined
|
|||
FROGGS | moritz: I added quotes to lib/NQP/Configure.pm:293 and it looks good so far | 11:07 | |
11:11
pjcj left
|
|||
moritz | FROGGS: that's not the only place that needs patching :-) | 11:12 | |
11:12
pjcj joined
|
|||
moritz | FROGGS: wait a sec, I'll commit what I have now | 11:12 | |
dalek | p/spacey: ae3b47d | moritz++ | tools/ (2 files): more fixes to allow spacey paths |
||
FROGGS | ya, the created makefile is the borke too | ||
this step: /usr/bin/perl /home/froggs/dev/folder with spaces/install/lib/parrot/4.10.0-devel/tools/build/pmc2c.pl | 11:13 | ||
moritz | it now gets further | 11:14 | |
up to the linking step | |||
11:14
mtymula joined
|
|||
mtymula | hello i have one complaint...;p | 11:14 | |
after ugrating to never version of rakudo | |||
i get problem like thjis: | 11:15 | ||
Invalid operation on binary string in method uc at src\gen\CORE.setting:2259 in method dispatch:<.=> at src\gen\CORE.setting:993 in block at C:\Test_czy_mobilne\mylib\perl6-http-easy-master\perl6-http-easy- master\lib/HTTP/Easy.pm6:93 | |||
it is like i cannot do this: .= | |||
but before i could... | |||
FROGGS | ahh, you get a Buf and it expects a Str there | 11:16 | |
mtymula | but why?? it works with 2012 verion of rakudo | 11:17 | |
FROGGS | IO::Socket::INET changed | 11:18 | |
mtymula | so what can i do to upgrate my rakudo and have working program at the same time | 11:19 | |
? | |||
FROGGS | mtymula: hold on, I'm inspecting HTTP::Easy right now | ||
hmmm, it is calling .get, that is right, .get should give you a Str IMO | 11:20 | ||
11:24
pmurias left
|
|||
mtymula | FROGGS: so... | 11:27 | |
what can I do?? | |||
FROGGS | wait a few minutes? I'm recompiling my rakudo to do some testing | 11:28 | |
mtymula | ?? | 11:41 | |
11:42
ObseLeTe left
|
|||
moritz | it seems that pbc_to_exe doesn't like spacey paths :( | 11:55 | |
FROGGS | :/ | 11:57 | |
moritz | but it's not pbc_to_exe's fault | 12:05 | |
mlenz@mlenz-workstation:~/p6/with space/rakudo/nqp$ ../install/bin/parrot_config libparrot_linkflags | |||
-L"/home/mlenz/p6/with space/rakudo/parrot/blib/lib" -lparrot | |||
mlenz@mlenz-workstation:~/p6/with space/rakudo/nqp$ ../install/bin/parrot_config inst_libparrot_linkflags | |||
-L/home/mlenz/p6/with space/rakudo/install/lib -lparrot | |||
so the inst_ variant doesn't escape the path | 12:06 | ||
WTF. | |||
patched parrot. | 12:08 | ||
FROGGS | I'm still compiling -.- | 12:09 | |
12:17
pupoque joined
12:39
nyuszika7h left
12:44
ggoebel_ joined
12:48
drbryane joined
12:57
Gwyxx left
13:02
ggoebel_ left
13:06
SamuraiJack left
13:12
jaldhar left
|
|||
FROGGS | mtymula: what rakudo version are you using? | 13:13 | |
13:13
skids left
13:19
shinobicl joined
|
|||
[Coke] rips some stuff out of parrot in his "sixparrot" fork - commit messages going to #parrot if anyone wants to follow. | 13:27 | ||
(nothing substanstive yet, just some LHF) | |||
er, *substantive. | 13:28 | ||
moritz waits for the commit messages | |||
fwiw with my last parrot patch, NQP can now build with a space in the prefix path | 13:29 | ||
(branch 'spacey') | |||
FROGGS | cool | ||
will try in a bit | |||
moritz | rakudo will need some Makefile twiddling too | 13:30 | |
arnsholt | jnthn: I managed to get a segfault while precompiling Test.pm (using a not entirely latest Rakudo) | 13:31 | |
jnthn | arnsholt: Are you using a later NQP? | 13:32 | |
arnsholt | NQP is at HEAD | ||
jnthn | That'd do it if your Rakudo is more than a day or two old. | ||
STable layout changed a little. | |||
arnsholt | That's probably it then | 13:33 | |
[Coke] | Is nqp/rakudo using parrot's calling conventions at all? | 13:38 | |
jnthn | yes | 13:40 | |
[Coke] | Danke. | 13:41 | |
13:41
not_gerd joined
|
|||
not_gerd | hello, #perl6 | 13:41 | |
FROGGS | hi not_gerd | 13:42 | |
arnsholt | jnthn: Yeah, works fine now | ||
not_gerd | [Coke]: if you're looking for stuff to do, you could try resurrecting tools/build/nativecall.pl (or alternatively, port the current nci_thunk_gen.pir to Perl) | 13:43 | |
nci_thunk_gen.pir pulls in TGE via data_json | 13:44 | ||
[Coke] | not_gerd: I'm working on a slimmed down parrot. | ||
not_gerd | [Coke]: I know | 13:45 | |
moritz | [Coke]: yes, that would allow to slim down parrot by removing data_json and TGE | ||
13:45
Guest20810 left
|
|||
[Coke] | Is nativecall being used? | 13:45 | |
I thought rakudo/nqp rolled their own there. | |||
moritz | maybe for bootstrappy stuff? no idea | ||
jnthn | I'm not aware of it being used | 13:46 | |
moritz | (I mean, for the parrot build) | ||
if not, we can rip that out too | |||
jnthn | The NativeCall Perl 6 module is all using stuff inside NQP | ||
not_gerd | afaik it's used for the dynops | ||
jnthn | ah | 13:47 | |
13:47
Rix left
|
|||
not_gerd | jnthn: is there anything wrong with pulling down NQP/Rakudo dynops into Parrot core? | 13:48 | |
13:49
ponbiki joined,
ponbiki is now known as Guest8979
|
|||
jnthn | not_gerd: That you'd drag an incredible amount of other stuff with them? | 13:50 | |
not_gerd | jnthn: as long as these are all specific to the Parrot backend, I don't see anything wrong with that | 13:51 | |
13:52
Rix joined
|
|||
jnthn | not_gerd: I don't see what it wins, it just means if I should need to change them they're further away from the things that use them. | 13:53 | |
It's probably *possible* to do technically, I'm just not sure what it wins. | 13:54 | ||
13:56
PacoAir joined
13:57
kaleem left,
bluescreen10 joined
|
|||
not_gerd | jnthn: if we take the idea of 'Parrot lite' with the sole purpose of supporting NQP seriously, that's the natural next step after ripping out all parts not used by NQP | 13:58 | |
masak | is there a RC entry for c2.com/cgi/wiki?BagSumInManyProgrammingLanguages ? | ||
phenny | masak: 06:14Z <sorear> tell masak curl masak.org/carl/ # PHP error | ||
masak | sorear: I know, it's been that way for a while. :/ | 13:59 | |
sorear: I'm sick of MediaWiki, so I'll probably put a really small PHP script there instead that allows me to edit content in the Simplest Possible way. | |||
sorear: anyway, thanks for the reminder. was there something in particular you were looking for? | |||
not_gerd | jnthn: ie Parrot ends up as /nqp/backends/parrot-lite right next to /nqp/backends/jvm, ... | ||
nwc10 | and upgrade it to dogfood soon after? | 14:00 | |
masak | nwc10: I'll check whether the web hotel that I'm renting allows Perl 6 at all. | ||
nwc10 | I thought that it would be something like that | 14:01 | |
they're running Java? Or they consider that more insecure than PHP? | |||
[Coke] | not_gerd: anyway, current plan is to remove unused ops, libs, pmcs. to be done, also need to remove pasm (already have a branch somewhere that does 80% of this), tge, pge, pct, parrot-nqp, winxed, and anything that depends on them (unless we need it.) | 14:02 | |
14:06
wk joined
|
|||
moritz | pbc_to_exe is written in winxed | 14:12 | |
[Coke] | only recently. | 14:13 | |
but we can always check in the generated C. | |||
(or use more winxed.) | 14:14 | ||
not_gerd posted gist URI of his notes to #parrot | 14:15 | ||
14:17
gtodd joined
|
|||
gtodd | hello ... | 14:18 | |
pmichaud | good morning, #perl6 | ||
gtodd | can I build/link parrot rakudo with libedit instead of readline? is there a --prefer-libedit option or something? | 14:19 | |
[Coke] | is libedit a dropin replacement for readline? | ||
nwc10 | pmichaud: thanks. I'll have a play. But it might end up being one big messy expression | ||
gtodd | mostly .... heimdal postgres client apps use it ... it's small and sometimes just included with the source I think | 14:20 | |
pmichaud | is there a log I should read that discusses the reason for eliminating deletepos and existspos ? | ||
gtodd | sqlite will use it too ... I think it's a option for people who want to ship things using a pure BSD license but upstream folks put readline in the build stuff (autoconf cmake whatever) as the default for whatever historical reasons | 14:22 | |
pmichaud | oops, kid needs unplanned ride to school -- bbi20 | ||
gtodd | I don't know much about hacking Configure.pl files but there seems no easy way of pointing rakudo at libedit - I just want readline or libedit for the REPL | 14:24 | |
... errm obviously :-[ | |||
14:24
Patterner left
14:25
clkao left
|
|||
jnthn | pmichaud: Think it was a day or two ago, maybe a little more..it arose out of reviewing what existspos and deletepos do when tadzik++ was looking at porting them over to the JVM. | 14:26 | |
14:26
Psyche^ joined,
Psyche^ is now known as Patterner
|
|||
jnthn | gtodd: I know that we get readline support through calling .readline_interactive, which is provided by Parrot. I'd guess if there's any way to make it happen, it'd be done at the point of configuring Parrot. | 14:28 | |
14:28
benabik left
|
|||
gtodd | jnthn: ah ok | 14:28 | |
was looking at the wrong end | |||
Just thinking of readline again is there a errm perl6 policy statement or longish term development goal of making perl more umm "independent" of system libraries? perl5 on my system (5.17) has no dependencies except what I add through modules. perl6 needs gmp icu readline just to build perl6 argh! :) | 14:44 | ||
not_gerd | r: module Foo { our $*FOO = "foo"; our sub foo { say $*FOO } }; { temp $*Foo::FOO = "bar"; Foo::foo }; Foo::foo | 14:45 | |
p6eval | rakudo a3869a: OUTPUT«Can only use 'temp' on a container in sub prefix:<temp> at src/gen/CORE.setting:12641 in block at /tmp/ILNYDJYQk2:1» | ||
not_gerd | ^ what's the right way to do that | ||
gtodd | just realized this is probably a topic that appears ad nauseum so I hereby retract my last comment/question ... but hope to be able to build small light perl6 with less external library linking one day :) | 14:46 | |
cheers | |||
moritz | not_gerd: there are two ways. The first is to use ordinary variable, and to temp() them | ||
not_gerd: and the nicer variant is to use $*foo variables (without any namescpaces), and define a new one with 'my $*foo' in an inner scope | |||
r: module Foo { my $*FOO = 'foo'; our sub foo { say $*FOO } }; { my $*FOO = 42; Foo::foo() }; Foo::foo(); | 14:47 | ||
p6eval | rakudo a3869a: OUTPUT«42Dynamic variable $*FOO not found in method gist at src/gen/CORE.setting:10513 in sub say at src/gen/CORE.setting:7598 in sub foo at /tmp/WeXlm4WM0y:1 in block at /tmp/WeXlm4WM0y:1» | ||
not_gerd | r: 'module Foo { our $FOO = "foo"; our sub foo { say $FOO } }; { temp $Foo::FOO = "bar"; Foo::foo }; Foo::foo | 14:48 | |
p6eval | rakudo a3869a: OUTPUT«===SORRY!===Unable to parse expression in single quotes; couldn't find final "'"at /tmp/gtlIwJKH5R:1------> $Foo::FOO = "bar"; Foo::foo }; Foo::foo⏏<EOL> expecting any of: statement list prefix or term … | ||
not_gerd | r: module Foo { our $FOO = "foo"; our sub foo { say $FOO } }; { temp $Foo::FOO = "bar"; Foo::foo }; Foo::foo | ||
p6eval | rakudo a3869a: OUTPUT«barfoo» | ||
not_gerd | ^ I'll go with that, thanks | ||
moritz++ | |||
moritz | you're welcome | ||
pmichaud | back again | 14:49 | |
not_gerd | r: module Foo { our $FOO; our sub foo { say $FOO } }; { temp $Foo::FOO = "bar"; Foo::foo }; Foo::foo | ||
14:49
skids joined
|
|||
p6eval | rakudo a3869a: OUTPUT«Any()Any()» | 14:49 | |
not_gerd | ^ bug? | 14:50 | |
moritz | wb, pm | ||
r: module Foo { our $FOO = Any; our sub foo { say $FOO } }; { temp $Foo::FOO = "bar"; Foo::foo }; Foo::foo | |||
p6eval | rakudo a3869a: OUTPUT«barAny()» | ||
moritz | yes, bug | 14:51 | |
not_gerd needs to leave now | |||
moritz | 'our'-Variables have lots of bugs and limitations. We tend to avoid them whenever possible. | ||
not_gerd | bye, #perl6 | 14:52 | |
14:52
not_gerd left
|
|||
pmichaud | jnthn: okay, I'll review the log and comment further if needed :) | 14:52 | |
mtymula | FROGGS: sorry I was away... | 14:57 | |
gtodd | |||
14:57
gtodd left
|
|||
pmichaud | moritz: (slimmed down parrot repo, from log) yeah, I've often thought we should perhaps trim the repo somehow. | 14:58 | |
15:00
stopbit joined
|
|||
FROGGS | mtymula: no problem, I'm usually patient | 15:00 | |
15:00
pmurias joined,
kivutar left
|
|||
pmurias | [Coke]: wouldn't it make sense to just instrument the thing that processes pir to record all the opcodes it uses and measure which ones aren't used by rakudo when running roast? | 15:02 | |
[Coke] | ah, "just". | 15:03 | |
Yes, having a list of used vs. unused opcodes would be most helpful. Thank you for volunteering to do that bit. :) | |||
FROGGS | [Coke]++ | ||
pmichaud | also need to see which opcodes are used by build process, which might be different from set in roast | ||
15:04
Shozan joined
|
|||
[Coke] | pmichaud: and then we have to keep running it once we rip stuff out of the build process. | 15:04 | |
15:04
sizz_ joined
|
|||
[Coke] | but having the list run during spectest would be a great start, yes. It's easy enough to find candidates without that, however. | 15:05 | |
pmichaud | just doing a grep for pir:: and nqp:: in the rakudo and nqp repos should be a really good start | ||
15:06
p5eval_ joined,
eviltwin_b joined,
cxreg2 joined
15:07
Tene_ joined,
Tene_ left,
Tene_ joined
|
|||
moritz | (especially if you include generated .pir files) | 15:07 | |
15:07
diakopte1 joined,
atrodo left,
cxreg left,
kresike left,
geekosaur left,
sizz left,
raiph__ left,
p5eval left,
diakopter left,
SHODAN left,
Tene left,
cotto left,
eviltwin_b is now known as geekosaur,
kresike joined,
atrodo joined
15:08
cotto joined,
raiph__ joined
|
|||
FROGGS | I really like the idea of having an rakudo-optimized parrot | 15:08 | |
pmichaud | FROGGS: I like the idea also. Should've happened years ago. :-P | ||
FROGGS | maybe I can hook in at some point | 15:09 | |
15:09
clkao joined
|
|||
FROGGS | pmichaud: ya, would be a shame to not try to "rescue" all the work that has gone into it | 15:09 | |
pmichaud | FROGGS: ...unless the rescue ends up diverting too many resources from more productive tasks. | 15:12 | |
FROGGS | ya, you're right | 15:13 | |
atrodo | So my understanding from the logs is that rakudo has no use for nci? | 15:14 | |
pmurias | [Coke]: processing all the *.ops file with s/^(inline?\s*op\b.*)$/$1..recoding stmt.../ (or something similiar) should be enough | 15:15 | |
FROGGS | mtymula: so what is your rakudo version? | 15:17 | |
15:18
drbryane left
15:20
salv0 left,
pupoque left
|
|||
pmurias | [Coke]: start of a quick hack for that: pastie.org/6117345 | 15:24 | |
15:27
kaare_ joined
|
|||
pmichaud | atrodo: it's hard to know exactly what rakudo needs or doesn't need from existing Parrot. As far as we know, Rakudo doesn't have a direct requirement for Parrot's NCI. But we might be overlooking something, or there could be an indirect requirement that we've forgotten about | 15:30 | |
if rakudo or nqp are using Parrot's NCI, we'd probably try to refactor to remove that requirement, though, and I suspect such refactoring wouldn't be hard. | 15:31 | ||
15:34
lizmat left
15:35
salv0 joined
15:36
Liz joined,
Liz is now known as Guest93827
15:38
pmurias left
|
|||
[Coke] | pmurias - what is that supposed to get me? a list of parrot ops? | 15:39 | |
(there is a tools/dev/sear | 15:49 | ||
whoops. search_ops.pl | |||
15:53
SunilJoshi joined
15:56
thou joined
16:02
bluescreen10 left
|
|||
atrodo | pmichaud: Okay. [Coke], I'm going to try and rip out nci on your sixparrot branch | 16:03 | |
kresike | bye folks | 16:06 | |
16:06
kresike left
16:07
nyuszika7h joined
16:09
cotto left,
cotto joined
16:11
domidumont left
16:16
Gwyxx joined,
Gwyxx left
16:20
kaleem joined
|
|||
[Coke] | atrodo: want a commit bit? | 16:22 | |
Or are you going to fork my fork? | |||
atrodo | [Coke]: If I can do this successfully, yea, I'll come asking for a commitbit | ||
[Coke] | hokay. | 16:23 | |
masak .oO( spork me on github ) | 16:24 | ||
16:25
kivutar joined
|
|||
jnthn | decommute & | 16:27 | |
16:28
kaleem left,
hoelzro is now known as hoelzro|away
16:32
bluescreen10 joined
16:36
FROGGS left
16:37
sweet_kid left,
rafl left
16:39
sweet_kid joined
16:40
rafl joined,
spider-mario joined
16:41
bluescreen100 joined
16:43
SamuraiJack joined
16:44
bluescreen10 left
16:52
kivutar left
17:09
arlinius left
17:10
Chillance joined,
FROGGS joined
17:12
jms53 joined
|
|||
rurban | rakudo will build faster by removing pmc's and ops ??? OMG | 17:18 | |
[Coke] | not that that's a primary goal, but sure. | ||
pmichaud wonders if his sarcasm detector is needed here. | 17:19 | ||
17:19
Guest93827 left
|
|||
[Coke] tries to assume a pleasant effect from other senders unless coke himself is in a really crappy mood. | 17:20 | ||
gah. *affect. | |||
pmichaud | yes, I make that assumption also, which is why I sometimes miss sarcasm. :-) | 17:21 | |
FROGGS | haha, sheldons wherever I look *g* | 17:22 | |
[Coke] | rurban: how goes p2? do you think an nqp port will be possible? | ||
17:22
SunilJoshi left
17:23
arlinius joined,
not_gerd joined
|
|||
rurban | nqp-p2 is easy, already doable. the compiler and vm is stable. | 17:23 | |
FROGGS | was p2 the thing which is a she? | ||
rurban | I'm using a new parser and grammar soon (leg => marpa) | ||
yes | |||
PerlJam | rurban: will you be making an nqp-p2 or leave that to someone else? | 17:24 | |
rurban | but the AST might need some docs | ||
PerlJam: I will do, but currently I'm busy with something else | |||
[Coke] | rurban++ | ||
rurban | I also have to rewrite my B::C compiler a bit | ||
not_gerd | rurban: removing ops and pmcs is more about making potential refactors easier and moving from Parrot-the-ecosystem to Parrot-the-library that powers NQP | 17:25 | |
that's my story, and I'm sticking to it ;) | |||
moritz | and removing stuff is easy(ish) | 17:26 | |
rurban | But it will not be faster. you will do more harm than help | ||
[Coke] | Just an experiment at this point. Much easier for [Coke] to delete someone else's code than write his own. | ||
moritz | so it doesn't need huge benefit to justify it | ||
[Coke] | rurban: "harm" ? | ||
rurban | You should inspect the calling convention and undo the nci method madness | ||
not_gerd | rurban: sure, but that's hard | ||
rurban | ops2c should be reverted to the perl5 lib, so that nqp can go away | ||
or use nqp-p6 (i have a branch) | 17:27 | ||
[Coke] | rurban: yes, ops2c is already on the todo list. | ||
17:27
Liz joined
|
|||
rurban | and use bacek's llvm ops2c | 17:27 | |
which jit's the ops. | |||
17:27
Liz is now known as Guest94342
|
|||
rurban | Also in some of my branches | 17:27 | |
So I guess you'll need nqp for the jit | 17:28 | ||
I fixed llvm integration already to use static or shared llvm libs | |||
pmichaud | rurban: just as a general note, it's easy for people to say what should be done. commits are what count. | 17:29 | |
rurban | And removing imcc -O1 was also not helpful if you want a faster rakudo | ||
I'm just warning for the next axe which will destroy months of work, and which will not be undoable | 17:30 | ||
pmichaud | reverts are easy. it's easy to abandon branches. | ||
rurban | This happened to parrot every two year or so | ||
PerlJam | rurban: I think the next axe to fall will likely kill parrot though ... we'll see what happens. | 17:31 | |
[Coke] | rurban: all this is happening in a branch as an experiment. That's it. | ||
(not even a branch, a branch on a fork, at the moment.) | |||
pmichaud | if things work as expected, then nqp unmodified should be able to run on both parrot master and on sixparrot | 17:32 | |
17:32
Guest94342 left
|
|||
rurban | Perljam: Only parrot can kill parrot, rakudo can just abandon parrot. | 17:32 | |
pmichaud | so there's no "axe" that is undoable. | ||
rurban | all the previous axes did more harm than benefits | ||
17:32
Liz_ joined
|
|||
[Coke] | rurban: what axes? | 17:33 | |
rurban | only people with a global understanding should axe out stuff. | ||
your plan to strip parrot to a bare rakudo vm. how should parrot performance be competitive then? | 17:34 | ||
pmichaud | rurban: you're reading too much into "your plan". | ||
rurban | think of rakudo AND performance | ||
spider-mario | moritz: are you sure that qq["$file" --show-config] will work with paths that contain "? | 17:35 | |
rurban | well, I don't like useless suicidal tendencies our of shere agony and desperation, and false accusations | ||
spider-mario | why not just: open my $CONFIG, '-|', $file, '--show-config' | 17:36 | |
rurban | out of | ||
pmichaud | rurban: it's an experiment. If anyone's accusing you of anything, I missed it. | ||
not_gerd | rurban: how does removing unused ops, pmcs and getting rid of nqp-rx hurt performance? | ||
[Coke] | rurban: I'm certainly not falsely accusing anyone here. | ||
rurban | someone says: threads are useless, someone else removes it. | ||
not_gerd | it won't help, but it won't hurt as well | ||
rurban | not you coke, someone else | ||
[Coke] | rurban: no one is removing threads. | ||
rurban | just saying :) | ||
[Coke] | rurban: yes, so go fight with him, please, not us. | ||
pmichaud | rurban: please don't assume that diakopter++ is speaking for the rest of us. | 17:37 | |
rurban | just an example. nqp e.g. would be needed for jitting | ||
bacek should be asked | |||
but maybe the perl5 ops2c would work also. | |||
[Coke] | yes, that conversation already happened on #parrot. | 17:38 | |
rurban | parrot compiletime does not worry me. parrot runtime worries me. | ||
[Coke] | rurban: yes. | ||
pmichaud | rurban: that point has been made repeatedly, by myself included. | ||
rurban | oh, sorry. I thought we are on #parrot | ||
[Coke] | no one really cares about making compile time faster. side effect only. | ||
rurban | I left #parrot out of anger yesterday | ||
pmichaud | then you're speaking from an incomplete picture of things. | 17:39 | |
perhaps we should limit discussion to only people with a global understanding of stuff. :-) | |||
rurban | not_gerd: they were probably needed for some planned subsystem to make things faster, not slower. | 17:40 | |
PerlJam | Assuming that Rakudo obtains speeds comparable to other language implementations, what's left to make it "production ready" besides threads? | ||
pmichaud | "It has to run all of CPAN." | 17:41 | |
[Coke] | that's insane. | ||
PerlJam | ouch. | ||
[Coke] | is p5 compatibility mode a requirement? | ||
pmichaud | I don't know that "threads" are required for "production ready". | ||
that's what I don't like about the "production ready" term. If we start saying "what does it need to be production ready", it's a slippery-slope to "it has to run all of Cpan" | 17:42 | ||
[Coke] | certainly nice to have. are threads in the spec as first class things, or just side effects about program execution order? | ||
ah, my sarcasm detector was broken. | |||
timotimo | pmichaud: i currently can't properly create a ipython kernel implementation because there are no "real" threads in rakudo yet, just one data point | ||
pmichaud | [Coke]: I tried to put the quotes there as a sarcasm hint :) | 17:43 | |
spider-mario | could that not be solved with coroutines that would not necessarily run in parallel? | ||
[Coke] | If someone solidifies the spec, I promise to have a go at an implementation with the current parrot threads. | ||
pmichaud | timotimo: I agree that real threads prevent the task you're wanting to do. But I've written a ton of production code in my lifetime that doesn't require threads. | ||
[Coke] | not going to shake out any issues unless someone starts writing code against them. | ||
pmichaud | if we say "Perl 6 isn't production ready because I need X", it'll never be "production ready" | 17:44 | |
17:45
SamuraiJack left
|
|||
pmichaud | [Coke]: "solidify the spec" isn't really the model we tend to use. What typically happens is someone prototypes some code to solve a problem, then we try to adapt it to other problems, then we converge on a solution, then we write a spec. | 17:45 | |
I.e., we tend to follow an Internet/RFC model (bless the spec after implementation) | |||
PerlJam | pmichaud: To obtain feature parity with other languages in roughly the same niche (if there can be such a thing), I think we'll need some answer to "threads". This is how outsiders will judge "production ready". | ||
17:45
kst left
|
|||
pmichaud | PerlJam: "feature parity" is a reasonable approximation | 17:46 | |
spider-mario | do we really want threads as our concurrency model? | ||
[Coke] | pmichaud: ok. then I'm not your guy for the initial implementation, at least not without a lot more tuits. | ||
pmichaud | [Coke]: but I can give a concrete and spec'd example. | ||
it's the same one I gave rurban and have been asking about for several years | |||
implement a threaded version of the hyperops | |||
i.e., get @a >>+<< @b to run threaded. | 17:47 | ||
[Coke] | Yes, I'm familiar with that request. | ||
pmichaud | that's specced, it's not likely to change, it wants threading. | ||
once we have that example in place, we can look at the underlying threading model and see where the warts are and what else we need to improve threading | |||
there are other places where threading is implicit in Perl 6 | 17:48 | ||
[Coke] | "underlying threading model"... which doesn't exist from rakudo's perspective. yes? | ||
just "this would go faster if we used threads". | |||
s/would/might/, even. | |||
pmichaud | a bit more than that | ||
we know that the hyperops are intended to be a way for the compiler to exploit and optimize parallelism. the implementation doesn't do that yet. | 17:49 | ||
neither rakudo nor the Perl 6 specify exactly how that parallelism is to be exploited... specifically because the language designer(s) don't feel they have a strong enough handle on the problem to say "this is the way it should be done" | 17:50 | ||
s/nor the Perl 6 specify/nor the Perl 6 spec say/ | |||
[Coke] | OK. let me stop you there: I'm not your guy. | 17:51 | |
pmichaud | fair enough. | ||
[Coke] | So, I'll just focus on things I have proper shaped tuits for. | ||
pmichaud | I'm not that guy either. :) | ||
timotimo: my recommendation for progress in your situation is not to ask "where can I find Perl 6's threading model" or "how will threads work in Rakudo?" The way forward is to say "here's what I want threads to look like" or "here's how my application should look" and then we start building libraries or code to make it work. | 17:52 | ||
many parts of the parrot implementation suffer (with respect to Perl 6, but other languages also) from saying "we think this is what you'll want this feature to look like, so here it is and hopefully you can adapt to it". Instead what is needed is for Parrot's features to be driven and derived directly from the needs of the languages. | 17:54 | ||
in the case of Perl 6 threading, it needs to be derived from applications that will use it. | |||
timotimo | pmichaud: this is pretty easy to do actually. all i need is a straight port of this tiny bit of code: github.com/ipython/ipython/blob/ma...eat.py#L29 | 17:55 | |
it'd be totally okay if it looks different, i don't have any preferences | |||
pmichaud | what would you want that code to look like if written in Perl 6? I suspect you'll want "async" somewhere. | 17:56 | |
timotimo | the init part is boring, when it comes to threads, it's just the run function that i need | ||
actually, i have no idea why this even has a thread running. probably the zmq.device call being blocking | |||
so if i could just async zmq.device(zmq::FORWARDER, $!socket, $!socket); that would be fantastic | 17:57 | ||
PerlJam | timotimo: you have a perl6-zmq ? | ||
timotimo | arnsholt is working on it | 17:58 | |
he asked me to help out, i'll have a look, too, but i don't really know what needs twiddling where and when | |||
pmichaud | it sounds like something we want as a starting point is a simple implementation of async | 18:00 | |
and by "simple" I mean "we know it won't work in the general case" simple. | |||
just something that gets two threads of control running at the same time -- try not to worry about synchronizing variables or the like just yet | 18:01 | ||
timotimo | yes, that would be enough at this point | 18:02 | |
$!socket would have to be renamed $!socktype, because it isn't even a socket object that's being passed | |||
at the same time, these device objects are implemented in pyzmq to use threading, too. but that's no big deal, they don't synchronise data with other threads either | 18:03 | ||
pmichaud | it won't be production ready threads by any stretch of the imagination, but we'll at least have something that we can start building from in Parrot, or at least can start to bridge the gap between what Perl 6 wants ("async") and whatever Parrot provides | ||
jnthn home | |||
arnsholt | timotimo: Any kind of hacking goes really | ||
timotimo | hm, except there's one global ZMQ context object that probably needs to be passed, i'll check. | ||
arnsholt | Tests, public perlish interface, and general giving it a spin | 18:04 | |
I haven't actually tested any of the C paths yet =) | |||
18:09
cxreg2 is now known as cxreg
|
|||
moritz | I would be grateful if somebody could test the 'spacey' branche of nqp on windows | 18:11 | |
after a thorough cleaning, in Rakudo perl Configure.pl --gen-parrot=master --gen-nqp=spacey # in rakudo's 'spacey' branch should be able to build nqp in a prefix with a space in the name | 18:12 | ||
jnthn | moritz: I'll just grab a completely fresh checkout and build that. | ||
arnsholt | timotimo: Oh, and if you have any good ideas for HOW we can test the code, I'm all ears | 18:13 | |
My current hack of a plan would be something involving Perl 5 code probably =) | |||
timotimo | oof, good question. | 18:19 | |
arnsholt | Yeah, I know =) | 18:22 | |
not_gerd | bye, #perl6 | 18:24 | |
18:24
not_gerd left
|
|||
rindolf | Hi all. | 18:25 | |
Hi PerlJam , pmichaud | |||
Hi jnthn | 18:26 | ||
rindolf sprinkles jnthn with some magic vowel dust. | |||
larks | I can't wait until the concurrency stuff gets finished | ||
jnthn | o/ rndlf :P | ||
rindolf | jnthn: heh. | 18:27 | |
PerlJam | rindolf: greetings | ||
rindolf | jnthn: what's up? | ||
PerlJam: what's new? | |||
PerlJam | rindolf: the leading "j" *is* a vowel ;) | ||
rindolf | inthan. | ||
PerlJam | rindolf: nothing much. Looking at play-perl.org now. | ||
rindolf | PerlJam: ah. | ||
jnthn | rindolf: Not much. Been doing $dayjob stuff today and now I'm home and pondering food and working on some NQP stuff :) | ||
PerlJam | larks: why? What do you hope to use it for? | 18:29 | |
rindolf | PerlJam: ah, I see that it is open source. | ||
cxreg | larks: do you mean the parrot threads support? | ||
rindolf | Or at least has sources on GitHub. | ||
jnthn: nice. | 18:30 | ||
PerlJam | rindolf: yep, I just cloned it in anticipation of adding a feature or two :) | ||
rindolf | moritz: hi, how are you? | ||
PerlJam: great. | |||
moritz | rindolf: within one standard deviation of my own, peculiar average | 18:32 | |
rindolf | moritz: OK. | ||
moritz: any news? | |||
PerlJam: did you also do a GitHub fork? | 18:33 | ||
PerlJam | rindolf: no, not yet. | ||
rindolf | PerlJam: ah. | ||
OK. | |||
larks | Well, I just like threads and concurrency =x | ||
PerlJam | I tend to poke around in a clone before I fork for pull requests. | ||
moritz | rindolf: there's always news, depending on how small-scale news you find interesting | ||
the pope retires! | |||
PerlJam | larks: bummer. I was hoping that you'd have some specific use-case :) | ||
moritz | nqp can now (in a branch) build in a directory with space in the path | 18:34 | |
larks | Well, I mainly design hardware so I think in parallel. How can I break this problem into parallel tasked, how do I need to sync them, etc etc | ||
rindolf | PerlJam: seems like I'll have to buy some en.wikipedia.org/wiki/B%C3%B6rek for the Israeli Perl Workshop (also for other people) because I'm not too fond of the Buddha Burgers' Vegan food served there (second year in a row). | 18:35 | |
larks | sorry for disappointing you =x | ||
rindolf | PerlJam: and I'm gonna give this there - www.shlomifish.org/temp-sherlock-ho...-Awk.xhtml | 18:36 | |
As a 10 minutes talk. | |||
arnsholt | r: .name.say for Grammars.^methods | ||
p6eval | rakudo a3869a: OUTPUT«===SORRY!===Undeclared name: Grammars used at line 1. Did you mean 'Grammar'?» | ||
arnsholt | r: .name.say for Grammar.^methods | ||
p6eval | rakudo a3869a: OUTPUT«parseparsefileMATCHMATCH_SAVEINTERPOLATEOTHERGRAMMARRECURSEpriororigtargetfromposCAPHASH!cursor_init!cursor_start!cursor_start_subcapture!cursor_capture!cursor_push_cstack!cursor_pass!cursor_fail!cursor_pos!cursor_next!cursor_more!reduce!red… | ||
rindolf | Does anyone here have any plans on coming to the Israeli Perl Workshop in 25-Feb? | ||
jnthn | moritz: Seems the make install-dev in Parrot fails with: | 18:39 | |
Error: couldn't copy installable_ops2c.exe to \ops2c.exe: No such file or direct | |||
ory | |||
moritz: Or did I need that at master too? | |||
moritz | jnthn: yes, you need parrot/master (which has a fix to pbc_to_exe with spacy paths) | ||
though it should error out eariler in that case | 18:40 | ||
erm wait, no | |||
18:43
domidumont joined
|
|||
jnthn | moritz: master got further (or different): | 18:43 | |
C:\consulting\omg spaces\rakudo\install\lib\libparrot.lib | |||
Error: couldn't copy libparrot.dll to \libparrot.dll: No such file or directory | |||
18:44
M_o_C joined
|
|||
diakopte1 | pmichaud: why would you suggest I suggested to remove threads from parrot? | 19:01 | |
moritz | jnthn: hm, weird | ||
pmichaud | diakopte1: ?? | 19:02 | |
19:05
diakopte1 is now known as diakopter
19:07
aindilis left
|
|||
diakopter | pmichaud: nm, you didn't | 19:08 | |
19:10
aindilis joined
|
|||
FROGGS | rindolf: 've got no time and no money... sorry | 19:11 | |
pmichaud | diakopter: I just know that rurban was using your disagreement with him as a basis for criticizing what other people are doing, and wanted to disabuse him of that. | ||
rindolf | FROGGS: OK, sorry to hear that. :-( | 19:12 | |
19:13
jcrigby joined
|
|||
FROGGS | ya, I'd like be a regular on YAPCs and other workshops and hackathons | 19:13 | |
arnsholt | FROGGS: Where in the world are you at? | 19:14 | |
jnthn | dinner, bbl | 19:18 | |
19:20
thou left,
Chillance left,
thou joined
19:21
Chillance joined
|
|||
moritz | google announced that there'll be a GSoC this year | 19:21 | |
I wonder if Rakudo should apply as an org separately | 19:22 | ||
19:22
Tene_ is now known as Tene
|
|||
masak | I think so. | 19:23 | |
PerlJam | definitely. | ||
masak | yet another take on defaults for subtypes: they work as "a constructive proof that the type is inhabited". | 19:24 | |
phrase borrowed from en.wikipedia.org/wiki/Dependent_type but applies in this case, too. | |||
FROGGS | arnsholt: berlin | 19:30 | |
moritz: I already have two shirt but had no chance to mentor at all | 19:31 | ||
arnsholt | Berlin is workable. I think there might be a workshop in Copenhagen coming up. That might be feasible from Berlin? | 19:36 | |
moritz | the Nordic Perl Workshop, yes | ||
FROGGS | well, there is the german workshop next month in berlin | 19:37 | |
19:37
perlhelp joined
|
|||
perlhelp | Hi! :) | 19:37 | |
FROGGS | hi perlhelp | ||
nwc10 | shouldn't everyone just go to act.yapc.eu/gpw2013/ and be done? :-) | ||
FROGGS | copenhagen, sounds good | ||
arnsholt | moritz: Is there a website or something for that yet? | 19:38 | |
perlhelp | This room does perl 6 but not perl 5? | ||
Hi FROGGS | |||
arnsholt | nordic perl workshop on Google only turns up the old versions, but not the upcoming one =( | ||
nwc10 | perlhelp: correct. you'd want #perl for your perl 5 questions, I think | ||
FROGGS | or irc.perl.org | ||
nwc10 | #perl-help on irc.perl.org | 19:39 | |
perlhelp | May I please kindly ask if there is a big difference between 5 and 6? | ||
nwc10 | on irc.perl.org, #perl is a "social" channel | ||
moritz | perlhelp: there is | ||
PerlJam | perlhelp: yes, there are | ||
FROGGS | channel perl-help on irc.perl.org | ||
ohh, you said that already | |||
nwc10 | there's less difference between Perl 5 and Perl 6 than (say) between Perl and Python | ||
perlhelp | OH, so people cannot discuss perl 5 hee | ||
nwc10 | no, we didn't say *that* :-) | 19:40 | |
PerlJam | perlhelp: Perl 5 and Perl 6 are different languages in the same family. If you're interested in doing things with Perl, you likely want Perl 5. See #perl or the other channels already mentions | ||
er, mentioned | |||
FROGGS | only if you want to compare perl 5 statements and perl 6 ones | ||
moritz | well, we discuss Perl 5 from a design point of view; we don't help with your Perl 5 problems. | ||
masak | <moritz> rindolf: within one standard deviation of my own, peculiar average | 19:41 | |
masak gets a vicarious thrill out of that statement | |||
rindolf | masak: hi. | ||
moritz | masak: :-) | ||
and you know where I stole that phrase from :-) | |||
rindolf | PerlJam: perlhelp is a troll. | ||
moritz | rindolf: there people who say that about you too. Please moderate yourself with such statements. | 19:42 | |
masak | perlhelp: hi! 还就不见了! | ||
PerlJam | rindolf: if you say so. I tend to give the benefit of the doubt. | ||
19:42
mtymula left
|
|||
masak | perlhelp: we love talking about the difference between 5 and 6 here. but mostly because we're very proud of what we have with 6. | 19:43 | |
19:44
perlhelp left
|
|||
masak | perlhelp: I went to FOSDEM the other weekend. to my surprise I had forgotten many of the things that make Perl 6 great. the reaction of my audiences served to remind me. | 19:44 | |
perlhelp: aww. :) | |||
er. I explained that badly. | 19:46 | ||
I know very well what things about Perl 6 I think are nice. | |||
but I had forgotten how much they matter (as improvements) if all you've seen is Perl 5. | 19:47 | ||
19:47
perlhelp_ joined
|
|||
perlhelp_ | Hi! | 19:47 | |
I was disconnected | |||
So i missed a few things | |||
masak | perlhelp_: welcome reconnected. :) | ||
perlhelp_: there's a log. | |||
perlhelp_ | But people do not know perl 5 here :) | ||
oh ok. | |||
19:47
erry joined
|
|||
FROGGS | masak: ya, I notice everyday how powerful p6 is, when hacken p5 or php | 19:47 | |
perlhelp_ | bless your kind soul msak | ||
masak | Data::Dumper? yes, it's a method. | ||
DateTime? yes, we have it built in. | 19:48 | ||
Test::More? yes, but we call it "Test" :) | |||
arnsholt | XS? No, it's dead and buried | ||
masak | classes? yes, of course. | ||
FROGGS | (I added gist methods to my packages to have a bit of a perl 6 feeling :o) | ||
masak | we got roles, too. | ||
oh, and signatures! | |||
perlhelp_ | I do not want to take up room here. But is thee someone with whom I can discuss perl 5 one-on-one in here? | 19:49 | |
masak | and grammars! <3 | ||
geekosaur | not really | ||
masak | perlhelp_: feel free to lighten your heart. | ||
FROGGS | grammars++ | ||
arnsholt | masak: And a type system (which is optional) | ||
perlhelp_ | msask? What do you mean? | ||
masak | we even do multiple inheritance if you're into that thing. | ||
perlhelp_: I mean we trust you not to misbehave and go off topic too much. if you do, we'll tell you. | 19:50 | ||
perlhelp_: this is not a Perl 5 help channel. | |||
most other topics are OK. | |||
19:51
zby_home joined
|
|||
perlhelp_ | I need a lot of help with perl and am scared to derail the room. | 19:51 | |
masak | if you need a lot of help, there are better channels for that. | ||
moritz | perlhelp_: then you should ask for a mentor, but you should ask in Perl 5 room for that | ||
swarley | alright, time to work on something that i'm not sure of and should have written down a few days ago | ||
perlhelp_ | No! Perl-5 doe not like mentoring. | ||
masak | we do mostly Perl 6 here. many of us are proficient in Perl 5, but that's not why we are here. | ||
moritz | perlhelp_: or maybe get some professional training | ||
perlhelp_ | Maybe I can get a perl 6 mentor then? | 19:52 | |
masak | sure. | ||
moritz | if you're actually willing to learn Perl 6, sure | ||
swarley | Perl6 would not exactly give you a drop in replacement of what you would use perl5 for though | ||
At this moment at least | |||
masak | depends on how many wheels you're willing to reinvent yourself :) | ||
perlhelp_ | yes, i would learn perl 6 but i ned omeone to help me | ||
i just cannot do it alone. | 19:53 | ||
19:53
jms53 left
|
|||
perlhelp_ | i would reinvent with the help | 19:53 | |
swarley | I would first ask why you are willing to switch from wanting to learn perl5 to perl6 so quickly? The languages are not similar in many aspects | ||
masak | perlhelp_: bash.org/?3936 | ||
spider-mario | o/ moritz | ||
are you sure that qq["$file" --show-config] will work with paths that contain double quotes? | |||
would that not work instead: open my $CONFIG, '-|', $file, '--show-config' | |||
after all, open is capable of handling the quoting itself | 19:54 | ||
TimToady | r: enum Color (<red green purple> Z=> 1,2,4); | ||
p6eval | rakudo a3869a: OUTPUT«===SORRY!===Method 'returns' not found for invocant of class 'List'» | ||
moritz | spider-mario: but iirc the open PIPE form isn't implemeneted on windows :( | ||
perlhelp_ | masak: ok, so no mentoring? | ||
spider-mario | oh :( | ||
masak | perlhelp_: I didn't say that :) | ||
TimToady | masak: ^^ | ||
moritz | spider-mario: I mean, open pipe LIST | ||
masak | perlhelp_: but you have to take personal responsibility for your learning. | ||
spider-mario | it’s always windows, isn’t it. | ||
swarley | If there was no mentoring for perl6 I would be in trouble ;) | ||
masak | perlhelp_: no-one can put stuff into your head. | ||
masak submits TimToady's rakudobug | 19:55 | ||
perlhelp_ | I know. But I need help on where to start. Saying "Google" means nothing to me. | ||
I don't know what to google. | |||
swarley | But your description of mentoring should be that someone can help you understand something that you tried to learn | ||
perlhelp_ | What to read. | ||
masak | perlhelp_: here's a 5-second mentoring. write a small program in Perl 6. make it either succeed or fail. report your progress here. | ||
moritz | perlhelp_: perl6.org has a pretty good list of links to stuff to read | ||
swarley | perl6.org/documentation/ | ||
masak | perlhelp_: good luck. ask questions as soon as you get stuck. | ||
diakopter | perlhelp_: what other programming languages have you used? | 19:56 | |
perlhelp_ | I tried that with perl-5 and they HATE me | ||
swarley | en.wikibooks.org/wiki/Perl_6_Programming | ||
perlhelp_ | C++ | ||
Stata | |||
Matlab | |||
masak | perlhelp_: what, all of them HATE you? | ||
moritz | swarley: that's not very up-to-date or complete | ||
perlhelp_ | enough do | ||
masak | perlhelp_: man, what's the statistical likelihood of that? :P | ||
perlhelp_ | i tried to program and told me i was not trying | 19:57 | |
swarley | moritz; I know, (as I've found) but it's what I've been starting with and it should be enough to get you on the right track shouldn't it? | ||
perlhelp_ | i wrote my own code and failed | ||
and said my failures were to rudimentary for their help | |||
that is my understanding | |||
masak hugs perlhelp_ :) | |||
swarley | Okay, I actually believe you on that | ||
masak | perlhelp_: seems you've had a rough trip. | ||
perlhelp_ | yes!! | ||
swarley: you believe me? | |||
I spent 2 weeks doing nothing but lerning perl 5 | |||
masak | perlhelp_: we're not like that here. this is the nice corner of the Intertubes. | ||
swarley | Especially from #perl or #c++/##c | 19:58 | |
perlhelp_ | I'm really exhausted now | ||
My back is hurting | |||
I' haven't gone to the gym in a long time (or much else for that matter) | |||
and I'm kind of at wits ends now | |||
swarley | perlhelp_; what's your motivation for learning? | ||
perlhelp_ | I am working on a manuscript (nothing perl related) | ||
And I need to scrape some information off of the internet. | |||
I made a lot of headway in perl5 | |||
But I do not know how to get further help | 19:59 | ||
swarley | What information? | ||
perlhelp_ | and perl 5 people are trying to kill me | ||
diakopter | I doubt that | ||
perlhelp_ | swarley: would you like to see an example? | ||
swarley | Sure | ||
perlhelp_ | diakopter: if you have seen the things they have said to me | ||
i almost had a stroke | |||
masak | perlhelp_: some perl 5 people are very tired of helping people who do not ask questions in their favorite way. | ||
swarley | Perl5 isn't my "mother tongue" but I can read it fairly well | ||
masak | perlhelp_: their behavior often comes off as intolerance. | 20:00 | |
perlhelp_ | Oh, you want the code or the website ? | ||
swarley | The code would help more in this instance | ||
masak | don't paste anything on-channel. | ||
paste it to a pastebin service. | |||
swarley | www.pastebin.com | ||
perlhelp_ | i know. i will do a pste | ||
i cn't do pastebin | |||
paste org ? | |||
masak | any is fine. | ||
swarley | Any paste service | ||
perlhelp_ | patsebin is failing on me for some reasons | ||
20:00
fgomez left
|
|||
moritz | gist.github.com is fine | 20:01 | |
perlhelp_ | blesss your kind souls | ||
ok give me a few seconds to do the pasting | |||
masak | r: say (<red green purple> Z=> 1,2,4).perl | ||
p6eval | rakudo a3869a: OUTPUT«("red" => 1, "green" => 2, "purple" => 4).list» | ||
geekosaur notes that a number of netnannies block pastebin.com because it has in the past been used to communicate things like stolen credit card numbers | |||
perlhelp_ | I'm sorry if my code does not look pretty | ||
spider-mario | paste.awesom.eu/ is good | ||
perlhelp_ | It is the best I can do | ||
masak | perlhelp_: no need to apologise for that. | 20:02 | |
geekosaur | so I can't reach it from e.g. the local library unless I run tor | ||
masak | perlhelp_: we're all on a learning curve. | ||
swarley is learning Go as he implements 6model | |||
perlhelp_ | goo.gl/8zTHW | ||
swarley | probably not the smartest choice | ||
perlhelp_ | I'm having some trouble at the url line: 29-31 | 20:03 | |
moritz | that's not Perl 6 code. | ||
perlhelp_ | It only works right now if I manually put it in rather than have perl find it, and I need perl to find it since the address is so aribtrary | ||
no it's not. | |||
I said it was perl 5! | |||
moritz | perlhelp_: well, we were very clear. If you get Perl help here, it will be Perl 6 help. | ||
swarley | What are you trying to do exactly? | 20:04 | |
arnsholt | timotimo: *prod?* | ||
perlhelp_ | can i show you the website then? | ||
swarley | This is for a web app? | ||
perlhelp_ | no, i don't think so | ||
it is to scrape information off of it | |||
swarley | Why is it that you need to scrape the information? Is there a large amount of data that you need? | 20:05 | |
perlhelp_ | yes | ||
spider-mario | I love Web::Scraper for doing that | ||
masak | me too. | ||
perlhelp_ | I have a list of 8 million people. For each one, I know their first name, last name, gender, race, year of birth (within +/- 2), and their U.S. state (or country) of birth. | ||
swarley | 8 million? | 20:06 | |
perlhelp_ | yes :( | ||
maybe less | |||
masak | that's about one Sweden. | ||
perlhelp_ | maybe 4 million | ||
swarley | Well, first of all. You probably will not get that many from the site | ||
perlhelp_ | but a lot | ||
masak | oh. one Norway, then :) | ||
arnsholt | r: my $foo is export; say "alive" | ||
p6eval | rakudo a3869a: OUTPUT«alive» | ||
perlhelp_ | ok | ||
let's make it 1,000 | |||
arnsholt | r: my $foo is export = 4; say "alive" | ||
p6eval | rakudo a3869a: OUTPUT«alive» | ||
perlhelp_ | can we got to the next step then? | ||
diakopter | perlhelp_: unfortunately, I don't think we can help you, since we can't do that kind of theng in Perl 6 right now | ||
perlhelp_ | huh? | ||
swarley | You may be able to get 1,000 before your IP is temporarily blocked | 20:07 | |
perlhelp_ | perl 6 does not scrape? | ||
no, it will be ok | |||
I've already scraped a lot from the site. | |||
It is ok | |||
There is no TOS | |||
I told them. They know | |||
swarley | If they know, they should be able to query the database for you. | ||
perlhelp_ | they don't. | ||
swarley | But you just said they know | 20:08 | |
masak | diakopter: hm, what's missing? we have a LWP::Simple, but that's not the same as LWP::UserAgent, I guess. | ||
perlhelp_ | yes, i told them | ||
timotimo | arnsholt: what's up? | ||
perlhelp_ | can we go on to the next step? | ||
diakopter | masak: most of the things used in the p5 script - CGI, html parser, dom manipulation | 20:09 | |
moritz | perlhelp_: translating to Perl 6? sure, your call | ||
perlhelp_ | oh that's fine | ||
swarley | I suppose I should make typeObject noew | ||
now* | |||
perlhelp_ | I meant i thoguht we were stuck on whethe I'm scraping 1,000 times, 5, times, .... | ||
au | perlhelp_: hi. if you are in contact with the admins of that site, have you considered signing up for an API key? familysearch.org/developers/docs/g...ng-started | ||
perlhelp_ | I haven't even described what I'm scraping | ||
Yes I signed up | 20:10 | ||
masak | diakopter: CGI doesn't seem to be used in the script. | ||
perlhelp_ | They are still developing it for this part of the site. | ||
It is not available yet. | |||
masak | diakopter: was probably a dead end from earlier development. | ||
perlhelp_ | That is how I've been in touch. | ||
arnsholt | timotimo: Are you on a UNIX or Windows? | ||
perlhelp_ | I will be availbale but is not yet | ||
diakopter | masak: ah, good idea | ||
20:10
fgomez joined
20:11
fhelmberger left
|
|||
masak | diakopter: and I bet the HTML::DOM module could be worked around in a pinch. | 20:11 | |
timotimo | i'm on a unix. i do have a windows nearby, but i don't know how hard it is to set it up to compile and run parrot, nqp and rakudo (i guess it's a huge pain) | 20:12 | |
arnsholt | I'm on a UNIX, so that's not a problem | ||
It's just one less thing to worry about if I can ignore Windows portability for the time being | 20:13 | ||
perlhelp_ | diakopter: I might not be using the best tools. | ||
These are my gueses | |||
Should I tell you what I'm trying to do? | |||
masak | perlhelp_: it's pretty clear from the script what you're trying to do. | 20:14 | |
perlhelp_ | oh ok. i'm glad it is. | ||
the script is incomplete though | |||
so i did not think it would be. | |||
masak | aye, it's incomplete. | ||
perlhelp_ | it's nearly complete | ||
masak | nice. | ||
20:15
domidumont left
|
|||
masak | best of luck :) | 20:15 | |
perlhelp_ | there are a few small things I needed to add that I did not yet figure out either. | ||
msask: huh? | |||
masak | perlhelp_: this is not a Perl 5 help channel. | ||
perlhelp_ | well, if this can be done in perl 6, i'm all ears!! | ||
i'm read to learn perl 6 if so | |||
masak | ;) | ||
20:16
erry left
|
|||
masak | general question to channel: can our LWP::Simple do what perlhelp_ is doing with LWP::UserAgent? | 20:16 | |
arnsholt | star: use NativeCall :EXPORT; say "alive?" | 20:18 | |
p6eval | star 2012.12: OUTPUT«===SORRY!===Error while importing from 'NativeCall': no such tag 'EXPORT'» | ||
arnsholt | Oh. I'm going to have to put all of the things into a great big module, aren't I | 20:20 | |
masak | either way, I guess there's room for LWP::UserAgent in the Perl 6 ecosystem ;) | 20:21 | |
perlhelp_ | masak: what do you mean? | ||
masak | perlhelp_: well, we don't load CPAN modules from Perl 6 yet. | ||
perlhelp_: so when we want something like LWP::UserAgent, we tend to implement it ourselves. | |||
perlhelp_ | from scratch? | 20:22 | |
WOW | |||
masak | perlhelp_: (this is temporary. with time, we would like to be able to load Perl 5 modules) | ||
perlhelp_: but yeah, this is why no-one stands up and tells you "yes, you can write this script in Perl 6". | |||
perlhelp_ | oh you mean you have to write them? | ||
i'm not following | 20:23 | ||
masak | long term, we would like a Perl 5-Perl 6 bridge. | ||
so Perl 6 can load Perl 5 modules. | |||
now, that won't work for all Perl 5 modules. | |||
20:23
benabik joined
|
|||
masak | does LWP::UserAgent do XS? | 20:23 | |
if not, it should be possible to load it in the future. | |||
until then, you'd have to do something in Perl 6 to compensate for the lack of LWP::UserAgent. | 20:24 | ||
perlhelp_: that's why diakopter was less-than-optimistic about you being able to (easily) port that script to Perl 6. | |||
perlhelp_ | oh i see | ||
[Coke] | masak: I wonder if #perl6 could set up a #p5 consultancy to help fund sixdev. :) | 20:26 | |
masak | [Coke]: hah! :D | ||
20:26
brrt joined
|
|||
masak | [Coke]: "Give me your tired, your poor, Your huddled masses yearning to breathe free, The wretched refuse of your teeming shore. Send these, the homeless, tempest-tost to me, I lift my lamp beside the golden door!" | 20:27 | |
people like perlhelp_++ | |||
perlhelp_ | yes, i am an immigrant :) | 20:29 | |
masak | [Coke]: I'm afraid that if I tell perlhelp_ "can you stick around for a few months? I'm just gonna build LWP::UserAgent", he'll grow impatient and leave. what should I do? :) | ||
perlhelp_ | is that what you mean? | ||
i would stick around. | |||
masak | perlhelp_: it was a kind of metaphor. | ||
perlhelp_ | but i think there will be a lot of modules needed | ||
it might be many months after thta | |||
masak | perlhelp_: by self-selection, the people on this channel are a patient bunch. | 20:30 | |
moritz | nah, if I were patient, I wouldn't hack on perl 6, but wait until others have done it. | 20:31 | |
20:31
uvtc joined
|
|||
perlhelp_ | yes i can see!! | 20:32 | |
waiting months to write a module | |||
i can see why perl 5 people are bi-otches | |||
uvtc | nwc10: you mentioned #perl just a bit ago. (Hm. I like that word, "justabitigo"). So, #perl at irc.perl.org is the social channel. What's the difference between #perl-help on irc.perl.org and #perl at freenode? | 20:34 | |
perlhelp_ | #perl is a room of bi-otches | ||
uvtc | perlhelp_: please be kind :) | ||
swarley | Keep in mind, many of us are in that room | ||
nwc10 | uvtc: I don't know what if any differences there are betewen #perl-help on irc.perl.org and #perl on freenode. I've used neither | 20:35 | |
but I'm told that bother are "help" channels | |||
uvtc | nwc10: thanks. | ||
masak | (then there's #metallica...) :P | 20:36 | |
swarley | lolol | ||
20:36
brrt left
|
|||
FROGGS | I have only one experience with #perl-help from a week ago, and I got help from within 15minutes, and the guy/girl was nice | 20:36 | |
perlhelp_ | FROGGS: is that the same as #perl ? | ||
FROGGS | no, I meant #perl-help on irc.perl.org | 20:37 | |
perlhelp_ | oh, i can't get to that site for some reason | 20:38 | |
i go to irc.perl.org and i got a weird pic of an animal | |||
diakopter | it's not a website | ||
you have to use an IRC client | 20:39 | ||
there isn't a web inyerface like the one you're using for freenode | |||
*interface | |||
inyerface too | |||
perlhelp_ | xchat? | ||
20:39
zby_home left
|
|||
perlhelp_ | i tried that but failed | 20:39 | |
swarley | ? | 20:40 | |
How did you fail? | |||
geekosaur | xchat doesn't come with irc.perl.org in its default network list; you would need to add it | 20:42 | |
perlhelp_ | it did not connect | ||
i trid to add it | |||
it said it did not work | |||
swarley | /newserver irc.perl.org 6667 | 20:43 | |
geekosaur | just worked for me, fwiw | ||
20:44
japhb_ joined
|
|||
swarley | I wonder where I should go from here | 20:49 | |
20:50
thou left
20:54
fgomez left
20:55
rindolf left
21:01
kivutar joined
21:06
shinobicl left
|
|||
perlhelp_ | I GOT Some code to work! | 21:08 | |
YAY!!! | |||
Take that #perl!! | |||
They said I cannot do anything!! | |||
SUCK IT #perl :P | 21:10 | ||
:) | |||
21:11
thou joined
|
|||
PerlJam | perlhelp_: #perl6 is not usually that impolite. We give hugs to those that need them. | 21:12 | |
perlhelp_ | i know. Perl5 tried to kill me this weekend :( | 21:13 | |
21:13
kaare_ left
|
|||
perlhelp_ | #perl6 is amazing!!!!!!!!!! | 21:13 | |
#perl5 sucks!!!!!!!!! | |||
masak | perlhelp_: "you need to learn how to figure out stuff yourself.." :) | ||
jnthn | masak: How does one do that? | ||
perlhelp_ | what's wrong? some of my code now compiles? | ||
masak | :P | ||
perlhelp_: no, I was just reminding you of the link I sent you earlier today. :) | 21:14 | ||
PerlJam | .oO( jnthn: Just tell me! ) |
||
masak | perlhelp_: it'd still be a good idea for you to find a place where people actually answer Perl 5 questions, I think. | ||
perlhelp_ | yes it would, but i cannot get to that plce | 21:15 | |
#perl5 banned me | |||
PerlJam | There's a #perl5? | ||
or did you mean #perl? | 21:16 | ||
uvtc | perlhelp_: if you want help with Perl 5 specifically, check out either #perl at freenode, or #perl-help at irc.perl.org. | 21:17 | |
PerlJam | perlhelp_: there's also #perlhelp on efnet | ||
(if anyone still goes to efnet) | |||
21:17
uvtc left
|
|||
perlhelp_ | #perl5 here banned me | 21:17 | |
TimToady | um, there's only one person on that channel | 21:18 | |
sorear | masak: nah, I just saw a link to it and I couldn't remember what was on that site so I checked | ||
21:19
fgomez joined
|
|||
swarley | finished repr.go \o/ | 21:19 | |
masak | sorear: there were many wondrous things on that site. maybe I can rescue some of the content. | ||
swarley++ | |||
swarley | And, changes are pushed | 21:20 | |
21:20
bruges_ left
|
|||
jnthn | swarley: öl^Wurl? | 21:21 | |
oh, guessed it :) | |||
hm, how to read go code... :) | 21:22 | ||
perlhelp_ | so where else is perl5 help? /newserver irc.perl.org 6667 ???? | ||
how do i get there? | |||
21:22
bruges joined
|
|||
swarley | It's a little difficult at first :) | 21:23 | |
jnthn | swarley: On the "// Flattening methods" bit - those exist because on the JVM we handle flattened attributes by including them in a generated JVM type. | ||
swarley | Ah. I only threw them in because I wasn't sure what they were for yet | ||
jnthn | swarley: I don't know go well enough to be sure, but I'd guess it's closer to C than JVM. | ||
swarley | I'm going to tidy up after I get through the code | ||
jnthn | In the C implementation on Parrot we don't do such code-gen; the REPRs are really about computing struct layouts. | 21:24 | |
I dunno what Go does/doesn't let you do in that regard, I'm afraid, so it's hard to give good hints. | |||
swarley | go compiles to machine code, so yeah it's a little more like C | ||
Well, what would you define to be a flattened attribute? | |||
jnthn | On the third hand, a 6model VM will probably have the REPRs participate in JIT, so I guess they get their code-gen role after all... :) | 21:25 | |
swarley | because Go doesn't allow for pointer manipulation so that it's a lot harder to get a segfault | ||
jnthn | swarley: Flattened in as in | ||
class A { has $!x; has int $!y; } | |||
The $!x here is a reference to another object | |||
swarley | Ah | ||
jnthn | The int, however, is not; it's a native interger living in the object body. | 21:26 | |
swarley | So you're collapsing the reference? | ||
jnthn | Yeah. | ||
Well, you could think of it that way :) | |||
swarley | Oh, well I think most of the code I'm going to generate is going to use pointers instead of the actual reference for speed | ||
err, actual object* | |||
TimToady | everything is really a native, but if you don't specify a native type explicitly, you get an implicit native pointer to a P6 object | 21:27 | |
jnthn | And there's another way to look at it. :) | ||
swarley | oh, hm. | ||
I think I'll remove the flattening. Most of the code should just be moving around pointers anyway | 21:28 | ||
private static HashMap<String, Integer> reprIdMap = new HashMap<String, Integer>(); | 21:32 | ||
I'm assuming it's a map with string keys to int values? | 21:33 | ||
jnthn | Correct. | 21:36 | |
swarley | Wonderful, I really should learn more Java | ||
jnthn | Looks like you're translating the repr registry... | ||
At a language level, there's not a lot of Java to learn. :) | |||
swarley | Yeah, I just need to learn more of the library | 21:39 | |
skids | ⱺ.ⱺ joeyh.name/blog/entry/unicode_eye_chart/ | ||
jnthn | Well, the library is a bigger task ;) | 21:40 | |
21:42
benabik left
|
|||
perlhelp_ | swarley: How do I get to: /newserver irc.perl.org 6667 ???? | 21:42 | |
swarley | Open xchat, close the server list. | ||
21:43
spider-mario left
|
|||
perlhelp_ | close the sever list?!? | 21:46 | |
Ayiko | hi #perl6! | ||
geekosaur | you're specifying a server manually so you don't want the server list, just the main window | ||
Ayiko | .u ಅ | 21:47 | |
phenny | U+0C85 KANNADA LETTER A (ಅ) | ||
Ayiko | skids: the eye chart is missing this besides the beer mug >_> | ||
swarley | jnthn; It's not really my place to suggest this, but wouldn't it be a bit more efficient to directly use REPR.ID and avoid recomputing the size of reprs here? github.com/jnthn/nqp-jvm-prep/blob...y.java#L27 | 21:51 | |
21:52
wk left
|
|||
jnthn | swarley: probably, but given that code is only called from setup() and that's only ever called once at startup... :) | 21:52 | |
swarley | Oh alright | ||
jnthn | It's kinda bad style though. jnthn-- | 21:53 | |
22:00
skids left
|
|||
dalek | p/rx-portability: 029bf5c | jnthn++ | src/6model/reprs/NFA.c: NFA REPR serialize/deserialize. |
22:02 | |
p/rx-portability: c56d322 | jnthn++ | src/QRegex/Cursor.nqp: Start !cursor_start refactor. Currently it is the only thing in the NQP or Rakudo codebase that uses Parrot's multiple return values feature. This splits it up into two routines, one for things that really only want the cursor anyway (and so this will be an efficiency win for them) and one for generated code that wants all the things (which we can still do without allocating). |
|||
p/rx-portability: c7f057b | jnthn++ | src/QRegex/Cursor.nqp: First batch of !cursor_start updates. |
|||
22:03
slavik1 left
22:04
slavik1 joined
|
|||
jnthn | oops, the commit message is a lie... | 22:05 | |
jnthn figures he'll do the rest and then check if there's actually any noticable difference before worrying... | |||
22:10
sqirrel left
22:12
PacoAir left
|
|||
swarley | reprRegistry.go is done :) (as done as it can be at the moment) | 22:13 | |
[Coke] | GSOC 2013 announced. | ||
we should try to coordinate with the p5 folks as soon as possible. | 22:14 | ||
perlhelp_ | Coke: why would you wnt to work wth p5? | 22:18 | |
They are not as cool as p6! | |||
22:18
MikeFair_ left
|
|||
perlhelp_ | I'm talking about #perl5 | 22:18 | |
#perl6 is the best!!! | |||
FROGGS | perlhelp_: calm down | ||
22:19
MikeFair__ joined
|
|||
perlhelp_ | Ok. I just wnt to expres my love for decent humans who are also developers | 22:19 | |
I know I am getting obnoxious | |||
It just seems so rare to find developers who are humans! | |||
Juerd | We need human developers because robots write awful code.e | 22:20 | |
s/e$// | |||
masak | perlhelp_: I suspect many of the other channels are abrasive because the signal-to-noise ratio there is much lower. | 22:21 | |
it's like in a (physical) room where the only way to communicate is to shout. | 22:22 | ||
perlhelp_ | perl has no signal nor noise | ||
they just want to plonk and sleep | |||
[Coke] notes that perlhelp_++'s SN ratio is getting lower. | 22:23 | ||
-> homeish | |||
masak | "plonk and sleep" sounds like a good name for a punk band. | 22:24 | |
swarley | once again, try to remember that practically everyone in here is also in #perl | ||
geekosaur doesn't generally hang there, should probably look in at least | 22:25 | ||
swarley | www.youtube.com/watch?v=aLwaPP9cxT4 | ||
masak | 'night, #perl6 | ||
swarley | I find that very interesting | ||
and unrelated | |||
night o/ | |||
perlhelp_ | swarley: are you here? | 22:26 | |
swarley | Am I there? No, not usually | ||
geekosaur | ...such timing :/ | 22:27 | |
perlhelp_ | is there nybody in perl #5 with whom i cn please speak? | 22:29 | |
like Bingo? | |||
geekosaur | is there some reason you need to ask in #perl6? | ||
perlhelp_ | yes, i am not allowed in perl#5. i want to know when i may be allowed back. | 22:31 | |
i am not getting ny clear info on that | |||
22:31
M_o_C left
|
|||
perlhelp_ | i just want to know what i can do to be allowed back. thta is all. i will do it plus mor. | 22:33 | |
22:36
thou left
|
|||
swarley | hm. Not sure what to do now | 22:36 | |
Tene | perlhelp_: you keep talking about #perl5, and haven't responded to people who have mentioned #perl | 22:37 | |
perlhelp_ | huh? | ||
Tene | Two other IRC channels for perl 5 help have been mentioned too. | ||
perlhelp_ | yes, i am confused still on how to get there | ||
swarley | help.ubuntu.com/community/XChatHowto | 22:38 | |
22:39
bluescreen10 joined
|
|||
swarley ponders what he should do now | 22:43 | ||
22:47
kivutar left
22:48
bluescreen10 left,
bluescreen100 left
22:49
c1sung_ joined,
c1sung left
22:54
mathw left,
mathw joined,
Gothmog_ left
22:55
pmurias joined
22:56
slavik1 left,
slavik1 joined,
Gothmog_ joined
|
|||
swarley | Starting on P6Opaque :D I'm more afraid than I look | 23:07 | |
23:10
thou joined
|
|||
jnthn | It's less scary than it used to be... | 23:10 | |
swarley | oh boy | 23:12 | |
dalek | p/rx-portability: b555f7f | jnthn++ | src/HLL/Grammar.pm: Update HLL::Grammar calls to !cursor_start. |
23:13 | |
p/rx-portability: ff1a336 | jnthn++ | src/QAST/Compiler.nqp: Update call to !cursor_start in code-gen. No measurable performane change. |
|||
p/rx-portability: 67eb623 | jnthn++ | src/stage0/ (9 files): Update bootstrap. |
|||
p/rx-portability: a7f47d9 | jnthn++ | src/QRegex/Cursor.nqp: Kill !cursor_start, which used multiple return. |
|||
p/rx-portability: 44f22ef | jnthn++ | src/ops/nqp.ops: Kill dead code. |
|||
swarley | \o/ | 23:14 | |
23:14
perlhelp_ left
|
|||
japhb_ | jnthn++ # Simplifying the porters' jobs | 23:21 | |
Self-interested altruism FTW | |||
23:25
benabik joined
|
|||
jnthn | :) | 23:27 | |
dalek | Heuristic branch merge: pushed 16 commits to nqp by jnthn | 23:44 | |
diakopter | jnthn++ thanks :) | ||
swarley | I should probably do more of repr | 23:45 | |
23:45
MikeFair__ left
|
|||
dalek | kudo/nom: 7e22a79 | jnthn++ | / (4 files): Chase !cursor_start changes. |
23:45 | |
jnthn | swarley: P6opaque can actually be stubbed for the most part until you want to implement attributes. | ||
swarley: And, moreover, you won't have any way to test it until you've got the KnowHOW bootstrap done. | 23:46 | ||
Though maybe you did that already... :) | |||
swarley | Yeah, I'm pretty much stubbing the REPR right now | 23:47 | |
I'm just a little exhausted, exams coming up fast | |||
23:48
MikeFair joined,
Liz_ is now known as lizmat
23:49
stopbit left
23:50
Chillance left
23:55
skids joined
|