»ö« | perl6.org/ | nopaste: paste.lisp.org/new/perl6 | evalbot usage: 'perl6: say 3;' or rakudo: / pugs: / std: , or /msg p6eval perl6: ... | irclog: irc.pugscode.org/ | UTF-8 is our friend! Set by wolfe.freenode.net on 30 October 2009. |
|||
00:01
meppl left,
skingsbu joined
00:08
araujo left
00:14
araujo joined
00:16
tylerni8 joined,
nihiliad left,
tylerni7 left,
tylerni8 is now known as tylerni7
00:22
rgrau left
|
|||
pugs_svn | r29526 | lwall++ | [Cursor] long-overdue refactor removing RE ast methods from Cursor | 00:31 | |
00:44
jlaire left
00:48
ash_ left
01:06
ashizawa joined
01:12
thowe left
|
|||
pugs_svn | r29527 | lwall++ | [STD,Cursor] take lookaheads and whitespace out of expectation lists | 01:15 | |
01:18
cognominal_ left
01:22
am0c joined
01:24
cognominal_ joined
|
|||
cognominal_ | TimToady, I don't see the reciprocal of the ** match operator. I would have expected <1 2> ** ', ' eq '1 , 2'. I know about join, but with the parentheses, it is very verbose | 01:26 | |
01:26
agentzh joined
|
|||
cognominal_ | Also can 'given' be an expression instead of a statement? | 01:27 | |
01:28
cognominal_ is now known as cognominal
|
|||
TimToady | use 'do given' for that | 01:29 | |
cognominal | thx | ||
01:30
ash_ joined
|
|||
TimToady | otherwise we can't tell it from a 'given' modifier easily | 01:30 | |
01:31
skingsbu left
|
|||
TimToady | rakudo: .say given "hi here" | 01:31 | |
p6eval | rakudo 3867ff: hi here | ||
cognominal | I did not know about the given modifier. | ||
TimToady | similar reasoning for if, while, etc | ||
cognominal | makes sense to me. | ||
diakopter | backwards xargs? | 01:33 | |
TimToady | he doesn't like <1 2>.join(', ') | ||
though there's <1 2>.join: ', ' | |||
doesn't save any chars though | |||
diakopter | 1 fewer keypress? | 01:34 | |
std: say ... ... ... ... ... ... 3 | 01:35 | ||
cognominal | as for readability, spaces should count as half a char | ||
p6eval | std 29527: ok 00:01 105m | ||
TimToady | but the lack of a closing bracket can detract from readability, if there is doubt about where the construct ends | ||
hence we provide both () and : | 01:36 | ||
cognominal | anayway if I want ** as a join operator, whith multimethods I can get it. | ||
TimToady | you can, though it does violence to the usual ** concept | ||
01:36
nihiliad joined
|
|||
TimToady | rakudo: sub infix:<cl> ($x,$y) { "$x, $y" }; say [cl] <1 2> | 01:38 | |
p6eval | rakudo 3867ff: 1, 2 | ||
TimToady | rakudo: sub infix:<cl> ($x,$y) { "$x, $y" }; say [cl] 1..10 | ||
p6eval | rakudo 3867ff: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 | ||
TimToady | I bet that's what you really want :) | ||
cognominal | indeed, I like it | 01:39 | |
diakopter | std: ->(){ }()<-> | ||
p6eval | std 29527: ok 00:01 107m | ||
diakopter | std: ()<->(){ }()<->() # there we go | 01:40 | |
p6eval | std 29527: ok 00:01 105m | ||
TimToady | std: say == 42 | 01:41 | |
p6eval | std 29527: ===SORRY!===Preceding context expects a term, but found infix == instead at /tmp/gkHwnonRal line 1:------> say ⏏== 42 expecting any of: argument list prefix or termFAILED 00:01 105m | ||
diakopter | std: <<.>><<.>><<.>> | 01:48 | |
p6eval | std 29527: ok 00:01 105m | ||
01:50
lest_away is now known as lestrrat
|
|||
TimToady | std: «.»«.»«.» | 01:51 | |
p6eval | std 29527: ok 00:01 105m | ||
TimToady | std: «.«».«».» | 01:52 | |
p6eval | std 29527: ok 00:01 105m | ||
01:52
ash_ left
|
|||
diakopter | what does that last one mean | 01:56 | |
02:01
ash_ joined
02:03
ash_ left
02:06
aindilis` left
|
|||
TimToady | it means qqww{.{}.{}.} or some such | 02:11 | |
02:11
japhb left
02:14
am0c left
|
|||
diakopter | the compiled-to-JavaScript edition of nqp-rx's Grammar.pm is 111k | 02:15 | |
just the P6Regex one, I mean. | 02:17 | ||
not all of nqp-rx' grammar | |||
pugs_svn | r29528 | diakopter++ | [sprixel] finish translating nqp-rx's P6Regex/Grammar.pm | ||
02:18
orafu left
02:19
orafu joined
|
|||
TimToady | decommuting & | 02:20 | |
02:21
simcop2387_ joined
02:22
skeptical_p joined
02:29
cls_bsd left
|
|||
colomon__ | jnthn | 02:30 | |
02:31
alester joined,
alester left
|
|||
colomon__ | jnthn++ | 02:31 | |
02:32
Mantis joined
02:33
simcop2387 left
02:34
cls_bsd joined
|
|||
colomon__ | what I meant to say there was, yay, jnthn++ is back! | 02:35 | |
cognominal | jnthn++ # indeed | 02:37 | |
02:52
japhb joined,
wayland76 left
02:54
simcop2387_ is now known as simcop2387,
agentzh left
03:01
hatseflats left
03:06
ashizawa left
03:08
ashizawa joined
03:09
cdarroch left
|
|||
cj | diakopter: I'm trying to transcribe karma.colliertech.org/~cjac/tmp/0104.png | 03:14 | |
cxCCx8CxCCx93 does not quite look right ;) | 03:15 | ||
cj notes that he's getting off topic. sorry. you are the most unicodially capable people I know ;) | 03:16 | ||
colomon__ | rakudo: say pi.Rat(1e-10); | 03:20 | |
p6eval | rakudo 3867ff: 3.14159265361894 | ||
colomon__ | rakudo: say pi.Rat(1e-10).perl; | ||
p6eval | rakudo 3867ff: 312689/99532 | ||
colomon__ | say 10.roots(3).perl | 03:23 | |
rakudo: say 10.roots(3).perl | |||
p6eval | rakudo 3867ff: [Complex.new(2.15443469003188, 0), Complex.new(-1.07721734501594, 1.86579517236206), Complex.new(-1.07721734501594, -1.86579517236206)] | ||
colomon__ | rakudo: say 10.roots(1).perl | 03:30 | |
p6eval | rakudo 3867ff: Complex.new(10, 0) | ||
diakopter | cj: I dunno. | 03:37 | |
03:43
agentzh joined,
f00li5h[HireMe] joined
|
|||
f00li5h[HireMe] | meow! | 03:43 | |
f00li5h[HireMe] paws at | 03:44 | ||
o_O | |||
i'll be shutting up now... it turns out irssi does odd things if you paste binary on it | |||
diakopter | hm | 03:45 | |
up-arrow, enter? | 03:46 | ||
f00li5h[HireMe] | seems to have kicked off one of my aliases too... | ||
diakopter | restart it? heh | ||
f00li5h[HireMe] | I'm not even sure how I got here | 03:47 | |
diakopter | well, this is the only channel you're in. | ||
that I can see. | |||
03:49
Baggiokwok joined
|
|||
f00li5h[HireMe] | the only channel we share | 03:51 | |
03:56
colomon___ joined,
colomon__ left
04:04
stephenlb left
|
|||
dalek | kudo/ng: 393c457 | (Solomon Foster)++ | src/core/ (2 files): Crude but mostly working implementation of Complex.roots. Straightforward implementation of Num.Complex. |
04:06 | |
04:10
skeptical_p left
04:35
drbean joined
04:46
ShaneC left
04:51
JimmyZ joined
04:58
Chillance joined
05:11
patspam left
05:12
gfx joined
05:20
JimmyZ left
05:22
lestrrat is now known as lest_away
05:24
Baggiokwok left
05:25
hercynium left
05:27
cognominal left
05:40
cognominal joined
05:44
nihiliad left
|
|||
pugs_svn | r29529 | diakopter++ | [sprixel] Implemented character classes (much more efficient than alternations of | 05:53 | |
r29529 | literal strings of length 1, though not after lit() is optimized as well). | |||
r29529 | Implemented panic(). Added a few more locals to the generated parser routine. | |||
05:54
Mantis left
06:13
pnate left,
stepnem left
06:20
meppl joined
06:21
agentzh left
06:28
nbrown left
06:32
stepnem joined
|
|||
pugs_svn | r29530 | lwall++ | [Cursor] mv .syml/.store files to syml/ directory | 06:34 | |
r29530 | support subdirctories within syml/ | |||
r29530 | allow parsing of t/spec/package files, including Test::Util.pm | |||
06:37
Baggiokwok joined
07:00
cls_bsd left
07:01
Baggiokwok left
07:07
justatheory left
07:09
cls_bsd joined
07:11
kaare joined,
kaare is now known as Guest91269
07:12
Su-Shee joined
07:14
kaare joined,
Guest91269 left
07:15
Chillance left,
kaare is now known as Guest13904
|
|||
Su-Shee | good morning | 07:19 | |
07:22
am0c joined
|
|||
saschi | gmoin! ^^ | 07:23 | |
TimToady | hello from the subtropics | ||
saschi | wow, hi there! ^^ | 07:24 | |
Su-Shee | _subtropics_? you can't be in europe then. ;) | 07:30 | |
TimToady | well, California, though it's feeling downright temperate at the moment, with a rainstorm coming in off the Pacific | 07:31 | |
szbalint | nice :) | ||
TimToady | but it almost never snows here | ||
Su-Shee offers half a meter of fresh snow (white). ;) | 07:32 | ||
yath | hm, it apparently stopped snowing here | ||
(which still doesn't get me motivated to go to work) | 07:33 | ||
07:44
iblechbot joined
08:00
am0c left
|
|||
moritz_ | good morning | 08:08 | |
sjohnson | yo | 08:14 | |
08:18
cls_bsd left,
tylerni7 left,
zaphar_ps left,
payload left,
sunnavy left,
hugme left,
pugs_svn left,
mdxi left,
bloonix left,
Infinoid left,
LionMadeOfLions left,
gju left,
kcwu left,
cj left,
f00li5h[HireMe] left,
Khisanth left,
Exodist left,
solarion left,
REPLeffect_ left,
jogla left,
jaldhar left,
yves left,
dukelet0 left,
mtve left,
akl left,
go|dfish left,
zamolxes left,
elmex left,
mj41 left,
RichiH left,
gfx left
08:21
cls_bsd joined,
f00li5h[HireMe] joined,
tylerni7 joined,
Exodist joined,
zaphar_ps joined,
payload joined,
solarion joined,
REPLeffect_ joined,
jogla joined,
jaldhar joined,
yves joined,
sunnavy joined,
hugme joined,
pugs_svn joined,
Infinoid joined,
mdxi joined,
kcwu joined,
cj joined,
LionMadeOfLions joined,
bloonix joined,
Khisanth joined,
gju joined,
mj41 joined,
elmex joined,
zamolxes joined,
go|dfish joined,
mtve joined,
akl joined,
dukelet0 joined,
RichiH joined,
irc.freenode.net sets mode: +vv hugme pugs_svn
08:22
agentzh joined,
orafu left,
orafu joined
08:33
Baggiokwok joined
08:40
lest_away is now known as lestrrat
08:43
barney joined
08:48
Intensity left
09:01
payload left
09:07
payload joined
09:09
dakkar joined
09:17
pnate joined
09:39
nadim left
|
|||
jnthn | morning, #perl6 | 09:53 | |
mathw | jnthn! | 09:56 | |
09:56
payload left,
payload joined
|
|||
jnthn finds #perl6 strangely quieter these days. | 10:02 | ||
jnthn blames it partly on ENOMASAK | 10:04 | ||
;-) | |||
frettled | :) | 10:16 | |
ENOMASAK - core quiet | |||
10:17
lestrrat is now known as lest_away
|
|||
mathw | a channel I'm in that's full of friends does a similar thing when one particular member is on holiday | 10:38 | |
in those circumstances we can go an entire day without filling a screen | 10:39 | ||
strange how a community can revolve so strongly around one person | 10:40 | ||
jnthn: have you started thinking about Perl 6 again yet? | 10:41 | ||
jnthn | mathw: Well, I got all of S06-signature/type-capture.t to pass again yesterday | ||
Which felt like it was involving thinking. :-) | |||
If I don't find more blocks (lack of type captures was the blocker I found yesterday and resolved) I hope to put parametric roles back in todya. | 10:42 | ||
*today | |||
mathw | wheee | 10:45 | |
I assume you mean to pass in ng | |||
jnthn | Yes. | ||
ng: sub foo(::T) { say T }; foo(42) | |||
p6eval | ng 393c45: Int() | ||
jnthn | Oh, I put type checking on scalars back too. | ||
mathw | yay | 10:46 | |
jnthn | But that was mostly easy. | ||
mathw | extra yay | ||
if that was mostly easy, there must be something done right in ng :) | |||
or you're a genius, and your definition of easy is completely different to everyone else's | |||
jnthn | Well, it was easy 'cus I'd already put back variable trait mods. ;-) | ||
mathw | :) | 10:47 | |
Might we get ng for a release before too long? | |||
Rakudo * is starting to look quite close from this side of 2010 | |||
Maybe I should help :) | 10:48 | ||
jnthn | It's hard to say. | ||
I can put back lots of stuff but we're hurting for the list/iterator interface bits getting sorted out. | |||
Which pmichaud has spent plenty of time looking at and thinking about and understands...whereas I've thus not worried about thinking about it much. | 10:49 | ||
mathw | So we all need to go to his house and feed him a continual supply of delicious caffeinated snacks until he's done it? | 10:50 | |
jnthn | Havne't seen pm around yesterday though. | ||
Something like that. ;-) | |||
mathw looks up recipes with coffee in | |||
10:53
Intensity joined
10:58
ihrd joined,
ihrd left
|
|||
jnthn sees what he can get past the C# type checker | 11:03 | ||
11:06
agentzh left
11:08
Intensity left
11:09
meneldor joined
11:14
rgrau joined
11:18
mikehh_ joined
11:27
jaldhar left
11:34
mikehh left
11:45
payload left
11:55
bluescreen joined
12:00
am0c joined,
dakkar left
|
|||
meneldor | guys in which variable inside p6 script i can find the params passed from command line ? | 12:02 | |
moritz_ | @*ARGS | 12:03 | |
meneldor | and the first one is in @*ARGS[0] ? | 12:04 | |
moritz_ | yes | ||
meneldor | tnx | ||
hejki | meneldor: if you're doing simple argument parsing, you might want to use sub MAIN | ||
meneldor | how? | 12:05 | |
yes i need simple parsing | |||
hejki | e.g. [hejki@cornix ohjelmointi]$ perl6 -e 'sub MAIN ($x) { say $x+2 }' 8 | 12:07 | |
10 | |||
moritz_ | though rakudo's support is very limited | 12:08 | |
perl6 -e 'sub MAIN(@*a) { .say for @*a }' foo bar | |||
No such attribute '$!do' | |||
hejki | that's why i said "simple argument parsing" :) | ||
using sub MAIN {} even with lacked support is still more perl6ish than parsing @*ARGS | 12:09 | ||
IMO :) | |||
12:09
dakkar joined,
SamuraiJack joined
12:10
bluescreen left
|
|||
meneldor | tnx ill try it | 12:12 | |
12:14
SamuraiJack left
12:17
payload joined
12:23
iblechbot left
12:25
bluescreen joined
|
|||
colomon___ | ng: my @a = roots(10, 5); say @a.perl | 12:32 | |
p6eval | ng 393c45: [(Complex.new(1.58489319246111, 0), Complex.new(0.489758930722077, 1.50732299832768), Complex.new(-1.28220552699192, 0.931576844957485), Complex.new(-1.28220552693763, -0.93157684503222), Complex.new(0.489758930809934, -1.50732299829913))] | ||
hejki | ng: roots("bloody", "roots"); | ||
p6eval | ng 393c45: Method 'Complex' not found for invocant of class 'Perl6Str'current instr.: '&roots' pc 203859 (src/gen/core.pir:5509) | ||
jnthn | heh heh. | 12:33 | |
colomon___ | jnthn: see the problem? | 12:34 | |
jnthn | colomon___: Is Str menat to define Complex? | 12:36 | |
12:37
buubot left
|
|||
colomon___ | with mine | 12:37 | |
12:38
buubot joined,
irc.freenode.net sets mode: +v buubot
|
|||
jnthn | No, what's the problem there? | 12:38 | |
Oh, curious extra parens? | |||
colomon___ | ng: my @a = roots(10, 5); say @a.elems | ||
p6eval | ng 393c45: 1 | ||
jnthn | ah | 12:39 | |
12:41
zz_Chazz left
12:42
Guest91012 joined
|
|||
meneldor | guys do i have to export a class from module to be able to use it in my main script? | 12:42 | |
i cannot find a tutoral which explain how to write OO module | 12:43 | ||
oh sry i found the problem | 12:49 | ||
i've used: method Foo; above the class | 12:50 | ||
jnthn | meneldor: Answer: don't need to export just a "class Foo { ... }" or "class Foo; ... ", though you would if they were lexical classes and didn't make a namespace entry, I believe. | ||
colomon___ | jnthn: sorry about that, parental emergency immediately after I typed my last line. | 12:51 | |
jnthn | colomon___: It's OK, I was hungry and went to make lunch anyway :-) | ||
colomon___ | anyway, I fixed roots so it works last night, but roots.t still fails because when you pass a list to my @a =, it makes a one-element array with the list as the first element. | 12:56 | |
takadonet | morning all | 12:59 | |
13:00
bluescreen left,
bluescreen joined
|
|||
colomon___ | o/ | 13:02 | |
13:06
ruoso joined
13:09
ignacio_ joined
13:24
ignacio_ left
13:26
am0c left
13:27
iblechbot joined
13:34
cognominal left
13:36
mssm joined,
payload left
13:37
payload joined
13:38
ignacio_ joined
13:52
JimmyZ joined
14:10
payload left
14:11
payload joined
14:19
cj left
14:22
cj_ joined,
cj_ is now known as cj
14:24
tylerni7 left
14:25
tylerni7 joined
14:28
Exodist left
14:32
cognominal joined
14:33
hatseflats joined
14:38
smash_ joined
|
|||
smash_ | hello everyone | 14:39 | |
14:40
JimmyZ left
|
|||
colomon___ | 'ello | 14:41 | |
mathw | hello | 14:44 | |
PerlJam | good morning | 14:55 | |
14:57
Baggiokwok left
15:02
Guest13904 left,
Baggiokwok joined
15:07
Baggiokwok left
15:11
Psyche^ joined
15:21
colomon_ joined,
colomon___ left
15:23
meneldor left
15:27
Patterner left,
Psyche^ is now known as Patterner
15:37
am0c joined
15:50
payload left
15:51
payload joined
15:53
meneldor joined
|
|||
cj | howdy | 15:55 | |
mathw | hi | 15:56 | |
15:57
buubot left
15:59
buubot joined,
irc.freenode.net sets mode: +v buubot
16:04
pmurias joined
16:06
jjore left
16:10
soupdragon joined
16:14
uniejo joined
16:18
nihiliad joined
16:23
rgrau` joined
16:29
Exodist joined
16:31
payload left
16:33
pmurias left
|
|||
TimToady | agh, thinking about LTM, I stared too long at the vertical blinds, and now I have stripes everywhere... | 16:40 | |
16:40
SmokeMachine joined
|
|||
soupdragon | hehe ;p | 16:42 | |
moritz_ | now you need to write a program that adjusts the color of your screen in stripes, for compensation :-) | ||
16:44
rgrau` left
|
|||
TimToady | I need an eyetracker for that... | 16:45 | |
I wonder how long till TVs track all the faces watching and send different pictures to each eye so 3D glasses are not necessary | 16:47 | ||
that would be a real eyetracker :) | |||
soupdragon | with these new 3D films I think people will want that sooner | ||
although I guess not for a long time after polarized lenses.. | 16:48 | ||
maybe we will GM ourselves so that we have naturally polarized eyes | |||
diakopter | yeah; polarized contact lenses. left vertical right horizontal | ||
TimToady | only if you can change the polarization at will | ||
I'd want mine vertical most of the time; I always wear polaroid shades outside | 16:49 | ||
but I don't think that's what we'll end up with for 3D tv; we need the equivalent of directed beam radars, only in the optical range | 16:51 | ||
diakopter | currently std/cursor is constructing patterns for the prefixes and bruteforcing to get the longest? | 16:52 | |
TimToady | just think how efficient a TV could be if it only had to make light for your eyes, too | ||
16:52
jackyf joined
|
|||
TimToady | course, intraocular projectors would fix that too | 16:52 | |
diakopter | that would be neat to watch with water vapor in the air | 16:53 | |
soupdragon | ooh like in show crash ;p | ||
they have this laser thing which shows you the image | |||
that would be nice | |||
very immersive it might be a bit scary | 16:54 | ||
diakopter | like that sttng episode "the game" | ||
wil wheaton & ashley judd | 16:56 | ||
TimToady: you're thinking that cursor/std will run its own re engine? | 16:58 | ||
16:59
justatheory joined
17:00
meneldor left
|
|||
TimToady | eh? it already does...how do you think it parses? | 17:01 | |
it doesn't use P5 regexes except incidentally to do character classes and such | 17:02 | ||
diakopter | I thought it emitted the prefixes to perl5 regexes. OH | ||
TimToady | it recognizes individual bits of constant token with p5 regexes, but it could just about as easily use substr() for that | 17:06 | |
all the hard stuff bypasses the p5 engine entirely, because it wouldn't work | 17:07 | ||
diakopter | I thought you couldn't have hard stuff in token prefixes | 17:08 | |
TimToady | \w+ is hard | ||
diakopter | oh. | ||
TimToady | I'm not talking about LTM here, but the engine that LTM determines the fates of | 17:09 | |
diakopter | oh | 17:10 | |
TimToady | LTM is currently emulated with p5 regexes, but that just determines the non-deterministic bits of the real regex matcher, which isn't p5 | ||
well, isn't p5 regex | |||
see STD.pmc and the methods it calls for the actual regex engine | 17:11 | ||
diakopter | ah. I was imagining the LTM emulation being reworked. | ||
TimToady | well, yes, that wants to get to be less hacky, and that's what I was thinking about | ||
17:12
pmurias joined
|
|||
TimToady | separating out all the longest methods to a separate file yesterday was part of that refactoring | 17:12 | |
17:12
cdarroch joined
|
|||
diakopter | ... to find the longest token by reversing each of the prefix patterns, sorting them by the ltm priority rules, then merging them into one alternation in reverse priority order, then prepend the whole pattern with ^(?:.*?) | 17:14 | |
... and matching it against the input string, reversed and truncated to the input spot. | 17:15 | ||
current offset spot, I mean | |||
sorting properly would be the tricky part. | 17:17 | ||
TimToady | you can't always tell which of two prefixes will end up longer by inspection | ||
diakopter | hm. in that case, you'd have to flatten/expand out all the nested alternations. | 17:18 | |
sigh | |||
I thought I read somewhere that it's possible to calculate whether a regular pattern is subsumed by another | 17:22 | ||
TimToady | that's fine if you don't care which pattern matched | ||
we do | 17:23 | ||
diakopter | one could determine that by creating a globally indexed capture for each alternation... ick. | 17:24 | |
(and keeping track of which pattern ended up in which slot) | |||
TimToady | that's more or less what tagged dfa does, but the tdfa I played with require 17MB of stack space on every token, ouch | 17:25 | |
*required | |||
diakopter | :o | 17:26 | |
TimToady | was also a buggy academic toy, so I abandoned it | ||
diakopter | batty | ||
TimToady | I just plan to mutate my trie implementation into a parallel nfa that caches all recognized tokens in the trie so that the second time we see a particular identifier, it's fast | 17:27 | |
and each trie node knows which patterns it has pointers into if the current character doesn't match | 17:28 | ||
but it only has to traverse those for strings it hasn't seen one of yet | |||
17:29
cognominal left
|
|||
TimToady | currently the LTM just runs all the funny patterns at the beginning and sorts the results, but that's because I can't track intermediate match states on them yet | 17:29 | |
when I can keep sets of positions into patterns, I can distribute the parallel match down the trie | 17:30 | ||
17:30
skeptical_p joined,
skeptical_p left
17:31
skeptical_p joined
|
|||
diakopter | hm | 17:31 | |
TimToady | (probably with some limit on the trie size to avoid explosion on non-recurring texts | ||
at some point it starts behaving more like egrep | |||
and only caches recent state sets | 17:32 | ||
that's been my plan for a long time now, but I keep having to do silly things like design the language... | 17:33 | ||
and the current LTM prototype is good enough to have the correct semantics, if slowly | |||
jnthn | An irritating distraction. ;-) | ||
17:34
ash_ joined
|
|||
jnthn | hi ash_ :-) | 17:34 | |
ash_ | hi | ||
jnthn | I'd already gone to attempt sleep by the time you wrote some more questions last night, sorry. | ||
ash_ | i think i got the method forwarder working now, so my patch is done, with some testing first of course | ||
jnthn | \o/ | ||
Great. | |||
ash_ | no worries | ||
17:35
barney left
17:36
ruoso left
|
|||
ash_ | some of the parrot stuff you did in master i am not completely comprehending, but i think i get the gist of it, for your forwarder | 17:36 | |
jnthn | Yes, we hide Parrot away behind the metamodel now rather than twiddling with it too directly. | ||
I need to deal with one other $work task and then make some dinner, so I'll probably have time to focus on looking at your patch and hopefully applying it in a couple of hours. | 17:37 | ||
ash_ | how does .lex work? i am having 1 issue with that, creating a closure in parrot for the forwader | 17:38 | |
i am on campus at my school and for whatever reason the perl.org irc server won't let me connect | 17:39 | ||
so i can't get to #parrot | |||
jnthn | If you want to see a really simple example of that, see assuming (maybe just in master, not sure if we did also put it ng yet) | ||
17:39
pmurias left
|
|||
jnthn | But basically... | 17:39 | |
.lex '$foo', $P0 associates the register $P0 (you can use a symbolic one too) with the name $foo | |||
You then make your inner thingy that you're going to return have it's :outer('...') match the subid of the thing that generates the closure | 17:40 | ||
And then you can do x = find_lex '$foo' | |||
But be sure to call newclosure as well (in the closure generator) to make sure you get a clone attatched to the right outer scope | 17:41 | ||
Also I did such a thing in src/metamodel/Attribute.nqp | |||
If you look at how the PIR falls out of that, that may give you more clues. | |||
17:42
Intensity joined
17:43
ruoso joined
17:44
jackyf left
|
|||
ash_ | gist.github.com/275400 so, right now, the Foo.^bar form works, but the forwarder gives: Lexical '$meth_name' not found | 17:45 | |
do you see anything i just did wrong? | |||
jnthn | hmm, don't immediately see a problem | 17:47 | |
Maybe add a :subid('ClassHOW::add_meta_method') and reference that in the :outer though? | |||
In case it's picking up some other add_meta_method | |||
so it's | 17:48 | ||
.sub 'add_meta_method' :method :subid('ClassHOW::add_meta_method') | |||
and then :outer('ClassHOW::add_meta_method') | |||
below | |||
You have an add_meta_method elsewhere, so probably best to disambiguate. :-) | |||
ash_ | alright, i'll try that | 17:49 | |
i realize the only difference between your master version and the one i made for ng is i use HOW.HOW's add_method and you do an 'infix:does' | 17:50 | ||
hmm still getting that error | |||
17:52
jackyf joined
|
|||
ash_ | what if i declare the .sub as a :lex | 17:54 | |
17:54
dakkar left
17:55
stephenlb joined
|
|||
jnthn | ash_: You shouldn't have to do that if you have a .lex in the sub itself. | 17:55 | |
Oh wait, you mean the inner one... | 17:56 | ||
Hmm, but try that, but again, I don't *think* that'd make a difference. | |||
ash_ | i am having trouble finding much documentation on :lex, but it is mentioned in the PIR book chapter 6 on sub's | 17:57 | |
jnthn | Yeah, I've never used it as far as I can remember, I think it's for if you have a more dynamic lexpad rather than use .lex | 18:00 | |
PerlJam | Based on the ack I just did of my parrot working copy, there's not a whole lot of info on :lex | 18:01 | |
ash_ | Languages where this information is not available can mark the subroutine with :lex instead. /from chapter 6 of pir book | 18:02 | |
in regards to .lex | 18:03 | ||
so, i guess it has something to do with the language lexical rules vs parrots lexical rules? | |||
18:03
r0bby left
18:04
r0bby joined
|
|||
ash_ | would find_dynamic_lex be any better than find_lex? | 18:04 | |
i assume they have different lookup rules | |||
jnthn | No, find_lex is what we tend to use for this. It looks like it should work, which is odd. :-/ | 18:09 | |
18:10
r0bby left
|
|||
ash_ | eh, i'll keep working on it and send it to you later, i am sure i just did something dumb somewhere, i am blaming this one on my lack of pir experience | 18:10 | |
18:10
r0bby_ joined
|
|||
ash_ | in parrot, can i return the object idea? _dumper doesn't return that, i am trying to figure out what pmc the inner scope thinks its bound to | 18:14 | |
18:16
r0bby_ left,
r0bby joined
18:19
am0c left
18:22
r0bby left,
r0bby joined
18:28
r0bby left,
r0bby joined
18:33
skeptical_p left
18:34
r0bby left,
r0bby joined,
ash_ left
18:36
IllvilJa left
18:40
r0bby left,
r0bby_ joined
|
|||
jnthn | phenny: tell ash_ the interpinfo opcode lets you introspect such things. | 18:41 | |
phenny | jnthn: I'll pass that on when ash_ is around. | ||
18:46
skeptical_p joined,
r0bby_ left,
r0bby joined
|
|||
PerlJam | jnthn: could you give an update on Rakudo for #ps since pmichaud seems absent? | 18:48 | |
(just asking becuase I'm lurking on #ps right now and there don't seem to be any updates) | |||
18:50
jjore joined
18:53
r0bby_ joined,
slavik1 joined,
r0bby left
18:54
ShaneC joined,
slavik1 left,
slavik2 joined
18:58
slavik2 left
18:59
IllvilJa joined,
r0bby_ left
19:00
r0bby joined
19:02
frew left
19:04
slavik left,
mikehh_ is now known as mikehh
19:05
frew joined,
r0bby left
19:06
r0bby_ joined
19:11
squ joined
|
|||
squ | what advantages do perl6 offer over p5 | 19:11 | |
19:12
r0bby_ left,
r0bby joined
|
|||
Su-Shee | squ: extremely smooth coding for starters. everything not-so-nice in p5 is smoothened in p6 | 19:12 | |
squ: many features you'd like added | |||
squ | Id like? | 19:13 | |
Su-Shee | squ: and on top of it "cool stuff" which makes typical handling of for example lists easier then ever before. | ||
squ | I dont get it Su-Shee | ||
Su-Shee | squ: "everyone likes" ;) like named parameters, classes for example. | ||
squ | p5 dont have classes? | 19:14 | |
Su-Shee | squ: it does bless. moose added more classy classes. p6 has classes natively, so to speak. | ||
squ: do you know p5 already? | 19:15 | ||
squ | I hope | 19:16 | |
no demand to use it often | |||
Su-Shee | squ: err.. and you don't know bless? :) | ||
squ | nope | 19:17 | |
started to learn perl from 5.0004 | |||
19:17
rgrau` joined
|
|||
squ | when I bought a book about it | 19:17 | |
Su-Shee | "and never updated"? ;) | ||
squ | no demand | 19:18 | |
19:18
hercynium joined,
r0bby left,
r0bby joined
|
|||
squ | and what forced you to learn bless? | 19:18 | |
Su-Shee | squ: ?! that's how OO perl is done with perl 5. | 19:19 | |
squ | wtf | ||
is that anser | |||
w | |||
? | |||
:) | |||
Su-Shee | squ: with bless you do objectoriented perl in perl 5. it's how modules let you inherit stuff. | 19:20 | |
squ | and what forced you to learn bless? | 19:21 | |
it is question | |||
12/1/2010 21:23:30 Su-Shee !i=user-405@p579F6F0A.dip.t-dialin.net> squ: with bless you do objectoriented perl in perl 5. it's how modules let you inherit stuff. | 19:22 | ||
it is statement | |||
Su-Shee | I don't even know what to say to that. | ||
squ | ah forget, I just wasting my time | 19:23 | |
PerlJam | squ: Su-Shee wanted to do OOP in perl, ergo she learned about bless. | ||
squ | btw, what does proxyscan.freenode.net do to my 80 port and why | ||
? | |||
:( | 19:24 | ||
TimToady | probably makes sure you aren't running an open relay | ||
19:24
r0bby left
19:25
r0bby joined
|
|||
squ | its asking "CONNECT 213.92.8.7:31204 HTTP/1.0" | 19:25 | |
19:25
thowe joined
|
|||
TimToady | when you attach to freenode there's a message about how it does that, I think | 19:26 | |
squ: here's the message | 19:28 | ||
18:55 -!- - freenode runs an open proxy scanner. Your use of the network | |||
18:55 -!- - indicates your acceptance of this policy. For details on | |||
18:55 -!- - freenode network policy, please take a look at our policy | |||
18:55 -!- - page (freenode.net/policy.shtml). Thank you for using | |||
18:55 -!- - the network! | |||
19:29
payload joined
|
|||
TimToady | squ: Are you Latvian? | 19:29 | |
squ | I hope no | ||
diakopter | <snort> | ||
squ | but enviroinment makes me one of them | 19:30 | |
19:30
r0bby left
19:31
r0bby joined
|
|||
TimToady | if russian is your native tongue, we can probably put you in touch with people who can help you more than we can | 19:31 | |
squ | I dont need help actually | 19:32 | |
just have a problem | |||
TimToady | if you have a problem, then you need help :) | ||
squ | yes | ||
will I abandon perl after 6 come out | |||
as most people did with python when p3 came out | 19:33 | ||
4 years passed they still use p2.5 | |||
TimToady | I tend to think that people will abandon python when Perl 6 comes out. :) | ||
squ | google use python | 19:34 | |
no one wants perl developers | |||
TimToady | yes, I know, my brother-in-law works there, and doesn't like Python, so I hear it all the time | ||
squ: you shouldn't make blanket statements that aren't strictly true | |||
squ | sorry, my mistake | 19:35 | |
Id love to do something with perl, but cant get job as perl developer | |||
so Im forced to learn php | |||
and I am very upset about fact | 19:36 | ||
but thats not all | |||
TimToady | well, if you haven't learned about bless, then you really don't know perl yet, and are asking for a job you aren't yet qualified for | ||
there are still plent of jobs for people who really know perl | 19:37 | ||
*plenty | |||
squ | cool | ||
19:37
r0bby left
|
|||
squ | then Ill go learn bless ok? | 19:37 | |
:) | |||
TimToady | though perhaps not in .lv | ||
19:37
r0bby joined
|
|||
TimToady | have fun | 19:37 | |
squ | I go thanks | 19:38 | |
19:38
squ left
|
|||
TimToady | .oO(probably doubly hard for a russian expat to land a job in latvia) |
19:39 | |
jnthn | TimToady: There's a lot of Russian speakers in Latvia, afaik. | 19:41 | |
I think pretty large minority there. | |||
TimToady | yes, I know | ||
but they went from top dog to bottom dog overnight | |||
jnthn | Yes, true. :-/ | ||
TimToady | and some of them still have a sense of entitlement that doesn't serve them well in the new "environment" | ||
not saying that's necessarily so in this case, but it is a known failure mode :) | 19:42 | ||
jnthn | :-) | ||
Hmm...maybe time to try and get parametric roles back in place...and then try and do hashes. | 19:43 | ||
19:43
r0bby left,
r0bby joined
|
|||
TimToady | it's hard to explain to someone who only knows Perl 4 why Perl 6 is better than Perl 5... | 19:43 | |
Su-Shee | that's why I stopped trying. | ||
jnthn | PerlJam: oops, sorry, was dinnering | 19:44 | |
colomon_ | jnthn: do you think patching up ng's list assignment is something that could be done by someone out of his head on cold medicine? | ||
jnthn | TimToady: I thought it was 5.004, not 4 | ||
TimToady | 5.004 had bless, but squ doesn't know it | ||
jnthn | Ah, I see your point. :-) | ||
19:45
slavik joined
|
|||
jnthn | colomon_: Erm. Being out of your head may or may not help. Trouble is I dunno how it needs to intereact with laziness... | 19:45 | |
colomon_ | jnthn: ah, laziness. | 19:46 | |
jnthn | Yeah. The implementation work on it is, erm, not eager enough. ;-) | ||
colomon_ | okay, I'll forget about that for today and pay my taxes or something equally painful instead. | 19:47 | |
jnthn | You're welcome to have a crack, but otoh it wouldn't surprise me if it ended up getting re-done again later. | 19:48 | |
19:49
r0bby left,
r0bby joined
|
|||
jnthn | (Which is also what kinda puts me off - because I'm fairly sure pm knows how we wants it to look, but I'm not sure what that way is.) | 19:51 | |
Hopefully we get our pm back soon. And masak. | |||
jnthn pines | |||
19:52
dugg joined
|
|||
Su-Shee | did they got married and run away to vegas? | 19:52 | |
no, the other way round...:) | |||
jnthn | got to vegas and run away married? ;-) | 19:53 | |
TimToady | pm is rightly concentrating on family matters right now | 19:54 | |
19:55
r0bby left
|
|||
jnthn | Aha, OK. | 19:55 | |
19:55
r0bby joined
|
|||
jnthn | TimToady: Good to know he's not sick or something - thanks. | 19:55 | |
colomon_: How much of a blocker is it? | 19:56 | ||
PerlJam | TimToady: you mean Perl 6 isn't the most important thing ever?!? | ||
(I guess I should add a smiley just in case the sarcasm doesn't quite come through ;-) | 19:57 | ||
jnthn | colomon_: If a big one, we maybe could go for an intermediate non-lazy impl... | ||
19:57
frew left
|
|||
Su-Shee | PerlJam: sure it is. I've today changed our entire software architecture to better fit p6. ;) | 19:57 | |
19:59
hercynium left,
frew joined
|
|||
PerlJam | Onre of these days I'd like to pin down a couple of those people that are strident nay-sayers about Perl 6 and get them to show me the magic formula that would have already gotten us there. | 20:00 | |
s/Onre/One/ | |||
of course then it'll probably be "oh, I'd just use ruby and wouldn't bother with perl" | 20:01 | ||
20:01
r0bby left
|
|||
PerlJam | or some suche | 20:01 | |
20:01
r0bby joined
|
|||
PerlJam | s/che/ch/ | 20:01 | |
Su-Shee | PerlJam: "already gotten us" where? | 20:02 | |
PerlJam | Su-Shee: to where ever Perl 6 is headed. you know "done" | ||
jnthn | *sigh* Oh no, not another "done" discussion. | 20:03 | |
:-) | |||
colomon_ | jnthn: sorry about that, I wandered away to work on the dishes. | ||
jnthn | np | ||
TimToady | PerlJam: those are the people who are never happy unless they have something to be unhappy about. | ||
Su-Shee | jnthn: he didn't mean the "when done" - more the "where to done" :) | ||
jnthn | Su-Shee: Aye...I spent the best part of an hour reading the long discussion from around new years on such things and came away like, "well there's an hour of my life I won't get back..." :-/ | 20:05 | |
colomon_ | TimToady: do you have any feel for how long pmichaud will be out of it? | ||
PerlJam | ha! | ||
colomon_: you've just unknowingly made me a little happy | |||
colomon_ | jnthn: in general, list assignment (in one form or another) seems to be blocking a bunch of stuff. I don't have a feel for how important it is in the grand scheme of things, though. | 20:06 | |
PerlJam: ? | |||
Su-Shee | jnthn: I personally don't care besides my impatience I always have. I will use p6 and I know exactly what for and that's what I'm preparing for today. problem solved for me. | ||
20:07
r0bby left
|
|||
PerlJam | colomon_: I've known pmichaud for a long time and around here people are always asking me about him. It brings me a little bit of joy to see *someone else* asked about pm :) | 20:07 | |
20:07
r0bby joined
|
|||
colomon_ | PerlJam: ah! :) | 20:07 | |
PerlJam | colomon_: If you can do it, then I'd say do it. The worst that could happen is that pm later replaces your implementation. | 20:08 | |
(okay, that's not the *worst* that could happen, but that's the most probable worst) | |||
colomon_ | Anyway, I don't want to be nosy, just trying to get an idea if maybe it would be worth tackling a few of pmichaud's projects while he is "away". | 20:09 | |
jnthn | Yes, nothing worse than that's ever happened to me when I wrote code that needed replacing. :-) | ||
colomon_: Aye, I agree knowing "a couple of days" vs "a couple of weeks" would mean we decide things differently. | |||
colomon_ | what if it needs replacing .... but it Doesn't Get Replaced!?!!!!! ;) | 20:10 | |
jnthn | The appocalypse happens early. | ||
So nothing serious really. | |||
PerlJam | We've already had the apocalypses :) | ||
jnthn | well, nothing to be worried about then. | 20:11 | |
20:13
r0bby left,
r0bby joined
|
|||
jnthn | colomon_: OK, my feeling is, if you feel it's blocking things, take a look at how it's done in master and then give it a try. You probably will need to implement !STORE on List or some such. | 20:16 | |
colomon_ | jnthn: groovy. I will see what I can do once I've got my taxes done. :) | 20:17 | |
20:18
r0bby left
|
|||
jnthn fixes a stupid bug he made in the docs for another open source project and finally gets on to doing Rakudo things. | 20:20 | ||
20:20
bluescreen left
20:26
bluescreen joined
20:29
Mantis joined
20:35
uniejo left
|
|||
jnthn | rakudo: say Positional ~~ Role | 20:42 | |
p6eval | rakudo 3867ff: 1 | ||
jnthn | rakudo: say Positional[Int] ~~ Role | ||
p6eval | rakudo 3867ff: 0 | ||
jnthn | oh, damm, master has the bug too. | ||
.oO( how'd we get away with that... ) |
20:43 | ||
rakudo: say &trait_mod:<does>.candidates>>.signature>>.perl>>.say | 20:44 | ||
p6eval | rakudo 3867ff: :(Object $class where all(), Object $role):(ContainerDeclarand $c, Object $role)11 | ||
jnthn | oh heh, like that. | ||
colomon_ looks up briefly from his taxes and is very impressed by that line of code... | 20:48 | ||
20:48
r0bby joined
20:49
r0bby left,
r0bby joined
20:55
ashizawa left
20:56
r0bby left,
r0bby_ joined
|
|||
jnthn | Hmm. Having Role represent both the undisambiguated collection of roles and an individual disambiguated role is tricky. | 20:56 | |
20:57
r0bby joined
20:58
r0bby left
21:00
r0bby_ left
|
|||
jnthn | TimToady: Any thoughts on this? | 21:00 | |
TimToady: I've kinda been treating the thing in the namespace as always being the thingy that knows about all of the roles, and if you try and do that somewhere, it knows to disambiguated itself through doing Foo[]. | 21:02 | ||
*to disambiguate | |||
Having Foo (all of em) and Foo[] / Foo[Int] etc (particular disambiguated forms of the role) pretending to be the same thing feels a bit awkward in a "trying not to just cheat and lie" world. :-) | 21:03 | ||
A Perl 6 level way (rather than just a guts one) to know which we have would allow me to make things a little less magical anyways. | 21:07 | ||
spinclad | rather like having both the full multi bundle and the particular chosen candidate being Subs | 21:12 | |
jnthn | Well, we don't do that in Rakudo either. | ||
spinclad | maybe like both Int and 0 being Ints | ||
jnthn | rakudo: multi foo() { }; say &foo.WHAT | ||
p6eval | rakudo 3867ff:  | 21:13 | |
jnthn | ... | ||
rakudo: sub foo() { }; say &foo.WHAT | |||
p6eval | rakudo 3867ff: Sub() | ||
jnthn | rakudo: multi foo() { }; say &foo ~~ Sub | ||
p6eval | rakudo 3867ff: 0 | ||
jnthn | rakudo: multi foo() { }; say &foo ~~ Multi | ||
p6eval | rakudo 3867ff: 1 | ||
jnthn | rakudo: multi foo() { }; say &foo ~~ Code | ||
p6eval | rakudo 3867ff: 1 | ||
jnthn | They're all Code but not all Sub. | ||
spinclad | right | 21:14 | |
jnthn | Which is why I'm wondering if there's a "3 things" situation for roles. | ||
spinclad | so is Role like Code or like Sub? | ||
jnthn | And if it's like Code, what are the names of the other two things? :-) | ||
I think we need to have a way to disambiguate, anyways, for the occasions people will care. | 21:15 | ||
spinclad | i somewhat think of Foo as (*args -> Role) and Foo[Int] as the resulting Role... | 21:16 | |
so in that sense different types | |||
jnthn | Yeah | 21:17 | |
That's my kinda feeling too. | |||
spinclad | i would like to definitely think that, with the Specs saying so | ||
jnthn | Better than trying to paper over the difference, imo. | ||
21:18
tylerni7 left
|
|||
spinclad | so Role isn't like Code or Sub but like the type they return | 21:20 | |
jnthn | In a sense, yes. | 21:21 | |
spinclad & | 21:23 | ||
21:24
tylerni7 joined
21:26
r0bby joined
21:30
sjn joined,
ignacio_ left
21:32
r0bby left,
slavik left,
r0bby joined
21:33
SmokeMachine left
21:34
r0bby left
21:37
alester joined,
jaldhar joined,
soupdragon left
21:38
soupdragon joined,
r0bby joined,
r0bby left
21:39
mssm left
22:01
ruoso left
|
|||
dalek | kudo/ng: f9001fa | jonathan++ | src/ (7 files): Bunch of fixes to get parametric roles just about working again. |
22:03 | |
22:07
bluescreen left
22:08
dduncan joined
22:11
Su-Shee left
|
|||
dduncan | p6eval 1+1 | 22:14 | |
oh right | |||
perl6: 1+1 | |||
p6eval | elf 29530, pugs, rakudo 3867ff: ( no output ) | ||
dduncan | perl6: say Bool::True.WHAT; | 22:15 | |
p6eval | pugs: Bool | ||
..elf 29530: STRING | |||
..rakudo 3867ff: Bool() | |||
dduncan | perl6: say Same.WHAT; | ||
p6eval | rakudo 3867ff: Could not find non-existent sub Samein Main (file src/gen_setting.pm, line 324) | ||
..elf 29530: STRING | |||
..pugs: *** No such subroutine: "&Same" at /tmp/inuctN74F2 line 1, column 5-14 | |||
dduncan | perl6: say Order::Same.WHAT; | 22:16 | |
p6eval | rakudo 3867ff: Order() | ||
..pugs: *** No such subroutine: "&Order::Same" at /tmp/7Uoc88KeBp line 1, column 5-21 | |||
..elf 29530: STRING | |||
22:16
ive joined
|
|||
cj | how do I search under $('#foo') for all elements with class .bar ? | 22:17 | |
oops. this isn't #jquery! | 22:18 | ||
dduncan | cj, no, but you can still do that sort of thing in Perl 6 | ||
22:18
meppl left
|
|||
cj | dduncan: do I get a pony, too? | 22:18 | |
dduncan | yes | 22:19 | |
perl6: say Bool::False.HOW; | |||
p6eval | rakudo 3867ff: Bool()<0x2b47fc5b9db8> | ||
..pugs: ^Bit | |||
..elf 29530: Can't locate object method "HOW" via package "Bool::False" (perhaps you forgot to load "Bool::False"?) at (eval 123) line 3. at ./elf_h line 5881 | |||
22:20
ive left
22:22
ash_ joined
22:26
lest_away is now known as lestrrat,
ash_ left
22:29
ash_ joined
|
|||
ash_ | jnthn ping? | 22:31 | |
jnthn | ng: say Int ~~ Num | ||
phenny | ash_: 18:41Z <jnthn> tell ash_ the interpinfo opcode lets you introspect such things. | ||
p6eval | ng f9001f: 1 | ||
22:32
slavik joined
|
|||
jnthn | ash_: hi | 22:32 | |
ash_ | i am going to email you both of my patches, the first one gets meta methods working, the second one still has a bug but i haven't figured out why | 22:33 | |
jnthn | ash_: OK, great. | ||
email is jnthn at jnthn dot net | 22:34 | ||
ash_ | sure thing | ||
sjohnson | rakudo: my @farm = <piggy bird rooster>; @farm.map( { uc; }); say @farm.perl; | 22:35 | |
p6eval | rakudo 3867ff: No applicable candidates found to dispatch to for 'uc'in Main (file <unknown>, line <unknown>) | ||
sjohnson | rakudo: my @farm = <piggy bird rooster>; @farm.map( { uc($_); }); say @farm.perl; | ||
p6eval | rakudo 3867ff: ["piggy", "bird", "rooster"] | ||
PerlJam | sjohnson: perhaps you wanted @farm.=map ? | 22:36 | |
sjohnson | i think you are correct | ||
i was kind of thinking the .= is unnecessary... because the $_ is an alias... | 22:37 | ||
<--- confused | 22:38 | ||
rakudo: my @farm = <piggy bird rooster>; @farm.map( { $_ = uc($_); }); say @farm.perl; | |||
p6eval | rakudo 3867ff: ["PIGGY", "BIRD", "ROOSTER"] | ||
sjohnson | there we go | ||
rakudo: my @farm = <piggy bird rooster>; @farm.map( { $_.=uc; }); say @farm.perl; | |||
p6eval | rakudo 3867ff: ["PIGGY", "BIRD", "ROOSTER"] | ||
ash_ | jnthn: its sent, so hopefully you should get it in a bit | ||
pugs_svn | r29531 | jnthn++ | [t/spec] Correct some tests in light of Int/Num and Num/Rat changes - they're bad examples now, so use explicit declared subtypes for these tests. | 22:39 | |
PerlJam | my @farm = <piggy bird rooster>; @farm.=map( { uc($_); }); say @farm.perl; | ||
oops. | |||
rakudo: my @farm = <piggy bird rooster>; @farm.=map( { uc($_); }); say @farm.perl; | |||
p6eval | rakudo 3867ff: ["PIGGY", "BIRD", "ROOSTER"] | ||
PerlJam | rakudo: my @farm = <piggy bird rooster>; @farm.=map(uc(*)); say @farm.perl; | ||
p6eval | rakudo 3867ff: No applicable candidates found to dispatch to for 'map'in Main (file <unknown>, line <unknown>) | 22:40 | |
22:40
r0bby joined
|
|||
PerlJam | Hmm. | 22:40 | |
jnthn | ash_: Thanks. | ||
PerlJam | I'm I forgetting something obvious about Whatever, or is that just not implemented? | ||
sjohnson | PerlJam: the .=map is food for thought. wrapping my head around it as we speak | 22:41 | |
jnthn | PerlJam: I think you wanted *.uc | ||
PerlJam | jnthn: ah, yes. | ||
ash_ | rakudo: <piggy bird rooster>.map({ .uc }).join(', ').say; | ||
jnthn | rakudo: my @farm = <piggy bird rooster>; @form>>.=uc; say @farm.perl; # hmm, maybe... :-) | 22:42 | |
p6eval | rakudo 3867ff: PIGGY, BIRD, ROOSTER | ||
rakudo 3867ff: Symbol '@form' not predeclared in <anonymous> (/tmp/7mwEL2EmIP:2)in Main (file <unknown>, line <unknown>) | |||
jnthn | rakudo: my @farm = <piggy bird rooster>; @farm>>.=uc; say @farm.perl; # hmm, maybe... :-) | ||
p6eval | rakudo 3867ff: ["PIGGY", "BIRD", "ROOSTER"] | ||
PerlJam | you must be right. Because the way I wrote it would mean uc({ $_ }) and that's just crazy | ||
jnthn | whee | ||
ash_ grumbles jnthn and his silly hyper operators | |||
jnthn | I only implemented the spec. :-P | 22:43 | |
PerlJam | <piggy bird rooster>.map(*.uc).perl.say; | ||
ash_ | rakudo? | ||
PerlJam needs a bot that doesn't need "rakudo:" to know I'm talking to it | |||
sjohnson | heheh | ||
ash_ | perl6: <piggy bird rooster>.map(*.uc).perl.say; | ||
PerlJam | It should just go "ah, there's some perl code" and execute it. | ||
:) | |||
p6eval | rakudo 3867ff: ["PIGGY", "BIRD", "ROOSTER"] | ||
..pugs: *** Cannot cast from VList [VStr "INF"] to Pugs.AST.Types.VCode (VCode) at /tmp/7ldmgVOvc1 line 1, column 1-40 | |||
..elf 29531: Undefined subroutine &GLOBAL::whatever called at (eval 126) line 3. at ./elf_h line 5881 | |||
dalek | kudo/ng: ca8d80b | jonathan++ | src/ (2 files): One more fix that sees us able to pass all but two tests in S14-role/parameterized-basic.t that we can in master; will hunt those two down tomorrow. |
||
kudo/ng: 93d662a | jonathan++ | src/ (2 files): A couple of more role tweaks to get us closer to passing a bit more. |
|||
sjohnson | PerlJam: i suppose if you wrote a quick script to pass it to a std-like local rakudo thingy | 22:44 | |
to run it if it's valid | |||
jnthn | ash_: I've spent my evening debugging and sorta fixing parametric roles - I'll take a shufty at your patches and try to debug 'em tomorrow. | ||
ash_ | alrighty, did they apply cleanly for you? | 22:45 | |
jnthn | ('cus I'm tired now) | ||
I didn't try yet, but I don't think anything I've done will cause them not to. Or at least, I hope not. | |||
sjohnson | thanks PerlJam | ||
PerlJam | rakudo: <piggy bird rooster>>>.uc.perl.say; # this is the one that's likely to cause people fits :) | ||
p6eval | rakudo 3867ff: ["PIGGY", "BIRD", "ROOSTER"] | ||
sjohnson | wow that's a neat trick | ||
rakudo: <piggy bird rooster>.uc.perl.say; | |||
p6eval | rakudo 3867ff: "PIGGY BIRD ROOSTER" | 22:46 | |
sjohnson | what were the extra two >'s for PerlJam ? | ||
PerlJam | sjohnson: obfuscation! :) | ||
ash_ | hyper operator | ||
sjohnson | heh | ||
22:46
r0bby left,
r0bby joined
|
|||
sjohnson | i'm a fan of thast obfuscation stuff | 22:46 | |
22:46
meppl joined
|
|||
sjohnson | saw some interesting perl 5 japh's | 22:46 | |
jnthn | sjohnson: If you have @list>>.method then it calls method on every item in the list and makes you a new list of results. | ||
PerlJam | rakudo: <piggy bird rooster>.>>.uc.perl.say; # clearer but still makes you think | 22:47 | |
p6eval | rakudo 3867ff: ["PIGGY", "BIRD", "ROOSTER"] | ||
22:47
soupdragon left
|
|||
sjohnson | is the >> operator unncessary though? | 22:47 | |
ash_ | its required | 22:48 | |
sjohnson | i did it without it though ash_ | ||
jnthn | sjohnson: .uc coerced the list to a string and uc'd the one string. | ||
sjohnson rubs eyes | 22:49 | ||
oh | |||
i c | |||
didn't see those quotes | |||
ash_ | sjohnson: notice in your's its 1 big string, not 3 strings in a list | ||
jnthn | rakudo: <a b c>.uc.WHAT.say | ||
p6eval | rakudo 3867ff: Str() | ||
sjohnson | good eye! | ||
jnthn | rakudo: <a b c>>>.uc.WHAT.say | ||
p6eval | rakudo 3867ff: Array() | ||
22:49
soupdragon joined
|
|||
sjohnson | irc colour coded quotes for the .perl thing would be pretty k3wl | 22:49 | |
might be too cool for school tho | 22:50 | ||
22:50
soupdragon left
22:51
r0bby left
22:53
dugg left
|
|||
ash_ | so, jnthn if i did (in pir), $P1 = newclosure $P1 \n say $P1.'get_lexinfo'() shouldn't that print out the lexical variables of the closure? | 22:54 | |
jnthn | no, it's a parse error... | 22:55 | |
PerlJam | ash_: you can only say/print simple things. | ||
ash_: PIR is assembly after all. | |||
jnthn | $P0 = $P1.'get_lexinfo'() and then say $P0 may do something | ||
but probably nothing quite that useful. | |||
I forget what that exactly returns. | |||
ash_ | it says it should return a hash | ||
jnthn | OK | ||
In that case you can probably iteratre its keys to see what's in there. | 22:56 | ||
ash_ | I just am trying to see find some way to see why find_lex '$meth_name' dies | ||
jnthn | Yes, I'm a bit confused about that too. | 22:58 | |
I'll dig deeper tomorrow. | |||
ash_ | kk | ||
jnthn | ('tis about midnight in my $timezone now... :-)) | ||
ash_ | oh, well, dang, you stay up late then if i keep seeing you online at this thime | 22:59 | |
22:59
iblechbot left
|
|||
jnthn | ash_: Oh, I'm certainly an evening person. | 23:00 | |
ash_: I've got a phone meeting tomorrow morning though, so can't stay up *too* late tonight. :-) | 23:01 | ||
ash_ | do you work on rakudo full time or is it something you do on the side? | 23:02 | |
jnthn | ash_: It's been somewhere between the two over the last year really. | 23:03 | |
ash_ | got ya, just wondering | 23:04 | |
jnthn | I've not had a full time job, just consulting, and between various jobs and some grants to work on Rakudo, I've managed to keep food on the table and be able to go travel a bit. | ||
sjohnson | rakudo: say "40".pack | ||
jnthn | In March I am joining a company, which means I won't have to worry so much about where my next bit of work is coming from. | 23:05 | |
p6eval | rakudo 3867ff: Method 'pack' not found for invocant of class 'Str'in Main (file src/gen_setting.pm, line 324) | ||
sjohnson | rakudo: say pack("c", 40); | ||
p6eval | rakudo 3867ff: Could not find non-existent sub packin Main (file src/gen_setting.pm, line 324) | ||
PerlJam | jnthn: a rakudo-friendly company? | ||
jnthn | PerlJam: Yeah. :-) | ||
PerlJam | sjohnson: pack/unpack aren't implemented to my knowledge | ||
jnthn | PerlJam: I'm not going to be doing full time. | ||
PerlJam: And they're very happy with me going to conferences. | 23:06 | ||
PerlJam | jnthn: yeah, but if you could get paid to work on rakudo, that's always awesome. | ||
ash_ | sweet, sounds like a goodjob | ||
23:06
meppl left
|
|||
jnthn | PerlJam: The way it works out I kinda *do* need to do something that pays a bit in the remainder of the time, but yes, I'd like that to be Rakudo stuff. | 23:07 | |
23:08
zykes- left,
Mantis left,
payload left,
orafu left,
drbean left,
japhb left,
arnsholt left,
takadonet left,
renormalist left,
astinus left,
spinclad left,
zibri left,
jan_ left,
kolibrie left,
sjohnson left,
gabiruh left,
pardunci1 left,
ssm left,
jaldhar left,
nihiliad left,
smash_ left,
Guest91012 left,
rachelBROWN left,
gbacon left,
PacoLinux left,
szabgab left,
lisppaste3 left,
constant left,
partisan left,
breinbaas left,
yahooooo left,
pjcj left,
youwin left,
nsh left,
Woody2143 left,
eiro left,
phenny left,
sbp left
|
|||
ash_ | how does interpinfo work? | 23:09 | |
PerlJam | We need an Ian Hague type fellow to setup a business that needs rakudo and hire pm + jnthn :) | ||
ash_ | like, are there any examples i can reference, doing an ack "interpinfo" didn't get me much | ||
23:10
jaldhar joined,
nihiliad joined,
smash_ joined,
Guest91012 joined,
rachelBROWN joined,
gbacon joined,
PacoLinux joined,
szabgab joined,
lisppaste3 joined,
constant joined,
partisan joined,
breinbaas joined,
yahooooo joined,
pjcj joined,
Woody2143 joined,
youwin joined,
nsh joined,
sbp joined,
phenny joined,
pardunci1 joined,
ssm joined,
eiro joined,
irc.freenode.net sets mode: +v phenny
|
|||
jnthn | ash_: oh, it's a funky op. | 23:10 | |
ash_: let me try and find you something... | |||
23:10
sjohnson joined,
Mantis joined,
payload joined,
orafu joined,
drbean joined,
japhb joined,
arnsholt joined,
takadonet joined,
renormalist joined,
astinus joined,
spinclad joined,
zibri joined,
jan_ joined,
kolibrie joined,
gabiruh joined,
zykes- joined,
irc.freenode.net sets mode: +o sjohnson
23:11
justatheory left
|
|||
jnthn | ash_: oh actually | 23:11 | |
I think nicer is... | |||
Tehre's a $P0 = getinterp op | |||
iirc | |||
23:11
justatheory joined
|
|||
jnthn | That gets you an object representing the interpreter | 23:11 | |
ash_ | k, thanks, ill try that | ||
jnthn | Then you can do things like $P0['sub'] or $P0['lexpad'] | ||
And it's a much saner interface. | 23:12 | ||
Not sane, but saner | |||
See I think src/pmc/parrotinterpreter.pmc in Parrot source tree, get_pmc_keyed method or some such. | |||
ash_: oh, here you go | 23:13 | ||
docs.parrot.org/parrot/latest/html/...r.pmc.html | |||
And getinterp is documented in docs.parrot.org/parrot/latest/html/...e.ops.html | |||
So is interpinfo akshually | 23:14 | ||
ash_ | i am going to sign up for the google summer of code to work on parrot this summer, hopefully to implement an llvm stack frame builder, well thats my proposal anyway, this stuff is helping me learn about parrot a lot, plus i'd love to see rakudo star get as far along as it can before its supposed to be released | ||
jnthn | ash_: OK, cool. | ||
ash_: There's likely projects within Rakudo itself as well - really depends on what you will find most -Ofun. :-) | 23:15 | ||
ash_ | interpinfo is confusing, what does it mean by the list of .CAPITAL_LETTERS | 23:16 | |
are those options? thats what i found confusing about it | |||
jnthn | They're constants | 23:17 | |
You have to .include them | |||
Thus why I prefer getinterp | |||
and then inspect that | |||
ash_ | k, i'll use that for now | 23:18 | |
jnthn | k | 23:27 | |
jnthn -> rest, night | |||
sjohnson | rakudo: my @strs = " x ", "x ", "x", " x "; say @strs.trim.perl; | ||
ash_ | cya later | ||
p6eval | rakudo 3867ff: "x x x x" | ||
sjohnson | rakudo: my @strs = " x ", "x ", "x", " x "; say @strs.>>.trim.perl; | ||
p6eval | rakudo 3867ff: ["x", "x", "x", "x"] | 23:28 | |
sjohnson | intersting >> operator.. what do they call it? | ||
TimToady | it's not really an operator; it's a meta-operator | 23:29 | |
this particular meta-operator is called a hyper | |||
a hyperop modifies some other operator to run in parallel over multiple values | |||
when it would naturally only work on one value | |||
in this case. the method call | 23:30 | ||
is treated as a fancy postfix operator | |||
ash_ | you can do it the other way too | ||
-« (1,2,3); # (-1, -2, -3) # from the spec | 23:31 | ||
diakopter | pugs: say -« (1,2,3); | 23:32 | |
p6eval | pugs: -1-2-3 | ||
ash_ | i don't think it works in rakudo though | ||
ah, but it works in pugs, cool | |||
sjohnson | thanks TimToady and ash_ | 23:33 | |
TimToady: is there a pack(); func in p6? | 23:34 | ||
ash_ | its talked about in S03, so you know, the section on Meta Operators goes over the general meta ops and in there are the specifics of hyper | ||
sjohnson: yes, in S32-Str they talk about it for strings, its not yet implemented though | 23:35 | ||
sjohnson | oic | ||
TimToady | ash_: you have to understand that sjohnson doesn't actually believe in reading docs. he intents to learn it all by asking questions here. :P | ||
ash_ | maybe i should respond with more links? :P | 23:36 | |
TimToady | commuting & | ||
sjohnson | sorry TimToady :( but i will read them | 23:37 | |
just need to sit down, and do it | |||
diakopter | sjohnson: that's what I do too. | 23:38 | |
ash_ | perl cabal's syn is searchable btw, perlcabal.org/syn | ||
sjohnson | TimToady: if i read the docs, i wont have the joy of having people help me anymore :) | 23:39 | |
23:43
payload left
23:50
nihiliad left
|