»ö« 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. |
|||
TimToady | there's no jumping backward | 00:00 | |
and in the forward direction, it's just a set of conditionals | 00:01 | ||
if you really want a redispatch, arrange to re-enter the switch | |||
dalek | p: 4dd9166 | jnthn++ | src/ (2 files): Add a slot in the s-table for Parrot v-table mapped routines; we'll stash 'em by v-table index so the lookup should be fast. Also, marking. |
00:02 | |
00:02
kaare_ left
00:07
protorom joined
00:11
molaf_ joined
00:13
_twitch joined,
pmurias left
00:15
molaf left
|
|||
sorear | TimToady: so... no jumptable optimization in the forward direction? | 00:19 | |
TimToady: it bugs me that the jump data effectively has to be emitted twice | |||
00:26
Mowah left
|
|||
cognominal | jnthn, have you update the parrot version, trying to compile nqp, I get dyld: lazy symbol binding failed: Symbol not found: _PARROT_GC_WRITE_BARRIER | 00:30 | |
*updated | |||
Tene | jnthn: me too | 00:31 | |
jnthn | Hm | 00:32 | |
00:32
kaini left
|
|||
jnthn | Looks like bacek++ added the barrier writes and didn't bump it... :) | 00:32 | |
I know it works against a later revision so...moment. :) | 00:33 | ||
Tene | jnthn: all the adverb stuff in Perl 6 grates on me, fwiw. | ||
[Coke] | anyone able to help with an nqp-rx issue? trac.parrot.org/parrot/ticket/1886 | ||
dalek | p: 8fbefcc | jnthn++ | src/ops/nqp.ops: Add an op for publishing a set of Parrot v-table overrides. Resolves names to indexes once here, to avoid doing it every invocation. |
00:34 | |
p: 3e4373a | jnthn++ | src/metamodel/how/NQPClassHOW.pm: Implement support for adding Parrot v-table overrides to NQPClassHOW. Will need to somehow be marked Parrot-specific in the future. |
|||
p: 4f1fcec | jnthn++ | src/pmc/rakudoobject.pmc: Make get_[integer|number|string] overridable. More to come soon; it's just yak shaving now. Along with the patches that led up to this, it fixes the 52-vtable.t regression, mostly unblocks moving Match to 6model and a bunch of other good stuff. |
|||
p: d0df731 | jnthn++ | build/PARROT_REVISION: Bump to a newer Parrot that has the write barrier bits. |
00:35 | ||
jnthn | [Coke]: My only immediate guess is that String lives in the Parrot HLL and you are in a Tcl HLL, but I think the PMCs are visible from everywhere anyway so...hmm. | ||
00:35
rgrau left
|
|||
[Coke] | jnthn: sadly, this used to work, but broke some months ago. | 00:35 | |
jnthn | Ah :( | ||
cognominal | jnthn, that on Mac OS X 10.6.6 btw not that I think it is relevant | ||
*that's | |||
jnthn | cognominal: No, it's not. d0df731 should help you. | ||
[Coke]: Could look at if/how P6metaclass has changed but I'm not aware of any changes to it over the last several months. | 00:36 | ||
[Coke]: I'm guessing none of the v-tables one would expect it to inherit work? | 00:37 | ||
sorear | if it's just a matter of updating parrot, it ought to be bisectable | ||
dukeleto | parrot master currently does not have the generational_gc, just fyi | 00:39 | |
00:39
karupanerura joined
|
|||
jnthn | dukeleto: Right, but it does have the write barrier bits so the code stands a chance of working when generational_gc goes back in (hopefully soon, since it seems like an overall performance win). | 00:39 | |
dukeleto | jnthn: yes, just wanted to clarify in case some missed that drama | 00:40 | |
jnthn | dukeleto: I didn't backlog over it. | 00:41 | |
dukeleto | jnthn: we are planning to merge gen_gc2 just after the 3.1 release, iirc | ||
jnthn | dukeleto: Ah, OK, so soon. \o/ | ||
I'd have been disappointed if there were plans to hold it off for a long time. | 00:42 | ||
[Coke] begins the soul-crushing attempt to bisect this trac ticket. | |||
jnthn | But putting out at least one release with the write barrier code writable but not requried makes sense, I guess. | ||
[Coke] gets some whiskey to smooth things over. | |||
dukeleto | jnthn: generational_gc got merged to master a bit early, so we pulled it out and now it is called gen_gc2, and is getting more performance + stability improvements | ||
jnthn | OK :) | ||
dukeleto pours [Coke] three stiff drinks | 00:43 | ||
jnthn | I'm still being happy and surprised that it's so close. :) | ||
00:43
cognominal left,
cognominal joined
|
|||
dukeleto | jnthn: yes, it was merged with unoptimized register access, which was still a huge win on average, but made certain things much slower, so we unmerged it and are polishing it | 00:43 | |
[Coke] immediately gives up, as his first attempt is a sha that doesn't even build. | 00:44 | ||
jnthn | [Coke]: Looking at github.com/parrot/parrot/commits/m...object.pir it seems the last change to P6metaclass itself was in Sep 10, 2010. (One later change, but just removing svn $Id$ tags) | 00:45 | |
dukeleto | [Coke]: you need to tell your bisect script to ignore sha1's that don't build | 00:46 | |
00:47
icwiener left
|
|||
dukeleto | [Coke]: exit 125 | 00:47 | |
[Coke]: exit code 125 tells git "this code is bad, try another sha1" | |||
[Coke] | dukeleto: I do not have a bisect script. and so far I've had six different sha's fail. fun times. | 00:49 | |
00:50
MayDaniel left
|
|||
[Coke] | ... that is, I'm trying to find a single build I can mark as good. (so even if I had a script, it wouldn't help yet.) | 00:51 | |
dukeleto | [Coke]: go back far, to a release that worked | 00:53 | |
[Coke]: i.e. 2.0 or something | 00:54 | ||
[Coke]: or 1.0 :) | |||
[Coke]: writing a script to find a single revision that will build will definitely come in handy in the future | 00:55 | ||
[Coke]: github.com/dustin/bindir/blob/maste...t-sequence may be useful for you | 00:56 | ||
[Coke]: or github.com/leto/Util/blob/master/bin/git-exec | |||
[Coke]: you may have to tweak them, but 80% of the code is written for you | 00:57 | ||
jnthn | phenny: tell pmichaud in theory nom has just one test file regression over nqp-rx now. Need to discuss packages a bit with you before I know that one will be fixed. :) | ||
phenny | jnthn: I'll pass that on when pmichaud is around. | ||
jnthn | phenny: tell pmichaud oops, s/nom/nqp/ :) | ||
phenny | jnthn: I'll pass that on when pmichaud is around. | ||
[Coke] | jnthn++ | 00:58 | |
00:58
whiteknight joined
|
|||
jnthn | D'oh, my patch to NQPClassHOW totally ignored inheritance. :/ | 01:00 | |
Will fix tomorrow. :) | |||
sorear | so apparently I managed to write a heredoc dedenter that takes O(infinity) | ||
this is not quite as impressive as my exponential time line number calculator. but close! | 01:01 | ||
jnthn | sub heredoc-dedenter($stuff) { loop { } } # I bet yours was longer than this... :P | ||
sorear | It was actually more a case of s/^^ \s*//g | 01:02 | |
dalek | ecza: f47e045 | sorear++ | TODO: Add priority stuff to TODO |
01:06 | |
ecza: 5c5b2cc | sorear++ | / (3 files): Implement here document dedenting |
|||
jnthn -> rest | 01:09 | ||
01:14
shi left
|
|||
sorear | TimToady: ping | 01:17 | |
TimToady: consider "my @foo = (1,2,3); sub bar { @foo }; (bar)[0] = 5" | 01:21 | ||
TimToady: in Perl 5 this is an error; the return creates readonly copies of the array elements | |||
01:21
karupanerura left
01:22
karupanerura joined
|
|||
sorear | TimToady: does Perl 6 do the same thing? S06:2326 isn't entirely clear | 01:22 | |
01:49
jevin left
|
|||
dalek | ecza: 404eec8 | sorear++ | / (3 files): Implement $.foo, @.foo contextness |
02:01 | |
02:01
noganex joined
02:04
noganex_ left
02:17
risou joined
|
|||
dalek | ecza: f1018f8 | sorear++ | / (4 files): Implement %(pairs) and constant @foo = ... |
02:23 | |
02:35
felliott joined
02:37
arlinius left
|
|||
TimToady | sorear: that's what we call decontainerization, and p6 is supposed to do it too | 02:39 | |
02:39
arlinius joined
02:42
kst` is now known as kst
02:49
flatwhatson_ left
|
|||
sorear | TimToady: I don't really understand how it should work | 02:52 | |
TimToady: my @foo; sub get_list { @foo }; get_list.push(12) # Does this work? | 02:53 | ||
What is get_list.WHAT? | |||
02:56
kst left
|
|||
sorear | TimToady: if not-being-rw loses the Array-ness of the returned value, then I'm having trouble imagining how has @.foo could work | 02:57 | |
02:58
autark joined,
protorom left
03:00
SatoshiHayazaki joined
03:01
kanishka joined
03:02
whiteknight left
03:06
autark left
03:07
kanishka left
|
|||
TimToady | to the first approximation you're returning a Capture that is marked not to allow rw binding (unless the function is declared rw, of course) | 03:11 | |
03:23
kst joined
|
|||
colomon | Trying to figure out how to do a case insensitive string comparison in C/C++ is making me want to cry. | 03:30 | |
I mean, look at stackoverflow.com/questions/11635/c...rison-in-c | 03:31 | ||
"All you need to do is typedef a new string over basic_string, and provide it with your own custom char_traits that compare case insensitively." | 03:32 | ||
03:32
_twitch left
|
|||
colomon | I mean, it's bad enough to have to use a cascade of ifs where a simple given / when would do in p6. But to have to define a special function to do the string comparison? sigh. | 03:33 | |
sorear | TimToady: get_list[1] = 2 doesn't do any rw binding to the returned capture | 03:36 | |
03:43
masonkramer joined
03:46
dukeleto left
03:47
dukeleto joined
03:55
ryan_ is now known as rocketship
03:56
rocketship is now known as rdesfo
04:02
felliott left
04:23
Su-Shee_ joined
04:27
Su-Shee left
|
|||
dalek | ecza: de9656e | sorear++ | / (6 files): Implement callsame/callwith |
04:35 | |
04:40
dukeleto left
04:41
dukeleto joined
05:07
jevin joined
05:30
risou left
05:31
stifynsemons left
|
|||
dalek | ecza: 79b8cea | sorear++ | / (5 files): Change ? quantifier to not make a list THIS CHANGE WILL REQUIRE EXTENSIVE YAK SHAVING IN NieczaActions WHEN THE BOOTSTRAP IS NEXT UPDATED |
05:33 | |
05:36
stifynsemons joined
05:40
fith joined
05:43
stifynsemons left
05:51
kanishka joined
05:56
Chillance left
|
|||
dalek | ecza: a06dd3c | sorear++ | / (10 files): Mergeback and factor out OpHelpers/GetOptLong |
06:07 | |
06:19
dukeleto left,
benabik left,
dukeleto joined
|
|||
sorear | TimToady: Is there an explicit spec for "respects quotes in a shell-like fashion" (S02:3474), or do you want us to just emulate sh? | 06:24 | |
06:25
rdesfo left
|
|||
TimToady | just do sh for now | 06:29 | |
sorear | how much of sh? | ||
it seems a bit silly to emulate quote backslashing, for instance | |||
TimToady | mostly just single and double quotes | 06:30 | |
sorear | I could do " protects until ", ' protects until ' as a very simple case | ||
TimToady | "$foo" is one word, but bare $foo can split to multiple words | 06:31 | |
sorear | I guess only literal quotes count | ||
not \x22 or $var_with_quote | 06:32 | ||
is anyone using the "method postprocess" stuff in STD? I'd like to change it to a more useful form | |||
TimToady | yeah, we're not trying to do 582 levels of reparsing | ||
nah, postprocess is just a placeholder for a real implementation :) | 06:33 | ||
one could say that for most of STD :) | 06:34 | ||
06:40
envi joined
|
|||
sorear | Does q:x have any special quoting magic or is it just like run() of q ? | 06:57 | |
07:00
kanishka left
|
|||
TimToady | just run of q | 07:08 | |
p5's qx is more like qqx | |||
sorear | How shound it behave with list/item context? | 07:15 | |
Is <<">> an error? | 07:22 | ||
TimToady | not sure; would be nice not to slurp if we can be lazy | ||
probably error | |||
well, <<">>">> isn't :) | |||
sorear | You sure about that? | 07:23 | |
std: <<">>">> | |||
p6eval | std 625303c: OUTPUT«===SORRY!===Confused at /tmp/NIlVY5O5rg line 1:------> <<">>⏏">> expecting any of: POST bracketed infix infix or meta-infix postfix postfix_prefix_meta_operator statement modifier loopParse failedFAILED | ||
..00:01 120m» | |||
TimToady | if we can do it in one pass parsing, we probably should | ||
current behavior is rather p5esque there... | 07:24 | ||
that is to say, smelly | |||
sorear | ok. | ||
TimToady | might need to define yet another DSL there... | ||
sorear | it can probably just be done with escape:sym<"> and escape:sym<'> in ww1 | 07:25 | |
TimToady | if we make that easy to tweak, the people can pretty easily declare other shellish capabilities | ||
sorear | although that might make ww0 tricky | ||
yet another DSL? like how? | 07:26 | ||
TimToady | well, it's essentially an inside out language where normal text is autoquoted but has embedded constructs that are treated specially | 07:27 | |
TimToady waves hands vaguely | |||
sorear | I think you're thinking of $~Q | 07:28 | |
the only question is whether the user can somehow "augment" STD::Q::ww1 | 07:29 | ||
obviously they can't modify the role itself | |||
TimToady | yes, :ww is probably the name of the DSL in question, such as it is... | 07:34 | |
TimToady is too tired to keep it all quite straight in his brane tonight... | |||
with the postprocess stuff it gets a bit more function compositional and a bit less DSLy, but I still have suspections that we should avoid two-pass parsing whenever possible | 07:37 | ||
been burned by it too many times in p5 | |||
sorear | AFAICT qww *cannot* work on pure Str postprocessing | 07:38 | |
if it did, then $str eq '"' would mess up <<$str $str>> interpolation | |||
TimToady | ja | ||
sorear | right now I'm postprocessing ASTs | 07:39 | |
(and punting on qww for now) | |||
TimToady | is almost like bare $foo interpolates before .words-ish, then quotes are expanded | 07:40 | |
TimToady should probably hit the hay | 07:41 | ||
sorear | sleep well | ||
TimToady | お先に。。。 | 07:42 | |
thunk & | |||
07:46
justatheory left,
justatheory joined
07:50
justatheory left
|
|||
dalek | ecza: fa63713 | sorear++ | / (3 files): Enable parsing of qww et al, tweak STD postprocess methods |
07:57 | |
ecza: 1f02f87 | sorear++ | / (3 files): Implement qw[], overhaul postprocessing |
|||
sorear -> sleep | |||
moritz_ | good mroning | 08:05 | |
08:06
kaare_ joined
08:19
f00li5h left
|
|||
dalek | p: 4b8ac4f | bacek++ | src/ops/nqp.ops: Add more write barriers. |
08:23 | |
08:25
zby_home_ left
|
|||
dalek | p: 2cef296 | moritz++ | build/Makefile.in: cc_hasjit is gone, remove it from Makefile |
08:45 | |
09:02
flatwhatson_ joined
09:03
SatoshiHayazaki left
09:10
starcoder left
09:11
starcoder joined
09:23
satyavvd joined
09:36
Mowah joined
09:47
kjeldahl joined
09:54
protorom joined
09:56
araujo left
10:00
qiyong joined
10:03
shi joined
|
|||
dalek | ecza: c9e137b | pmurias++ | / (2 files): [cl-backend] added while |
10:13 | |
ecza: 4510adb | pmurias++ | simple-tests/ (2 files): [cl-backend] added missing files (tests) |
|||
10:21
qiyong left
10:22
qiyong joined
10:31
jvv left
10:35
satyavvd left
10:57
protorom left
11:03
coldhead left
11:09
colbseton joined
11:21
masak joined
|
|||
masak | bom dia, #perl6 | 11:21 | |
tadzik | dzień dobry | ||
masak | ;) | ||
moritz_ | good not-morning-anymore, masak and tadzik :-) | 11:22 | |
tadzik | morning, noon, it's the weekend! | ||
masak 's sleep e kass | |||
weekend dobry :P | 11:23 | ||
tadzik | :) | 11:24 | |
dalek | p: 20185cf | moritz++ | / (4 files): incorporate command line parser from github.com/moritz/nqp-cl-parser It is now built and tested along with nqp, but not yet used by HLL::Compiler |
11:26 | |
p: 47a56ec | moritz++ | src/HLL/CommandLine.pm: POD for HL::CommandLine |
|||
masak | wow, this is huge: manu.sporny.org/2011/public-domain-genome/ | 11:28 | |
11:29
kaini joined
|
|||
Tene | masak: I got my kit from 23andme a couple of days ago; I'm sending it back on Monday. | 11:33 | |
My gf got the results from hers back a couple of weeks ago; it's pretty fascinating. | |||
masak | ok, sounds like I should order one too, then. | 11:36 | |
11:37
MayDaniel joined
|
|||
Tene | It's $200 right now. When I got it for my gf back in December, it was $100. Before that, it was $400. Looks like they've done the $100 sale about once a year or so, if cost is an issue here. | 11:37 | |
github.com/msporny/dna/pull/1 is pretty hilarious | 11:38 | ||
11:40
whiteknight joined
|
|||
masak | Tene: :) | 11:41 | |
11:43
Su-Shee_ is now known as Su-Shee
|
|||
moritz_ | are there any public tools that help you analyze your DNA? | 11:44 | |
Tene | 23andme doesn't give a full dna sequencing, just a dump of abot 10M SNPs | 11:46 | |
The best place to get information on these SNPs is snpedia.com/ | |||
I'm pretty sure there are some open-soruce tools to pull info from snpedia | |||
masak | I wonder if it'd be worth developing a Perl 6 tool or two for analyzing those SNPs. | 11:51 | |
11:52
_jaldhar_ left,
_jaldhar_ joined
|
|||
moritz_ | isn't that what bioperl6 is for? | 11:54 | |
masak | one might hope. | 11:56 | |
I was thinking a bit more short-term than that, though. | 12:05 | ||
12:07
Rotwang joined
|
|||
moritz_ had the impression that bioperl6 actually existed, though maybe only partially | 12:08 | ||
masak | I really don't know much about its status at all; should ask pyrimidine at some point. | 12:09 | |
dalek | p: 8f27940 | moritz++ | src/HLL/CommandLine.pm: [commandline] get rid of an attribute |
||
p: 69f3951 | moritz++ | src/cheats/nqp-builtins.pir: ok() is now a bit closr to what TAP expects (descriptions instead of comments) |
|||
Rotwang | hi, is there some lwp module for perl6? | 12:10 | |
moritz_ | nqp: for pir::split('|', "foo") { say($_) } | ||
p6eval | nqp: OUTPUT«foo» | ||
moritz_ | Rotwang: yes. See modules.perl6.org/ | ||
Rotwang | moritz_: can't find it there | 12:11 | |
there are some modules to create web apps | |||
moritz_ | Rotwang: it's right there, perl6-lwp-simple | ||
Rotwang | moritz_: thanks [; | 12:12 | |
must have overlooked it | |||
moritz_ | happens :-) | ||
Rotwang | by the way perl6 is sooo different than perl5 | ||
and terribly complicated | 12:13 | ||
Su-Shee | ignore the complicated part, you can program it like an improved p5 easily and without bad concsious :) | 12:14 | |
12:14
pmurias joined
|
|||
pmurias | hi | 12:15 | |
masak | pmurias: \o | ||
Rotwang: what Su-Shee said. the simple bits are actually simpler. :) | |||
pmurias | any papers i should load on my kindle to make a 5hour train journey more interesting? | ||
masak | pmurias: bananas in space? | ||
12:17
araujo joined
|
|||
masak | pmurias: irclog.perlgeek.de/perl6/2011-02-11#i_3279701 for good resolution, apparently. | 12:17 | |
Rotwang | btw. is perl grammars named from computability theory? | ||
pmurias | you mean formal grammars? | ||
Rotwang | yes | ||
masak | Rotwang: I think "grammar" is a fairly established concept in CS. | 12:18 | |
Rotwang | so in the essence perl grammars are more powerful than regexes? | ||
or are they just regexes in fancy form? | |||
masak | they are regexes with better syntax, and OO inheritance. | 12:19 | |
Su-Shee | I think of grammars as a description of a ruleset to parse "stuff". and that I can inherit it. | 12:20 | |
masak | the underlying regex engines look a bit different too, but that's nothing that necessarily affects the user, except through silent benefits :) | ||
pmurias | Rotwang: perl6 grammars as much more powerfull than CS regular expressions | 12:21 | |
Su-Shee | Rotwang: aren't you one of the gtk-perl developers? | 12:22 | |
Rotwang | Su-Shee: no, im just using it | ||
Su-Shee | "damn" :) I was just going to ask for gtk3 ;) | 12:23 | |
Rotwang | [; | ||
Su-Shee | Rotwang: anyways. don't be afraid of perl6, it just looks like it bites, behind its teeths it's very fluffybunny. | 12:24 | |
Rotwang | Su-Shee: yeah it looks awesome, but it is hard to learn I think | 12:27 | |
moritz_ | why do you think that? | ||
you don't need to know everyhting about parameterized roles and macros if you just want to parse a text file | 12:28 | ||
you can still use split() and regex matches | |||
tadzik | oh hi Rotwang | 12:29 | |
Rotwang: the only hard thing imho is that there are plenty of differences from Perl 5, the Perl 6 itself is imho equally easy, or hard. It has many, many new things, yes, but they tend to be more straightforward than Perl 5 things | 12:31 | ||
Su-Shee | Rotwang: no, it just looks that way. | ||
Rotwang: you really can ignore two thirds of the shiny stuff and use it as a cleanup version of perl5, basically just using classes and changing -> to . | 12:32 | ||
Rotwang: a little of the sugar here and there, and that's perfectly fine perl 6 for us common folks. | |||
tadzik | Plus some of the difficult things are not yet implemented anyway | 12:33 | |
Su-Shee | Rotwang: and how to use roles you'd read up at moose and smalltalk. | 12:34 | |
Rotwang: that's my perl6. :) | |||
colomon | moritz_: heck, you don't need to know everyhting about parameterized roles and macros to do major work on the compiler! | 12:39 | |
Rotwang | [; | 12:41 | |
dalek | p: 90092d0 | moritz++ | / (2 files): [commandline] implement | option aliases |
12:42 | |
jnthn | oh hai o/ | ||
moritz_++ # hacking on nqp \o/ | |||
colomon wishes his schedule was free enough to help with nqp... | 12:43 | ||
12:45
kaydsoft left
|
|||
moritz_ could use lives_ok and dies_ok in nqp | 12:49 | ||
jnthn | If nqp got module support, it could just have a Test.pm :) | ||
dalek | p: bc69ca5 | moritz++ | src/HLL/Compiler.pm: "revision" is now always 1, use git_describe instead |
12:52 | |
12:58
felliott joined
13:13
MayDaniel left,
felliott left
13:17
pmurias left
13:25
felliott joined
13:28
felliott left
13:39
risou joined
13:43
drbean left
13:51
risou left
13:55
colbseton left
13:56
colbseton joined
13:57
risou joined
14:02
colbseton left
14:06
skangas left
14:11
skangas joined,
skangas left,
Chillance joined
14:18
lakshman left
|
|||
moritz_ | nqp: my %h; %h<a> := 1; say("alive") | 14:33 | |
p6eval | nqp: OUTPUT«alive» | ||
14:36
MayDaniel joined
|
|||
masak | I just saw "Inception" for the second time. anyone else drawn the parallel between Limbo and the Bottom type ⊥? :) | 14:41 | |
moritz_ | masak: NERD | 14:42 | |
sorry, had to say that :-) | |||
masak | moritz_: :P | 14:43 | |
that whole film caters to the nerd stereotype, at least as much as does 'the Matrix'. | 14:44 | ||
tadzik | The „shame they didn't do sequels” Matrix? ;) | ||
masak | yeah. | ||
jnthn | nqp: say(KnowHOW.HOW.name(KnowHOW)) | 14:45 | |
p6eval | nqp: OUTPUT«Null PMC access in find_method('HOW')current instr.: '_block11' pc 0 (EVAL_1:4)» | ||
masak | normal people leave the movie theater saying "ok, I think I followed... kinda... sometimes... it was complicated." -- computer scientists leave the movie theater saying "do you see NOW what I'm having to deal with at work?" | ||
jnthn | nqp: say proto sub foo() { * } | ||
p6eval | nqp: OUTPUT«Confused at line 1, near "say proto "current instr.: 'parrot;HLL;Grammar;panic' pc 635 (src/cheats/hll-compiler.pir:206)» | ||
jnthn | Ah. | ||
moritz_ | jnthn: the 'nqp' target is still really nqp-rx | ||
I should change that. | |||
jnthn | moritz_: Yeah, that's what I was checking :) | ||
moritz_ | how do I translate .lex '$?FILES', $P0 to nqp? | 14:46 | |
my $?FILES := ... ? | |||
jnthn | Yeah, provided it parses it. | ||
moritz_ | I feared that you might say that :-) | 14:47 | |
masak | ooh, and they're playing Édith Piaf in the credits -- subtly signalling "time to wake up (from the movie)"! | ||
moritz_ | masak: I liked that too :-) | ||
masak | not sure I grok'd that the first time around. | ||
jnthn | moritz_: Well, could always make it parse it. :) | 14:49 | |
moritz_ | :-) | 14:50 | |
jnthn | std: my $?FILES := "foo"; | ||
14:50
JodaZ joined
|
|||
p6eval | std 625303c: OUTPUT«ok 00:01 121m» | 14:50 | |
jnthn | Of course, it should only be bound at "compile time". :) | ||
14:52
risou left
|
|||
masak | next step, I guess, would be to understand how the code in github.com/karthick18/inception/bl...nception.c works. | 14:53 | |
15:04
masonkramer left,
masonkramer joined
15:26
risou joined
|
|||
sorear | good * #perl6 | 15:27 | |
masak | *, sorear | ||
I'd like to know what can be done at present, if one were to read in the SNP information released by msporny, and correlated it with known public information about SNPs. | 15:28 | ||
I'd like things such as "blue eyes", "curly hair" to fall out. | |||
15:29
Axius joined
15:33
stifynsemons joined
|
|||
sorear | TimToady: true or false? when 1 { ...; proceed }; when 2 { ... }; when 3 { ... }; # requires a chain of comparisons in *addition* to the jump table, for handling proceed? | 15:33 | |
masak thinks so | 15:35 | ||
the jump table is basically a "cache" for speeding up the normal case, no? | |||
sorear | I guess | 15:36 | |
masak | and any number of situations can invalidate that cache. | ||
I guess sufficiently complicated 'when' expressions might, too. | |||
or having a mix of normal statements and 'when' expressions. | 15:37 | ||
or gotos :) | 15:38 | ||
std: given rand { when * < .1 { ... }; loop { when .1 < * .3 { ... } }; default { ... } } | 15:39 | ||
p6eval | std 625303c: OUTPUT«===SORRY!===Missing block at /tmp/ZD6xBQ5wk1 line 1:------> when * < .1 { ... }; loop { when .1 < * ⏏.3 { ... } }; default { ... } } expecting any of: bracketed infix infix or meta-infixParse failedFAILED 00:01 121m» | ||
masak | std: given rand { when * < .1 { ... }; loop { when .1 < * < .3 { ... } }; default { ... } } | ||
p6eval | std 625303c: OUTPUT«ok 00:01 120m» | ||
masak | Perl 6 is cool just for the mischievousness allowed by the liberal way things fit together :P | 15:41 | |
15:44
am0c joined
|
|||
masak is writing the p4 post now | 15:56 | ||
15:58
Axius left
16:03
Axius joined
16:05
Axius left
16:06
lakshman joined
16:11
HaraldJoerg joined
16:15
Patterner left
16:16
zby_home_ joined
16:17
Psyche^ joined,
Psyche^ is now known as Patterner
16:23
sftp left
16:26
Bzek joined
16:28
felliott joined
16:34
qiyong left
16:36
kaini left
16:44
sftp joined
16:49
sftp left,
felliott left,
kaini joined
|
|||
moritz_ watches the planetsix feed for news | 16:53 | ||
rakudo: say $*FILE | 16:54 | ||
p6eval | rakudo : ( no output ) | ||
moritz_ | rakudo: say $?FILE | ||
p6eval | rakudo : OUTPUT«===SORRY!===Symbol '$?FILE' not predeclared in <anonymous> (/tmp/bZmLqtBwOT:22)» | ||
moritz_ | rakudo: say $?FILES | ||
p6eval | rakudo : OUTPUT«===SORRY!===Symbol '$?FILES' not predeclared in <anonymous> (/tmp/tmLLuDezV7:22)» | ||
moritz_ | rakudo: say $*FILES | 16:55 | |
p6eval | rakudo : ( no output ) | ||
16:56
sftp joined
17:00
sftp left
|
|||
masak | moritz_: I might get done today, but no promises. :) | 17:03 | |
17:04
sftp joined
|
|||
masak | I need to re-run the all-against-all harness, because it didn't capture the results correctly, and I was careless enough not to check that at the beginning. | 17:04 | |
dalek | p: 14ff770 | moritz++ | src/HLL/Compiler.pm: rewrite HLL::Compiler.evalfiles in nqp |
17:11 | |
arnsholt | masak: Sounds familiar | 17:23 | |
'Cept in my case it was experiments for my master's of course =) | |||
masak | :) | 17:28 | |
17:29
karupanerura left
|
|||
dalek | p: 0bbd0c9 | moritz++ | src/HLL/Compiler.pm: remove debugging output that I accidentally left in |
17:33 | |
p: f481aab | moritz++ | src/HLL/Compiler.pm: rewrite addstage in nqp. Not yet tested, because it is not actually called in nqp. Tough beans. |
|||
jnthn | moritz_: These patches are nice to see. :-) | 17:38 | |
dalek | p: 30d842b | jnthn++ | src/stage0/ (4 files): Update bootstrap to include Parrot v-table support in NQPClassHOW. |
||
p: 5c5e80a | jnthn++ | src/Regex/Cursor.pir: Add v-table mapping for Bool method in Cursor, in order to rip out a special case hack. |
|||
p: 97c3955 | jnthn++ | Configure.pl: Optimized build seems to work out fine on Win32, so do one. |
|||
17:46
blaze_ joined
|
|||
blaze_ | sup all | 17:47 | |
17:47
blaze_ left
|
|||
moritz_ | \o | 17:48 | |
masak | some people seem to have extraordinary expectations on the speed of replies. | 17:49 | |
moritz_ | hm? | 17:53 | |
arnsholt | Drive-by IRC | 17:55 | |
moritz_ | ah, I /ignore joins and quites | ||
*quits | |||
masak | quite. | ||
17:58
envi left
|
|||
moritz_ | hm; integrating my command line parser with the other methods in HLL::Compiler seems harder than originally thought | 17:59 | |
arnsholt | Heh. My master's work has taught me all kinds of practical skills. Who'da thunk it? =D | ||
dalek | p: 873f08a | moritz++ | src/HLL/Compiler.pm: improve an error message |
18:00 | |
moritz_ | nqp: try { pir::die('foo'); CATCH { say($_) } } | 18:21 | |
p6eval | nqp: OUTPUT«foo» | ||
dalek | p: 25c26a4 | moritz++ | / (2 files): use pure-nqp command line parser I don't know why, but it it regresses on "-o filename". However --output=filename still works. |
18:22 | |
p: 1d68f30 | moritz++ | t/hll/05-commandline.t: add a reduced case for the -o regression. The test does not exhibt the bug, so it is mostly useless :( |
|||
18:23
masonkramer left
|
|||
moritz_ | nqp: try { pir::exit(0) }; say("foo"); | 18:26 | |
p6eval | nqp: ( no output ) | ||
arnsholt | masak: Speaking of which. I now got about 30% into my experiment before I realised the Makefile didn't actually save the scores for each fold in the experiment. FML =) | 18:30 | |
moritz_ | nqp: for [1, 2, 3] -> $x { say($x) } | 18:31 | |
p6eval | nqp: OUTPUT«123» | ||
masak | arnsholt: could be worse. could've been 70%. | ||
arnsholt | Good point =) | ||
It could also be on the big dataset, where a full experiment takes a day, rather than an hour or two =) | 18:32 | ||
In the meantime, I guess I'll try to put more words in my thesis | 18:34 | ||
frettled | «Blah blah blah conjecture blah blah blah»? | 18:35 | |
frettled is helpful, as always. | |||
arnsholt | Indeed =D | 18:36 | |
frettled | arnsholt: break a pen! | ||
arnsholt | Heehee. Thanks =) | ||
masak | I conjecture that half a pen is more difficult to write with than a whole one. | ||
arnsholt | I conjecture that it is irrelevant, since my writing is done on a keyboard O:) | 18:38 | |
18:38
MayDaniel left,
BinGOs_ joined
|
|||
Rotwang | how to install perl6 module? | 18:38 | |
there are no makefiles | |||
frettled | iConjecture? | ||
18:38
BinGOs left
|
|||
moritz_ | Rotwang: for example with neutro | 18:42 | |
Rotwang | $ perl6 | 18:45 | |
Segmentation fault | |||
\:D/ | |||
moritz_ | Rotwang: what did you install? how? and did you read the README? | ||
Rotwang | today is a bad day for doing perl stuff for me | ||
18:48
cjk101011 joined,
cjk101010 left
18:50
HaraldJoerg left
18:51
[particle] left
|
|||
moritz_ | nqp: try { pir::die("foo"); CATCH { say($_.severity) } } | 18:54 | |
p6eval | nqp: ( no output ) | ||
moritz_ | nqp: try { pir::die("foo"); CATCH { say($_); say($_.severity) } } | ||
p6eval | nqp: OUTPUT«fooMethod 'severity' not found for invocant of class 'Exception'Method 'severity' not found for invocant of class 'Exception'Method 'severity' not found for invocant of class 'Exception'Method 'severity' not found for invocant of class 'Exception'Method 'severity' not found fo… | ||
moritz_ | nqp: try { pir::die("foo"); CATCH { say($_); say($_<severity>) } } | ||
p6eval | nqp: OUTPUT«foo2» | ||
18:56
kfo_ joined
18:59
kfo left
19:01
kfo joined
19:02
ymasory joined,
kfo_ left
19:06
shi left
19:13
am0c left
19:25
mberends joined
|
|||
masak | mberends! \o/ | 19:26 | |
sorear | hi! | 19:27 | |
moritz_ | good * everybody | ||
mberends back from a nice 2 week break in Slovenia and Croatia :-) Hi everyone! | 19:28 | ||
moritz_ | I just tried to port method command_line to nqp... what a mess | 19:29 | |
I think I bit off more than I can chew | |||
jnthn | mberends: Hi! | 19:33 | |
mberends: Wow, break location win! :D | |||
moritz_ | it's an intangible mess | ||
jnthn | moritz_: Ouch. | 19:34 | |
moritz_: I found that sometimes it can be easier to port it bit-by-bit to NQP, using Q:PIR { ... } for some bits as a half-way step. | |||
moritz_: Dunno if that's easy/possible for what you're doing though. | |||
19:34
dukeleto left
19:35
dukeleto joined
|
|||
moritz_ | jnthn: I know; but that method has big jumps forwards related to exception handling... | 19:35 | |
jnthn | Ah | ||
moritz_ | and I don't quite know yet how to attack it | ||
there's some part that I can probably rewrite, but not much | |||
jnthn | moritz_: Note that Q:PIR gets embedded directly in the output and is not in a nested block, so labels are visible between them, if they're in the same NQP-level block. | 19:38 | |
moritz_ | that kinda scares me. | ||
dalek | p: 105de53 | jnthn++ | src/stage0/ (4 files): Another re-bootstrap needed to finally kill the get_bool hack. |
||
p: f90cc86 | jnthn++ | t/nqp/52-vtable.t: Tests for v-table inheritance. |
|||
p: f191cd2 | jnthn++ | src/metamodel/how/NQPClassHOW.pm: Get v-table override inheritance/overriding to work. |
|||
p: 83b8fca | jnthn++ | src/metamodel/how/NQPClassHOW.pm: Fix a thinko. |
|||
p: fbfe364 | jnthn++ | src/stage0/ (3 files): Push Parrot v-table override inheritance updates into the bootstrap. |
|||
p: a3d9dff | jnthn++ | src/pmc/rakudoobject.pmc: Rip out the get_bool hack - it's just a normal Parrot v-table override now. Should be faster. Also, looking over the way Parrot does it, I suspect that 6model may now be able to dispatch PIR-level v-table overrides somewhat faster than Parrot's Class/Object PMCs. :-) |
|||
19:39
dukeleto left
19:40
dukeleto joined
19:44
dukeleto left,
alester joined,
zby_home_ left
19:45
dukeleto joined
19:48
Sarten-X left
19:49
dukeleto left
|
|||
moritz_ | nqp: Q:PIR { .local pmc a } Q:PIR { a = 3 }; say("alive") | 19:49 | |
p6eval | nqp: OUTPUT«Confused at line 1, near "Q:PIR { .l"current instr.: 'parrot;HLL;Grammar;panic' pc 635 (src/cheats/hll-compiler.pir:206)» | ||
moritz_ | nqp: Q:PIR { .local pmc a }; Q:PIR { a = 3 }; say("alive") | 19:50 | |
p6eval | nqp: OUTPUT«Null PMC access in set_integer_native()current instr.: '_block11' pc 0 (EVAL_1:4)» | ||
moritz_ | nqp: Q:PIR { .local pmc a }; Q:PIR { a = box 3 }; say("alive") | ||
p6eval | nqp: OUTPUT«alive» | ||
19:50
dukeleto joined
19:54
shi joined,
dukeleto left,
MayDaniel joined
|
|||
dalek | p: 5c5b494 | moritz++ | src/HLL/Compiler.pm: rewrite parts of command_line in nqp |
19:55 | |
p: 9d325a2 | moritz++ | src/HLL/Compiler.pm: restore proper usage messages |
|||
p: b350f28 | moritz++ | src/HLL/Compiler.pm: start to port method command_line to nqp |
|||
19:55
dukeleto joined
19:56
Sarten-X joined
|
|||
moritz_ | I think I'll leave the rest of command_line alone for today. | 19:58 | |
20:05
coldhead joined
|
|||
jnthn | moritz_: :) | 20:08 | |
moritz_: Happy to see progress on it. | |||
moritz_ | jnthn: I'll leave the rest to the poor soul that ports the stuff to other compilers :-) | 20:11 | |
jnthn | :P | 20:13 | |
20:16
nadim_ joined,
nadim left
|
|||
Rotwang | I rebuilt parrot without optimization and now rakudo does not segfault | 20:25 | |
masak | aww. | ||
so my prejudice that --optimize causes segfaults is reaffirmed. | 20:26 | ||
sorear | jnthn: hi. | ||
jnthn | sorear: o/ | 20:27 | |
sorear | jnthn: I asked TimToady about how return should handle ro-ness in cases like my @x = (1,2,3); sub foo { @x }; foo[1] = 5; | ||
He gave some inscrutible answer about ro capture flags | |||
can you help me understand this? | |||
jnthn | Erm. :) | 20:28 | |
sorear: What TimToady's expectation that the above would work, or fail? | 20:29 | ||
sorear | jnthn: fail. | 20:30 | |
jnthn | Oh. Mine was that it would work. | ||
I could understand foo() = ...; not working | |||
allbery_b | as I understand it, unless you declare the sub as "is rw" it returns the same kind of read-only values as perl5 does | 20:31 | |
jnthn | But I don't understand how the ro-ness would somehow propagate downwards into the data structure. | ||
allbery_b | (captures being the mechanism in perl6) | ||
jnthn | sorear: Unless some kind of decontainerization happens to arrays. Somehow. | 20:32 | |
sorear | allbery_b: that code fails in Perl 5 though | 20:33 | |
jnthn | sorear: Anyway, I don't have an answer really, sorry. I think this has come up before and I can't recall a clear answer yet on exactly how the decontainerization bits works. | ||
moritz_ | I guess it will need a semi-shallow copying | ||
sorear | jnthn: TimToady has this crazy idea that returns use _captures_ | 20:34 | |
jnthn | moritz_: something like that maybe. But will need some care to not hash up laziness, I guess. | ||
sorear: Huh. | |||
sorear | return $x isn't very interesting | ||
jnthn | sorear: I thought it was settled long, long ago | ||
sorear | I'm more interested in stuff like return ($x, $y) | 20:35 | |
jnthn | That it's a Parcel | ||
sorear | What sort of parcel does that return? | ||
And how deeply does it decontainerize? | |||
jnthn | return $x # returns a Parcel of one item really but a single-item Parcel is the same as the item, so in Rakudo we never build it | ||
return ($x, $y) # is just a normal Parcel | |||
At the moment we don't do any decontainerization because I don't think the spec has been really fleshed out enough there, and nobody hs had chance to explore the area and try something yet. | 20:36 | ||
sorear | Please explain what you mean by that sameness | 20:38 | |
dalek | p: 2255560 | bacek++ | src/ops/nqp.ops: Fix write barrier in updating method_cache |
||
sorear | rakudo: say (2,) + (2,) | ||
p6eval | rakudo : OUTPUT«2» | ||
sorear | rakudo: say 2 + 2 | ||
p6eval | rakudo : OUTPUT«4» | ||
20:41
molaf__ joined
20:42
molaf_ left
|
|||
Rotwang | one more question, any ide for perl6? | 20:43 | |
moritz_ | Rotwang: padre | 20:44 | |
Rotwang | but please don't say vim | ||
moritz_ has resisted | |||
Rotwang | moritz_: thanks [; | ||
moritz_ wonders why Rotwang's mouth has rectangular corners | 20:45 | ||
sorear | jnthn: I'd like to know what you mean by "a parcel of one item is the same as the item" | 20:46 | |
it's certainly not true in niecza or rakudo, and I have trouble imagining how any model that identified them could sanely handly hyper assignment | |||
*handle | 20:47 | ||
Rotwang | moritz_: it's easier to type than '(' | ||
jnthn | sorear: return ($x) and return $x are equivalent though, afaik. | 20:50 | |
moritz_ | jnthn: what libraries does a script need to load to use the 6model in nqp? | 20:51 | |
sorear | jnthn: of course, the parens do nothing | 20:56 | |
($x) is the same as $x | |||
($x,) however is not | |||
20:56
HaraldJoerg joined
|
|||
HaraldJoerg | January distribution of Rakudo * | 20:56 | |
moritz_ | HaraldJoerg: hello. What about it? | 20:58 | |
jnthn | moritz_: Needs to have the dynops and dynpmcs loaded, and probably nqp.pbc at the moment, but I want to break out the meta-object stuff into a library of its own. | ||
HaraldJoerg | Just confirming what Rotwang wrote, with some hope that there's a workaround. | 20:59 | |
Rotwang | Helios: I only rebuilt parrot 3.0.0 | ||
moritz_ | jnthn: nqp.pbc helped | 21:00 | |
thanks | |||
dalek | p: f6b7f76 | moritz++ | t/p6regex/01-regex.t: make p6regex tests runnable again |
21:05 | |
sorear pokes jnthn | 21:09 | ||
21:09
felliott joined
|
|||
jnthn | sorear: I think I was mis-remembering from an earlier way things worked. I don't see anything in the spec that supports any deeper single-item Parcel === the single item stuff in there now. | 21:13 | |
I'm sure I remember implementing some magic along that line way back, but I think it all got tossed when lists were re-done in Rakudo to be the current way. | 21:14 | ||
So, ignore. :) | |||
21:15
felliott left
21:22
felliott joined,
jevin left
21:24
jevin joined
21:28
felliott left
21:34
BinGOs_ is now known as BinGOs
21:35
BinGOs left,
BinGOs joined
21:36
shi left
21:39
clkao left
21:40
molaf__ left
21:43
Bzek left,
shi joined
21:44
Bzek joined
21:45
dorlamm joined
21:49
Bzek left
21:50
[particle] joined,
Bzek joined
21:52
dorlamm left
|
|||
lue | hello zebras o/ | 21:55 | |
21:55
sorear left
21:56
sorear joined
21:57
MayDaniel left
22:02
risou left
22:05
kjeldahl left
22:07
TH14 joined
22:08
TH14 left
22:09
obra joined
22:17
kaare_ left
22:18
clkao joined
22:21
Mowah left
22:24
Trashlord left
22:29
kaini left
|
|||
masak | hola, lue. | 22:31 | |
22:38
alester left
22:40
drbean joined
22:41
protorom joined
22:49
stifynsemons left
22:53
Kovensky left,
Kovensky joined
22:54
stifynsemons joined
23:00
PacoLinux left
|
|||
masak | colomon: so... I'm basically done writing the p4 post. except for your second submission, which (1) plays perfectly as far as my interrogation techniques have been able to determine so far, and (2) is a beast to read and understand. :P | 23:13 | |
I don't think I can publish until I've made a some progress on either of those fronts. | 23:14 | ||
23:17
wolverian left
23:20
Bzek left
23:22
protorom left,
Bzek joined
|
|||
masak | 'night, #perl6 | 23:24 | |
23:24
masak left
23:27
Bzek left,
Bzek joined
23:34
wolverian joined
23:38
nadim__ joined,
nadim_ left,
coldhead left
23:39
coldhead joined
23:48
felliott joined
23:49
HaraldJoerg left
23:58
Rotwang left
|