»ö« 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. |
|||
diakopter is curious why you can't use p6 in this instance | 00:00 | ||
colomon | too damned slow | ||
diakopter | how much slower? | ||
(dare I ask) | |||
colomon | dunno | ||
diakopter | "we'll never know; it never finishes" | 00:01 | |
timotimo_ | :D | ||
00:01
xinming joined
|
|||
colomon | the work involves scanning 3gigs worth of files. I really doubt either p6 implementation can do that in a reasonable amount of time. | 00:07 | |
diakopter | well, how much ram do you have | 00:08 | |
colomon | 32 gigs on the new Linux box | ||
diakopter | what kind of scanning? tokenizing? search/replace? | ||
lue | How big's the largest file of the bunch? (Perhaps you can get away with a open/process/close loop) | ||
colomon | well, in p5 I'm just going to scan it. but ideally I'd parse the files if I was doing it in p6. | 00:09 | |
actually, I'm not at all certain how I can easily do this in p5. parsing makes life a lot easier. | 00:12 | ||
diakopter | usually several layers of split on regex can handle anything.. | ||
(but of course it's extremely hard on the memory usage) | 00:14 | ||
.oO( .. tho if your strings implementation were ropey... ) |
|||
00:15
Liz joined,
Liz is now known as Guest71046
|
|||
colomon | you know what? I'm going to do the p6 implementation and see what I can learn from that. | 00:16 | |
awkwardly, I think step one may be "reboot laptop". | 00:17 | ||
diakopter | your p6 is statically in your kernel? | ||
colomon | errr... no | 00:18 | |
macfusion got wedged in a low memory situation, and I'd like to have it up and running so I can edit p6 scripts on the Linux box using TextMate | |||
00:23
colomon joined
00:25
Guest71046 is now known as lizmat
00:26
lustlife joined
00:30
census left
00:36
mberends_ joined,
japhb_ left,
grondilu left
00:39
mberends left
|
|||
labster | r: my $f = "."; say $f.=path.WHAT for ^6; | 00:39 | |
p6eval | rakudo a98aa7: OUTPUT«(IO::Path)(Str)(IO::Path)(Str)(IO::Path)(Str)» | ||
labster | I feel like something is wrong about that. Like, calling .Str on a Str is a no-op, and the same with .list, but this cycles. | 00:40 | |
colomon | rn: say "#341".substr(1) | 00:46 | |
p6eval | rakudo a98aa7, niecza v24-33-gfc6d5fd: OUTPUT«341» | ||
00:57
xilo left
00:59
xilo joined
01:01
anuby joined
01:14
hypolin joined
01:20
vaelxon joined
|
|||
colomon | OMG this script is slow running in p6 | 01:24 | |
I wonder why this particular file is so slow? | 01:29 | ||
01:34
mavcunha left
|
|||
timotimo_ | there's profiling in place, no? | 01:43 | |
would it work in niecza? | |||
01:44
lizmat left
01:45
Liz joined
01:46
Liz is now known as Guest88747
|
|||
colomon | the script should work in niecza too, yes. | 01:47 | |
timotimo_ | always interesting to know the factor | 01:49 | |
01:54
am0c joined
01:55
am0c left,
am0c joined
|
|||
colomon | r: for lines() -> $line { say $line; } | 01:57 | |
p6eval | rakudo a98aa7: OUTPUT«Land der Berge, Land am Strome,Land der Äcker, Land der Dome,Land der Hämmer, zukunftsreich!Heimat bist du großer Söhne,Volk, begnadet für das Schöne,vielgerühmtes Österreich,vielgerühmtes Österreich!Heiß umfehdet, wild umstrittenliegst dem Erdteil du inmi… | ||
colomon is completely mystified by the error he is getting from Rakudo | 01:58 | ||
aha! thank you, niecza | 01:59 | ||
woah, Match.perl is next to useless when you're matching against an entire file. | 02:01 | ||
"here, let me print out this entire file for you, because you matched a line in it." | 02:18 | ||
timotimo_ | hahahaha, awesome :) | 02:19 | |
colomon | actually using .gist instead of .perl is satisfactory. | 02:34 | |
02:40
rhinux joined
02:41
rhinux is now known as rhinux_,
rhinux_ is now known as rhinux
03:00
fgomez joined
03:06
stevan_ joined
03:07
orafu joined
|
|||
raiph | colomon++ # you know what? I'm going to do the p6 implementation | 03:10 | |
colomon | it's running now | ||
raiph | wow. i only just read about it in the clogs. any estimates? | 03:11 | |
colomon | it's slow, for sure. | ||
and it's gobbling up memory. | |||
raiph | i'd love to see the code | 03:12 | |
colomon | github.com/colomon/perl6-ISO_10303...circles.pl | 03:15 | |
Basically, it's using the STEP file parser (in ISO_10303_21::Grammar) to go through the files looking for TRIMMED_CURVEs which trim CIRCLEs. | 03:17 | ||
It makes a list of what curve each TRIMMED_CURVE trims, and a list of the CIRCLEs, and then it intersects them. | 03:18 | ||
afk # sleep | 03:24 | ||
raiph | thx. so you're currently seeing intermittent TRIMMED_CURVE: lines, right? | ||
03:24
rindolf joined
|
|||
raiph | goodnight colomon++ and #prl6 | 03:24 | |
03:39
fgomez left
|
|||
diakopter | wait so how long did it take | 03:39 | |
diakopter will ask again in a few days | 03:41 | ||
03:45
munavo joined
03:49
fgomez joined
03:51
fgomez left,
fgomez joined
03:57
LlamaRider joined
|
|||
rindolf | «Chuck Norris does not need to heat up food. The food is already hot right after he took it out of the fridge.» | 03:57 | |
japhb | Because of the constant pressure from his Total Gym sales pitch? | 04:00 | |
rindolf | japhb: what? | 04:10 | |
04:15
LlamaRider left
04:16
SamuraiJack joined
|
|||
diakopter | heh | 04:26 | |
04:48
preflex_ joined
04:50
preflex_ is now known as preflex
04:55
_jaldhar left
05:00
munavo left
05:10
Heather joined
|
|||
Heather | hello there | 05:10 | |
I have a serious question | |||
How can I speed up Perl6 ? | |||
05:41
kaleem joined
|
|||
[Coke] | Heather: if you want to make rakudo on parrot go faster, you can run with --profile, generate a kcachegrind file, and use that to figure out where it's slow. | 05:42 | |
Heather | <[Coke]> is is parsebale? :) | 05:44 | |
let me paste | |||
05:45
kurahaupo left
|
|||
Heather | <[Coke]> how to redirect output ... | 05:47 | |
there is something alike 2>1 but I don't remember | 05:48 | ||
2>&1 ? | 05:49 | ||
2>filename ! | 05:50 | ||
got it | |||
05:50
daniel-s joined
|
|||
Heather | [Coke] So here is it: bpaste.net/show/83390/ | 05:51 | |
it's 6558 lines ! | |||
[Coke] | if that's the --profile output, you need to feed it to kcachegrind. | 05:52 | |
05:52
SamuraiJack left
|
|||
Heather | [Coke] I need to get kcachegrind somewhere? | 05:52 | |
[Coke] | aye. what OS are you on? | 05:53 | |
Heather | [Coke] linux | ||
[Coke] | should be available in your package manager. | ||
Heather | [Coke] so it's KDE app ? | ||
[Coke] | huh. #1 function is <cycle 2> | ||
Heather | I see | ||
[Coke] | (wtf?) | ||
Heather: Aye. | 05:54 | ||
er, I think so. | |||
Heather | it is | ||
[Coke] | ah, turn off cycle detection... | 05:55 | |
Heather | [Coke] how? | 05:56 | |
[Coke] | then you can sort by time spent in subs inclusively or exclusively to look for ones with a high percentage, or a high call count. | 05:57 | |
View -> Do Cycle Detection (unselect) | |||
defined() is called 408 times, 4% of the app. (infinite is called 140 times, 3.33%) | 05:58 | ||
Heather | [Coke] in kcachegrind? | 05:59 | |
defined() ?... | |||
05:59
rindolf left
|
|||
[Coke] | "'2" in CORE.setting is 5.28%. not sure what that is. | 05:59 | |
Heather: I'm looking at your dataset in kcachegrind. | |||
05:59
rindolf joined
|
|||
Heather | I'm still building it's deps -_-' | 05:59 | |
[Coke] | Heather++ | 06:05 | |
Heather | [Coke] ++ ? | ||
06:07
wk left
|
|||
diakopter | Heather: it's a karma signifier | 06:07 | |
[Coke] was bumping yours | |||
Heather | ah... | 06:08 | |
what is Core.settings anyways | |||
diakopter | basically the standard library | ||
Heather | it takes 96% -_-' | ||
diakopter | what's the ' there | 06:09 | |
Heather | rain drop | 06:10 | |
I'll try to find example | 06:13 | ||
diakopter | example of what | 06:14 | |
Heather | diakopter smile... | ||
diakopter media.animevice.com/uploads/0/66/15..._super.jpg | 06:15 | ||
rhinux | ah... | 06:16 | |
06:18
rindolf left,
rindolf joined
|
|||
Heather | [Coke] it's hard to understand what actually calls CORE.settings that much, but maybe it's perl6 loading basic environment? | 06:18 | |
[Coke] | Heather: the tab on the right shows you the calles. | 06:20 | |
*callers | |||
Heather | [Coke] I see but it's still hard to detect what calls it because they are not alike a->b they are alike a->b->c->a->x ... | 06:22 | |
[Coke] | mmm. | 06:23 | |
Heather | when I use -e "say 1" it's 64 on metamodel and 33 on CORE | ||
[Coke] | You are now at the point where I would normally say "hey, jnthn, what does this mean?" | 06:24 | |
06:24
raiph joined
|
|||
diakopter | I suspect it's seeing the interpreter loop | 06:24 | |
Heather | metamodel shows no callers | 06:25 | |
06:25
rindolf left
06:26
rindolf joined
|
|||
Heather | profiling is not that easy here ) | 06:28 | |
[Coke] | yah, it's not trivial, I don't think - definitely ping the .eu crowd when they wake up though. (.eu crowd, consider yourself pinged!) | 06:30 | |
FROGGS | morning | 06:31 | |
Heather | morning | 06:33 | |
[Coke] and there is trouble, Ok I found big CORE call and I can see all the callers and can detect what caller is problematic but what if I have this caller used once if sub A and once 3000 times in another sub B ... | 06:34 | ||
FROGGS | <Heather> when I use -e "say 1" it's 64 on metamodel and 33 on CORE | 06:35 | |
Heather: 64 what? | |||
Heather | not sure if I can detect them too if I go to the caller and see if it is used by B much more then by A, but maybe, I should learn it | ||
FROGGS percents | |||
FROGGS | ahh | ||
I guess this is about rakudo on parrot ? | 06:36 | ||
Heather | yes | 06:37 | |
profiling | |||
06:37
rindolf left
|
|||
Heather | originally looking for way to speed up the script | 06:37 | |
06:37
rindolf joined
|
|||
FROGGS | ya, tried something similar last week | 06:37 | |
but it is hard to speeden up parrot if you have no knowledge about it :/ | 06:38 | ||
Heather | FROGGS why picked parrot? :) | 06:39 | |
FROGGS | because you only see the parrot C-calls, no? | ||
06:39
toebu joined
|
|||
Heather | FROGGS no I mean why perl6 main implementation is on parrot ) | 06:40 | |
FROGGS | Heather: ohh I believe the implementation was originally meant to be a C impl., but then it was split up to be able to do Both Things Right(TM) | 06:41 | |
I'm pretty new to perl6, so it might not be 100% accurate | 06:42 | ||
[Coke] | Heather: parrot was originally intended to be a (the) VM for perl6. | ||
zzz. | 06:43 | ||
Heather | I see... | 06:44 | |
[Coke] what about JIT? | |||
06:49
rindolf left
06:50
rindolf joined
06:56
wk joined
07:01
odoacre joined
07:02
quester_ joined
07:04
rindolf left,
rindolf joined
07:06
mberends__ joined
07:09
toebu left,
mberends_ left
07:10
quester_ left
|
|||
Heather | What's major difference of parrot comparing to llvm and mono ? dynamic typing? | 07:12 | |
07:16
rindolf left
|
|||
sorear | yeah, parrot was designed to support late-bound languages at a time when mono didn't | 07:16 | |
07:16
rindolf joined
|
|||
sorear | llvm is kind of misnamed, it's not really the same kind of animal as { parrot, CLR, JVM } | 07:17 | |
07:17
mberends__ left
|
|||
sorear | llvm is a modular native code generator. think "gcc as a library with a sane interface and license" | 07:18 | |
mono's JIT can be configured to use LLVM for generating native code | |||
Heather | I'm making some googling... Allison is not in canonical, right? :) | ||
sorear | mono also has an internal native code generator | ||
Heather | sorear which is using gcc? | 07:19 | |
07:19
domidumont joined
|
|||
sorear | where did canonical come in to this? | 07:19 | |
Heather: nobody who can avoid it uses gcc | |||
Heather | sorear it's just I was googing about parrot, it's developers .... | 07:20 | |
07:22
_jaldhar joined
07:23
sqirrel joined
07:28
rindolf left
07:29
rindolf joined
07:30
domidumont left,
domidumont joined
07:36
mberends joined
07:40
pushkar joined
|
|||
pushkar | hi all | 07:40 | |
Heather | hi | ||
pushkar | hi Heather | ||
can someone please guide me with perl6 development | 07:41 | ||
I am interested to contribute | |||
moritz | pushkar: hello and welcome | 07:42 | |
pushkar: what do you want to contribute? | |||
pushkar: you can write modules, tests, documentation, help with the compilers, organize conferences, blog about Perl6 | 07:43 | ||
the possibilities are endless. It really depends on your strengths and preferences | |||
07:43
rindolf left
|
|||
pushkar | Moritz.. thank you so much.. I have production exposure in perl... | 07:44 | |
07:44
rindolf joined
|
|||
Heather | then good idea will be start with porting perl5 libraries :) Just my guess. | 07:45 | |
pushkar | i am interested in developing modules.. but i am really a newbie related to perl6 development procedures | ||
that sounds good to me.. | |||
moritz | the development procedure is just like in any other languages: write a bit of code and tests, run the tests, fix the code until the tests pass. Then iterate. :-) | 07:46 | |
pushkar | WOW.. Very good Moritz.. I will start here on :) thanks again.... | 07:47 | |
moritz | wiki.perl6.org/Create%20and%20Distr...%20Modules might also be of interested | 07:48 | |
pushkar: and do feel free to ask questions here, we always try to be helpful | |||
labster | pushkar: you can see what we already have at modules.perl6.org/ If you need some inspiration, there's a list of most wanted modules here: github.com/japhb/perl6-most-wanted...modules.md | 07:49 | |
07:49
SamuraiJack joined
|
|||
labster | I've been working on modules and it's been a lot of fun. | 07:50 | |
pushkar | It is of immense relief to me moritz.. You made me comfortable on this IRC.. I will surely get in touch with you.. Let me first go through all links.. | ||
Labster : Thanks alot | 07:51 | ||
07:53
FROGGS left
08:04
rindolf left
08:05
rindolf joined
08:08
wk left
08:14
FROGGS joined
08:17
mberends left
08:18
cognominal left
08:19
Guest88747 left
08:20
rindolf left
|
|||
tadzik | good morning #perl6 | 08:20 | |
Heather | tadzik morning | 08:21 | |
08:21
rindolf joined,
fhelmberger joined
08:22
cognominal joined
08:27
xinming left
08:31
xinming joined
08:32
_jaldhar left
08:35
rindolf left,
_jaldhar joined
08:39
rindolf joined
08:46
isomorphisms left
08:51
kresike joined
|
|||
kresike | hello all you happy and/or unhappy perl6 people | 08:51 | |
08:53
wk joined,
rindolf left,
rindolf joined
08:57
zby_home joined
|
|||
jnthn | morning o/ | 09:01 | |
moritz | \o jnthn | ||
arnsholt | 'lo jnthn | 09:02 | |
hoelzro | JSON::Tiny takes 2 minutes to decode a 818K JSON file =( | 09:13 | |
tadzik | did you try profiling? | ||
hoelzro | I intend to =) | ||
...does Rakudo Star come with a profiler? | 09:14 | ||
tadzik | yes | ||
perl6 --profile | |||
then push the output in (k|q)cachegrind's throat :) | |||
we should advertise built-in profiler as a kickass feature :) | 09:15 | ||
09:15
Liz joined
|
|||
hoelzro | I'll try it out in a bit! | 09:15 | |
09:16
Liz is now known as Guest84995
|
|||
moritz | mls++ deserves most credit for the profiler | 09:19 | |
09:25
Guest84995 left
|
|||
dalek | kudo/nom: 73ca26a | (Timo Paulssen)++ | src/Perl6/Actions.pm: this makes &?ROUTINE available in regex foo { ... }. |
09:25 | |
kudo/nom: f440d46 | (Timo Paulssen)++ | src/Perl6/Actions.pm: don't give &?ROUTINE to /.../ regexes. |
|||
kudo/nom: 3536942 | jonathan++ | src/Perl6/Actions.pm: Merge pull request #116 from timo/ROUTINE_in_regex Routine in regex/token/rule |
|||
labster | JSON::Tiny is about 20% faster than XML for loading ~15kB number formatting files, so I translated the files and started using it instead. | ||
Heather | yeah profiling | ||
labster | But that's only a drop from 5 to 4 seconds. | 09:27 | |
09:28
rindolf left,
d4l3k_ joined,
bruges_ joined
09:31
Mikey_ joined,
jnthn_ joined
|
|||
nwc10 | moritz: nearest U-bahn to the German Perl Workshop - Moritzplatz | 09:32 | |
09:36
lestaway joined,
hypolin left,
lestaway is now known as lestrrat,
labster left,
d4l3k_ is now known as dalek
09:39
preflex_ joined
09:40
preflex left,
preflex_ is now known as preflex,
jnthn_ is now known as jnthn
09:42
hypolin joined
09:43
lue joined,
Vlavv joined
|
|||
hoelzro | what's the licensing for the Camelia logo? | 09:46 | |
jnthn | hoelzro: Click the image on perl6.org, it takes you to info about it | 09:47 | |
hoelzro | ah =/ | ||
09:47
dakkar joined
|
|||
hoelzro | well, that's good; I was thinking of using the logo for a site for Perl 6 help | 09:48 | |
09:50
_jaldhar left,
_jaldhar joined
09:52
hugme joined,
ChanServ sets mode: +v hugme
09:53
zby_home left
|
|||
Heather | tadzik I'm not sure but does all perl6 stuff must be installed in parrot site folder? panda too? | 09:54 | |
I mean /usr/lib/parrot/5.1.0/languages/perl6/site | |||
tadzik | Heather: no, you can choose to install it elsewhere :) | 09:57 | |
gtg now, bbl | |||
jnthn | errand, bbi30, then should have time to do some Perl 6 stuff :) | ||
nwc10 | at which point the yellow light on the goalposts will start to rotate? And everyone should stand back? | 09:58 | |
Heather | elsewhere | 10:01 | |
where package manager must to install it ... | 10:02 | ||
10:04
hypolin left
10:10
anuby left
|
|||
hoelzro | I'm guessing .accepts_type is called on the HOW object when testing a value against a type signature? | 10:11 | |
10:14
bowtie joined
10:15
rindolf joined
10:20
cognominal left
|
|||
hoelzro | how can I create a class that uses a custom metaobject? is there syntax for it, or should I just invoke a method on the metaobject to create the new class? | 10:23 | |
rindolf | Hi all. | 10:26 | |
moritz | hoelzro: the latter | 10:27 | |
hoelzro | ok, I figured =) | ||
rindolf: ahoy | |||
rindolf | hoelzro: what's up? | 10:28 | |
hoelzro | nothing much | 10:29 | |
just working, musing about Perl 6 stuff =) | |||
10:29
Liz joined
10:30
Liz is now known as Guest13754
|
|||
hoelzro | if I want to return multiple hashes, what's the right way to return them/destructure them? | 10:32 | |
ex. return (%server-filters, %client-filters) | |||
my ( $server, $client ) = get-filters; | |||
Heather | hoelzro panda doesn't support destdir aswell? | ||
hoelzro | Heather: it does! | ||
via DESTDIR | |||
Heather | hoelzro it's prefix though | 10:33 | |
hoelzro prefix named wrong imo | |||
hoelzro or am I wrong? | 10:37 | ||
hoelzro | prefix is typically considered the "prefix" of the final install location | ||
DESTDIR is typically where make install will install things | 10:38 | ||
Heather | hoelzro what about $destdir = $prefix; | ||
hoelzro | if $prefix is '/usr/local' | ||
then everything will be installed under /usr/local/usr/local/... | |||
Heather | hoelzro no... | 10:39 | |
hoelzro | ? | ||
Heather | hoelzro gist.github.com/tadzik/5132411 | 10:40 | |
hoelzro actually it will be installed under /usr/local | |||
hoelzro | I'm not sure how to interpret that gist... | 10:41 | |
10:41
Guest13754 left
|
|||
Heather | hoelzro ok ... let start with example. examine you want it on /usr/bin on your system and on /mounted/usr/bin | 10:42 | |
hoelzro | wait, why both? | 10:43 | |
Heather | no matters... | ||
logically prefix is /usr/bin and destdir is / first time and /mounted second time | |||
hoelzro | prefix is most likely /usr | 10:44 | |
Heather | yes | ||
agreed | |||
hoelzro but does prefix works for panda? | |||
hoelzro | Heather: I don't know | 10:45 | |
I just know that DESTDIR does | |||
Heather | hoelzro what do you use as destdir? | ||
I hope that it is not /usr :) | |||
hoelzro | Heather: I haven't tried it yet, but since I'll be using panda to create packages, I would use the packaging directiroy | ||
*directory | |||
Heather | I see... | 10:46 | |
what is cwd anyways? | 10:47 | ||
hoelzro | for me, it's where I have the package spec file | 10:48 | |
jnthn | hoelzro: on meta-programming stuff, see jnthn.net/papers/2012-gpw-meta-programming.pdf | ||
hoelzro | thanks jnthn | 10:50 | |
Heather | hoelzro whats $!x | 10:52 | |
hoelzro | private member | ||
Heather | thanks | 10:53 | |
hoelzro it's the problem because I want to make panda to use separated destdir and prefix but I'm not sure if I understand existing content, that's why I'm asking about that | 10:55 | ||
hoelzro | ok, so what are you trying to accomplish? | 10:56 | |
Heather | hoelzro does it support destdir and must it be implemented or not | 10:57 | |
hoelzro | from what I've seen, it already supports destdir | ||
Heather | then I need to know about custom prefix then | 10:58 | |
hoelzro | so what do you need custom prefix for? | 11:00 | |
Heather | hoelzro to install it somewhere alike /usr | 11:01 | |
hoelzro | Heather: ok, what's your final goal? | ||
Heather | hoelzro nothing but clarity | ||
hoelzro | so you're curious? | 11:02 | |
I'm just trying to understand what you're trying to do =) | |||
Heather | hoelzro I should give you a freebsd link to this question | 11:03 | |
hoelzro www.freebsd.org/doc/en/books/porter...refix.html | 11:04 | ||
hoelzro it's how things going in usual | |||
colomon | diakopter: "How long did it take?" I left it running before I went to bed. It's still running now. So far it's run against 59 files of 72, but I sorted them so the smallest went first. It's found two files that actually have the characteristics I'm looking for. | ||
nwc10 | jnthn: :-( | 11:05 | |
t/nqp/49-regex-interpolation.t .. 1/37 Unhandled exception: java.lang.NullPointerException in !INTERPOLATE_REGEX in <anon> in parse in ACCEPTS in <anon> in <anon> | |||
Heather | portage (gentoo package manager) is designed to use destdir. all the source based package managers use it. and when destdir is the same as prefix then it's just prefix named wrong. | ||
hoelzro | oooh ok | ||
I'm not sure if panda supports prefix | |||
I think it uses whatever prefix Rakudo was installed with | 11:06 | ||
Heather | tadzik ping | ||
hoelzro ufo does, but I can't see same on panda | |||
hoelzro | I'm not sure about panda, but I remember that ufo indeed does | ||
but ufo, iirc, doesn't support destdir =( | |||
Heather | hoelzro O'rly? :) | 11:07 | |
hoelzro | (iirc) | ||
Heather | hoelzro github.com/masak/ufo/pull/5 | ||
hoelzro | oh, I saw that =) | ||
Heather | hoelzro and because of comment there I'm not sure if panda does :) | 11:08 | |
dalek | Heuristic branch merge: pushed 31 commits to rakudo/md-nqp by jnthn | 11:09 | |
11:09
kaleem left
|
|||
jnthn | nwc10: Which test target? | 11:10 | |
nwc10 | good question. Working that out | ||
jnthn | nwc10: I have a suspicion that file will only work on the self-host, not the cc | ||
nwc10: Because it basically does an eval. | |||
nwc10 | I think it's the cc | 11:11 | |
jnthn | nwc10: Which needs the compiler available in-process. | ||
Heather | hoelzro I'm about to finish patch to make panda support prefix in the same way. | ||
nwc10 | given that it was just below a failure on test 46, which is the one that needs ICU for the cross compiler, but passes natively | ||
Heather | hoelzro I hope that I do it correct | ||
nwc10 | but I'm checking | ||
jnthn | nwc10: Maybe it's time for me to make "make test" be what "make selftest" is now | ||
nwc10: At this point, that's the target that really matters. | |||
hoelzro | I'm not sure adding prefix to panda is such a good idea | ||
Heather | hoelzro I'm not sure too | 11:12 | |
hoelzro | panda figures out its prefix from where the perl6 executable will find modules | ||
Heather | hoelzro that's why I'm asking ) | ||
hoelzro | putting them elsewhere might get confusing | ||
but it'd be nice for something like local::lib | |||
Heather | ... | ||
hoelzro basically final path is destdir + prefix so you still can use destidr as prefix if you wish | 11:13 | ||
hoelzro | I don't know about that | 11:14 | |
if I set DESTDIR=~/perl6 | |||
and do a panda install something | |||
something will be installed to ~/perl6//usr/local/Cellar/rakudo-star/2013.02/lib/parrot/4.10.0/languages/perl6/site/lib or something like that | |||
Heather | hoelzro it's correct... | 11:16 | |
hoelzro | I would not consider that correct | 11:17 | |
how you are you supposed to know what to provide to use lib to use that path? | |||
it's specific to the Rakudo star version, as well as the parrot version | |||
you'd have to add ~/perl6/usr/local/Cellar/rakudo-star/*/lib/parrot/*/languages/perl6/*/lib to @*INC | 11:18 | ||
11:18
rhinux left
|
|||
Heather | hoelzro it's added | 11:18 | |
hoelzro | where is it added? | ||
Heather | hoelzro and it's default path. | ||
hoelzro when you install rakudo or parrot it's added. | 11:19 | ||
nwc10 | jnthn: yes, it's nqptest that fails. test and selftest pass | ||
hoelzro | Heather: but that path is not in @*INC | ||
that's why I'm saying specifying a prefix is not a good idea | 11:20 | ||
Heather | hoelzro it will be specified by default if you will not set it | ||
hoelzro at least ufo makes so | 11:21 | ||
hoelzro | I could specify ~/perl6, /tmp/, /var/tmp/perl6, /foo/bar/baz as the destdir | ||
and @*INC wouldn't contain all of them | |||
Heather | I don't get last point | ||
hoelzro | I think I kind of lost track of what I was trying to say =P | 11:22 | |
ok, hang on | |||
I have to think, heh | |||
I know I read this: hoelzro basically final path is destdir + prefix so you still can use destidr as prefix if you wish | 11:23 | ||
and that didn't seem right to me | |||
Heather | hoelzro github.com/tadzik/panda/pull/37 | ||
hoelzro | ok | 11:24 | |
Heather | it needs some testing still and I'm not sure how is it now, both flags destdir and prefix must be optional for installer | 11:25 | |
moritz | regarding the destdir stuff | 11:27 | |
IMHO panda should install to the same destdir as rakudo was | |||
because then rakudo will find the modules | |||
so I don't see why panda need patches at all | |||
what's the value of installing to some location where rakudo can't find the modules? | 11:28 | ||
Heather | moritz another distribution | ||
moritz doesn't understand that answer | |||
Heather | moritz I can use same package manager to install package for several running operating systems | ||
moritz | ah | 11:29 | |
bootstrapping, so to say | |||
Heather | moritz ? | ||
bonsaikitten what do you think? | 11:34 | ||
hoelzro by the way it's possible to avoid conflicts with panda deps ( if we don't use --nodeps ) by using blocking packages. so user will be warned and will desire what to use filetools or panda. | 11:37 | ||
hoelzro | ah | 11:38 | |
moritz: I think customizing destdir is ok, prefix I'm not sure | 11:39 | ||
for building packages, I need to do DESTDIR=$pkgdir panda install $pkg | |||
Heather | when you say destdir you mean prefix | 11:40 | |
hoelzro | I'll be back in a bit | ||
lunch time | |||
Heather | or not ) | ||
hoelzro | then we can discuss prefix vs destdir =) | ||
Heather | we can't I will go to own birthday party -_-' | 11:41 | |
11:42
Heather left
|
|||
ruoso | hoelzro: DESTDIR is a well-defined installation override that is used specifically to say "pretend as if the root of the filesystem was here" | 11:48 | |
11:49
pushkar left
|
|||
ruoso | PREFIX has a meaning which I think was established by autotools, to specify the common things between the libdir, the bindir and the includedir. I.e.: $prefix/lib $prefix/include $prefix/bin | 11:50 | |
moritz: the reason to allow separate installation of modules is the same reason why local::lib exists. You want to be able to say: "the dependencies for my application can be found in this directory" | 11:51 | ||
so you can manage and deploy such dependencies independently from the system-wide install as well as indepenedent from other applications. | 11:52 | ||
11:53
SmokeMachine joined
|
|||
ruoso | this gets slightly more complicated if you have bytecode being generated as well as native bindings, because then your installation need to be made abi-awaer | 11:53 | |
which is why perl5 has the arch-specific dir inside the deployment area | |||
12:06
Heather joined
|
|||
ruoso | Heather: please backlog, I've made some comments about the previous discussion | 12:07 | |
Heather | ruoso backlog? how? | ||
moritz | irc.perl6.org/ | ||
Heather | Heather I see | 12:09 | |
Heather is speaking with self | 12:10 | ||
12:11
rindolf left
|
|||
Heather | rurban I only afraid install syntax and related stuff compatibility | 12:11 | |
jnthn | Heather: Did you mean ruoso? :) | 12:12 | |
Heather | yes | ||
ruoso and early it was Panda::Installer.new(resources => $r, destdir => $destdir); now it's Panda::Installer.new(resources => $r, destdir => $destdir, prefix => $prefix); | 12:13 | ||
but should be fine.... if :$ means optional and it is iirc | 12:15 | ||
ruoso | I guess what I am trying to say is that it would be a shame if panda didn't incorporate the ability of local:::lib | ||
12:20
skids left
|
|||
dalek | p: b0b3603 | jnthn++ | src/ops/nqp.ops: Implement nqp::captureposprimspec. |
12:33 | |
p: 079592c | jnthn++ | src/QAST/Operations.nqp: Add nqp::captureexistsnamed. |
|||
12:33
bowtie left
|
|||
dalek | kudo/md-nqp: ab0d7bd | jnthn++ | src/Perl6/Metamodel/BOOTSTRAP.pm: Named args and constraints in NQP-based disptacher |
12:37 | |
12:41
rindolf joined
|
|||
timotimo_ | thanks for merging my stuff :) | 12:44 | |
12:44
lue left
|
|||
jnthn | timotimo_: Thanks for your stuff :) | 12:45 | |
[Coke] | stackoverflow.com/questions/1538213...e-in-perl6 | 12:49 | |
arnsholt | jnthn: To return to my question from last night (turned out that it was bedtime =), what I want is for nqp::list to return a new VMArray, rather than a QRPA. Should I do that as a new op in nqp.ops or by generating QAST in QAST/Operations.nqp? | 12:52 | |
jnthn | arnsholt: The way NQPJVM does it is by desugaring it to nqp::create(nqp::hlllist()) or so | 12:54 | |
(and then adding the elements) | |||
arnsholt: That in turn hangs off having some configuration/mapping. | 12:55 | ||
arnsholt | Yeah, that makes sense | 12:56 | |
jnthn | Largely, I'd say see the way we do it over in nqp jvm | ||
However, a word of caution: a lot of stuff currently depends on the thing being a PMC, not some 6model object. | 12:57 | ||
This is all gonna have to be solved Very Soon anyway because we need it for the JVM stuff | |||
arnsholt | That's good to know. I've started a branch locally, so I shouldn't break stuff randomly | ||
jnthn | *nod* | ||
hoelzro | ruoso: I know, I was trying to relate that, but doing a poor job of it =/ | ||
12:58
lue joined
|
|||
ruoso commute & | 12:58 | ||
hoelzro | I think local::lib (or something like it) support for panda would be nice, but it's not urgent | ||
arnsholt | jnthn: But ripping out QRPA entirely is an acceptable goal, right? | ||
jnthn | arnsholt: Yes, in so far as it'll promote things being more standard between backends. | 13:01 | |
arnsholt: And of course we can start looking at native types. | |||
13:01
am0c left
|
|||
jnthn | arnsholt: er, natively typed arrays I mean | 13:01 | |
arnsholt | Yeah, sure | ||
13:02
colomon left,
snuffles joined
|
|||
arnsholt | I've noticed NQP/Parrot has list_i and friends. That the way you want to do it permanently, or something more parametric-y? | 13:03 | |
jnthn | I've ended up with them over on the JVM port too. They boil down to a handful of types that parameterize the REPR appropriately, though. | 13:04 | |
arnsholt | Right. I'll go with that for the time being, then | 13:06 | |
13:08
Heather left
13:14
SamuraiJack left,
lue left
13:22
bluescreen10 joined
|
|||
hoelzro | hmm | 13:25 | |
JSON::Tiny is pretty fast at parsing JSON if it's mostly whitespace. | 13:26 | ||
jnthn | git diff | 13:27 | |
oops | |||
13:27
nyuszika7h left,
lue joined
|
|||
dalek | kudo/md-nqp: c2fb4bc | jnthn++ | src/Perl6/Metamodel/BOOTSTRAP.pm: Give NQP-based dispatcher support for 'is default' |
13:28 | |
kudo/md-nqp: 8f645ee | jnthn++ | src/ (2 files): Get junction failover into multi-dispatcher. |
|||
13:29
nyuszika7h joined
|
|||
nwc10 | not sure if this is a stupid or RTFM question - rakudo/md-nqp is attempting to port as much of the multidispatch code as makes sense from PIR to NQP? | 13:29 | |
jnthn | nwc10: From *C* to NQP | ||
13:29
nyuszika7h left
|
|||
nwc10 | aha | 13:29 | |
I like self hosting | |||
13:30
nyuszika7h joined
|
|||
jnthn | The theory is that most multi-dispatches are simple enough to have the outcome cached | 13:31 | |
And those that aren't involve invoking constraints or doing trial-bindings of signatures. | |||
So those where the cache applies get pretty much no extra overhead, and those where we are doing more work in NQP, not C, will have more work to lose the extra cost in. | 13:32 | ||
13:33
srini joined
13:34
srini left
13:35
lustlife left
|
|||
jnthn | Also avoids a bunch of inferior runloops | 13:37 | |
13:42
lue left
13:45
kaleem joined,
JimmyZ joined
|
|||
hoelzro | it would seem that JSON::Tiny is so slow because of object creation | 13:48 | |
13:48
Mikey_ is now known as MikeyG
|
|||
jnthn | "object creation" is pretty generic | 13:48 | |
Match object creation? | |||
Or something more specific? | |||
hoelzro | well, as a test, I decoded this: | 13:49 | |
'[' . join(',' ('{}') x 100_000) . ']' | |||
which took a while | |||
this one, however: | |||
'[' . join(',' ('true') x 100_000) . ']' | |||
took a lot less time | |||
13:49
JimmyZ_ joined
|
|||
JimmyZ_ | Good evening, #perl6 | 13:50 | |
dalek | kudo/md-nqp: f4b352b | jnthn++ | src/Perl6/Metamodel/BOOTSTRAP.pm: Correct sentinel. |
||
kudo/md-nqp: 4c470a1 | jnthn++ | src/Perl6/Metamodel/BOOTSTRAP.pm: Invalidate sort order as needed. |
|||
kudo/md-nqp: 136dc0b | jnthn++ | src/Perl6/Metamodel/BOOTSTRAP.pm: Fix compiler thunk checking. |
|||
13:50
LlamaRider joined
|
|||
jnthn | o/ JimmyZ_ | 13:50 | |
nwc10 | I'm getting spectests currently on Rakudo HEAD | ||
13:50
JimmyZ left
|
|||
jnthn | nwc10: spectest *fils*? | 13:51 | |
13:51
JimmyZ_ is now known as JimmyZ
|
|||
jnthn | *fils* | 13:51 | |
FAILS! | |||
nwc10 | them yes | ||
t/spec/S32-exceptions/misc.rakudo | |||
jnthn | ... | ||
nwc10 | t/spec/S32-num/rat.rakudo | ||
plus a bunch of TODO passes | |||
13:51
am0c joined
|
|||
timotimo_ | nwc10: could you be more specific? | 13:53 | |
or i could just boot up my machine and do them myself | |||
JimmyZ | hi jnthn ;) | ||
nwc10 | er, hangon, just nuked the build tree and rebuilding | ||
so "there will be a delay" | |||
jnthn | My Rakudo tree just switched from using C-based mutli-dispatch to the NQP one, so you can imagine I have some failures ;) | 13:55 | |
nwc10 | I do need to check *which* HEAD I was playing with | ||
13:56
lue joined
13:58
lichtkind joined
|
|||
lichtkind | ping jnthn | 13:58 | |
13:59
skids joined
|
|||
lichtkind | have rakudo compile error just want to know where to post | 13:59 | |
JimmyZ | rt ? | 14:01 | |
14:03
xinming_ joined,
xinming left
|
|||
lichtkind | pastebin.com/35N6aaN8 | 14:03 | |
yes your right jimmy | 14:04 | ||
14:04
xinming_ left,
xinming joined
|
|||
JimmyZ | pastebin is blocked by gfw :( | 14:05 | |
14:06
alester joined
|
|||
JimmyZ | or gist.github.com/ ? | 14:07 | |
lichtkind | yes that is better | ||
but i already submitted under rakudobug | 14:08 | ||
hoelzro | ok, apparently hash creation is pretty expensive? | ||
14:09
PacoAir joined
14:10
lichtkind left
|
|||
LlamaRider | doing another P5 to P6 port here -- when I am in class Foo and "use Foo::Bar" with the usual P5 setup in which class Bar is in Foo/Bar.pm6, I get an error. | 14:17 | |
I am pretty sure I don't understand :: any longer | |||
JimmyZ | what's the error message? | 14:18 | |
LlamaRider | the error is: Merging GLOBAL symbols failed: duplicate definition of symbol Bar | ||
JimmyZ | could you paste the code? | 14:19 | |
moritz | "in which class Bar is in Foo/Bar.pm6" | ||
that's not quite the usual setup | |||
it's usual for Foo::Bar to be in Foo/Bar.pm6 | |||
LlamaRider | moritz: that's what I meant, Foo::Bar is in Foo/Bar.pm6 | ||
JimmyZ: let me make a minimal example first | 14:20 | ||
JimmyZ | or push the code to the github ;) | ||
LlamaRider | never mind, I figured it out and it was something embarrassing :D | 14:22 | |
14:23
Psyche^ joined
|
|||
JimmyZ | ;P | 14:23 | |
LlamaRider | copy-pasted Bar in Baz and didn't rename it to Baz, so the error was to the point - I was loading class Foo::Bar twice | ||
14:24
Patterner left,
Psyche^ is now known as Patterner
|
|||
jnthn | bbi30 | 14:25 | |
14:28
JimmyZ left
|
|||
rindolf | LlamaRider: hi, are you new here? | 14:28 | |
LlamaRider | hi rindolf. I wouldn't say I am new-new, but I haven't been consistently around. I've ported one CPAN module to P6 until now, and am learning more by porting a few others. | 14:29 | |
rindolf | LlamaRider: ah, OK. | 14:30 | |
LlamaRider: I've ported some code of my own (Project Euler/etc.) | |||
Not sure my P6 is very idiomatic. | |||
LlamaRider | I'd love to port some of my projects to P6, but I need a lot of CPAN before I can get there... So doing that first | 14:31 | |
rindolf | LlamaRider: BTW, my /part message is still "Yay, I'm a llama again!" which is taken from www.youtube.com/watch?v=W5GjhMMPM00 | 14:32 | |
LlamaRider: I'm an individual of many species. | |||
LlamaRider: OK, put the horse before the cart. | 14:33 | ||
LlamaRider | :D awesome | ||
rindolf | LlamaRider: I like Llamas. | ||
14:35
colomon joined
|
|||
LlamaRider | I'm afraid I am no Llama expert myself, but I'm quite fond of Perl :) | 14:35 | |
hoelzro has no idea how to interpret the results from perl6 --profile | 14:36 | ||
14:37
Heather joined
14:40
kaare__ joined
14:41
census joined
|
|||
arnsholt | hoelzro: kcachegrind | 14:42 | |
hoelzro | arnsholt: ah, thanks! | ||
LlamaRider | Are there export tags for P6? If not I will probably just export everything in the "all" tag. I'm not even sure how useful of a feature that is in P5. | 14:43 | |
moritz | LlamaRider: yes | 14:44 | |
you can say sub foo() is export(:a, :b) { }; | |||
and then use YourModule :a; | |||
LlamaRider | moritz: cool! thanks | 14:45 | |
14:52
szabgab joined
|
|||
szabgab | hi, I've tried to build Rakudo on Windows from source and failed, so I installed the Rakudo * MSI - I think it suits my needs better anyway... | 14:54 | |
A couple of things, I hope someone here might be able to help me: | 14:55 | ||
14:55
lichtkind joined
|
|||
szabgab | rakudo.org/2013/02/24/rakudo-star-2...-released/ has an "href" that is not a real link, I wonder if that's on purposed? | 14:55 | |
s/d// | |||
LlamaRider | " Bug reports about missing and broken | 14:56 | |
features are welcomed at href="mailto:rakudobug@perl.org">rakudobug@perl.org. " | |||
oh the irony | 14:57 | ||
14:57
Liz joined
14:58
Liz is now known as Guest11539
|
|||
szabgab | then I think it never told me it has finished to install ... | 14:58 | |
and it has not changed my PATH to include c:\rakudo\bin | |||
nwc10 | 3 spectest fails from nom: pasta.test-smoke.org/461 | 14:59 | |
15:01
Guest11539 is now known as lizmat
|
|||
FROGGS | question to all: If I'd run a perl 5 service, how hard would it be to do same NativeCally-stuff in rakudo to call into that perl 5 service? | 15:02 | |
shouldn't take longer than a weekend, right? | |||
lizmat | FROGGS: isn't that what blitzkost is / was? | 15:03 | |
moritz | it didn't go through NCI | 15:04 | |
szabgab | who usually builds Rakudo * for Windows? | ||
FROGGS | lizmat: I must admin, I dont know | 15:05 | |
*admit | |||
Heather | I plan do it in future | 15:06 | |
FROGGS | moritz: I dont really care if it is NCI or TCP or something else in the background | ||
moritz | szabgab: pmichaud_ | ||
Heather | I think I already found some defect with rakudo on windows but I will try to explore it myself | 15:07 | |
szabgab | ok, so wait till pmichaud_ comes by with my complaints, right? | ||
FROGGS | Heather: might be still nice to report it, even if you want to fix it yourself | ||
moritz | szabgab: or you could build it yourself | 15:08 | |
szabgab | I couldn't | ||
the compilation failed for me | |||
Heather | FROGGS first I want to be sure if that's a bug | ||
szabgab | but it is ok for me | ||
I just want to complain :) | |||
FROGGS | Heather: sure | 15:09 | |
szabgab | Heather: do you have Rakudo * on Windows? | 15:12 | |
Heather: have you installed the msi? | 15:13 | ||
Heather | yes | ||
15:13
lizmat left
|
|||
Heather | yes | 15:13 | |
szabgab | has it configured the PATH for you? | ||
Heather | yes | ||
C:\Rakudo ) | |||
szabgab | it installed in c:\rakudo | ||
Heather | but doesn't add to ENV | ||
szabgab | but it has not changed PATH | ||
right | 15:14 | ||
Heather | yes ) | ||
szabgab | and have you managed to use p6doc? | ||
Heather | didn't tryed this at all. | ||
yet. | |||
szabgab | ok, and have you tried any modules that come with Rakudo * ? | 15:15 | |
Heather | just tested my script and found strange reaction | ||
szabgab | ok, as I dpm | ||
Heather | so i tested tadzik's perl6-File-Tools | ||
szabgab | as I don't see any modules | ||
how? | |||
Heather | szbalint_ cloned my script which is using it :) | ||
szabgab github.com/Cynede/ignore | 15:16 | ||
szabgab | heh szbalint_ will be happy I am back on the channel :) | ||
Heather | -_-' | ||
szabgab btw I wonder about magical way it find libs on windows | 15:17 | ||
szabgab | ok, I wrote a little .bat file so I can use p6doc from the command line | ||
do you mean the parrot libs or perl6 modules? | |||
Heather | perl6 modules | 15:18 | |
szabgab | are there any perl6 modules that came with it? | ||
Heather | seems like on windows it goes recursive to all folders from . and adds all the stuff | ||
szabgab | Oh and have you tried panda? | ||
Heather | szabgab not yet but I should because I've made some changes on panda in my fork | 15:19 | |
15:19
isomorphisms joined
|
|||
Heather | szabgab github.com/Cynede/panda/commit/230...6eb9cf560b It will be good if someone else will also test it ) | 15:20 | |
15:21
arlinius joined
15:24
wk left
15:26
kaleem left
|
|||
jnthn back | 15:28 | ||
FROGGS | jnthn: if you have time, I'd like to talk about blitzkost | 15:29 | |
15:30
Heather left
|
|||
jnthn | r: $_ = '123'; s/2/x/; .say | 15:31 | |
p6eval | rakudo cee2f9: OUTPUT«1x3» | ||
jnthn | r: $_ = '123'; s/2/x/; say $/ | ||
p6eval | rakudo cee2f9: OUTPUT«「2」» | ||
jnthn | r: $_ = 123; s/2/x/; say $/ | ||
p6eval | rakudo cee2f9: OUTPUT«(Any)» | ||
jnthn | hah! | ||
BUSTED | |||
FROGGS | uhh | 15:32 | |
jnthn | I'll fix it | ||
I discovered it while hunting why my multi changes had broken loads of tests. | |||
FROGGS | these things make me feel like we just have 10 tests in roast | ||
jnthn | r: sub foo() { $/ := 42 }; foo() | 15:34 | |
p6eval | rakudo cee2f9: OUTPUT«===SORRY!===Cannot use bind operator with this left-hand sideat /tmp/Ddm0ufiHc8:1------> sub foo() { $/ := 42 ⏏}; foo() expecting any of: postfix» | ||
jnthn | That wants a fix also.... | ||
FROGGS | n: sub foo() { $/ := 42 }; foo() | ||
jnthn | Though that one is RT'd | ||
p6eval | niecza v24-33-gfc6d5fd: ( no output ) | ||
FROGGS | hmmm, weird, I though niecza didnt get that right | ||
LlamaRider | So is bitwise or ~| or +| in P6? And is bitwise negation still ~ ? | 15:40 | |
I should get myself a "Learning Perl6" book | 15:41 | ||
moritz | ~| is stringy bitwise OR | 15:43 | |
+| is integer bitwise OR | |||
and iirc negation is ~^ abd +^ | |||
FROGGS | say 2 +| 1 | 15:45 | |
r: say 2 +| 1 | |||
p6eval | rakudo cee2f9: OUTPUT«3» | ||
15:48
gdey joined
|
|||
LlamaRider | rn: say (+^0b10).base(2); | 15:55 | |
p6eval | rakudo cee2f9, niecza v24-33-gfc6d5fd: OUTPUT«-11» | ||
hoelzro | so alester showing up last night got me to thinking about roadblocks that Perl 6 has | 15:57 | |
and I think one of the biggest ones is that there's a lot of tribal knowledge | |||
moritz | or phrased differently, lack of documentation | 15:58 | |
hoelzro | I often have questions that are difficult/impossible to answer by searching the specs (either because of organization or specificity to a given implementation) | ||
moritz: yes =) | |||
so I ask here, and I get a glowing answer from one of th devs right away | |||
so I think if a post appears that highlights where Perl 6 needs help, that would be a good thing to point out | 15:59 | ||
</2c> | |||
16:02
lichtkind left
16:05
SunilJoshi joined,
pmurias joined
|
|||
pmurias | is there a plugin to Plack/Catalyst to ban based on IP (preferably a ready made solution like CatalystX::AutoCRUD)? | 16:05 | |
jnthn | FROGGS: On Blizkost, what were you wanting to know? | 16:06 | |
pmurias: This channel may not offer the highest chance of getting an answer to that... :) | 16:07 | ||
Ulti | www.tiobe.com/index.php/content/pap...index.html ruby overtakes perl :'( | 16:08 | |
hoelzro | huh; it's not creating objects that's slow | 16:11 | |
it's creating hashes | |||
16:15
lichtkind joined
|
|||
Ulti | I dont think its a lack of documentation but documentation in different places in different formats aimed at different audiences | 16:15 | |
a language spec isn't somewhere your average application developer goes to get some help | 16:16 | ||
hoelzro | true | ||
the example I was thinking of was "how do I profile a Perl 6 script"? | |||
Ulti | a FAQ based on the IRC logs might be a plan | ||
hoelzro | hmm | 16:17 | |
well, I have a project idea | |||
called "Ask Camelia" | |||
Ulti | like pick out every question, so IRC lines ending in ? then do TF-IDF or something to build some topics | ||
hoelzro | it's just a simple text form, where you type "p5: $0" or "traits" or something | ||
szabgab | does rakudo * come with its own "prove" ? | ||
hoelzro | and it presents you with an example and a link to the spec | ||
and links to other relevant documentation | 16:18 | ||
I was thinking of initializing it with Q/A from IRC | |||
Ulti | also what would be quite epic is if getting a compiler error you got asked if you wanted to jump on channel for some help with the error and source file uploaded as a gist | ||
we have a perl6 IRC interface after all | |||
maybe have some kind of hoop to jump through to prevent spam | 16:19 | ||
hoelzro | hmm | ||
szabgab | tadzik: the panda that comes with rakudo tells me first I need to give the options --notests and only at the end the command 'install' that's quite confusing | ||
hoelzro | well, that's another thing I wanted to add to AC | ||
16:19
lichtkind left
|
|||
hoelzro | if the question doesn't have any answers yet, the web application could forward it here | 16:19 | |
Ulti | sounds good hoelzro | 16:20 | |
hoelzro | now, I just need the time ) | ||
=) | |||
Ulti | also keeping an index of compiler problems to solutions would be neat, so chatting from the compiler prompt everything said is logged with the gist and you get a list of previous problems that look similar | 16:21 | |
16:21
lichtkind joined
|
|||
Ulti | doesn't have to be in the compiler, just some friendly wrapper | 16:21 | |
hoelzro | hmm, that's interesting | ||
Ulti | kidgloves perl6 program.p6 | ||
could make it quite a general application | |||
where it just looks up what channel to use for the program | 16:22 | ||
16:22
SunilJoshi left
|
|||
Ulti | #perl6-kidgloves for example | 16:22 | |
basically what everyone does with google and stack overflow anyway but automated | 16:24 | ||
also everything else under the sun has "gone social" why not compilers :) | 16:25 | ||
"10 of your friends are using perl6, would you like to message them?" | 16:26 | ||
16:26
lichtkind left
|
|||
hoelzro | heh | 16:26 | |
Ulti | seriously though, why dont compilers do that... its the first thing everyone does when they give up fixing it themselves | 16:27 | |
perhaps show someone this stuff after they get the exact same error after several consecutive compiles | |||
so its obvious they are failing | |||
16:30
not_gerd joined
|
|||
not_gerd | o/ | 16:30 | |
szabgab: what's your windows build environment and how does it fail? | 16:31 | ||
pmurias | jnthn: sorry thought it was #perl ;) | 16:32 | |
pmichaud_ | szabgab: pong | 16:33 | |
szabgab | not_gerd: do you mean how rakudo fails to build, sorry I am over that, I am a happy (sort of) Rakudo * user :) | ||
16:33
snuffles left
|
|||
szabgab | pmichaud: repong | 16:33 | |
pmichaud: I sent a mail and a bug report with the issues I found so far - issues with Rakudo * msi | 16:34 | ||
16:34
snuffles joined
|
|||
pmichaud | szabgab: I saw the mail to the p6c list | 16:34 | |
bug report? | |||
szabgab | [perl #117151] | 16:35 | |
the lack of "prove" and that panda blows up | |||
pmichaud | szabgab: this is from the .msi ... ? | 16:36 | |
szabgab | yes | ||
pmichaud | there is no 2013.02 msi yet, though. | ||
at least, I didn't make one. | |||
szabgab | hmm | ||
let me check then :) | |||
jnthn | o/ pmichaud | ||
dalek | kudo/md-nqp: e5208af | jnthn++ | src/Perl6/Actions.pm: Switch most dispatches to NQP-based dispatcher. Next up will be hunting/fixing regressions. |
16:37 | |
pmichaud | o/ jnthn | ||
dalek | kudo/md-nqp: 23f38ed | jnthn++ | src/Perl6/Actions.pm: Allow binding to $/. Because we need it now to fix other things, but also because it will fix an RT once this branch is merged. |
||
rakudo/md-nqp: f81a127 | jnthn++ | src/core/ (2 files): | |||
rakudo/md-nqp: Fix $/ setting and $_ lookup a bit. | |||
rakudo/md-nqp: | |||
szabgab | 2013.01.msi | ||
pmichaud: 2013.01.msi sorry for the confusion | |||
pmichaud | not sure what to do about 'prove' | ||
szabgab | If there is no perl6 based prove, and there is no perl 5 based prove installed then I think panda should fail (in a nice way) | 16:38 | |
pmichaud | seems like panda shouldn't use 'prove', unless we're going to make p5 a runtime requirement for p6 | ||
szabgab | and tell the user to run with --noinstall | ||
FROGGS | sooooo, workshop break before lunsch | 16:39 | |
*lunch | |||
szabgab | but yes, panda should not rely on any perl5 thing | ||
FROGGS | jnthn: well, I'm at a workshop right now so my motivation is like 450% | ||
pmichaud | I'll file a bug report for panda | 16:40 | |
FROGGS | jnthn: I'd like to know how the state is, and what I can do (I have some (or some more) Perl 5 knowledge) | ||
jnthn: so I want to let you know that I wanna hook in, so we're able to use (simple) Perl 5 modules from within rakudo | |||
szabgab | when do you expect to have 2013.02.msi ? and will you include at least those batch files? | 16:41 | |
kresike | bye folks | ||
16:41
kresike left
|
|||
pmichaud | which batch files? | 16:45 | |
p6doc and panda? | 16:46 | ||
I suspect they might be long in the star repo. | |||
I suppose it could be part of the .msi only, though. | |||
not_gerd wonders if parrot-prove would work | |||
jnthn | I think putting them in the Star repo and including them with Windows installs in general is good | 16:47 | |
pmurias | jnthn: we need a working use :from<perl5> so that perl5 questions are on topic here ;) | 16:48 | |
16:48
SamuraiJack joined
|
|||
jnthn | ;) | 16:48 | |
Blizkost was built before any of the 6model stuff happened. | |||
pmichaud | github.com/tadzik/panda/issues/38 | 16:49 | |
szabgab: if you can provide the .bat scripts and other items as issue reports for star, they could likely make it into the 2013.03 release. | 16:51 | ||
szabgab | pmichaud: thanks | ||
pmichaud: the bat files are those one-liners I included in the email | |||
FROGGS | jnthn: so we first need to get it working agein? | ||
*again | |||
pmichaud | github.com/rakudo/star/issues | 16:52 | |
FROGGS | jnthn: can you add a roadmap for me? | ||
szabgab | I can commit them somewhere if you let me know the repo | ||
pmichaud | github.com/rakudo/star | ||
szabgab | ok, I'll open the issues there or send a pull :) | ||
pmichaud | excellent, thanks | ||
szabgab | should I create a directory called win32/bin and put them there? | 16:53 | |
pmichaud | szabgab: looking | ||
szabgab | maybe under ports ? | 16:54 | |
pmichaud | ports/ is good enough for now | ||
we'll want to update the install script, undoubtedly | |||
szabgab | which is where? | 16:55 | |
pmichaud | github.com/rakudo/star/blob/master...akefile.in | ||
szabgab | oh I see I have commit bit to this repo | 16:56 | |
so I can just add the bat files | |||
I feel empowered | |||
pmichaud | I'll upload my "how to build star on windows" instructions tomorrow, too | 16:57 | |
szabgab | That's good but I am just a user here ! | 16:59 | |
17:00
bowtie joined,
fhelmberger left
|
|||
dalek | ar: d0e0a2e | (Gabor Szabo)++ | ports/win32/p (2 files): Adding bat files for MS Windows installation. To be placed in the bin directory of Rakudo |
17:01 | |
szabgab | ok, that's enough harm done for today | ||
17:02
lichtkind joined,
wk joined
17:04
lichtkind left
17:05
szabgab left,
isomorphisms left
17:06
SmokeMachine left
17:07
SunilJoshi joined
|
|||
mehwork | are there any good perl podcasts? | 17:10 | |
17:12
SmokeMachine joined
17:13
grondilu joined
|
|||
masak | szabgab++ made some Perl 6 videos, I recall. | 17:14 | |
screencasts. | |||
here's one of them: www.youtube.com/watch?v=tqxI7L5FQ4w | 17:15 | ||
mehwork | i mean audio ones i can listen to on ipod | ||
i found one 'perlcasts' on itunes | |||
masak | ok, sweet. | ||
mehwork | thanks, i'll check those out too | ||
17:16
crab2313 joined
|
|||
masak | make sure you check out FLOSS weekly #140: twit.tv/floss140 | 17:16 | |
with a very nice interview with our own pmichaud++ | |||
mehwork | cool | 17:17 | |
17:20
pmurias left
17:24
Liz joined,
Liz is now known as Guest79209
17:25
Guest79209 is now known as lizmat
|
|||
moritz | that's from 2010, right? | 17:29 | |
17:30
isomorphisms joined
|
|||
masak | something like that. but I bet it's still interesting. | 17:30 | |
timotimo_ | October 29 2010, so very late 2010 | 17:31 | |
17:35
snuffles left
17:36
Chillance joined
17:37
snuffles joined
17:43
spider-mario joined
17:50
FROGGS left,
sqirrel left
17:51
not_gerd left,
sqirrel joined
17:52
yoleaux joined
|
|||
masak | people, some time in the coming weeks I may hold a half-day Perl 6 course on IRC. (timed so that both US and Europe are awake during it.) I already have some people showing interest in such a course. | 17:53 | |
anyone else who is/might be interested? | |||
moritz might be | 17:56 | ||
oh, and I'll provide logging if you want to do it another channel | 17:57 | ||
17:57
fgomez left
|
|||
moritz | *in another channel | 18:00 | |
18:02
dakkar left
18:03
yoleaux left,
yoleaux joined
18:06
fhelmberger joined
18:07
SunilJoshi left
|
|||
timotimo_ | i wonder if careful parallelisation of parsing the grammar and calling the action methods would give any performance benefit rather than just a huge headache. | 18:12 | |
maybe an STM approach would be feasible some day | 18:13 | ||
18:13
davidagain joined
|
|||
timotimo_ | as in start the parsing of the next construct and if it accessed a piece of data that was just being created by an earlier action method (say, a lexical or world value or something), then abort the earlier parse and try again later | 18:13 | |
moritz | sounds scary | 18:14 | |
TimToady | trouble is you can't know whether there's a dependency, if the previous construct changed the language | 18:15 | |
not until the lexer is recalculated | |||
*lexers are | |||
timotimo_ | so making the abort happen isn't going to be reliable? | ||
TimToady | so I think the biggest win will be caching lexers from run to run | 18:16 | |
the identity of the current language is the most important thing, and Perl 6 really, really hates to parse without knowing the current language | |||
if you can minimimize the lexer recalculation with a cache, then whenever you get a cache hit, you don't have to spend time recalculating the lexers, and then maybe you can think about parallelizing the actions | 18:18 | ||
of course, by the time you've cached all the langauges, it's a small step to remember the exact text of the next function, and if it matches, just use a cached parse of it | 18:19 | ||
and then you have an incremental compiler | |||
moritz | sounds also scary :-) | 18:20 | |
18:21
snuffles left
|
|||
TimToady | it's only scary if you lose track of the identities and start guessing | 18:22 | |
masak | moritz: thanks. I will most likely take you up on that offer. | 18:23 | |
I want to do it in another channel, because I don't want to expose everyone here to a Perl 6 course ;) | 18:24 | ||
18:24
fhelmberger left,
snuffles joined
|
|||
alester | masak: I think a Perl 6 course isn't bad in channel. | 18:25 | |
We don't want #perl6 to only be devs,right? | 18:26 | ||
heck, *i* could use a Perl 6 course. | |||
18:26
snuffles left
|
|||
dalek | rl6-roast-data: 1caa659 | coke++ | / (4 files): today (automated commit) |
18:27 | |
arnsholt | alester: I think someone in #parrot said you might know about reasons for the choices of compiler warnings in Parrot. Am I remembering correctly? | ||
[Coke] | nwc10: are your failures listed here: github.com/coke/perl6-roast-data/b....out#L2419 | 18:31 | |
Aoogh. rakudo has failed spectests six days in a row. | 18:32 | ||
er, *AOOOGAH* | |||
moritz | [Coke]: I'm doing a spectest run and see if anything fails for me too | 18:33 | |
18:33
snuffles joined
|
|||
moritz | and if yes, try to fix it | 18:33 | |
[Coke] | moritz++ | 18:34 | |
jnthn | I'm getting some segfaults on some of the regex tests. | ||
18:35
snuffles left
|
|||
jnthn | I thought it was in my branch only, then couldn't track them to anything in it, and found they're in nom too... | 18:35 | |
[Coke] | jnthn: which tests? | ||
jnthn | regex-in-variable.t, litvar.t are two of them | ||
[Coke] | (I'm not seeing those. failures I'm seeing are in S26-documentation/09-configuration.t and S32-num/stringify.t | 18:36 | |
18:36
snuffles joined
|
|||
masak | alester: in channel I would feel like I was drowning out ordinary development work, or newbie questions, or other discussion. | 18:38 | |
alester: I've previously held a very pleasant 3-hour walkthrough of CQRS on a separate channel. wouldn't mind having a similar format for this course. | 18:39 | ||
18:41
bluescreen10 left
18:43
fhelmberger joined
18:44
fhelmberger left
|
|||
moritz | [Coke]: I observe two test failures here, t/spec/S26-documentation/09-configuration.t and t/spec/S32-num/stringify.rakudo | 18:46 | |
plus some passing TODOs | |||
dalek | ast: fdb4719 | moritz++ | S (3 files): fudge and unfudge tests for rakudo also switches to planless testing in S32-num/stringify.t, because functions that run several tests are hard to fudge. |
18:52 | |
18:52
bluescreen10 joined
|
|||
jnthn | I thnk the 09- one may be my fault | 18:53 | |
Will look more in a bit | |||
moritz | iirc tadzik said something along these lines | ||
18:55
_jaldhar left
|
|||
davidagain | r: say 'r: say "r"' | 18:57 | |
p6eval | rakudo cee2f9: OUTPUT«r: say "r"» | ||
davidagain | aww, that would have been fun | ||
18:58
LlamaRider left
|
|||
moritz | davidagain: I was very careful to avoid bot cycles when writing p6eval :-) | 18:59 | |
davidagain: p6eval sending messages via phenny (or lambdabot, back in the days) etc. | |||
timotimo_ | that interview was nice and interesting | 19:00 | |
19:00
crab2313 left
|
|||
timotimo_ | davidagain: sadly, that would only have caused one back and forth, not a cycle | 19:01 | |
so, try again? :) | |||
davidagain | hmm | ||
quine the dilemma | 19:02 | ||
timotimo_ | r: my $str = "r: say $str"; say "r: say $str"; # this doesn't help either, no? | ||
p6eval | rakudo cee2f9: OUTPUT«use of uninitialized value of type Any in string context in block at /tmp/CrxmnZwTT2:1r: say r: say » | ||
davidagain | let me think | ||
timotimo_ | r: my $str = 'r: say $str'; say "r: say $str"; # this doesn't help either, no? | ||
p6eval | rakudo cee2f9: OUTPUT«r: say r: say $str» | ||
davidagain | r: say r: say $str | ||
p6eval | rakudo cee2f9: OUTPUT«===SORRY!===Two terms in a rowat /tmp/ijF1NeicGd:1------> say r⏏: say $str expecting any of: argument list postfix infix stopper infix or meta-infix statement end statement … | ||
davidagain | nope | 19:03 | |
timotimo_ | a y combinator perhaps? | ||
davidagain | I think a simple contatenative quine should work | ||
moritz | davidagain: the OUTPUT« prefix prevents it from ever taking input from itself | ||
davidagain | yeah, I know | ||
(now) | |||
any other bots in here I can recruit to my cause? | |||
timotimo_ | yeah, this is a theoretical exercise only | ||
moritz | .oO( you can quine any time you like, but you can never loop ) |
||
19:04
fgomez joined
|
|||
davidagain | what we need is a way to get p6 to ignore r: as a bareword | 19:05 | |
ignore my bareness, p6. don't be a perv. | |||
moritz | davidagain: niecza already does it | ||
(it's a label) | |||
but only at statement begin | |||
davidagain | r: goto r | ||
p6eval | rakudo cee2f9: OUTPUT«===SORRY!===Undeclared routines: goto used at line 1 r used at line 1» | 19:06 | |
moritz | n: goto n | ||
p6eval | niecza v24-33-gfc6d5fd: OUTPUT«===SORRY!===Undeclared routine: 'n' used at line 1Unhandled exception: Check failed at /home/p6eval/niecza/boot/lib/CORE.setting line 1443 (die @ 5)  at /home/p6eval/niecza/src/STD.pm6 line 1147 (P6.comp_unit @ 37)  at /home/p… | ||
moritz | n: n: goto n | ||
alester | arnsholt: Yes, I know all about the GCC warnings that Parrot uses. | ||
p6eval | niecza v24-33-gfc6d5fd: OUTPUT«(timeout)» | ||
davidagain | r: r: goto r | ||
p6eval | rakudo cee2f9: OUTPUT«===SORRY!===Two terms in a rowat /tmp/mrk4E5Ba9r:1------> r⏏: goto r expecting any of: argument list postfix infix stopper infix or meta-infix statement end statement modifi… | ||
davidagain | r: goto hell | ||
p6eval | rakudo cee2f9: OUTPUT«===SORRY!===Undeclared routines: goto used at line 1 hell used at line 1. Did you mean '&shell'?» | ||
moritz | rakudo doesn't parse labels yet, and doesn't do goto either | ||
alester | arnsholt: is this more appropriate here or in #parrot? | ||
davidagain | n: say 'r: man up!' | ||
arnsholt | alester: Excellent! The one I'm curious about is -Waggregate-return | 19:07 | |
p6eval | niecza v24-33-gfc6d5fd: OUTPUT«r: man up!» | ||
alester | What about it? | ||
arnsholt | Either, really. It's about Parrot, but because of Perl 6 | ||
Part of the C 6model API is a function that returns a struct | |||
davidagain | I haven't played with Perl6 for a while. Does either rakudo or niecza have a GUI frontend for the REPL? | ||
arnsholt | Not a pointer to a struct, but the whole thing is returned. Which means that we get mandatory compiler warnings when compiling NQP and Rakudo | ||
davidagain | (on Windows) | ||
moritz | no | 19:08 | |
arnsholt | It's not a big deal, but it'd be nice to not have those warnings | ||
19:08
autumn joined
|
|||
davidagain | p6 | 19:08 | |
maybe I can get the J REPL to talk 06 | |||
the CLI is not fun here in Windowsland | |||
and I'm not keen on building for cygwin | 19:09 | ||
alester | arnsholt: The reason I put -Waggregate-return in there is because A) the warning exists, and B) nothing complained. My approach to setting up warnings was "turn everything on that we possibly can unless there is a reason not to have it on." | ||
19:10
sivoais joined
|
|||
alester | If we now have stuff returning structs and the compiler warning doesn't make sense, then it may be time to get rid of the warning. | 19:10 | |
Alternately, you could add -Wno-aggregate-struct to the Perl 6 options. | |||
(I think that's how GCC does negation) | 19:11 | ||
I mean -Wno-aggregate-return | |||
TimToady | Pope Francis! | 19:13 | |
moritz | habemum francis! | 19:14 | |
alester | TimToady beats CNN.com | ||
19:16
autumn left
19:18
sivoais left
19:19
sivoais joined,
autumn joined
19:21
Timbus joined
19:27
sivoais left
19:28
sivoais joined
19:38
sivoais left
19:39
sivoais joined
19:40
sivoais left
19:41
sivoais joined
19:42
sivoais left
19:45
LlamaRider joined
|
|||
arnsholt | alester: Thanks! I'll keep it in mind when I return to my warning-squashing quest =) | 19:45 | |
masak .oO( clearly, 'francis' is some kind of genitive, and it should be 'hamemum Franceum' ) :P | 19:51 | ||
arnsholt | =p | ||
19:52
sivoais joined,
fgomez left
19:53
zby_home_ joined
19:55
SamuraiJack left
19:58
rindolf left,
szbalint_ left
19:59
szbalint joined
|
|||
dalek | p: 6c4dc29 | jnthn++ | src/guts/multi_dispatch.c: Multi-cache should decontainerize. |
20:01 | |
kudo/md-nqp: 383409d | jnthn++ | src/ (2 files): Fix $/ lookup more properly. |
20:02 | ||
kudo/md-nqp: ad805ff | jnthn++ | src/Perl6/Metamodel/BOOTSTRAP.pm: A couple of performance tweaks. |
|||
kudo/md-nqp: 3199f01 | jnthn++ | src/Perl6/ (2 files): Add back caching of dispatches. |
|||
20:04
fglock joined
20:08
fgomez joined
|
|||
fglock | I'm working on a module to generate code for a perlito5/perlito6 "jit" backend, | 20:09 | |
I wonder if somebody documented which subset of perl6/perl5 intersects | |||
so I can write a module that works on both | |||
I could also just try out and see what works | 20:10 | ||
dalek | p: 6bd6a25 | jnthn++ | src/guts/multi_dispatch.c: Fix buffer overrun. The code relied on the check being done higher up, which it isn't any more. |
20:17 | |
20:20
domidumont left
|
|||
alester | arnsholt++ Yay for warning squashing. | 20:47 | |
That's why they're there. | |||
arnsholt | Yeah. They've caught some things for me before, so I'd be very happy if I could kill all the warnings in NQP | 20:49 | |
20:51
am0c left
|
|||
tadzik | hello #perl6 | 21:00 | |
so many messages | |||
arnsholt | Hmm. Maybe I should read some docs about QAST rather than semi-randomly cargo-culting stuff and seeing what happens | 21:01 | |
21:02
skids left
|
|||
arnsholt | It's alive! | 21:05 | |
*ahem* | |||
21:08
yoleaux left
|
|||
arnsholt | jnthn: Am I right in thinking that I'll have to add a repr_push op to nqp.ops and a pirop mapping for that to use REPROps_Positional->push_boxed? | 21:08 | |
21:08
yoleaux joined
21:09
yoleaux left,
yoleaux joined
|
|||
jnthn | arnsholt: The vtable method in SixModelObject is already set up to do the appropriate forwarding. | 21:09 | |
For push at least | |||
May need some more filling out. | |||
So nqp::push should do it | |||
diakopter | phenny: tell tadzik you've got mail | ||
tadzik | diakopter: thanks, reading ;) | 21:10 | |
I just got back home after the entire day, and it seems like the entire internet was looking for me :P | |||
tadzik has seen RMS live today | |||
arnsholt | jnthn: Right. Then it's probably something else (like a bug in VMArray =) | 21:11 | |
It's complaining about a zero-byte allocation somewhere | 21:13 | ||
tadzik | diakopter: did I get something from yuo? | 21:16 | |
arnsholt | There we go. Braino number one in VMArray.c | ||
tadzik | no phenny, no aloha. What do :( | 21:18 | |
arnsholt | Braino number two! | 21:20 | |
21:21
arlinius left
21:22
cognominal joined
21:23
zby_home_ left
21:27
zacts joined
|
|||
diakopter | tadzik: nope; just teasing the lack of phenny | 21:28 | |
felher | phenny: tell phenny: we missed you. Welcome back. | 21:29 | |
The bot will never read it. How sad. | 21:30 | ||
21:31
cognominal left,
cognominal joined
21:32
alester left
|
|||
dalek | p/vmarray-list: 117931a | (Arne Skjærholt)++ | / (2 files): Add NQPArray type. |
21:35 | |
p/vmarray-list: 9e4e480 | (Arne Skjærholt)++ | src/QAST/Operations.nqp: Add nqp::hlllist op. |
|||
p/vmarray-list: 91b03ba | (Arne Skjærholt)++ | src/6model/reprs/VMArray.c: Fix a couple of brainos in VMArray.c. There's still something broken in VMArray, but at least some of it seems to be working. |
|||
21:38
cognominal left
|
|||
dalek | kudo/md-nqp: 809cf09 | jnthn++ | src/ops/perl6.ops: Need to auto-thread shouldn't count as failure. Fixes auto-threading regression with NQP-based multi-dispatch. |
21:40 | |
kudo/md-nqp: c63943e | jnthn++ | src/Perl6/Ops.pm: Remove now-unused mappings. |
|||
kudo/md-nqp: baf8b44 | jnthn++ | src/ops/perl6.ops: Don't build error strings just to discard them. |
|||
rakudo/md-nqp: 3590914 | jnthn++ | src/Perl6/Metamodel/BOOTSTRAP.pm: | |||
21:44
cognominal joined
21:47
bruges joined,
cognominal__ joined
21:48
kaare__ left
21:49
bruges_ left
21:50
cognominal left
21:52
cognominal__ left
|
|||
timotimo_ | ooooh this is amazing :D | 21:52 | |
i'm trying to make a non-lta error message for when you have this: | 21:53 | ||
r: 1/2.''() | |||
p6eval | rakudo cee2f9: OUTPUT«Method '' not found for invocant of class 'Int' in block at /tmp/kQspxZlBkL:1» | ||
timotimo_ | and i was wondering why it wouldn't turn it into a proper error: | ||
r: try eval q{1/2.''()}; say $!.WHAT; | |||
p6eval | rakudo cee2f9: OUTPUT«(X::AdHoc)» | ||
timotimo_ | r: try eval q{1/2.'foobar'()}; say $!.WHAT; | ||
p6eval | rakudo cee2f9: OUTPUT«(X::Method::NotFound)» | ||
timotimo_ | turns out, this error comes from parrot or something and there's this regex match going on: nqp::p6box_s(nqp::atkey_s($parrot_ex, 'message')) ~~ /"Method '" (.+?) "' not found for invocant of class '" (.+)\'$/ | 21:54 | |
:D | |||
jnthn | haha! | ||
Well, it's close ;) | |||
We'll get typed exceptions for multi-dispatch failures soon, I expect | |||
timotimo_ | cool :) | 21:55 | |
in the mean time, i'll fix this regex to change + into * and make a test for that for roast | |||
22:01
SmokeMachine left,
not_gerd joined
|
|||
masak | timotimo_++ | 22:01 | |
not_gerd | o/ | ||
is there any reason why github.com/rakudo/rakudo/pull/110 shouldn't go in? | 22:02 | ||
it saves a WHOLE CHARACTER when forcing exact signature matches ;) | |||
| where !* -vs- *% where !* | |||
22:04
cognominal joined
|
|||
jnthn | Hm. I guess it makes Capture more consistent with Array and Hash... | 22:04 | |
not_gerd | my reasoning is that it's just another container | 22:05 | |
so false if undefined or empty, true otherwise | |||
timotimo_ | hm, were there failures in S32-exceptions/misc.t? i may have broken something. | 22:06 | |
ok 23 - '$&' died / not ok 24 - right exception type (X::Obsolete) / # Got: (X::Syntax::SigilWithoutName) / # Expected: (X::Obsolete) | 22:07 | ||
huh? | |||
ah, the latest roast-data commit isn't helpful, because it trips over the nonexisting Elsif exception :( | 22:10 | ||
22:12
spider-mario left,
bluescreen10 left
|
|||
timotimo_ | seems like my commits didn't break those. maybe i can find out where those failures come from, though | 22:14 | |
that could be nice | |||
oh, perhaps they come from a too old version of nqp? i should build a master nqp i suppose | |||
oh, i forgot to fudge | 22:15 | ||
that was kind of silly | |||
22:15
raiph left
|
|||
Ayiko | hi #perl6 | 22:21 | |
grondilu: I start my scripts with :::perl | |||
dalek | ast: cb80e7a | (Timo Paulssen)++ | S32-exceptions/misc.t: add a test for '' methods not found. |
22:23 | |
timotimo_ | pull request'd | 22:26 | |
dalek | kudo/nom: 103481f | (Timo Paulssen)++ | src/core/Exception.pm: raise X::Method::NotFound even for '' methods. |
22:29 | |
kudo/nom: 1c99395 | jonathan++ | src/core/Exception.pm: Merge pull request #117 from timo/typed_exc_empty_method raise X::Method::NotFound even for '' methods. |
|||
timotimo_ | oh, i made the whitespace uglier by accident | ||
oh well. | |||
22:30
zacts left
22:32
zacts joined
|
|||
dalek | kudo/md-nqp: 56f7059 | jnthn++ | src/ (2 files): Optimizer updates for NQP-based dispatcher. Will allow elimination of the MD thunk hack. |
22:36 | |
kudo/md-nqp: 73880dd | jnthn++ | / (7 files): Fully kill off MD thunks. Gets rid of 2 PMCs, 2 ops and an attribute in Routine. |
|||
22:36
PacoAir left
22:43
zacts left
|
|||
dalek | kudo/md-nqp: 3309f5f | jnthn++ | src/core/Stringy.pm: Fix a proto. |
22:43 | |
22:44
not_gerd left
22:47
skids joined
22:52
gdey left
22:58
davidagain left
|
|||
masak | 'night, #perl6 | 23:01 | |
23:11
Chillance left
23:13
cognominal__ joined
23:14
cognominal left
|
|||
grondilu | Perl6 changes for 2013W10 mentions: "Added colorcircumfixes." What the hell is this? | 23:18 | |
23:18
gdey joined
|
|||
grondilu | I mean, "color"? | 23:18 | |
jnthn | typo | 23:19 | |
shoulda said colon | |||
Also it makes it sound more than it is | |||
There's a parse rule in the grammar called coloncircumfix | 23:20 | ||
Which was incorporated. But it doesn't add much new, other than better error reporting. | |||
grondilu | it's not supposed to be used by a Perl6 user, is it? | ||
jnthn | For a very specific case. | ||
r: :<> | |||
p6eval | rakudo 1c9939: OUTPUT«Potential difficulties: Pair with <> really means an empty list, not null string; use :('') to represent the null string, or :() to represent the empty list more accurately at /tmp/oYku0bDXFV:1 ------> :<>⏏<EOL>» | 23:21 | |
jnthn | It's that error that was inaccurate before, I think. | ||
grondilu | ok | ||
sorear | jnthn: huh? I thought rakudo could parse sub infix:<+>($a,$b) { ... } since forever | ||
23:22
araujo left
|
|||
jnthn | sorear: It could | 23:22 | |
sorear: At some point, rather than colonpair calling circumfix directly, STD got a refactor so that it called coloncircumfix and that called circumfix. | 23:23 | ||
sorear: It was, afaict, done to prevent giving a misleading error. | |||
sorear: All I did was align Rakudo's grammar with STD so we got the better error message. That was the whole of the change. :) | 23:24 | ||
grondilu | Could I add OpenGL to the most wanted modules list or is it too optimistic? | 23:26 | |
tadzik | go ahed | 23:27 | |
sorear | even if it were outright impossible, that wouldn't eliminate the want | 23:28 | |
grondilu just did it | 23:29 | ||
One of these days I'd like to learn 3D programming, but I don't feel doing it with a boring programming language. I'd like to do it in perl6. | 23:30 | ||
23:31
alec__ joined
|
|||
timotimo_ | i believe it wouldn't be terrifically hard to implement opengl with zavolaj | 23:34 | |
it's a rather simple C API, just a big amount of constants and functions | |||
a good object-oriented (or at least assisted) binding, however, that could be trickier | |||
23:41
not_gerd joined
|
|||
not_gerd wonders if grondilu knows that Parrot comes with OpenGL bindings that used to (and possibly still does) work with Rakudo | 23:41 | ||
see eg github.com/parrot/parrot/blob/mast...riangle.p6 | 23:42 | ||
note that I removed these from the sixparrot branch last week | |||
23:46
cognominal__ left
23:48
cognominal__ joined
|
|||
jnthn | sleep & | 23:49 | |
dalek | kudo/md-nqp: 62817b8 | jnthn++ | src/binder/multidispatch. (2 files): Remove some now-unused code. |
||
kudo/md-nqp: 858cbe2 | jnthn++ | src/core/Stash.pm: Fix a wrong type constraint. |
|||
kudo/md-nqp: 6993950 | jnthn++ | src/Perl6/Metamodel/BOOTSTRAP.pm: Some more small optimizations. |
|||
23:50
not_gerd left
23:55
gdey left
|
|||
tadzik | jnthn++ # wonderful commit spree | 23:56 | |
23:56
davidagain joined
|
|||
davidagain | quick question: is there a tutorial or writeup on implementing a toy programming language in p6? | 23:57 | |
(not in nqp or anything, but directly on rakudo) | |||
23:57
Timbus|Away joined,
Timbus left,
Timbus|Away is now known as Timbus
|