»ö« 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. |
|||
lue | #| means Pod6 declarator block (there's also #= , which used to be the only way to write them) | 00:01 | |
timotimo | i think i was missing a my. | ||
00:01
MikeFair left
|
|||
timotimo | well, i know i was missing a my, but it seems like that caused the slowdown | 00:02 | |
oh, it may very well have been my levenshtein code that took uber long to find something? | |||
i mean the setting is quite huge | |||
probably has an insane amount of blocks | 00:03 | ||
00:03
marloshouse joined
|
|||
timotimo | i should really see to it that it aborts quicker. | 00:11 | |
good thing people don't seem to use rakudo overnight dP | 00:13 | ||
:P | |||
at least not such fresh rakudos | |||
00:20
MikeFair joined
00:22
PacoAir left
00:35
MikeFair left,
CiNNiki joined
00:39
MikeFair_ joined
00:43
fgomez left
00:44
fgomez joined
|
|||
dalek | ast: 0acfc00 | (Timo Paulssen)++ | S32-exceptions/misc.t: a test for X::Parameter::InvalidType. |
00:45 | |
01:04
Chillance left
01:35
stevan_ left
|
|||
timotimo | levenshtein slowed down compilation immensely. tge "abort search" return value was not being honored | 01:36 | |
sloeed it down when there was an error only, of course | |||
now I'm commuting and i really want to continue working | 01:37 | ||
hacking rakudo is very pleasant once you know what goes where | |||
01:45
For-Odin joined
01:59
FROGGS_ joined
02:02
FROGGS left
|
|||
timotimo | i'm hopelessly confused. when i throw a X::Undeclared during compilation, the program justcontinues on (apparently forever), using up one full cpu core. what might i be doing wrong? | 02:45 | |
sorear | If you want it to use both CPU cores, you'll need to run more than one instance of Rakudo, perhaps using make -j | 02:46 | |
timotimo | haha | 02:47 | |
it would be splendid to use more than one core to compile CORE.setting | |||
timotimo distributed debug-say-statements in World::typed_exception | 02:50 | ||
02:53
CiNNiki left
02:59
FROGGS__ joined
|
|||
timotimo | it seems to be endless-looping in the .new of some exception. | 03:02 | |
03:02
FROGGS_ left
03:14
Pleiades` left
03:16
araujo left
03:21
Pleiades` joined
03:32
For-Odin left
03:36
thou joined
03:39
orafu left,
orafu joined,
simcop2387 left
03:41
simcop2387 joined
|
|||
lue would like to improve nqp's memory usage to speed up CORE.setting | 03:53 | ||
swarley | Can I use recursion in a token definition like this? pastebin.com/2k2P8uSU | 03:56 | |
Oh, wait that's probably not what I want | |||
Never mind. | |||
TimToady | recursion is fine if you make progress | 03:57 | |
swarley | Well looking at it again, it would match \\\\\\\\\\u0013 | ||
TimToady | nodnod | 04:01 | |
swarley | Also, I have a question about the behavior of this (it's in the skeleton generated from mk_language) | 04:02 | |
proto token quote { <...> } | |||
token quote:sym<'> { <?[']> <quote_EXPR: ':q'> } | |||
Does that call an action as well? | |||
Or, can it be made to? | |||
Actually, I'm more confused about the syntax in general | 04:04 | ||
TimToady | one can supply a class that, if it has the same method name, provides the action for that method | 04:06 | |
in smaller parser, one generally just embeds the action in a block | |||
<...> is obsolescent though; nowadays one would just use a body of {*} | |||
swarley | It seems as if it's also using an internal default lexical pattern to match against the strings. Since that doesn't appear to be much of a regular expression. | 04:08 | |
04:09
autumn joined
|
|||
TimToady | there's a method quote_EXPR somewhere, probably | 04:09 | |
autumn | and I here am | ||
TimToady | a little early this year, aren't'cha? | ||
swarley | Ah. I would use it, I'm just concerned as to whether or not it would allow for all of the things ruby allows for within its strings. I suppose I'll have to write my own methods to handle them. | 04:10 | |
I just wanted to see if I was doing more work than was necessary. | |||
TimToady | I don't know much about rakudo quote parsing, having only done it STD's way | ||
autumn | ah I would like to know the identity of the person who thought it brilliant to abbreviate 'standard' to 'STD' | 04:11 | |
swarley | I might look in it to see, I would look at ruby's source, but it doesn't use a lexer actually. It has a specially coded lexer so it's not very easy to tell what it's doing actually. | 04:12 | |
Very cryptic code. All of it being embedded within parser.y | |||
TimToady | autumn: that would be me :) | ||
autumn | swarley: hi. | ||
swarley | hi. | ||
TimToady | it's not just a pun on venereal diseases, of course, but also STDOUT and such | 04:13 | |
autumn | TimToady: I mean the general usage q: | 04:14 | |
not merely within Perl's domain | |||
TimToady | oh, well, back in the day, compilers tended to be limited to, like, six character identifiers, so some of the, er, standard abbreviations stuck around | 04:15 | |
timotimo | because holding on to old things is always good! :) | ||
swarley | I feel that turning this collection of tokens into a full grammar is going to be a week of pain for me. | 04:16 | |
timotimo compiles and spectests his branch again, then pullrequests and then finally goes to bed | |||
swarley doesn't have $250 to pay for the ISO specification that has the exact grammar definition | |||
timotimo | going to be able to close one more ticket :D | ||
er, i already clicked "send pull request", so the "it also passes the spectests!" in it is ... "optimistical"/"a lie" | 04:17 | ||
sorear | swarley: which ISO spec do you want? | ||
swarley | Ruby's ISO. | 04:18 | |
timotimo | TimToady: did you see rakudo got a few nicer error messages than STD does? :) | ||
sorear | ah, not one I have :/ | ||
swarley | There was a draft available for a while, but the server is locked now | ||
sorear | you should check other standards organisations. | ||
timotimo | swarley: how about visiting a nearby university library or something? i've seen ISO folders in ours (locked behind glass doors, of course) | ||
TimToady | timotimo: STD was meant primarily to be a good example (except where it's a bad example...) | ||
sorear | ECMA has mirrors of quite a few ISO and ANSI documents | ||
and the mirrors are often free when then originals aren't | 04:19 | ||
swarley | Hm, that might be a good idea. | ||
Because www.iso.org/iso/home/store/catalogu...mber=59579 is quite ridiculous | |||
Nothing on ECMA | 04:21 | ||
As far as I can tell. | |||
timotimo | All tests successful. - github.com/rakudo/rakudo/pull/98 would love to see this accepted when i wake up tomorrow/today :) | 04:22 | |
r: my $Frob = "frobby frob"; say $frob; | |||
p6eval | rakudo 5a895b: OUTPUT«===SORRY!===Variable '$frob' is not declared. Did you mean '$Frob'?at /tmp/G0RcV_WxW8:1------> my $Frob = "frobby frob"; say $frob⏏; expecting any of: postfix» | ||
timotimo | r: my @arr = 1, 2, 3; say $arr[1]; | ||
p6eval | rakudo 5a895b: OUTPUT«===SORRY!===Variable '$arr' is not declared. Did you mean '@arr'?at /tmp/udCVHJ0WtJ:1------> my @arr = 1, 2, 3; say $arr[1]⏏; expecting any of: postfix infix or meta-infix infix stopper sta… | ||
04:23
preflex left
|
|||
timotimo | r: class TimToady is Callabel { }; | 04:23 | |
p6eval | rakudo 5a895b: OUTPUT«===SORRY!==='TimToady' cannot inherit from 'Callabel' because it is unknown.Did you mean 'Callable'?at /tmp/8O77X5w1h8:1------> » | ||
timotimo feels like he contributed something | |||
TimToady | timotimo++ | ||
autumn | r: timotimo++; | ||
p6eval | rakudo 5a895b: OUTPUT«===SORRY!===Undeclared routine: timotimo used at line 1» | ||
timotimo | ttyl :] | ||
04:23
preflex joined
|
|||
autumn | r: $timotimo = 1; $timotimo++; | 04:23 | |
p6eval | rakudo 5a895b: OUTPUT«===SORRY!===Variable '$timotimo' is not declaredat /tmp/9RXq69B04a:1------> $timotimo⏏ = 1; $timotimo++; expecting any of: postfix» | ||
timotimo | r: say spit("timotimo", "t") | 04:24 | |
p6eval | rakudo 5a895b: OUTPUT«===SORRY!===Undeclared routine: spit used at line 1. Did you mean '&split'?» | ||
timotimo | hm, i wonder... | ||
r: my $Frob = "frob"; say "frob is $frob"; | |||
p6eval | rakudo 5a895b: OUTPUT«===SORRY!===Variable '$frob' is not declared. Did you mean '$Frob'?at /tmp/18lVM9xstW:1------> my $Frob = "frob"; say "frob is $frob⏏"; expecting any of: postfix» | ||
timotimo | oh, that's cool | ||
r: say "there is &UC("FOO") to be done!" | 04:25 | ||
p6eval | rakudo 5a895b: OUTPUT«===SORRY!===Undeclared name: &UC used at line 1» | ||
timotimo | r: say "there is &uC("FOO") to be done!" | ||
p6eval | rakudo 5a895b: OUTPUT«===SORRY!===Undeclared name: &uC used at line 1» | ||
timotimo | hm. that one's still missing. oh well. | ||
TimToady | need to collect names from outer scopes maybe? | ||
diakopter | r: class TimToady is Stingry { }; | 04:27 | |
p6eval | rakudo 5a895b: OUTPUT«===SORRY!==='TimToady' cannot inherit from 'Stingry' because it is unknown.Did you mean 'Stringy'?at /tmp/pLVpFWvQbm:1------> » | ||
diakopter | r: class TimToady is Fallafle { }; | 04:28 | |
p6eval | rakudo 5a895b: OUTPUT«===SORRY!==='TimToady' cannot inherit from 'Fallafle' because it is unknown.Did you mean 'Callable'?at /tmp/nuSx66n0fy:1------> » | ||
04:43
sizz_ joined
04:44
sizz left
04:49
grondilu joined
|
|||
grondilu | Shouldn't there be an "inclusive" form for heredocs? I mean, where the extracted string contains the end delimitor? | 04:51 | |
could be useful when you want to quote a doc that already has a delimitor, like an ASCII-armored PGP message for instance. | 04:52 | ||
dalek | kudo/nom: bebe8f9 | (Timo Paulssen)++ | src/Perl6/World.pm: abort after finding 20 results of any quality. |
05:04 | |
kudo/nom: d8df9e5 | (Timo Paulssen)++ | src/Perl6/World.pm: factor out suggest_typename |
|||
kudo/nom: 0fd030a | (Timo Paulssen)++ | src/ (2 files): added X::Parameter::InvalidType with suggestions. |
|||
kudo/nom: 22e7c10 | (Timo Paulssen)++ | src/Perl6/World.pm: abort after 1000 fails, too. |
|||
kudo/nom: 933d422 | (Timo Paulssen)++ | src/Perl6/World.pm: actually abort after 1000 tries now. |
|||
kudo/nom: 84271dd | (Timo Paulssen)++ | src/core/ (2 files): Throw Inheritance::SelfInherit. |
|||
kudo/nom: 8356157 | (Will Coleda)++ | src/ (4 files): Merge pull request #98 from timo/levenshtein More Levenshtein stuff:types in parameters. code cleanups. Self-Inherit error. |
|||
[Coke] | timotimo++ | 05:05 | |
05:10
For-Odin joined
05:12
For-Odin left
|
|||
swarley | I have no idea how I would begin to make C plugins for ruby able to access the parrot process like they do other ruby interpreters | 05:19 | |
05:25
grondilu left
05:32
autumn left
06:02
For-Odin joined
06:29
vividsnow joined
06:32
quester joined
06:37
am0c joined
06:38
sevin joined
06:50
araujo joined,
araujo left,
araujo joined
07:07
Pleiades` left
07:13
Pleiades` joined
07:18
For-Odin left
07:21
kaare__ joined
|
|||
swarley | What does <.term> signify? | 07:31 | |
[Coke] | timotimo++ # again; this is very awesome. | 07:32 | |
the . means "don't capture" | 07:33 | ||
<term> is the perl6 rule for a term identifier. | |||
swarley | Oh, what is a term identifier? | 07:34 | |
Actually, I see term redefined in this file | |||
What is a \h escape? | |||
[Coke] | ah, I assumed term was a builtin. if you have a method/regex/rule for term locally, it's that, sure. | 07:35 | |
\h is horizontal whitespace. | |||
perlcabal.org/syn/S05.html is a good place to look up syntax, btw. | |||
I need to sleepnow | |||
swarley | oh good i was looking for a more unified documentation | 07:36 | |
07:38
sevin left
07:42
SamuraiJack joined
08:01
am0c left
|
|||
moritz | \o | 08:02 | |
08:04
SamuraiJack left
08:22
rindolf joined
|
|||
nwc10 | sadly it seems to have a somewhat Less Than Awesome side effect *currently*, that I don't know how to fix | 08:23 | |
in that, one can't build Rakudo with nqp's master. | |||
specifically, the setting. | 08:24 | ||
Stage start : 0.000elements() not implemented in class 'Mu' | |||
current instr.: 'create_container_descriptor' pc 17240 (src/gen/perl6-symboltable.pir:6246) (src/Perl6/World.pm:1133) | |||
called from Sub 'declare_param' pc 99536 (src/gen/perl6-actions.pir:35781) (src/Perl6/Actions.pm:3056) | |||
... | |||
oh, naughty terminal. There is newline after 0.000, before elements() not implemented in class 'Mu' | |||
(that's on an x86_64 Linux box with a lot of RAM) | 08:25 | ||
08:35
snearch joined
08:53
MikeFair___ joined,
MikeFair_ left
08:54
quester left
09:00
PacoAir joined
09:02
am0c joined
09:03
vividsnow left
|
|||
moritz tries to reproduce | 09:10 | ||
09:18
FROGGS__ is now known as FROGGS
|
|||
FROGGS | morning | 09:18 | |
tadzik | good morning | 09:22 | |
rindolf | Morning. | ||
tadzik | nwc10: oh, on my box that becomes a segfault somehow | ||
rindolf | tadzik: what's up? | ||
FROGGS: what's up? | |||
tadzik | rindolf: segfaults :P | ||
rindolf | tadzik: segfaults. | 09:23 | |
Be one with the segfault. | |||
moritz also gets 'elements() not implemented in class 'Mu'' | 09:25 | ||
tadzik | are you all on debugging builds? | ||
09:25
am0c left
|
|||
moritz isn't | 09:25 | ||
tadzik | hrm | ||
I must be simply unlucky :) | |||
moritz doesn't see a single call to .elements or nqp::elems or so around the line the backtrace points to | 09:29 | ||
FROGGS | rindolf: just trying to wake up | 09:31 | |
rindolf | FROGGS: wake up hard. Sleep hard. | 09:34 | |
09:36
nyuszika7h left
09:39
snearch left
|
|||
nwc10 | tadzik: I get a SEGV on OS X | 09:39 | |
but the OS X machine has much less ram | |||
tadzik | I've got ~4G here | ||
nwc10 | OS X has ~4G, but is using some of it | 09:40 | |
x86_64 Linux box I have access to has 64G. | |||
09:46
Patterner left
09:47
Psyche^ joined
09:48
Psyche^ is now known as Patterner
|
|||
moritz | it would be helpful if somebody bisected it | 09:49 | |
09:56
MayDaniel joined
|
|||
rindolf | nwc10: nice! | 10:00 | |
GlitchMr | I | ||
I've a small problem - the Levenshtein refuses to work now | |||
rindolf | nwc10: I ran a Freecell solver on an HPC cluster with some nodes that had 512 GB of RAM. | ||
GlitchMr | I'm trying everything. It doesn't work. | 10:01 | |
r: Split "a" | |||
rindolf | nwc10: x86-64. | ||
p6eval | rakudo 835615: OUTPUT«===SORRY!===Undeclared name: Split used at line 1» | ||
GlitchMr | It worked before github.com/rakudo/rakudo/pull/98 | ||
rindolf | nwc10: well, I did it by proxy. | ||
nwc10 | does the Levenshtein thingy have tests? | 10:02 | |
GlitchMr | No | ||
nwc10 | ah. | ||
GlitchMr | Oh wait, it does | ||
github.com/rakudo/rakudo/pull/98 | |||
nwc10 | aha, better :-) | ||
GlitchMr | The problem with the tests is that they are SKIPPED when the first basic test fails | 10:06 | |
r: try eval('my $foo = 10; say $Foo'); say ?$!.^can(<suggestions>) | |||
p6eval | rakudo 835615: OUTPUT«True» | ||
GlitchMr | Or perhaps they work... | ||
r: say $?PERL | 10:07 | ||
p6eval | rakudo 835615: OUTPUT«===SORRY!===Variable '$?PERL' is not declaredat /tmp/oYJas8qrLF:1------> say $?PERL⏏<EOL> expecting any of: postfix» | ||
GlitchMr | r: class TimToady is Stingry { }; | 10:09 | |
p6eval | rakudo 835615: OUTPUT«===SORRY!==='TimToady' cannot inherit from 'Stingry' because it is unknown.Did you mean 'Stringy'?at /tmp/6ljA_jmxR_:1------> » | ||
10:10
jaldhar left,
jaldhar joined
|
|||
GlitchMr | Found the bug | 10:10 | |
It seems that function arguments are ignored during the check | |||
r: sub blah(@variabul) { $variabul[1] }; say blah [1, 2, 3, 4]; | 10:11 | ||
10:11
nyuszika7h joined
|
|||
p6eval | rakudo 835615: OUTPUT«===SORRY!===Variable '$variabul' is not declaredat /tmp/Fd30JUlmFZ:1------> sub blah(@variabul) { $variabul[1]⏏ }; say blah [1, 2, 3, 4]; expecting any of: postfix infix or meta-infix infix stopper… | 10:11 | |
GlitchMr | r: sub blah(@variabullll) { my @variabul = @variabullll; $variabul[1] }; say blah [1, 2, 3, 4]; | 10:12 | |
p6eval | rakudo 835615: OUTPUT«===SORRY!===Variable '$variabul' is not declared. Did you mean '@variabul'?at /tmp/IHa__wLNjj:1------> y @variabul = @variabullll; $variabul[1]⏏ }; say blah [1, 2, 3, 4]; expecting any of: postfix infix or… | ||
GlitchMr | This should be fixed | ||
10:14
xinming_ joined
|
|||
diakopter | GlitchMr: what's wrong with it? | 10:16 | |
GlitchMr | It doesn't hint variables when they are function arguments. | 10:17 | |
diakopter | hint? | ||
GlitchMr | Normally, I should receive 'Did you mean '@variabul'?' | ||
10:17
xinming left
|
|||
GlitchMr | But I don't when @variabul is function argument. | 10:18 | |
10:18
eternaleye_ joined
|
|||
diakopter | oh I see | 10:18 | |
10:19
zby_home_ joined
|
|||
GlitchMr | Hi, zby_home_ | 10:19 | |
10:21
zostay left,
eternaleye left
|
|||
nwc10 | found *which* bug? the origin of the SEGV or Mu error? Or the "it's not reporting correctly" that you described eralier? | 10:26 | |
GlitchMr | It doesn't say 'did you mean' | 10:35 | |
jnthn wonders if the SEGV is due to an NQP change or a Rakudo one | 10:40 | ||
tadzik | nqp | 10:41 | |
I bisected rakudo, all on nqp master, and it was segfaulting even in december revisions | 10:42 | ||
jnthn | elements() not implemented in class 'Mu' | ||
yup, got it here too | |||
10:44
Pleiades` left
|
|||
FROGGS | I dont get it and my nqp is: This is nqp version 2013.01-9-g769044f built on parrot 4.10.0 revision RELEASE_4_10_0 | 10:46 | |
10:46
Pleiades` joined
|
|||
jnthn | oh... | 10:49 | |
FROGGS | ... in case I need to force this bug to happen somehow | 10:50 | |
*dont* | |||
jnthn | FROGGS: No, you're doing the Sensible Thing and building the NQP in NQP_REVISION. | ||
moritz | NQP 2013.01-9-g769044f blows up | ||
erm no, 2013.01-15-g2a13778 blows up | 10:51 | ||
jnthn | I figured out wha tit is. | ||
FROGGS | jnthn: yes, I always checkout the revision given by rakudo/tools/... | ||
moritz | so no need to bisect nqp? | ||
jnthn | Last night's round of changes extended the repr API | ||
And so to run on latest NQP needs an update in the Rakudo repo too | 10:52 | ||
Bisecting will most likely reveal that bb9778 is the one to blame. | 10:55 | ||
masak | good forenoon, #perl6 | 10:56 | |
jnthn | Anyways, working on updating Rakudo for this stuff | ||
o/ masak | |||
rindolf | masak: hi. | ||
FROGGS | masak! \o/ :o) | ||
rindolf | masak: what's shaking? | ||
masak | rindolf: breakfast. | ||
rindolf | masak: nice. | 10:57 | |
10:57
spider-mario joined
|
|||
rindolf | masak: what are you having for b-fast? | 10:57 | |
moritz wonders what kind of breakfast shakes | |||
jnthn | moritz: Breakfast eaten during a gentle earthquake. | ||
Su-Shee | moritz: a strawberry or banana milk shake | ||
rindolf only had Pitah bread with Hummus. | |||
masak | fried bacon, fried egg, a few hazelnuts and some brie cheese. :) | 10:58 | |
Su-Shee | I had porridge | ||
masak: excellent choice. | |||
rindolf | masak: sounds good. Fancy. | ||
FROGGS | porridge++ | ||
masak | yeah, I like this breakfast. | ||
Su-Shee | masak: though I hate smelling of fried bacon in the morning.. no breakfast for "after the shower" | ||
FROGGS | I can eat that every morning | ||
rindolf | It was Hummus that we bought from the supermarket - nothing too fancy. | ||
moritz had some left-over skuffe kake for breakfast | |||
FROGGS | and (full scottish breakfast)++ | 10:59 | |
Su-Shee | moritz: now you're showing off with your wife's dishes ;) | ||
moritz | Su-Shee: and why not? it was tasty :-) | ||
Su-Shee | moritz: AND US? | ||
ok, I have koenigsberger klopse for lunch in the kitchen :) | 11:00 | ||
FROGGS | skuffe kake? it's not like shortbread, no? | ||
moritz | Su-Shee: there's other cake left-overs here.. drop by to try them :-) | ||
phenny: no en "skuffe"? | |||
phenny | moritz: "bucket" (no to en, translate.google.com) | ||
moritz | phenny: nb en "skuffe"? | ||
phenny | moritz: "bucket" (no to en, translate.google.com) | ||
moritz | more like drawer, afaict | 11:01 | |
masak | Su-Shee: huh. haven't thought much about bacon smell getting stuck on a person... | ||
Su-Shee | masak: one of the most sticky smells after cooking.. | ||
moritz | FROGGS: it's a flat chocolate cake, suitable form to be stored in a drawer :-) | 11:02 | |
Su-Shee | moritz: IKEA CAKE | ||
FROGGS | moritz: like rührkuchen in flat? | ||
moritz | Su-Shee: nah, ikea is Swedish :-) | ||
FROGGS: yes | 11:03 | ||
FROGGS | k, that settles it ;o) | ||
Su-Shee | if I had money thought the very first thing I'd want is getting served great breakfast - with everything I'm too lazy to do every day - a bowl of fruit salad for example. | ||
nwc10 | not disputing that, but I thought that Ikea was also a closely held Dutch registered non-profit, for the purposes of not paying anyone tax. | ||
Su-Shee | moritz: bah, obviously flat cakes transpire ;) | ||
FROGGS | we made rainbow cake yesterday, for my sons birthday (with smarties and chocolate letters) | ||
moritz | FROGGS: you're missing something by not drooping by tomorrow :-) | ||
FROGGS | moritz: ya ò.ò | 11:04 | |
ó.ò | |||
Su-Shee | I have soudough bread in the making. :) | ||
moritz | we need to make food&perl6 hackathon someday :-) | ||
FROGGS | btw, for my birthday there is always "death by chocolate" | 11:05 | |
ohh ya | |||
tadzik | so, when is this German hackathon? :) | ||
FROGGS | food++ => good | ||
jnthn | ooh, a German hackathon? :) | ||
FROGGS | tadzik: I'd vote for feb, so I dont need to wait so long | 11:06 | |
11:06
Su-Shee_ joined
|
|||
FROGGS | but where? | 11:06 | |
moritz | FROGGS: a friend of mine (experimental physicist, I should add) did some thorough experimental analysis of how much chocolate you can add to the dough before it collapses | ||
jnthn | moritz, nwc10: Think I've got a working fix. | ||
11:06
Su-Shee left,
Su-Shee_ is now known as Su-Shee
|
|||
moritz | jnthn: \o/ | 11:06 | |
FROGGS: well, I toyed with the idea of making one at my place | |||
so, Fürth | |||
tadzik | FROGGS: 2nd half of Feb would be fine with me | 11:07 | |
Su-Shee | moritz: haha. that assumes that you need to have something like a dough ;) | ||
jnthn | It was on my todo list for today to update Rakudo to take advantage of the changes, but I'd not quite realized they'd break ability to build on NQP master... | ||
tadzik | FROGGS: and the easter the better, if you know what I mean :) | ||
Su-Shee | moritz: you can bake a mix of beaten eggs and chocolate and sugar. | ||
moritz | heh, easter is an interesting option | 11:09 | |
I'll have to check with $wife | |||
FROGGS | it is... easter might work | ||
11:09
thou left
|
|||
tadzik | er, I mean on the east | 11:09 | |
eastern germany | |||
geographically-wise | |||
FROGGS | moritz: there a CHECK stage in Wife.pm? | ||
ahh | |||
well, would be okay for me ;o) | |||
jnthn will not be in this part of the world during this easter | 11:10 | ||
moritz | :( | ||
GlitchMr | rn: gist.github.com/4577858 | 11:11 | |
p6eval | rakudo 835615: OUTPUT«===SORRY!===Undeclared routine: binary_search used at lines 2, 10, 11. Did you mean '&binary-search'?» | ||
..niecza v24-18-gaf64300: OUTPUT«===SORRY!===Undeclared routine: 'binary_search' used at line 2,10,11Unhandled 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 @… | |||
jnthn | moritz: Already had vacation planned at easter for a while, and I'll be in big trouble if I choose a hackathon over it :) | 11:12 | |
dalek | kudo/nom: 3c4fd0f | jnthn++ | / (2 files): Update 6model header and bump NQP_REVISION. This tracks the REPR API change, and will allow Rakudo to make use of it (will happen in future commits). |
||
kudo/nom: 2752787 | jnthn++ | tools/build/Makefile.in: Add missing dependency. |
|||
tadzik | so, end of Feb? | 11:14 | |
FROGGS | fine for me | ||
who would like to come in general? | |||
tadzik | me | ||
\o/ | |||
FROGGS | me from berlin, moritz from nuremberg# | ||
Su-Shee from where? | |||
tadzik | berlin I think | ||
GlitchMr | gist.github.com/4577858 | 11:15 | |
I should stop using Jekyll for my blog | |||
tadzik | well, end of Feb is almost march, which is almost GPW | ||
GlitchMr | Because making 10 commits until syntax highlighting works is crazy | ||
FROGGS | well, I dont mind if I had to travel a bit, but if ppl will come by plain, it would be crap for them if we would do it in Leipzig or so | ||
jnthn | Late Feb is probably workable here. | 11:16 | |
moritz | like, 18th or 25th? | ||
tadzik | 25 more like | ||
(for me | |||
jnthn | 256h is far better | ||
tadzik | or maybe 23-24? | 11:17 | |
jnthn | We have a speaking tour at $dayjob 20th-22nd | ||
Su-Shee | FROGGS: from where what? | ||
tadzik | duh | ||
moritz | tadzik: weekend would be much more workable for me | ||
FROGGS | Su-Shee: where do you live? (if you are interesting to come to a p6hackaton) | ||
tadzik | moritz: yeah, same here | ||
jnthn | Which'll tie myself and masak up. But I could probably fly to Germany on 22nd evening. | ||
tadzik | studying full time and working half time doesn't favour the middle of the week :) | ||
moritz | oh dammit, I was looking at the calendar for 2012 | 11:19 | |
Su-Shee | FROGGS: Berlin, Germany. | ||
moritz | good morning moritz, it's 2013 now! | ||
tadzik | good moritz morning :) | ||
Su-Shee | seems the wife cake didn't really help the brain.. ;) | ||
moritz | Su-Shee: it's no therapeutic cake :-) | 11:20 | |
Su-Shee | EVERYTHING WITH CHOCOLATE IS THERAPEUTIC :) | ||
FROGGS | even the counselor on the enterprise eats chocolate for that reason | 11:21 | |
Su-Shee | exactly. | 11:22 | |
tadzik | Troi? | ||
FROGGS | right | ||
Su-Shee | tadzik: yes. | ||
FROGGS | jnthn / masak: to what city do you fly to cheapest? | 11:23 | |
if Berlin would be an option... would be cool | |||
Nuremberg is a bit off though ó.ò | |||
Su-Shee | tadzik: there's a scene where she order something like a triple whatever chocolate icecram with chocolate sauce etc etc and the replicator answers "this doesn't confirm to the starfleet standard health whatever" - I'm waitin when this happens in supermarkets :) | ||
tadzik | yay, I understand Star Trek references :) | 11:24 | |
Su-Shee | FROGGS: generally when it comes to flying the best option in germany is frankfurt. | ||
FROGGS | Su-Shee: she asked it to make a real chocolate ice-cream thingy | ||
_real_ | |||
tadzik | Su-Shee: ha-ha | ||
eh, that looks a bit ironic. It's not :) | |||
moritz | eeks. I just looked into my calendar, and I have small teeth surgery on Feb 21st | 11:25 | |
and it's not clear how well I'll be on the weekend afterwards :( | |||
FROGGS | eeks, indeed | ||
tadzik | :( | ||
Su-Shee | q: I'm hungry and in a bad mood. data: I've observed that counsellor troi eats chocolate icecream when she is in a bad mood. q: I take 5. :) | ||
FROGGS | Q ordered 10 | 11:26 | |
Su-Shee | FROGGS: *sigh* yes, that was totally the point.. he ordered 1 | ||
10 | |||
FROGGS | "I never ate, I am very hungry" | ||
tadzik | q, like the shapeshifter guy? | ||
playing games etc? | 11:27 | ||
Su-Shee | tadzik: the shapeshifter guy is Odo in DS9. Q is the omnipotent being in TNG | ||
tadzik | yeah, TNG | ||
well, the clotheshifter then :) | |||
FROGGS | Q is even not his name, all of them are Q | ||
hehe, ya | |||
Su-Shee | tadzik: man, get an education ;) | ||
11:28
daniel-s joined
|
|||
tadzik | I was mostly right :) | 11:28 | |
FROGGS | tadzik: we'll teach all the important stuff when you are here | ||
;o) | |||
like recognizing the klingon background music | 11:29 | ||
tadzik | hehe | ||
looking forward to it | |||
11:29
huf left
|
|||
tadzik | the star wars soul is dying :P | 11:29 | |
and all because of laziness | |||
moritz | since Q is omnipotent, he/it can also shapeshift | 11:30 | |
so tadzik wasn't all too wrong, no? | |||
:-) | |||
FROGGS | but Q never did that, at least not in front of a cam | ||
moritz | maybe just shy :-) | 11:31 | |
FROGGS | hehe | ||
maybe | |||
moritz | I mean, we usually don't change in front of the camera either :-) | ||
FROGGS | hmm, I would do it if I could | 11:32 | |
tadzik | :D | ||
11:32
simcop2387 left
|
|||
FROGGS | flying to work like a condor or so | 11:32 | |
the problem might be the heavy laptop there | |||
tadzik | there is this TV ad in Poland recently, about paying with your phone | 11:33 | |
moritz | .oO( UPS express shipping ) |
||
tadzik | it's full of naked people who are paying for everything with their phones | ||
the slogan being "you don't have to carry anything", or something of this sort | |||
I can't help but wonder, where do they stick up their phones ;_; | |||
FROGGS | *g* | ||
sorear | where did star wars come in? | 11:34 | |
FROGGS | ya, a nokia 3310 would work, but what about these huge smartphones?? | ||
tadzik | maybe that's one of those societes which always carries a phone in their hand, no matter what | ||
11:34
simcop2387 joined
|
|||
tadzik | sorear: from me, being a liberal SF fan, and liking both Star Wars and Star Trek :) | 11:34 | |
sorear | ok, just so long as you don't try to claim they're the same :p | 11:35 | |
tadzik | hehe, no :) It's mostly Films vs Books comparison | ||
under the assumption that Star Wars films are negligible | 11:36 | ||
FROGGS | tadzik: I like star wars too | ||
(and lord of the rings _and_ harry potter) | |||
tadzik | *gasp* | ||
FROGGS | :o) | ||
and simpsons _and_ southpark ages ago | 11:37 | ||
I'm sooo tolerant *g* | |||
moritz | FROGGS: or you just have no taste :-) | 11:38 | |
FROGGS | no, cant be the reason :o) | 11:39 | |
moritz | jnthn++ # fix rakudo for newest nom | 11:49 | |
s/nom/nqp/ | |||
dalek | ast: 53c8fe6 | moritz++ | S32-list/pick.t: RT #109586: Range.pick entropy |
11:51 | |
11:51
vividsnow joined
|
|||
jnthn finds a great way to slow Rakudo down lots | 11:53 | ||
diakopter | ? | ||
jnthn | diakopter: Think I accidentally busted meth cache publication while refactoring :) | ||
diakopter | I'll bust your meth cache | ||
tadzik | seems like Rakudo is breaking bad | 11:54 | |
jnthn | *method o.O | ||
diakopter | you accidentally the publication | 11:55 | |
11:58
huf joined
|
|||
nwc10 | jnthn++ # works on my machine again | 12:00 | |
12:00
b1rkh0ff joined
|
|||
dalek | kudo/nom: 35b2a92 | jnthn++ | / (4 files): Start using new REPR compose protocol. |
12:01 | |
nwc10 | was that premature of me? :-) | 12:02 | |
tadzik | jnthn++ commits faster than I compile :) | ||
jnthn | nwc10: No, the previous set of commits were the fix to the build breakage. | ||
moritz | tadzik: you should let your computer doe the recompilation for you :-) | ||
jnthn | nwc10: That latest one is me starting to take advantage of the refactor :) | ||
tadzik | but it doesn't segfault now :) | ||
moritz: oh, right, I may want to try that :) | |||
12:02
aindilis left
12:03
aindilis joined
12:09
vividsnow left
12:18
Vlavv left
12:23
vividsnow joined
12:48
hds_w joined
13:27
kivutar joined
13:36
Pleiades` left
13:38
sergot_ left,
masak left
13:39
[Coke] left,
Util left
13:40
PerlJam left
13:41
Pleiades` joined
13:43
Juerd joined
13:44
dalek joined,
ChanServ sets mode: +v dalek,
p6eval joined,
ChanServ sets mode: +v p6eval
13:45
sergot joined,
Util joined,
[Coke] joined,
pmichaud joined,
PerlJam joined
13:46
tadzik joined
13:47
hugme joined,
ChanServ sets mode: +v hugme,
awwaiid left
|
|||
dalek | p-jvm-prep: 0d9bfae | jnthn++ | src/org/perl6/nqp/sixmodel/ (2 files): Eliminate some warnings. |
13:49 | |
p-jvm-prep: 7d67dbe | jnthn++ | src/org/perl6/nqp/sixmodel/SerializationReader.java: Fix incorrect read. |
|||
p-jvm-prep: 85ebe29 | jnthn++ | src/org/perl6/nqp/sixmodel/SerializationReader.java: Add some missing reader functionality. |
|||
p-jvm-prep: 9ed3774 | jnthn++ | src/org/perl6/nqp/sixmodel/reprs/P6Opaque.java: Implement P6opaque REPR data deserialization. |
|||
13:51
vividsnow left
13:54
kivutar left,
Chillance joined
14:08
mikemol left
14:09
masak joined
14:12
vividsnow joined
14:31
am0c joined
14:42
phenny joined
|
|||
timotimo | moritz: i can take a probably somewhat comfortable train ride to fürth(bay)hbf. how is accomodation handled? are we sufficiently few people so that your floor is enough? :P | 14:49 | |
moritz | timotimo: I have space for about 3 people (provided two of them share a bed, 140cm wide) | 14:50 | |
and maybe a fourth if he is willing to sleep on the floor directly | |||
timotimo | hm, that seems a bit clumped | ||
if tadzik, su-shee, jnthn and froggs come, that's already maxed out | 14:51 | ||
moritz | maybe I can organize some friends where others can sleep | ||
tadzik | moritz: I don't mind the floor | 14:52 | |
14:52
mikemol joined
|
|||
moritz | ok, now we still need to find a date | 14:54 | |
I guess I'll start a doodle | |||
timotimo | r: class Hackathon is Hackathon { has $.fun; has @.cake; has %.beer; }; | 15:03 | |
p6eval | rakudo 35b2a9: OUTPUT«===SORRY!==='Hackathon' cannot inherit from itself.at /tmp/mwSYrzuYTv:1------> » | ||
15:03
b1rkh0ff left
|
|||
tadzik | r: class Hackathon is Kachathon { has $.fun; has @.cake; has %.beer; }; | 15:10 | |
p6eval | rakudo 35b2a9: OUTPUT«===SORRY!==='Hackathon' cannot inherit from 'Kachathon' because it is unknown.Did you mean 'Hackathon'?at /tmp/tZPxi0v02Q:1------> » | ||
timotimo | oh, well that's not helpful :P | ||
tadzik | it's helpful enough, i guess :) | 15:11 | |
timotimo | got enough bugs and holes in my code to last me all day | ||
masak | timotimo++ | ||
timotimo | r: class Foobar is Barfoo { } | 15:12 | |
p6eval | rakudo 35b2a9: OUTPUT«===SORRY!==='Foobar' cannot inherit from 'Barfoo' because it is unknown.at /tmp/XhiGbgxvLa:1------> » | ||
jnthn | timotimo: This is nothing, wait until masak starts using it :P | ||
timotimo | yeah, that'd be too far | ||
masak | ;) | ||
timotimo | ehehe, looking forward to it | ||
so what's with the interpreter giving null pmc access in get_string messages when using the repl and encountering an error? (any error? compile-time errors only?) | 15:16 | ||
jnthn | timotimo: I don't know; would be good to track that one down. | ||
timotimo | when i start perl6 with --ll-exception and do that, it doesn't show a traceback :( | ||
so, a whole bunch of debug say statements? :| | |||
jnthn | Or see if it can be made to show such things with --ll-exception set... | 15:17 | |
timotimo | the -t parameter to perl6 is woefully useless (it doesn't actually do anything whatsoever) | 15:18 | |
jnthn | .oO( there's a -t parameter? ) |
15:19 | |
moritz | jnthn, masak, FROGGS, timotimo, tadzik: doodle.com/4f2ua4n3mdfir2re | ||
timotimo | perl6 --help claims there is, it's supposedly there to let parrot tracing occur | ||
jnthn | timotimo: oh, it needs some flags | ||
try --trace=4 | 15:20 | ||
tadzik | huh, how can I tell what I'd be doing in April | ||
moritz | tadzik: there's this thing called a calendar | 15:21 | |
timotimo | jnthn: that doesn't work, i've been trying -t 1 -t 2 -t 4, -t 6, --trace=4, nothing does anything | ||
15:21
stevan_ joined
|
|||
tadzik | moritz: yeah, I know. The thing is, I'm mostly university-driven, and I can't take a vacation from that :/ | 15:21 | |
it also has a tendency to announce things ALAP | |||
and definitely not in the previous semester | 15:22 | ||
anyway, I'll try to fill it as accurately as I can :) | |||
moritz | ++tadzik :-) | 15:23 | |
timotimo | oh | ||
trace does work, but the error happens much too early | |||
could have realized that earlier. | |||
moritz | ah, forgot to hilight Su-Shee for doodle.com/4f2ua4n3mdfir2re | 15:24 | |
Su-Shee | what? | 15:25 | |
Now I see green ;) | 15:26 | ||
tadzik | moritz: okay, I marked the dates that are probably fine :) | ||
I hope nothing pops out | 15:27 | ||
now I'm excited :) | 15:28 | ||
moritz should implement a doodle (subset) clone in Perl 6 | 15:29 | ||
timotimo | i can get lots of traces when i try eval('class A is A { }');, but i get Nil as return value and $! is Any() | 15:31 | |
echo 'class A is A { };' | perl6 --target=parse -> Could not locate compile-time value for symbol StaticLexPad <- could this perhaps be the error that's thrown and then error reporting fails for some unknown reason? | 15:34 | ||
tadzik | moritz: oh yes, and with a sane API | ||
like, no OAuth :P | |||
moritz | timotimo: nah, --target=parse always says that | 15:35 | |
15:35
vividsnow left
|
|||
timotimo | ... yay :| | 15:35 | |
moritz | timotimo: do you have local modifications? | ||
r: class A is A { } | |||
p6eval | rakudo 35b2a9: OUTPUT«===SORRY!==='A' cannot inherit from itself.at /tmp/75NWgewT2S:1------> » | ||
moritz | that's what I get too | ||
timotimo | even in interactive mode? | 15:36 | |
jnthn gets null PMC access in teh REPL for that | |||
moritz | ah no, I get "Null PMC access in get_string()" | ||
jnthn | hm, wonder what the condition is for that to happen | 15:37 | |
Other compile time errors don't do this... | |||
15:37
spider-mario left
|
|||
masak | r: class B { ... }; class A is B {}; class B is A {} | 15:38 | |
p6eval | rakudo 35b2a9: ( no output ) | ||
masak | r: class B { ... }; class A is B {}; class B is A {}; say A ~~ B; say B ~~ A | ||
p6eval | rakudo 35b2a9: OUTPUT«No such method 'ACCEPTS' for invocant of type 'B' in block at /tmp/DEcRqYg7qL:1» | ||
masak | this feels a little familiar... | ||
timotimo | indirect self-inherit should throw, too, right? | ||
moritz | I guess 'class A is B { }' should die with "Cannot inherit from a stubbed class" | ||
timotimo: right | |||
jnthn | Yeah, we should ban inheriting from as stubbed class. It makes at least one RT ticket go away. | 15:39 | |
*a | |||
Allowing it and making it behave well is...icky. | |||
moritz | jnthn: in world, how do I check if something a symbol is stubbed? | 15:40 | |
(or in the actions, or whatever) | |||
jnthn | Probably should be checked in the MOP | ||
In add_parent | |||
Can check .is_composed | |||
moritz | that's where it's hard to throw typed exceptions right now :( | ||
that will also forbid class A { class B is A { } } | 15:41 | ||
jnthn | True. | ||
moritz | (which is a good thing, IMHO :-) | ||
jnthn | But I don't think that works today either. | 15:42 | |
It'll suffer exactly the same problem. | |||
Better to forbid it now and liberalize later if we find a sane way, than give people weird errors. | 15:43 | ||
masak | aye. | ||
moritz spectests a patch | 15:45 | ||
timotimo | hm, the repl loses $! in between lines. that's a bit annoying | 15:46 | |
well, that makes some kind of sense since the lines are supposed to be full "things" anyway | 15:53 | ||
so, since jnthn could just create rakudo::debugger without touching any of the backend, one would be able to build a truly great REPL in the same way, right? | |||
if there was a binding from nqp to zeromq, i could try to hook up the ipython frontends (notebook, qtconsole, terminal console) with perl6. that might be neat. | 15:54 | ||
jnthn | timotimo: You can probably explore building an alternative REPL outside of Rakudo/NQP using a similar approach. | 15:56 | |
The debugger actually leaves the repl in place | |||
timotimo | the qtconsole uses pygments to highlight-as-you-type, so we could use hoelzro++ 's work for making that beautiful, too :D | ||
what do you mean with "outside of Rakudo/NQP"? you mean just leave a simple stdin/stdout based protocol in place and hook that up to ipythons zeromq protocol in a higher level languane (like python)? | 15:57 | ||
15:58
stevan_ left
|
|||
jnthn | timotimo: I mean, without modifying NQP and Rakudo themselves. | 15:58 | |
timotimo: Like I did with the debugger | |||
timotimo | oh. yeah sure | 15:59 | |
is your source code a good read to figure that out? | |||
15:59
vividsnow joined
|
|||
moritz | jnthn: meh. BOOTSTRAP.pm doesn't compose the classes it later inherits from | 15:59 | |
jnthn | I'm not sure about "good", but it's the only thing doing such tricks... | ||
timotimo | right, i'll have a look then :) | ||
jnthn | moritz: ah, dang | ||
moritz | jnthn: which is why you don't have to write 'augment' in the setting | 16:00 | |
jnthn | moritz: Yeah, and we need it to leave them open. Grr. | ||
Right. | |||
moritz | jnthn: so maybe a named param to add_parent that skips the check? | ||
jnthn | moritz: That could work. | ||
:force :) | |||
moritz | that was my first though too | ||
then I thought that :allow_open might be clearer | 16:01 | ||
16:01
SunilJoshi joined,
b1rkh0ff joined
|
|||
jnthn | True | 16:01 | |
timotimo | jnthn: that actually looks somewhat simple (only looking at the main script right now, though) | 16:02 | |
you wrote the debugger CLI in perl6, so maybe a zavolaj/inline::c binding to zeromq could fit the deal nicely, too :) | 16:04 | ||
16:10
bluescreen10 joined
|
|||
moritz | jnthn: next bootstrappy problem: native types (declared in the setting, but before Int/Str/Num are composed) | 16:10 | |
maybe I should move them to BOOTSTRAP.pm too? | |||
jnthn | moritz: Maybe, or maybe in the trait_mod check if the current setting is NULL (meaning we're compiling the setting) and pass the allow open flag if so | 16:20 | |
timotimo | the ipython zeromq protocol already has a "language" field in the kernel information package :D | 16:21 | |
16:25
bluescreen10 left
16:27
stevan_ joined
16:35
stevan_ left
16:46
stevan_ joined
|
|||
timotimo | so, one important/nice part of the ipython protocol is that a string of code can be sent with the request "is this complete code or should I (the frontend) offer another line of input?". is this doable in perl6 without too much pain? | 16:49 | |
jnthn | timotimo: STD specifies a mechanism for that; we've not yet ported it. | 16:50 | |
Doing that would allow improving the built-in REPL too ;) | 16:51 | ||
timotimo | can you give an estimate in "newbie-hours"? ;) | 16:52 | |
jnthn | timotimo: You may wish to do the extension in NQP first. I'd say allow an hour or so to understand what's going on in STD, similar to study the REPL code as it exists today, probably a few hours to get it working in NQP land (note that it's HLL::Compiler that needs the changes so it's easiest to get it done in NQP first), then probably not too long to get Rakudo also updated for it since it should be very similar grammar addition. | 16:56 | |
arnsholt clones NQP onto new work laptop | 16:58 | ||
16:59
rurban1 joined
|
|||
timotimo | phew. | 16:59 | |
i wonder if i should start with that, or with binding zeromq, or with building a Compiler that exposes the necessary interface so that a kernel for ipy-zeromq can be built. | 17:00 | ||
jnthn | timotimo: Well, if you do this change you make the built-in REPL immediately better ;) | ||
arnsholt perks up | |||
timotimo: What were your plans for ZMQ bindings? | |||
timotimo | arnsholt: this is all still in theoryland. i'd like to bind as much as ZMQ as needed to create an ipython kernel | 17:02 | |
arnsholt | ipython kernel? | 17:03 | |
timotimo | yes, ipython has made a split between kernel ("the python interpreter") and frontend ("where the user types and gets output, completions and errors") | ||
they are connected via zeromq. if the (rather simple) interface for the kernel is built for rakudo, we'll immediately get support for the ipython notebook (web-app similar to wolfram mathematica and friends), the ipython qtconsole (highlight-as-you-type, embedded images and plots) and the ipython console terminal | 17:04 | ||
arnsholt | Ooooh, that'd be decidedly shiny | 17:05 | |
timotimo | what's going on with modules.perl.org? it only seems to load the first few kilobytes or something | ||
17:05
p6eval left
|
|||
arnsholt | ZeroMQ bindings via Zavolaj has been on my TODO list for a while, FWIW | 17:05 | |
timotimo | well, that might answer it. | ||
17:05
hugme left
|
|||
timotimo | arnsholt: i know nothing about zavolaj. would you be willing to help me with this? | 17:06 | |
arnsholt | It blocks on a couple of things in the dyncall bits, unfortunately | ||
timotimo | aaw, damn :( | ||
arnsholt | But if you'd be interested in hacking on it, that would be motivation to keep tweaking it =) | ||
jnthn | arnsholt: What bits is it blocking on, ooc? | ||
arnsholt | Zavolaj isn't very complicated to use, as long as you're reasonably familiar with how C works | 17:07 | |
jnthn: Sized ints in structs/arrays | |||
17:07
tadzik left,
Util left
|
|||
timotimo | fwiw, the ipython zeromq interface seems to exclusively use the json(?) packed message stuff | 17:07 | |
17:07
masak left
|
|||
timotimo | that may or may not make a difference | 17:08 | |
17:08
masak joined,
Util joined,
dalek left
|
|||
arnsholt | There's a a bit of code towards the sized stuff in a branch (nqp/dyncall-sizedints IIRC) but I stagnated after some meta-object problems I couldn't quite figure out | 17:09 | |
17:09
dalek joined,
ChanServ sets mode: +v dalek
|
|||
jnthn | arnsholt: OK. I will need to update the REPRs for the new attribute protocol stuff and may look at sized natives and other such things in Rakudo soon anyway. | 17:10 | |
arnsholt: Will remember to take a peek at the dyncall stuff too | |||
17:11
p6eval joined,
ChanServ sets mode: +v p6eval,
fuad joined
|
|||
fuad | Hello | 17:12 | |
masak | fuad! \o/ | ||
17:12
vividsnow left
|
|||
arnsholt | jnthn: That'd be great! | 17:12 | |
17:12
arlinius left
|
|||
fuad | masak! my friend! | 17:12 | |
masak is indeed fuad's friend | |||
fuad: how are things going? everything fine? | 17:13 | ||
fuad | Nice to see you! | ||
arnsholt | I managed to get most of the way there, but in the end I didn't manage to get the size info out of the types passed to the class >.< | ||
fuad | masak: Everything is fine, thanks bro, how about you ? | ||
17:13
hugme joined,
ChanServ sets mode: +v hugme
|
|||
masak | fuad: everything's fine, squared. :) | 17:13 | |
fuad | masak: glad to hear :) it was a while haven`t seen you. | 17:14 | |
masak | well, you don't stop by here often enough. | ||
17:14
SunilJoshi left
|
|||
masak | I'm here all the time. :) | 17:14 | |
fuad | yes, you re right. :) | 17:15 | |
masak | fuad: remind me, did you ever download Perl 6 and try it? or do you just come here for the nice people? ;) | 17:16 | |
GlitchMr | I've made December (the Wiki in Perl 6) long time ago. I have forgot about it, but it still was running on perlcabal.org. It was running for 4 weeks without restarting. | 17:17 | |
fuad | either one :) | ||
GlitchMr | s/4/5/ | ||
masak | GlitchMr: cool. | ||
GlitchMr: means there probably aren't any serious memory leaks :) | |||
jnthn | Not Bad. :) | ||
GlitchMr | Yeah | 17:18 | |
17:18
cog joined
|
|||
masak | GlitchMr: what's the response time? did you do any measurements? | 17:18 | |
GlitchMr | lolslow | ||
2 seconds just to display main page | |||
s/2/1 | |||
timotimo | GlitchMr: there's a memcached package on modules.perl6.org, why don't you roflscale your December with that? | 17:19 | |
masak .oO( 2 seconds! when I grew up, we *wished* it took 2 seconds! ) | 17:20 | ||
GlitchMr | Sorry, wrong stats | ||
Actually it's 1 second | |||
masak | that's almost bearable. | 17:21 | |
and that's with no FCGI at all, right? | |||
GlitchMr | Well, it's HTTP::Server::Simple Perl 6 module | ||
timotimo | oh, so including interpreter startup time? | ||
masak | right. | 17:22 | |
GlitchMr | Somehow I wonder how nobody noticed 10% of RAM usage on feather, but whatever | ||
I forgot about feather and it was running and running... | |||
masak | someone should srsly try to combine Rakudo and FCGI. maybe the response times could even be non-crappy. | ||
GlitchMr | But 10% of RAM usage on machine with 1GB of RAM... | 17:24 | |
That wouldn't work at all at my VPS with only 128MB of RAM. | |||
17:28
vividsnow joined
17:29
am0c left
|
|||
arnsholt | masak: I've a plan to eventually get ZMQ going and try Mongrel2 | 17:31 | |
Of course, given my tuit supply that might take a while >.< | |||
masak nods knowingly | 17:33 | ||
timotimo | arnsholt: is there any p6-ZeroMQ code that you've already written, or have you spent all the p6-zmq tuits on dyncall and friends? | ||
arnsholt | timotimo: No code really worth looking at, I'm afraid | 17:34 | |
17:35
stevan_ left
|
|||
arnsholt | There are two primary tasks in a Net::ZMQ module: 1) Translating the struct defs in libzmq into Perl 6 class Foo is repr('CStruct') { ... } and 2) defining all the functions and their signatures | 17:36 | |
1 is the one that blocks on the sized types | |||
Of course 2 isn't much use without 1 | |||
17:38
stevan_ joined
17:39
sivoais joined
|
|||
dalek | p: d841e27 | jnthn++ | src/HLL/ (2 files): Abstract notion of "pre-compiled". Previously, this has been tied to --target=pir. |
17:41 | |
p: 28de581 | jnthn++ | src/NQP/World.pm: Make add_initializations portable to JVM. |
|||
p: a9a0c04 | jnthn++ | src/ (2 files): Abstract static lexical installation. |
|||
17:42
chromis left
|
|||
timotimo | arnsholt: do you think i'd be better off writing a stdin/stdout-zeromq bridge in python utilising JSON::Tiny and concentrating on Net::ZMQ when a basic prototype is up and running? | 17:42 | |
arnsholt | Yeah, circumventing the whole ZMQ problem with a shim doesn't sound like a bad idea | 17:43 | |
dalek | p-jvm-prep: 400fea3 | jnthn++ | src/org/perl6/nqp/runtime/ (2 files): Prepare for supporting static lexicals. |
17:45 | |
p-jvm-prep: f4f1735 | jnthn++ | nqp-jvm-cc.nqp: Correctly mark us a pre-compiling. This is always the case in a cross-compile situation. |
|||
p-jvm-prep: cb797bb | jnthn++ | / (2 files): Implement setstaticlex. |
|||
p-jvm-prep: 3fd2ec8 | jnthn++ | lib/QAST/JASTCompiler.nqp: Turn on compiling post-deserialize tasks. |
|||
arnsholt | jnthn: I've started mulling over the dyncall stuff on JVM, FWIW | 17:51 | |
But decided to hold off on actually implementing anything for the moment | |||
17:55
cog left
17:56
tadzik joined
18:00
am0c joined
18:03
cog joined
|
|||
dalek | p-jvm-prep: d6264fb | (Jonathan Stafford)++ | / (3 files): implements nqp::ord |
18:10 | |
p-jvm-prep: 9f1bd19 | (Jonathan Stafford)++ | / (3 files): implements nqp::index |
|||
p-jvm-prep: 927ad57 | (Jonathan Stafford)++ | / (3 files): implements nqp::rindex |
|||
p-jvm-prep: fc88b8e | (Jonathan Stafford)++ | / (2 files): implements cmp_i, cmp_n, and cmp_s |
|||
p-jvm-prep: baa5d7d | (Jonathan Stafford)++ | t/qast_relational.t: forgot t/qast_relational.t in previous commit |
|||
p-jvm-prep: aa669d7 | jnthn++ | / (3 files): implements time_i and time_n |
|||
jnthn | oops, that last one shouolda been (Jonathan Stafford)++ also. | ||
hmm, I guess cherry-pick --no-commit didn't work out quite as I expected... | 18:11 | ||
masak | seems --no-commit stages the changes from the commit of your choice. | 18:15 | |
so if you then make a commit, then it's your commit. | 18:16 | ||
hm, maybe commit --amend would've kept around the original author, I dunno. | |||
jnthn | Yeah, I was expecting it to set everything up as a normal cherry-pick and give me a chance to twiddle. | ||
masak checks | |||
18:16
huf left
|
|||
jnthn | The way it does when you get a conflict and have to resolve it. | 18:16 | |
arnsholt | I think commit --amend replaces the author and email | ||
masak | ok. | 18:17 | |
jnthn: you probably could've gotten that effect with a well-placed rebase operation. | |||
arnsholt | At least, IIRC, that's what git says you should do if you've not set name and email in the config file | ||
masak asks on #git | |||
arnsholt recently set up stuff on a new computer | |||
(Which finally made me set up a dotfiles git repo) | |||
masak | yay | 18:18 | |
arnsholt | "Your branch is ahead of 'origin/dyncall-sized-num' by 531 commits." Yeah, it's been a while allright | ||
timotimo | :D | 18:19 | |
wow. that's quite some work | |||
arnsholt | All of it someone else's =D =D =D | ||
jnthn | masak: My best guess is that it didn't set CHERRY_PICK_HEAD | 18:20 | |
dalek | Heuristic branch merge: pushed 532 commits to nqp/dyncall-sized-num by arnsholt | ||
arnsholt | Just one small change was required in my branch to make the code compile, though. And no merge conflicts | ||
jnthn | Wow :) | ||
git++ | 18:21 | ||
masak | jnthn: yes, an ordinary cherry-pick followed by a commit --amend woulda done what you wanted. | ||
arnsholt: it only replaces author name and email if you do --reset-author, too. | |||
18:21
Pleiades` left
|
|||
arnsholt | Well, I'm not sure if anyone's touched the dyncall code since I hacked on this last | 18:21 | |
Or any of the other REPRs (since I have one or two lines of tweaks in all of those) | 18:22 | ||
jnthn | masak: OK, good to know. Thanks :) | ||
arnsholt | masak: Ah, right. Useful knowledge | 18:23 | |
18:24
stevan_ left
|
|||
jnthn | shop, dinner, etc. | 18:25 | |
& | |||
18:26
huf joined,
[particle] left,
Pleiades` joined
18:27
[particle] joined
|
|||
moritz finally managed to build something with Lego (though the Duplo variant) that is larger than himself | 18:27 | ||
benabik | O.o | 18:28 | |
arnsholt | Cool! | ||
Ronja finally big enough for Duplos? =) | |||
moritz | arnsholt: she's been playing with it for quite a while, but she got many more pieces for Christmas. Before it was simply not feasible :-) | 18:29 | |
arnsholt | Good thing she got more for Christmas, then =D | ||
moritz | "lego bauen" is one of her favorite phrases these days | 18:30 | |
arnsholt: actually not my fault :-) | |||
arnsholt | Even better! | ||
18:32
cog left
18:34
Khisanth left
18:38
stevan_ joined
18:39
sevin joined
|
|||
timotimo | i wonder if ronja will have to put up with "ronja räubertochter" references when she's in school, or if that will have been completely forgotten until then | 18:40 | |
moritz | timotimo: I'm pretty sure it won't have been forgotten. But I hope that it's not seen as negative | ||
18:42
donaldh joined
|
|||
moritz | timotimo: just as I didn't have a real problem with the "Max und Moritz" referenzes | 18:44 | |
s:nth(*-1)/z/c/ | |||
timotimo | i got lots of "timon and pumba" flak in (i think it was) elementary school | ||
moritz | timotimo: never even heard of it | 18:45 | |
timotimo | from disney's the lion king movie | ||
moritz | ah | ||
conjecture: there are no perfect names | |||
masak | timotimo: surely "forgotten until then" is a bit unrealistic for a timeless classic. :) | ||
timotimo | also, apparently the "lila pause" chocolate bar sounded similar enough to my last name ("Paulssen"), that i got mocked for it, which is really strange to me. | ||
masak | timotimo: teasing isn't so much about name similarity, IME, as about how the teasee responds. | 18:46 | |
bullys keep going based on the feedback gained from the victim. | |||
timotimo | right, that makes sense | 18:47 | |
arnsholt | Oh, now I remember why my Rakudo segfaults =D | ||
masak | the subject matter doesn't have to be very coherent. | ||
arnsholt | Always fun coming back to old projects | ||
18:48
Khisanth joined
|
|||
arnsholt | Arglebargle! That wasn't it, apparently | 18:55 | |
moritz | masak: and of course everybody who is different and/or doesn't have a cluster of good friends around them is also a likely target | ||
masak | yeah. though those characteristics apply to me, and I wasn't bullied. | 18:56 | |
arnsholt | Rakudo, why u segfault? | 18:59 | |
tadzik | "bullys keep going based on the feedback gained from the victim." | ||
try ignoring it, arnsholt ;) | 19:00 | ||
moritz | tadzik++ | ||
arnsholt | tadzik: I'm sure that'll do it =D | ||
Just recompile enough times | |||
tadzik | arnsholt: it'll probably stop and move to somebody else :P | ||
arnsholt | But I think I found it for real this time. There are two headers I need to update, not just one | 19:01 | |
(Since I've changed the layout and size of some core sixmodel things) | |||
19:01
Pleiades` left
19:03
jaldhar left
|
|||
arnsholt | Yaaay! No segfault =D | 19:04 | |
tadzik | \o/ | ||
19:04
spider-mario joined
19:07
Pleiades` joined
19:14
Pleiades` left
|
|||
arnsholt cargocults code for invoking Parrot methods | 19:18 | ||
19:21
Pleiades` joined
19:29
For-Odin joined
|
|||
FROGGS | good evening | 19:30 | |
19:30
Pleiades` left,
fuad left
|
|||
colomon | cargoculting++ | 19:31 | |
masak | FROGGS! \o/ | 19:35 | |
19:35
For-Odin left
19:37
Pleiades` joined
19:38
[particle]1 joined
19:40
[particle] left
19:41
Pleiades` left
19:45
vividsnow left
19:48
zby_home_ left
19:49
Pleiades` joined,
jaldhar joined
19:57
rurban1 left
|
|||
timotimo | bleh. meant to visit my hackspace, but the ground is frozen solid in places and the trams don't drive | 19:59 | |
masak | you can hack here with us! | 20:00 | |
timotimo | sure | 20:01 | |
20:01
vividsnow joined
|
|||
FROGGS | forget python! hack perl 6, resistance is futile :o) | 20:02 | |
masak | who said anything about python? | 20:03 | |
jnthn | .oO( frozen ground stops trams? :) ) |
20:04 | |
timotimo | jnthn: the signs said something about "ice rain" | 20:05 | |
moritz | not frozen ground, but tracks covered with fresh ice | 20:06 | |
otoh it doesn't take much to stop the public transport in Berlin :-) | |||
nwc10 | just because that's what happens in London, doesn't mean that it's big and clever, or somethign that other cities should do to | 20:07 | |
although it seems that this time, it failed to fail | |||
jnthn | nwc10: They just delegated the failing to the airports. | ||
nwc10 | :-) | 20:08 | |
20:08
stevan_ left,
krzys_000 joined
|
|||
timotimo | "colonpair" refers to things like :foo and :bar<quux>, right? | 20:14 | |
jnthn | aye | 20:15 | |
timotimo | is there a name for "::"? | 20:16 | |
masak .oO( it says "the double colon" on its birth certificate, but to me it'll always be "doubbie" ) | 20:17 | ||
geekosaur | T_PAAMAYIM_NEKUDOTAYIM :p | 20:18 | |
sorear | I think colon pair can refer to :: too | ||
jnthn | package separator? :) | 20:19 | |
FROGGS | namespace separator | ||
package is so perl fivy | 20:20 | ||
20:20
sevin left
20:21
donaldh left
20:22
donaldh joined
|
|||
timotimo | god, the ipython code is complex | 20:27 | |
lots and lots of indirections | 20:28 | ||
20:28
krzys_000 left
|
|||
benabik | "All problems in computer science can be solved by another level of indirection" | 20:29 | |
20:35
rurban1 joined,
MikeFair___ is now known as MikeFair
|
|||
timotimo reads the docs instead | 20:36 | ||
dalek | p-jvm-prep: be9b63b | jnthn++ | t/qast_variable.t: Test for lexical lookup by name fallback. |
20:43 | |
p-jvm-prep: a69f53f | jnthn++ | / (2 files): Implement various cases of lexical lookup by name. |
|||
arnsholt | benabik: Except the ones due to much indirection =p | 20:49 | |
GlitchMr | .u ⇔↔ | 20:50 | |
phenny | U+21D4 LEFT RIGHT DOUBLE ARROW (⇔) | ||
U+2194 LEFT RIGHT ARROW (↔) | |||
20:50
thou_ joined
|
|||
tadzik | ⇔↔ looks like a tiny sword | 20:51 | |
arnsholt | jnthn: Will the NQP bootstrap be all sad panda if I change the layout and size of struct storage_spec? | 20:52 | |
20:52
kaare_ joined
|
|||
arnsholt | Or, rather, should it? | 20:52 | |
20:53
kaare__ left
|
|||
GlitchMr | std: say 2 == 2 ∧ 3 == 3 | 20:54 | |
p6eval | std 7deb9d7: OUTPUT«===SORRY!===Confused at /tmp/JkC0kk7eS7 line 1:------> say 2 == 2 ⏏∧ 3 == 3 expecting any of: infix or meta-infix infixed function statement modifier loopParse failedFAILED 00:00 42m» | ||
GlitchMr | std: my &infix:<∧> = &infix:<||>; say 2 == 2 ∧ 3 == 3 | ||
p6eval | std 7deb9d7: OUTPUT«ok 00:00 46m» | ||
GlitchMr | rn: my &infix:<∧> = &infix:<||>; say 2 == 2 ∧ 3 == 3 | ||
p6eval | rakudo 35b2a9: OUTPUT«===SORRY!===Two terms in a rowat /tmp/5rYKVr3HYk:1------> my &infix:<∧> = &infix:<||>; say 2 == 2 ⏏∧ 3 == 3 expecting any of: postfix infix or meta-infix infix stopper statement end … | ||
..niecza v24-18-gaf64300: OUTPUT«===SORRY!===Undeclared routine: 'infix:<||>' 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)  a… | |||
arnsholt | jnthn: Never mind. It's something exploding in the code I added | 20:55 | |
jnthn | arnsholt: OK. One thing worth noting is that I'm currently trying to kill all the places that make introspection calls from REPRs. | 20:56 | |
arnsholt: In favor of the compose REPR function. | |||
arnsholt | Right. Probably a good idea | ||
jnthn | arnsholt: That is, meta-objects tell the REPR stuff. | ||
arnsholt | Definitely sounds like a good idea | ||
jnthn | I did the refactor last night / today for P6opaque. | ||
And updated various bits of NQP and Rakudo to work that way. | 20:57 | ||
arnsholt | Which commits are the relevant ones? | ||
jnthn | I'm thinking that int16, for example, passes the 16-ness that way. | ||
arnsholt | Yeah, that sounds like a good plan | 20:58 | |
jnthn | And then anything inlining one gets the number of bits by looking at storage_spec | ||
.bits | |||
arnsholt | Yup | ||
jnthn | bb97781..2a13778 in nqp | ||
35b2a92 in Rakudo | 20:59 | ||
dalek | p-jvm-prep: 98bc4b7 | jnthn++ | docs/ (2 files): ROADMAP and LHF updates. |
21:00 | |
arnsholt | Linus Torvalds can think whatever he wants. GitHub is awesome | 21:01 | |
timotimo | jnthn: so at the moment you have mostly just qast tests, where you write a qast into the test file and assert it does some sort of thing. how long until qasts generated fro actual nqp can be used for tests? :) | 21:07 | |
it's kind of hard for someone not so involved with how exactly nqp does things to see what nqp-jvm can or can't do so far | |||
21:08
spider-mario left
21:09
stevan_ joined
21:10
spider-mario joined
|
|||
jnthn | timotimo: nqp nqp-jvm-cc.nqp --setting=NULL -e "nqp::say('hi from JVM')" | 21:10 | |
timotimo: In so far as what it can do: cross-compile pretty much all of the stuff in NQP's src/how directory | 21:11 | ||
Next up is porting ModuleLoader, which needs a few other bits implementing. At that point it should be possible to get a basic NQPCORE.setting in place and start cross-compiling and running some of the NQP tests. | 21:12 | ||
timotimo | ooooh, neat | 21:18 | |
21:22
sevin joined
21:27
kaare_ left
21:28
kaare_ joined
21:29
Chillance left
21:32
Pleiades` left
21:34
Pleiades` joined
21:39
vividsnow left
21:40
stevan__ joined
|
|||
arnsholt | jnthn: This new composition protocol seems decidedly more manageable | 21:41 | |
masak | rn: role Observer[::T] { method on-next(T) { ... } }; class C does Observer[Int] does Observer[Str] { method on-next(Int) { say "OH HAI!" } } | ||
p6eval | niecza v24-18-gaf64300: OUTPUT«===SORRY!===GLOBAL::T does not name any package at /tmp/YVELYY3oi9 line 1:------> role Observer[::T⏏] { method on-next(T) { ... } }; class CA type must be provided at /tmp/YVELYY3oi9 line 1:------> role Obser… | ||
..rakudo 35b2a9: ( no output ) | |||
arnsholt | Sleepytimes now, but I'll try to hack some more with this in-between slidecrafting tomorrow | ||
masak | is there any way for the role to make sure (when it's composed) that the on-next method takes a parameter of type T? | ||
jnthn | masak: It only works by name so far. | 21:42 | |
masak: Comparing signatures is kinda...well, you know the issues. ) | |||
masak | aye. | ||
the above seems a very common thing in Java or C#. | |||
it doesn't seem so easy in Perl 6. | |||
21:42
stevan_ left
|
|||
jnthn | Well, also if you were doing parametric interfaces then you'd have to write two methods | 21:43 | |
One for each parameterization of the interface | |||
Which also doesn't really fit so well with Perl 6. | 21:44 | ||
masak | it doesn't? I thought multis were a nice fit for that. | 21:45 | |
multi methods, I mean. | |||
benabik | arnsholt: Hide the too much indirection with a layer of indirection. ;-) | 21:46 | |
masak | benabik: someone's been snorting the Design Patterns book again :P | 21:47 | |
jnthn | You snort it? Darn, all I did over the years was sniff it... | 21:48 | |
masak: Yes, you can, but things relate in different ways. | |||
masak gets the feeling he's trying to fit a square pig into a round sty | 21:50 | ||
jnthn | Feed the pig up until it's round | 21:52 | |
21:56
sevin left
|
|||
tadzik | unless it's a Minecraft-pig | 21:57 | |
masak | :P | ||
r: role R[::T] {}; class B {}; class C does R[B] {}; say "alive" | 21:59 | ||
p6eval | rakudo 35b2a9: OUTPUT«alive» | ||
masak | r: role R[::T] {}; class B {}; class C is R[B] {} | ||
p6eval | rakudo 35b2a9: OUTPUT«===SORRY!===Cannot call 'trait_mod:<is>'; none of these signatures match::(Mu:U $child, Mu:U $parent):(Attribute:D $attr, :rw(:$rw)!):(Attribute:D $attr, :readonly(:$readonly)!):(Attribute:D $attr, :box_target(:$box_target)!):(Routine:D $r, … | ||
masak | std: role R[::T] {}; class B {}; class C is R[B] {} | ||
p6eval | std 7deb9d7: OUTPUT«ok 00:00 45m» | ||
masak | I realize that Rakudo doesn't have much to work with here... | ||
(it's essentially the same situation as earlier, with trait_mod:<is> doing all the heavy lifting, and we shouldn't muck too much with that) | 22:00 | ||
swarley | r: say 3; | ||
masak | ...but I had to realize all on my own that I had used 'is' where I shoulda used 'does'. | ||
p6eval | rakudo 35b2a9: OUTPUT«3» | ||
swarley | niecza: say 3; | 22:01 | |
p6eval | niecza v24-18-gaf64300: OUTPUT«3» | ||
masak | jnthn: is that worth a rakudobug, or should I just write code correctly from the beginning? :P | ||
swarley | Oh my, much longer now. | ||
masak | swarley: I'm sorry? | ||
jnthn | masak: um, I thought we should pun the role into a class and inherit from that. | ||
masak: So file a "prolly shunt fail at all" bug :) | 22:02 | ||
swarley | The last time I remember playing with p6 I remember niecza being faster than rakudo | ||
FROGGS | nr: say 3 | ||
jnthn | swarley: Depends what you're measuring. :) | ||
p6eval | rakudo 35b2a9, niecza v24-18-gaf64300: OUTPUT«3» | ||
FROGGS | nr: say time | 22:03 | |
p6eval | rakudo 35b2a9: OUTPUT«1358719365» | ||
..niecza v24-18-gaf64300: OUTPUT«1358719367.1365781» | |||
masak files a "prolly shunt fail at all" rakudobug | |||
swarley: I don't think you should base implementation speeds off of the results you get back from a bot on IRC, with various latencies involved | 22:04 | ||
FROGGS | and you dont know what the server is doing right now | ||
swarley | I suppose so. I really don't want to build niecza right now though | 22:05 | |
masak waves the magic wand at swarley that frees him of this responsibility | 22:07 | ||
22:07
kaare_ left
|
|||
swarley | :o | 22:07 | |
masak | no-one can claim that we here on #perl6 aren't fair and just. or that our pixie dust is anything less than top-notch. | 22:08 | |
22:15
hds_w left,
rurban1 left
22:16
PacoAir left
22:21
MayDaniel left
|
|||
swarley | ./src/parser/grammar.pg: ['%q'|'%Q'] <.before <[<[_|({]>> <quote_expression: :qq> | 22:27 | |
What is the before that's being referenced? | |||
I don't see it defined in the source tree | |||
22:28
aindilis left
|
|||
timotimo | it should be a method of the class. maybe derived? | 22:28 | |
er, hold on, that's no tit | |||
swarley | Well, a grep from the top level shows it referenced only in that grammar file but it is never explicitly defined | ||
22:28
aindilis joined
|
|||
jnthn | swarley: Wait, .pg? | 22:29 | |
jnthn gets curious what swarley is using... | |||
swarley | Yeah, I'm looking at parrot/cardinal | ||
I'm rewriting a ruby implementation for parrot with the more modern PCT | 22:30 | ||
I'm just trying to decipher what it's doing | |||
r: say /<.before>/ | |||
p6eval | rakudo 35b2a9: OUTPUT«» | ||
22:31
rindolf left
|
|||
jnthn | I suspect it's a built-in of sorts | 22:31 | |
timotimo | have you tried the rakudo debugger? | ||
it can debug grammars and regexes, too | |||
swarley | oh, how would I go about using that? | ||
22:32
jaldhar left
|
|||
swarley | oh. Before appears to be the equivalent of (?=...) | 22:32 | |
From perl5/pcre | |||
jnthn | In modern NQP it's defined in src/QRegex/Cursor.nqp which all grammars (eventually) inherit from | 22:33 | |
Yes, it's a lookahead | |||
swarley | Okay, that should have made more sense than it did originally | ||
masak | swarley: I never learned (?=...) et al. they seem very arbitrary to me. | ||
swarley | I suppose I'm used to more cryptic regex | ||
masak | yeah, bloody Perl 6 and its readability. | ||
swarley | D: | 22:34 | |
timotimo is going to wireshark an ipython kernel/console session now | |||
had enough of this guessing | |||
jnthn | .oO( does it come with a wirelaser? ) |
22:35 | |
masak | swarley: eventually, you're meant to be able to do Perl 5 regexes from Perl 6 too, if that's a consolation. | ||
FROGGS | nr: "abc" ~~ m/(.)/; say $() | ||
p6eval | niecza v24-18-gaf64300: OUTPUT«a» | ||
..rakudo 35b2a9: OUTPUT«» | |||
jnthn | r: say "eventually? now!" ~~ m:P5/ n.+$/ | ||
p6eval | rakudo 35b2a9: OUTPUT«「 now!」» | ||
swarley | Eventually I'll be used to the perl 6 regular expressions, really they are more like an actual programming language anyway. So there is no good reason that I would have a hard time other than habit and lack of knowledge as to where to look for a unified reference | 22:37 | |
but I did just pull this link up from history | |||
perlcabal.org/syn/S05.html | |||
jnthn | That's not history, taht's the current spec :) | 22:39 | |
22:39
bluescreen10 joined
22:41
arlinius joined
|
|||
swarley | I mean my chat history ;p | 22:42 | |
I was given it last night right before I left | |||
jnthn | Oh :) | ||
swarley | In a rule, can I still use a newline in the body without the newline being part of the "smart" matching? | 22:45 | |
masak | yes. | 22:46 | |
all whitespace in a rule just means "possible whitespace between stuff". | |||
swarley | Oh, alright | 22:47 | |
masak | rn: say "ab" ~~ rule { a b } | ||
p6eval | niecza v24-18-gaf64300: OUTPUT«Match()» | ||
..rakudo 35b2a9: OUTPUT«#<failed match>» | |||
masak | hrm. | ||
oh! except between alphabetic things :) | |||
rn: say "a b" ~~ rule { a b } | |||
p6eval | rakudo 35b2a9: OUTPUT«「a b」» | ||
..niecza v24-18-gaf64300: OUTPUT«#<match from(0) to(3) text(a b) pos([].list) named({}.hash)>» | |||
masak | rn: say "a." ~~ rule { a '.' } | ||
p6eval | rakudo 35b2a9: OUTPUT«「a.」» | ||
..niecza v24-18-gaf64300: OUTPUT«#<match from(0) to(2) text(a.) pos([].list) named({}.hash)>» | |||
FROGGS | rn: say "ab" ~~ rule { 'a' 'b' } | 22:48 | |
p6eval | niecza v24-18-gaf64300: OUTPUT«Match()» | ||
..rakudo 35b2a9: OUTPUT«#<failed match>» | |||
FROGGS | hmmm | ||
masak | yeah. | ||
which makes sense, if you consider identifiers in a programming language. | |||
22:48
donaldh left
|
|||
masak | 'ab' is one identifier, 'a b' are two. | 22:48 | |
swarley | So, could these two potentially be identical in behavior? pastebin.com/PMCBt8KA | 22:49 | |
22:50
am0c left
|
|||
swarley | the definition of term seems rather odd though | 22:50 | |
token term { \h*\n | \h*';' } | 22:51 | ||
r: say "hello" ~~ /(\h+)/ | 22:52 | ||
p6eval | rakudo 35b2a9: OUTPUT«#<failed match>» | ||
swarley | r: say "hello " ~~ /\h/ | 22:53 | |
p6eval | rakudo 35b2a9: OUTPUT«「 」» | ||
swarley | r: say "hello " ~~ /./ | ||
p6eval | rakudo 35b2a9: OUTPUT«「h」» | ||
swarley | okay.. | ||
So.. \h is any sort of space that isn't a vertical space | 22:54 | ||
Which makes that definition seem rather odd | 22:55 | ||
22:55
sivoais left
22:56
sivoais joined
|
|||
geekosaur | swarley, makes sense to me; read as statement terminator, not as language term? | 22:56 | |
masak | then it makes sense to me too :) | 22:57 | |
timotimo | i have a super simple and totally ghetto wrapper that accepts commands from an ipython console and executes them in a regular rakudo REPL | 22:58 | |
swarley | Ah, looking at it that way it makes sense | ||
I wouldn't have used simply 'term' as the name in that case though | 22:59 | ||
I would have gone with line_term or something | |||
23:00
Pleiades` left
|
|||
lue | hello o/ | 23:00 | |
swarley | \o | ||
can C plugins be developed for parrot? | 23:05 | ||
23:06
Pleiades` joined
|
|||
benabik | swarley: You can write new operations and classes in C. | 23:07 | |
23:09
bluescreen100 joined,
imarcusthis joined
23:12
bluescreen10 left
23:16
MikeFair left
23:17
spider-mario left
23:20
dayangkun left
|
|||
masak | nr: class A { has DateTime $.dt .= new }; say "alive" | 23:23 | |
p6eval | niecza v24-18-gaf64300: OUTPUT«Unhandled exception: Unable to resolve method ctxzyg in type Method at /home/p6eval/niecza/src/NieczaPassSimplifier.pm6 line 162 (run_optree @ 8)  at /home/p6eval/niecza/src/NieczaPassSimplifier.pm6 line 19 (NieczaPassSimplifier.invoke_incr @ 5)  at … | ||
..rakudo 35b2a9: OUTPUT«===SORRY!===Cannot use .= to initialize an attributeat /tmp/wSXcJVz1sI:1------> class A { has DateTime $.dt .= new⏏ }; say "alive" expecting any of: method arguments» | |||
masak | I'm curious about this limitation. | ||
the .= syntax is there so I won't have to write the type name twice. | 23:24 | ||
jnthn | masak: It's already RT'd. | 23:26 | |
masak: Rakudo is just knowing it doesn't know how to do that transform yet. :) | |||
It's more a NYI than a "no" | |||
It's too convenient not to have, imo. | |||
colomon | that's an odd Niecza-error-message | 23:27 | |
lue is wondering how to tell a role to wait for calling a method until the role's been composed in NQP, to get traits on attributes in roles working | 23:28 | ||
jnthn | lue: Is it the parrot vtable traits? | 23:29 | |
timotimo watches as his desktop slows to a crawl | 23:30 | ||
lue | yes. I really would like to get that QAST::Node children thing done [ it's annoying me now :) ] | ||
masak | given a DateTime object, how do I say "three days later"? | ||
(and get a new DateTime object) | |||
jnthn | lue: I'm probably gonna refactor away those traits at some point in the next week and replace them with something that'll probably "just work" without needing to do the whole roles hacking. | 23:31 | |
lue | OK. I'm just suddenly interested in making NQP more memory-efficient is all :) | 23:32 | |
masak | r: my $dt = DateTime.new("2012-02-27T03:14:15Z"); my $d = $dt.Date; $d++ for ^3; say DateTime.new($d, hour => $dt.hour, minute => $dt.minute, second => $dt.second, timezone => $dt.timezone) | ||
p6eval | rakudo 35b2a9: OUTPUT«Default constructor only takes named arguments in method new at src/gen/CORE.setting:725 in block at /tmp/kVXM9057m_:1» | ||
masak | hrm. | 23:33 | |
oh! | |||
r: my $dt = DateTime.new("2012-02-27T03:14:15Z"); my $date = $dt.Date; $date++ for ^3; say DateTime.new(:$date, hour => $dt.hour, minute => $dt.minute, second => $dt.second, timezone => $dt.timezone) | |||
p6eval | rakudo 35b2a9: OUTPUT«DateTime.new(year => 2012, month => 3, day => 1, hour => 3, minute => 14, second => 15)» | ||
masak | this is the simplest way I can think of. | 23:34 | |
feels like we're missing a building-block here. | |||
lue | I wonder how acceptable the idea of "Duration literals" would be (e.g. $dt += 3d;) | ||
masak | I like the idea of durations, but don't feel the need to make them literals. | ||
not in straight-up Perl 6, at least. | |||
23:35
sevin joined
|
|||
FROGGS | $dt.days += 3 ? | 23:35 | |
masak | DateTime is immutable. | ||
timotimo | wow, a perl6 process just went berserk and made my desktop swap like 3gb of data out to disk | ||
masak | and that's not really what I want to do anyway. | ||
I want to safely say "three days later" without having to work with days and months and years. | |||
that's what Date gives me there. | |||
lue | $dt + " | 23:36 | |
$dt + "3 days" is what I was thinking | |||
masak | that one has two problems. | 23:38 | |
first, infix:<+> is for numeric addition, nothing else. | |||
second, adding a string like that just looks... weird, and too much like magic. | |||
lue | I didn't mean the string literally :) | 23:39 | |
masak | I like the *intent* behind that, and I'd be happy seeing something about as simple as that. | ||
benabik would prefer $dt + Duration.new(:days(3)) | |||
timotimo | no! no! bad rakudo! | ||
masak | yeah. | ||
benabik: something like that. | |||
benabik | If you're doing that a lot, then make shortcuts like days(3). | ||
masak | and maybe a shortcut $dt.delta(:days(3)) | ||
benabik | masak: Ooh. | ||
masak | we have to pay close attention to what order to add years, months, days, etc. | ||
I seem to recall DateTime on CPAN did something bad there, and couldn't back out of the decision. | 23:40 | ||
we could do it right. | |||
but tonight is not the night to design all that. I will sleep on it. | |||
'night, #perl6 | |||
lue | good knight masak o/ | ||
FROGGS | I have never seen something wrong in Perl 5's DateTime | ||
timotimo | how does rakudo even get so much memory allocated so quickly?! | 23:41 | |
what does it put into all that merory?! | |||
i should really, really set a better ulimit >_< | |||
benabik somewhat likes C++11's std::chrono | |||
lue | (Of course, these shortcuts are hopefully overrideable for different calendar modules.) | ||
lue notes to look at std::chrono | |||
timotimo: ooc, what are you running (anything like CORE.setting?) | 23:42 | ||
jnthn | sleep time & | ||
timotimo | lue: as far as i know i'm just running "perl6" | ||
lue | good knight jnthn o/ | ||
FROGGS | gnight | ||
timotimo | good night jnthn :) | ||
23:42
FROGGS left
|
|||
timotimo | lue: Popen("perl6", stdin=PIPE, stdout=PIPE). what exactly happens after that i'm not sure. actually this process should have been dead by now! | 23:43 | |
lue | what language are you using? (And also, what's coming through the pipe) | ||
timotimo | imgur.com/6iHwAPf | 23:49 | |
23:51
MikeFair_ joined
|
|||
lue | Hm. Can't say I know what's going on. I'm assuming the right half is what's in the pipe, right? (because `echo say 3 | perl6` runs say 3 in perl6, and that doesn't look like Perl 6) | 23:52 | |
timotimo | that's what goes over the zeromq connections | 23:55 |