»ö« | 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 diakopter on 25 January 2010. |
|||
colomon needs to learn more about roles, fast. | 00:02 | ||
jnthn | wknight8111: Does Parrot currently have a call frame generator or does NCI only work for now with compiled in thunks? I get some message about needing to define BUILD_CALL_FRAMES or some such. | ||
But that may date back years. | |||
00:03
nihiliad joined
00:05
am0c joined
00:06
athenot joined
00:12
b_jonas left
|
|||
wknight8111 | jnthn: only has built-in thunks still | 00:13 | |
plobsing is working very hard to fix that, however | |||
00:14
zemlyanin joined,
yinyin joined
|
|||
zemlyanin | How would I go about capturing a certain string but only if it does not end with a period? [^\.] doesn't seem to do what I thought | 00:15 | |
TimToady | that would be written <-[.]> in Perl 6 | 00:16 | |
we stole bare brackets for normal grouping | 00:18 | ||
so they only mean character classes inside of <> now | |||
we also took the ^ outside and made it a - | 00:19 | ||
so you can do "math" with sets of characters | |||
00:19
athenot left
|
|||
TimToady | otoh, if you're asking about Perl 5, this isn't a Perl 5 channel... :) | 00:20 | |
but in Perl 5 I'd just use [^.] | 00:21 | ||
jnthn | wknight8111: Ah, OK...do you know what the Current Plan Of Attack is? | ||
(e.g. use something existing like libffi or libjit, or build a custom thingy)? | 00:23 | ||
00:23
Chillance left
00:27
athenot joined
00:30
lue joined
|
|||
lue | Oi! | 00:31 | |
colomon | o/ | 00:33 | |
lue | o/ (I want japanese characters in my nick. stupid freenode servers :( ) | 00:34 | |
colomon | Does Unicode do Elvish? | 00:35 | |
00:35
xabbu42 left
|
|||
lue | I don't know. (there's probably enough free unicode blocks for it though) | 00:35 | |
it seems to be an alphanumeric system :( | 00:36 | ||
wknight8111 | jnthn: we've definitely been looking at libffi as one option. I think the plan is to have a pluggable loader, so we can have libraries of precompiled thunks OR a dynamic frame builder based on libffi or a JIT solution | ||
pugssvn | r29920 | colomon++ | [t/spec] Some interesting arity-0 tests for limit conditions. | 00:37 | |
00:37
cotto_w0rk joined
|
|||
jnthn | wknight8111: I'd take one thing that worked over epic abstraction, tbh. | 00:39 | |
wknight8111 | jnthn: of course, you asked what the plan was | 00:40 | |
jnthn | :-) | ||
wknight8111 | short-term plan is far less grandios | ||
00:40
cotto_work left
|
|||
jnthn | OK, I'll keep an eye out and see what lands. | 00:40 | |
lue | .u 楽土 | 00:41 | |
phenny | U+697D CJK UNIFIED IDEOGRAPH-697D (楽) | ||
U+571F CJK UNIFIED IDEOGRAPH-571F (土) | |||
00:43
rv2733 left
00:45
zemlyanin left
|
|||
lue | I'm assuming that file test "project" hasn't been solved? | 00:48 | |
TimToady | rakudo: say '/etc/passwd' ~~ :f | ||
p6eval | rakudo 32a946: OUTPUT«Method 'f' not found for invocant of class 'Perl6Str'current instr.: 'perl6;Enum;ACCEPTS' pc 352962 (src/gen/core.pir:50094)» | ||
TimToady | doesn't look like it | ||
00:49
am0c left
|
|||
lue | aw man, I was hoping to work on it! (tsk tsk. Watch you're phrasing of answers :D ) | 00:49 | |
arlinius | waiting until it's already done to work on it? | 00:50 | |
TimToady | rakudo: my @a = 1,2,3,4; @a[1,2] := @a[2,1]; say @a; | 00:51 | |
p6eval | rakudo 32a946: OUTPUT«:= binding of variables not yet implementedcurrent instr.: '&die' pc 16726 (src/builtins/Junction.pir:347)» | ||
colomon | He might mean the issue where it's a Perl6Str instead of a Str, which makes it hard to work on. | ||
lue | I stated that it seems like the error hasn't been solved, TimToady said doesn't look like it. See the pickyness of me? :) | ||
arlinius | oh, that's the reason the alpha file test ops are not acceptable? | ||
00:52
cotto_w0rk left
|
|||
pugssvn | r29921 | colomon++ | [t/spec] Fix the arity-0 non-equal limit test to look for the correct results, and tweak the equal limit case at the same time. | 00:52 | |
colomon | arlinius: it seems to be a major complication, anyway. | 00:53 | |
I admit I haven't looked at it closely. | |||
arlinius | colomon: sorry about forgetting to count, by the way. and thanks for catching that | ||
lue | rakudo: say 'etc/passwd'.WHAT | ||
p6eval | rakudo 32a946: OUTPUT«Str()» | ||
colomon | arlinius: no worries. :) | ||
lue is considering the placement of file tests in the 楽土 pile of code | 00:54 | ||
00:57
lestrrat is now known as lest_away
|
|||
lue | rakudo: Q:PIR { $I0 = stat '/etc/passwd',10say $I0} | 00:58 | |
p6eval | rakudo 32a946: OUTPUT«0» | ||
lue | rakudo: Q:PIR { $I0 = stat '/etc/passwd',9say $I0} | ||
p6eval | rakudo 32a946: OUTPUT«-1» | ||
arlinius | it's not easy to get a Str from a Perl6Str? | ||
lue | is root's UID -1 ? | 00:59 | |
rakudo: Q:PIR { $I0 = stat '/usr/local/bin',9say $I0} | |||
p6eval | rakudo 32a946: OUTPUT«-1» | ||
colomon | arlinius: I believe the problem is more that they are the same, except for when they're not. | 01:00 | |
at least, that was the problem I had with Num and float. | |||
lue | I have a problem with the fact the night and day are the same, except for when they're not :D | ||
rakudo: Q:PIR { $I0 = stat '/usr/local/bin',4say $I0} | |||
p6eval | rakudo 32a946: OUTPUT«0» | ||
lue | rakudo: Q:PIR { $I0 = stat '/etc/passwd',4say $I0} | 01:01 | |
p6eval | rakudo 32a946: OUTPUT«0» | ||
pugssvn | r29922 | colomon++ | [t/spec] Comments explaining what the previous tests were and a new test, with a limit that will never be triggered. | ||
lue | colomon: what if it *is* triggered? | ||
colomon | lue: then that's a failing test. | ||
a test failure, I mean. | 01:02 | ||
pugssvn | r29923 | lwall++ | [S03] some clarifications of how a series deals with types (or doesn't) for colomon++ | 01:03 | |
lue | darn. I was hoping for something like "...and the entire space-time continumn will meld and flying..." :) | 01:04 | |
colomon | given the number of bugs I've inflicted on Rakudo, I'd hate for a one of my test failures to affect the entire space-time continuum. | 01:05 | |
lue | it already has, based on your testimony. | 01:06 | |
Several times. :) | |||
arlinius | he's got a point there | 01:07 | |
lue | That explains [*] die(Rakudo)'s detectors going off. Let me contact them... | ||
01:08
cotto_w0rk joined
01:10
lue is now known as RakudoDeathStar
|
|||
colomon | My Star Wars players disabled the Death Star (II) somewhat two sessions ago. | 01:11 | |
:) | 01:12 | ||
arlinius | somewhat? somehow that doesn't good enough :P | ||
RakudoDeathStar | This is the Rdie* my friend | ||
I grammer love improper day \o/ | 01:13 | ||
colomon | well, it fired on the planet in question and didn't blow it up, which was good enough for their purposes. | ||
RakudoDeathStar | (my new nick'd be shorter, but stupid alphanumeric nicks...) | ||
colomon | and not having the Death Star destroyed of course makes for further plot developments. | 01:14 | |
arlinius | i see | 01:15 | |
RakudoDeathStar | We hath come to inform ye of ye sins to the Rdie* codebase, colomon. We hath spent several moons fixing the time-space continuum. | ||
Don't Do It Again! | |||
colomon | I hope they were small, unimportant moons. | ||
Like Endor. | |||
01:15
RakudoDeathStar is now known as lue
|
|||
colomon | (errr... wait, is Endor the moon or the gas giant it orbits?) | 01:15 | |
lue | way to take the days of yore speech and make it literal. colomon++ | 01:16 | |
TimToady | .oO(the Which of Endor) |
||
lue | Endor is the inhabitable moon orbiting around the inhospitable planet of no interest. | ||
colomon | It's a big galaxy, you can't measure time in "moons" as if there is only one of the things. :) | ||
lue | Well, Rdie* is powered by superheated pumice... | 01:17 | |
arlinius | I think he means moons are the currency he spent to fix the problem | ||
but still, it seems like some moons would be worth more than others | |||
TimToady | especially the full ones | 01:18 | |
colomon | and the ones that are blissfully Ewok-free. | 01:19 | |
lue | Just like the stuff on Earth not signed by Sarah Palin :P | 01:20 | |
01:21
parthm joined
01:23
daemon left,
daemon joined
|
|||
parthm | hello, i am trying to learn perl6 (using rakudo). i tried running the example ( pastebin.com/XqaAK52v ) from the perl6 book on github bit it fails ( pastebin.com/Ns7RXgY6 ). what I am doing wrong? | 01:24 | |
01:24
am0c joined
|
|||
TimToady | parthm: you probably want to use the January release for that, not the current bleeding edge | 01:24 | |
parthm | thanks TimToday. will do that. | 01:25 | |
lue | yeah, the bleeding edge (to use metaphor) is too busy bleeding to cut it :) | ||
colomon | actually, it isn't immediately obvious to me why that would fail on Rakudo master. Probably a nightmare on the Feb release, however.... | 01:26 | |
01:28
ihrd joined
|
|||
TimToady | does current master support 1-ary sort? | 01:28 | |
colomon | I believe so. | ||
TimToady | rakudo: say sort +*, 3,4,2,-3 | ||
01:28
ihrd left
|
|||
p6eval | rakudo 32a946: OUTPUT«Method 'Num' not found for invocant of class 'Block'current instr.: 'perl6;Mu;' pc -1 ((unknown file):-1)» | 01:28 | |
colomon | It doesn't support Whatever closures, though. | ||
TimToady | rakudo: say sort { $^a + 0 }, 3,4,2,-3 | 01:29 | |
p6eval | rakudo 32a946: OUTPUT«Could not find non-existent sub &sortcurrent instr.: '_block14' pc 29 (EVAL_1:0)» | ||
colomon | rakudo: (3,4,2,-3).sort(&abs) | ||
p6eval | rakudo 32a946: ( no output ) | ||
colomon | rakudo: (3,4,2,-3).sort(&abs).say | ||
p6eval | rakudo 32a946: ( no output ) | ||
colomon | hmmm. | ||
TimToady | rakudo: say sort { $^a <=> $^b }, 3,4,2,-3 | ||
colomon | (3,4,2,-3).sort({.abs}).perl.say | ||
p6eval | rakudo 32a946: OUTPUT«Could not find non-existent sub &sortcurrent instr.: '_block14' pc 29 (EVAL_1:0)» | ||
colomon | rakudo: (3,4,2,-3).sort({.abs}).perl.say | 01:30 | |
p6eval | rakudo 32a946: OUTPUT«Too many positional parameters passed; got 2 but expected between 0 and 1current instr.: '_block49' pc -1 ((unknown file):-1)» | ||
TimToady | more sortdid than sorted... | ||
*sordid | |||
01:30
athenot left
|
|||
colomon | hmmm, guess it doesn't work yet after all. | 01:30 | |
rakudo: (3,4,2,-3).sort.perl.say | |||
p6eval | rakudo 32a946: OUTPUT«(-3, 2, 3, 4)» | 01:31 | |
colomon | rakudo: (3,4,2,-3).sort({$^a.abs <=> $^b.abs}).perl.say | ||
p6eval | rakudo 32a946: OUTPUT«(2, -3, 3, 4)» | ||
colomon | rakudo: (3,4,2,-3).sort({$^a.abs}).perl.say | ||
p6eval | rakudo 32a946: OUTPUT«Too many positional parameters passed; got 2 but expected 1current instr.: '_block49' pc -1 ((unknown file):-1)» | ||
colomon | yup, just doesn't do 1-arity yet. | 01:32 | |
01:32
[particle] joined
|
|||
parthm | does the error message ( pastebin.com/Ns7RXgY6 ) contain a line number (or some other info) that would have helped a newbie like me to narrow down the location of the error? | 01:32 | |
01:32
[particle]1 left,
athenot joined
|
|||
TimToady | unfortunately, doesn't look like it. it's coming from deep within the bowels of parrot | 01:32 | |
01:32
xomas left
|
|||
colomon | but it is the problem we're looking at here, I guess. | 01:32 | |
01:33
athenot left
|
|||
lue | I personally hate when 'HLLCompiler' comes up in an error :/ | 01:33 | |
01:34
xomas joined,
xomas left,
xomas joined
01:35
lest_away is now known as lestrrat
|
|||
arlinius | it expected between 0 and 1 parameters | 01:36 | |
you should have passed it 0.5 parameters | |||
or 0.8235 | |||
TimToady | the only thing between 0 and 1 is ' and '. | 01:37 | |
colomon | TimToady: does "before" chain? | ||
TimToady | sure | ||
colomon | danke. (Trying to sort out a weird bug in series...) | 01:38 | |
TimToady | rakudo: say 1 before 2 before 3 | ||
p6eval | rakudo 32a946: OUTPUT«1» | ||
TimToady | rakudo: say 1 before 2 before 2 | 01:39 | |
p6eval | rakudo 32a946: OUTPUT«0» | ||
lue | rakudo: say 2 before 1 | ||
p6eval | rakudo 32a946: OUTPUT«0» | ||
lue | rakudo: say Inf before NaN | ||
p6eval | rakudo 32a946: OUTPUT«0» | ||
lue | rakudo: say Inf after NaN | ||
p6eval | rakudo 32a946: OUTPUT«1» | ||
TimToady | hmmmm | ||
01:39
cotto_working joined
|
|||
lue | seems Inf is more of a not number than NaN :) | 01:39 | |
TimToady | that should probably say "Mu" or some such :) | 01:40 | |
lue | TimToady: why is the use of undef frowned upon in P6? | 01:41 | |
TimToady | maybe we need an Order::Incomparable | ||
what does it mean? | |||
lue | rakudo: NaN ~~ undef | ||
p6eval | rakudo 32a946: OUTPUT«Unsupported use of undef as a value; in Perl 6 please use something more specific: Mu (the "most undefined" type object), an undefined type object such as Int, Nil as an empty list, *.notdef as a matcher or method, Any:U as a type constraint or | ||
..fail() as a failure return … | |||
TimToady | well, that's a matcher, so you mean *.notdef | ||
lue | rakudo: NaN ~~ *.notdef | 01:42 | |
p6eval | rakudo 32a946: OUTPUT«invoke() not implemented in class 'String'current instr.: 'perl6;Code;signature' pc 12815 (src/builtins/Str.pir:58)» | ||
TimToady | don't ask me how strings got involved here... | ||
lue | TimToady: how did strings get involved here? [ :) ] | 01:43 | |
TimToady | rakudo: say NaN ~~ :defined | ||
p6eval | rakudo 32a946: OUTPUT«1» | ||
01:43
cotto_w0rk left
|
|||
TimToady | rakudo: say NaN ~~ :!defined | 01:43 | |
p6eval | rakudo 32a946: OUTPUT«0» | ||
TimToady | there's another WTDI | 01:44 | |
lue | rakudo: say NaN ~~ (True and !True) | ||
p6eval | rakudo 32a946: OUTPUT«0» | ||
lue | what is WTDI? | ||
TimToady | TMTOWTDI | ||
lue | ah, should've caught that :) | ||
01:45
meppl left
|
|||
lue | rakudo: say 1 ~~ (True and !True) | 01:46 | |
p6eval | rakudo 32a946: OUTPUT«0» | ||
lue | rakudo: say 0 ~~ (True and !True) | ||
p6eval | rakudo 32a946: OUTPUT«0» | ||
lue | rakudo: say (0 ~~ (True and !True)) | ||
p6eval | rakudo 32a946: OUTPUT«0» | ||
lue | rakudo: say (True ~~ (True and !True)) | ||
p6eval | rakudo 32a946: OUTPUT«0» | ||
lue | for file test Str _methods_ is it C<'string'.f> or C<'string'.:f> ? | 01:50 | |
TimToady | it's .f these days | ||
we took away the : | |||
lue | alright. | ||
TimToady | which is how :defined worked | ||
lue | rakudo: say 'h'.succ | 01:51 | |
p6eval | rakudo 32a946: OUTPUT«i» | ||
lue | rakudo: say ''.succ | ||
p6eval | rakudo 32a946: OUTPUT«» | ||
01:51
alester left
01:52
kcwu joined
|
|||
colomon is really hoping Rakudo doesn't thing 81 comes between 3 and 9. | 01:52 | ||
lue | A lot of the file tests I'm not sure on how to program yet (if it's a symbolic link, for example) :/ | 01:53 | |
01:53
lichtkind left
|
|||
TimToady | rakudo: say 3 before 81 before 9 | 01:54 | |
p6eval | rakudo 32a946: OUTPUT«0» | ||
lue | rakudo: say 3 < 81 < 9 | ||
p6eval | rakudo 32a946: OUTPUT«0» | ||
colomon | rakudo: say 9 before 81 before 3 | ||
p6eval | rakudo 32a946: OUTPUT«0» | ||
01:54
athenot joined
01:56
k23z__ joined
|
|||
k23z__ | hi | 01:56 | |
I can to invite people here interested in Perl5 to #perl-outside | |||
arlinius | rakudo: say k23z__.can('to-invite') | ||
p6eval | rakudo 32a946: OUTPUT«Could not find non-existent sub &k23z__current instr.: '_block14' pc 29 (EVAL_1:0)» | ||
01:59
athenot left
|
|||
lue | k23z__ --promote --target="#perl-outside" :) | 01:59 | |
colomon | rakudo: my $limit = 81; my $last = 3; my $j = 9; say $last before $limit before $j | 02:00 | |
p6eval | rakudo 32a946: OUTPUT«0» | ||
k23z__ | :) | ||
colomon | rakudo: my $limit = 81; my $last = 3; my $j = 9; say '$last before $limit before $j ' ~ $last before $limit before $j | 02:01 | |
p6eval | rakudo 32a946: OUTPUT«0» | ||
lue | do you wish to try " ? | ||
colomon | rakudo: my $limit = 81; my $last = 3; my $j = 9; say '$last before $limit before $j ' ~ ($last before $limit before $j) | 02:02 | |
p6eval | rakudo 32a946: OUTPUT«$last before $limit before $j 0» | ||
TimToady | there oughta be a way to quine that... | 02:03 | |
colomon | TimToady: any notion why my first version there didn't work? | ||
02:03
kcwu left,
rgrau left
|
|||
colomon | oh, is ~ higher precedence than before? | 02:04 | |
TimToady | concat has always been tighter than comparisons | ||
colomon | gotcha. | ||
TimToady | though ~ is detangled from + these days | ||
colomon | and I think I might know what my problem is, because your cmp comment on my blog doesn't match actual behavior. | ||
TimToady | I'd also second lue's recommendation of double quotes :) | 02:05 | |
colomon | rakudo: my $limit = 81; my $last = 3; my $j = 9.Rat; say '$last before $limit before $j ' ~ ($last before $limit before $j) | ||
p6eval | rakudo 32a946: OUTPUT«$last before $limit before $j 1» | ||
colomon | rakudo: say 81 before 9.Rat | ||
p6eval | rakudo 32a946: OUTPUT«1» | ||
colomon | rakudo: say 81.Rat before 9.Rat | ||
p6eval | rakudo 32a946: OUTPUT«1» | ||
colomon | yeah, got to get Real up and running soon. | 02:06 | |
lue | wait. You mean to tell Rdie* it's been running on IMAGINARY this entire time? Oi... | 02:07 | |
TimToady | ($a cmp $b) == ($b cmp $c) is not direction sensitive | ||
colomon | TimToady: ooooo. | 02:08 | |
And we know it won't fire off the eqv test, because that would mean the last element was also eqv to the limit. | |||
TimToady++ | 02:09 | ||
TimToady | that was the intent of the spec verbiage :) | ||
lue | Most of the file test operators can't be implemented with PIR's stat opcode. | ||
colomon | TimToady: :) | 02:10 | |
TimToady | for comparsions on non-matching types, I think we really must force all numerics to sort in a consistent order. | 02:12 | |
colomon | TimToady: my working theory has been that Real, Real comparisons are translated to Num internally. | 02:13 | |
(or rather, translated to some consistent type, of which Num is the most likely currently, IMO) | |||
I've been meaning to do a big writeup on this for a couple of weeks now, actually. :) | 02:14 | ||
TimToady | I think we can force Complex to be orderable even though it's not officially | ||
just sort first on real, then on imaginary | |||
like any other two-part record | |||
colomon | interesting notion.... | ||
TimToady | so everything Numeric sorts | ||
and probably, outside of that, sort by type | 02:15 | ||
unless there's some similar way to unificate strings | |||
colomon | my working theory (which wasn't factoring in Complex, I'll have to ponder that) | 02:16 | |
is that Real needs to have require a .Num, which will be used for this sort of thing. | |||
I would think that Stringy (is that the right term) could sort on .Str, maybe? | 02:17 | ||
lue | rakudo: Q:PIR{$I0 = stat '/etc/passwd',0say $I0} | 02:20 | |
p6eval | rakudo 32a946: OUTPUT«1» | ||
colomon | TimToady: I think having a lingua franca for Real is really important; otherwise it will be very hard for two independently developed Real types to work together smoothly. And while I can see an argument for FatRat when we have it, it seems like Num is the best choice for now. | 02:22 | |
Having it will allow a lot of smart default implementations, too. | |||
colomon finds his code changes work better if he actually compiles them. | 02:24 | ||
TimToady | the problem with Stringy (if we assume it includes Buf) is that we might not have a valid .Str if we don't know the encoding | 02:26 | |
colomon | Ah. | ||
'Twas just a notion. | |||
TimToady | well, but we'd like to finesse it to do what people expect to the extent possible, as with Numeric | 02:27 | |
02:27
am0c left
|
|||
TimToady | we already go to some pains to define bufs that only contain 0..127 as "assumed ASCII" | 02:27 | |
lue | what the heck is ISDEV all about? (something the PIR opcode stat gives you) | ||
TimToady | a unix concept | 02:28 | |
arlinius | is it a device file? | ||
TimToady | a special file in /dev | ||
arlinius | lue keeps his in /usr/include | ||
lue | ah. | ||
arlinus: hey! I resent that :) | |||
(what did I put in dev, again?) | |||
arlinius | gotta keep /dev for your C headers, right? :) | 02:29 | |
TimToady | because developers use 'em | ||
arlinius | exactly | ||
lue | rakudo: Q:PIR{$I0=stat '/dev/null', 3say $I0} | ||
p6eval | rakudo 32a946: OUTPUT«0» | ||
colomon | TimToady: can I use cmp instead of eqv for the final limit test? | ||
TimToady | I though include was only input devices, and output devices go in exclude... | ||
parthm | so i tried running the example ( pastebin.com/XqaAK52v ) in jan rakudo and it fails with the error pastebin.com/UjpgheUH . trying feb rakudo now. | 02:30 | |
arlinius | ah, that's right... | ||
symlink /dev/null from one to the other | |||
TimToady | colomon: sure, I'd just do both cmps and then look at the numbers | ||
parthm | hmm. ok ... looks like there is another parrot in the path that its picking up. sorry about that. will try to change that. | 02:31 | |
lue | I wonder if there's a big process to getting a new folder accepted in / | 02:32 | |
TimToady | arlinius: I thought that was what /dev/random was for? | ||
lue | if not, there should be | ||
arlinius | oh, i meant /usr/include/null and /usr/exclude/null | ||
TimToady | lue: it's called 'su' | ||
arlinius | /dev/random stays in dev since it's a tool developers use to write code | 02:33 | |
TimToady | nodnod | ||
lue | There should be some sort of commitee. You set up gov't grants to see who develops the best new folder for the root dir | ||
colomon | TimToady++: oooo, that was a great thought! | ||
lue | SAND (Sodality for the Addition of a New Directory) | 02:34 | |
TimToady | colomon: in fact, you could add 1 to both of them, turn them into base 3 digits, and the switch on the resulting 0..5 | 02:35 | |
not sure that'd save any CPU time really though... | |||
colomon | given is actually kind of relatively slow, I think. | 02:36 | |
but it's a lovely algorithm thought, at any rate. :) | |||
TimToady | it's supposed to be optimizable when all the targets are numeric | ||
lue | rakudo: Q:PIR{$I0='/etc/passwd',1say $I0} | ||
p6eval | rakudo 32a946: OUTPUT«error:imcc:syntax error, unexpected COMMA, expecting '\n' (',') in file 'EVAL_1' line 640» | ||
02:37
athenot joined
|
|||
lue | rakudo: Q:PIR{$I0=stat '/etc/passwd',1say $I0} | 02:37 | |
p6eval | rakudo 32a946: OUTPUT«813» | ||
parthm | ok. the example worked now :-) | ||
TimToady | that's why the comparison is entirely driven by the type of the 'when', not the type of the given | ||
(unless the .ACCEPTS of the when chooses to look at the type of the left side) | |||
colomon | \o/ | 02:38 | |
TimToady | parthm: yay! | ||
colomon | your save the result suggestion made the algorithm cleaner, and faster, and it finally works, too. :) | ||
TimToady | you are persistent enough to be a developer around here :) | ||
colomon: something to be said for working | 02:39 | ||
colomon | Let me tell you, I was really worried when 1, 3, 9 ... 81 resulted in 1, 3. :) | ||
but now: | 02:40 | ||
pugssvn | r29924 | colomon++ | [t/spec] arity-1 tests with a limit. | ||
colomon | > (1, 3, 9 ... 81).batch(10).join(', ').say | ||
1, 3, 9, 27, 81 | |||
lue | rakudo: Q:PIR{$I0=0if $I0==0 goto hisay 'aw'hi:say 'ya'} | 02:42 | |
p6eval | rakudo 32a946: OUTPUT«ya» | ||
02:42
parthm left
|
|||
TimToady .= dinner; | 02:43 | ||
lue | good nomming TimToady! o/ | ||
02:44
kcwu joined
|
|||
lue | rakudo: say False | 02:45 | |
p6eval | rakudo 32a946: OUTPUT«0» | ||
colomon | rakudo: say False.perl | 02:46 | |
p6eval | rakudo 32a946: OUTPUT«Bool::False» | ||
colomon | rakudo: say ((1/5 + 1/6) / 2).perl | 02:48 | |
p6eval | rakudo 32a946: OUTPUT«11/60» | ||
02:49
quietfanatic left
|
|||
pugssvn | r29925 | colomon++ | [t/spec] Add arity-1tests which have a not-exactly-hit limit. | 02:50 | |
02:51
jaldhar joined
|
|||
lue has added in a couple of file test methods for Str, compiling now... | 02:53 | ||
diakopter feels alone in getting "Which of Endor" | 02:54 | ||
TimToady: .= dinner; # gives new meaning to "you are what you eat" | 02:55 | ||
colomon | diakopter: well said. :) | ||
k23z__ | eh nice :) | ||
Perl6 is nice | |||
I saw you guys were planning to make bindings for OpenGL ? | 02:56 | ||
is that correct ? | |||
or with SDL ? | |||
lue | SDL I was discussing the other day (OpenGL would only be the logical next step :) ) | ||
Parrot supports SDL, therefore R* should support it (if only thru a library) | 02:57 | ||
k23z__ | R* = ? | 02:59 | |
what does the VM have to do with a Graphics library ? | |||
lue | R* = Rakudo Star (commonly abbr. Rakudo *), the so called "first official release" or Perl6 | 03:00 | |
R* is my personal abbreviation :) | |||
colomon | if the VM (Parrot) supports it, it should be very easy to build a Rakudo library for it. | ||
lue | ...when libraries are implemented :D | 03:01 | |
pugssvn | r29926 | colomon++ | [t/spec] A few decreasing arithmetic tests added. | ||
03:01
stephenlb left
|
|||
lue | We should subconsiously plant ideas in the heads of the devs at #parrot, so that we can avoid any real programming :) | 03:03 | |
lue D'Arvit! This channel is logged. My plan is foiled :( | 03:04 | ||
I has .e .z and .s file tests ready to upload. How should I upload these changes? | 03:05 | ||
colomon | probably e-mail the patch to the rakudobugs e-mail, labeled [PATCH]. | 03:06 | |
give me a moment to finish what I was doing... | |||
lue | but, but... that won't give me the same feeling of satisfaction as uploading it myself :) | 03:07 | |
colomon | commit your changes to your local version of git. | ||
lue | (besides, last time I tried emailing rakudobug, it wouldn't go through) | ||
03:07
wknight8111 left
|
|||
lue | colomon: I'm going to assume what that means on this IRC while looking it up on teh google. | 03:08 | |
colomon | lue: You need to have a rakudo commit bit for directly submitting it, which I believe requires filing a form with the Perl Foundation -- ie, it's abit of a pain. | ||
git commit -a | |||
arlinius | a form? ick | ||
colomon | will commit all your changes in one patch. | ||
lue | well... I'd email rakudobug, but as I said, when I tried emailing a bug report, I never could mail it. :/ | 03:09 | |
lue form, or email that didn't work last time........ | 03:10 | ||
colomon | once you've got your patch committed on your local version, you can say | ||
git format-patch -1 | |||
k23z__ | I would like to make a suggestion | ||
colomon | to turn your last commit into a portable patch file you can e-mail to the bug tracker or pastebin here. | ||
k23z__ | if you guys make OpenGL bindings or SDL bindings there would be a herd of programmers running towards Perl6 to write code in it because they can see stuff moving around | 03:11 | |
lue | so, what you just told me is the w/o commiting way :) | ||
colomon | lue: no, with git, pretty much every way is the committing way. | 03:12 | |
lue | .oO(<form> Q:What is your social security number? A:you want my SS#? uh...) |
||
would I need to sign up a github to use what you told me? (let's try anywaaay...) | |||
colomon | lue: no. | ||
(no sign up) | |||
basically, you commit locally and then either push the commit directly to github (which you can't do yet) or make a patch and send it to someone who can commit directly to github. | 03:13 | ||
it's the git way | |||
lue | so, for commit -a, just write a commit message on an uncommented line? | ||
colomon | yes | ||
lue | ...where did the patch go? | 03:15 | |
colomon | should be a file | 03:16 | |
with a very long name. | |||
lue | nvm, looking at old ls command :) | ||
I'll paste it, instead of mucking around with email | 03:17 | ||
(heh, in Konqueror a patch shows up as a file with a bandaid on it :D ) | 03:18 | ||
lisppaste3 | lue pasted "filetests for src/builtins/Str.pir" at paste.lisp.org/display/95843 | 03:22 | |
jnthn | o/ | 03:23 | |
lue | o/ jnthn | ||
jnthn | night folks :-) | ||
colomon | goodnight | ||
03:24
JOHND joined,
alester joined
|
|||
pugssvn | r29927 | colomon++ | [t/spec] Tests for series generated by { -$_ }. | 03:25 | |
lue and now, a turnabout to some spec tests for file tests :) | 03:26 | ||
(methinks file tests should go in S32-io, as opposed to S16-io) | 03:27 | ||
colomon | lue: I'm switching back to the standard rakudo branch so I integrate your patch. be a few minutes here... | 03:29 | |
lue | I'll implement more file tests as I am able to. What I uploaded is more of a proof-of-concept type thing | 03:30 | |
colomon | sure. | 03:31 | |
I also suspect it could be rewritten using the pir:: interface to be a lot shorter. | |||
but what you've got there looks like it gets something useful done right now, and that's a Good Thing. | |||
03:32
JimmyZ_ joined,
JimmyZ_ left
|
|||
lue | I would've written it in a pm file, but the only I knew was with PIR, so putting it in perl seemed redundant to me :) | 03:32 | |
er, unecessary | 03:33 | ||
colomon | let me see.... | ||
rakudo: say pir::stat__SII('/etc/passwd'); | 03:34 | ||
p6eval | rakudo 32a946: OUTPUT«The opcode 'stat_s_i' (stat<2>) was not found. Check the type and number of the argumentscurrent instr.: 'perl6;PCT;HLLCompiler;evalpmc' pc 972 (compilers/pct/src/PCT/HLLCompiler.pir:538)» | ||
colomon | well, something like that. | ||
rakudo: say pir::stat__SII('/etc/passwd', 1); | 03:35 | ||
p6eval | rakudo 32a946: OUTPUT«The opcode 'stat_s_i_i' (stat<3>) was not found. Check the type and number of the argumentscurrent instr.: 'perl6;PCT;HLLCompiler;evalpmc' pc 972 (compilers/pct/src/PCT/HLLCompiler.pir:538)» | ||
colomon | rakudo: say pir::stat__ISI('/etc/passwd', 1); | ||
p6eval | rakudo 32a946: OUTPUT«813» | ||
colomon | rakudo: say pir::stat__ISI('/etc/passwd', 0); | ||
p6eval | rakudo 32a946: OUTPUT«1» | ||
03:36
justatheory left
|
|||
lue | I'll go and write the spectests anyway :) (hows about S32-io/file-tests.t) | 03:36 | |
colomon | Absolutely! | ||
(I mean, writing the tests.) | |||
I'm surprised there are some sort of tests for this already? | |||
lue | no, I was suggesting the name of a file :) | 03:37 | |
colomon | did you look at S16-filehandles/filetest.t ? | ||
but I'd certainly be okay with S32-io, too. | 03:38 | ||
lue | ...no :) | ||
when I looked, S32 defined all the filetests in full detail | |||
(relatively) full detail | |||
colomon loves the power of ack in TextMate for searching the source. :) | |||
alester | You're using ack in project, right? | 03:39 | |
colomon | alester: yes. | 03:40 | |
I love it, it blows TextMate's multi-file find away. | |||
lue | (working from remote server (ssh) is weird. I'd prefer to invoke X from it, if it did anything useful (I wouldn't know)) | ||
colomon | okay, I've got a clean spectest before applying your patch | 03:41 | |
lue | S16-filehandles/filetest.t looks very cryptic. I think that could've been coded better :) (remember TIMTOWTDI) | ||
03:41
athenot left
03:42
athenot joined
|
|||
colomon | (glances at test file) yes, a simpler version which tests just what you just added is probably a pretty good idea. | 03:42 | |
(that's exactly what I'm doing with series.) | 03:43 | ||
lue | I think it was written in the pugs days (certainly feels like it) | ||
colomon | rakudo: say $*PROGRAM_NAME | ||
p6eval | rakudo 32a946: OUTPUT«/tmp/idVzMyj44f» | 03:44 | |
colomon | interesting.... | ||
I've never seen skips called that way in a test file before. | |||
lue: :e works for me. | 03:47 | ||
lue | the Str method 'string'.e ? | 03:48 | |
03:48
athenot left,
airbase left
|
|||
lue | I didn't code the general :e command | 03:48 | |
colomon | yes | ||
and :z | |||
:s doesn't seem to return the length? | 03:49 | ||
lue | size in bytes (it should) | ||
03:49
athenot joined
|
|||
colomon | I'm just getting 1 | 03:50 | |
lue | lemme see... | ||
colomon | I don't understand why, the code looks sensible to me. | 03:51 | |
lue | for /etc/passwd, i get 2211 (bytes). Try that. | ||
03:51
airbase joined
|
|||
colomon | > say "/etc/passwd" ~~ :s | 03:51 | |
1 | |||
> say pir::stat__ISI('/etc/passwd', 1); | |||
2888 | |||
it is a puzzlement. | |||
lue | try C<say "/etc/passwd".s> | 03:52 | |
colomon: you were comparing. 1 = True :) | |||
colomon | > say "/etc/passwd".s | ||
2888 | |||
alpha: say "/etc/passwd" ~~ :S | 03:53 | ||
p6eval | alpha 30e0ed: OUTPUT«Method ':S' not found for invocant of class 'Str'in Main (file src/gen_setting.pm, line 324)» | ||
colomon | alpha: say "/etc/passwd" ~~ :s | ||
p6eval | alpha 30e0ed: OUTPUT«813» | ||
lue | .oO(ack on this remote server is a KANJI CONVERTER) |
||
colomon | it works that way in alpha.... | ||
03:53
athenot left
|
|||
colomon | anyway, I'm going to spectest here. | 03:53 | |
alester | lue: Yes, yes, you have to install ack-grep, it's tragic | ||
betterthangrep.com | |||
lue | I can't though. Not my machine :/ | 03:54 | |
alester | do you have a ~/bin directory? | ||
lue | ...no | ||
alester | you don't have a home directory? | ||
lue | .oO(although I wouldn't find a KANJI CONVERTER useless) |
||
I do, just not the bin folder :) | |||
alester | Right, but you can make your own ~/bin directory | 03:55 | |
and then put ack in it | |||
and then set your PATH to include ~/bin | |||
lue | where would I get it though? | ||
colomon | CPAN | ||
lue | (looks like some graphical operations are needed... come Konqueror) :) | 03:56 | |
that would make making the smartlinks in spectesting a lot easier :) | 03:58 | ||
03:58
quietfanatic joined
|
|||
alester | lue: Look at betterthangrep.com/ | 03:58 | |
03:58
xomas left
|
|||
alester | There's a link to the standalone version. Download it into ~/bin/ack | 03:59 | |
A single file. That's it. | |||
lue | comeon. This machine has not curl! | 04:03 | |
dalek | kudo: f6092e9 | Lue++ | src/builtins/Str.pir: added the .s .z and .e file test methods for Str |
04:04 | |
04:07
quietfanatic_ joined,
quietfanatic left,
quietfanatic_ is now known as quietfanatic
|
|||
lue is really peeved at freenode's alphanumeric nicks thing. He can't even change his nick to lue++ for fun >:( | 04:08 | ||
alester | lue: Highlight the text at betterthangrep.com/ack-standalone. Paste it ignto your terminal as a file. | ||
I have made it SO butt simple | |||
lue | I got it using wget | ||
alester | ok | ||
lue | but now I can't change $PATH :*( | 04:09 | |
colomon is going to bed... | |||
lue | gnight colomon | 04:10 | |
ACK DOESN'T WORK! YEEEEEEEARRRRRRRRRRGHHHHHHHHHH | 04:12 | ||
lue please ignore the venting | |||
YYYYYYYYYYYYYYYYEEEEEEEEEEEEEAAAAAAAAAAAAAARRRRRRRRRRRRRR | |||
If only my computer weren't so slow, then I wouldn't even BE ssh'ing to another one! | |||
alester | "doesn't work"? | ||
lue | >:( | ||
alester: it won't search | 04:13 | ||
alester | Need more detail than that | ||
lue | I type in, say, ~/bin/ack pattern (can't set $PATH), and then nothing happens. No errors, no results, nothing. | ||
> ~/bin/ack pattern | 04:14 | ||
[nothing] | |||
alester | ok, what do you expect it to do? | ||
lue | eh, search for something I know should come up (like the letter z) | ||
alester | in what file? | ||
lue | I'm searching through the files in the directory (never used ack, and help won't come up) | 04:15 | |
alester | ~/bin/ack --help | ||
arlinius | maybe pattern didn't match? | 04:16 | |
lue | --help gives me nothing | ||
alester | and what is a file in the directory that you expect to match? | ||
ack only searches files it knows about. | |||
that it knows the type of. | |||
lue | the .pod files of the Spec | ||
alester | ~/bin/ack -f | 04:17 | |
see what files it's searching | |||
and yes, you CAN set PATH | |||
lue | and again, nothing (methinks it didn't install right) | ||
alester | PATH=$PATH:~/bin | ||
lue | by default, it loads the KANJI CONVERTER, so even setting PATH wouldn't help | 04:18 | |
s/wouldn't/won't/ | |||
alester | Are you in the direoctory with the pod files? | ||
lue | yes | ||
alester | PATH=~/bin:$PATH | ||
it will search in your ~/bin first | 04:19 | ||
lue | and now nothing, as if I didn't bother with path :( | ||
(at this point, using grep would've been faster) | |||
alester | then do that | 04:20 | |
I'm doin' my damndedst you know | |||
lue | I know. I'm getting angry at everything EXCEPT you, alester :) | ||
alester++ (thanks for helping) | 04:21 | ||
alester | perl ~/bin/ack -a -f | ||
should list every file in your diretory tree | |||
(almost) | |||
lue | I think something went wrong downloading ack. It just does nothing. :) | 04:22 | |
alester | wc -l ack | ||
lue | wc -l ack returns does not exist (I really want to be able to do whatever I want to this remote computer right now.) | 04:23 | |
04:24
athenot joined
|
|||
lue | I'll deal with it tomorrow. Good night! | 04:24 | |
04:24
lue left
04:26
Sarten-X joined
|
|||
arlinius | alester: are you the maintainer of ack? | 04:33 | |
alester | I am | ||
author | |||
arlinius | the App::Ack CPAN module hangs indefinitely on tests for me | 04:34 | |
but then i canceled the tests and just copied the script to bin and it works fine | |||
unless the tests are designed to scan every file on the hard drive and really legitimately take all day ... | |||
alester | Not sure what your problem is | ||
04:35
athenot left
|
|||
arlinius | neither am i, and it's not a big issue for me, just thought i'd let you know | 04:35 | |
odd | 04:38 | ||
just retried and it installed fine this time | |||
arlinius shrugs | 04:39 | ||
04:42
rv2733 joined
04:44
athenot joined
04:48
JOHND left
|
|||
TimToady | colomon: ~~ :s returning True is correct under the current semantics | 05:01 | |
pugssvn | r29928 | lwall++ | [S03] clarify the way Pair.ACCEPTS uses "so" and "not" semantics | 05:02 | |
05:13
rv2733 left
|
|||
quietfanatic | Heh, having the 'so' keyword means you can say "$flag = so not True" for extra emphasis. | 05:15 | |
TimToady | we could add indeed as well | 05:21 | |
diakopter | verily | 05:22 | |
std: so and so - 9 | 05:24 | ||
p6eval | std 29927: OUTPUT«Undeclared routine: 'and' used at line 1ok 00:01 106m» | ||
diakopter | std: that is, like, so not True | 05:25 | |
p6eval | std 29927: OUTPUT«Undeclared routines: 'is' used at line 1 'like' used at line 1 'that' used at line 1ok 00:01 107m» | ||
05:26
nihiliad left
|
|||
TimToady | rakudo: say not so True | 05:27 | |
p6eval | rakudo f6092e: OUTPUT«0» | ||
TimToady | rakudo: say so so True | ||
p6eval | rakudo f6092e: OUTPUT«1» | ||
diakopter | std: so so False and so | ||
p6eval | std 29928: OUTPUT«Potential difficulties: Missing final term in 'and' list at /tmp/ddgs3Y0SHL line 1:------> <BOL>⏏so so False and sook 00:01 107m» | ||
diakopter | haven't seen that error b4 | ||
er, warning | 05:28 | ||
std: say(so True and 1) | 05:29 | ||
p6eval | std 29928: OUTPUT«===SORRY!===Unable to parse argument list; couldn't find final ')' at /tmp/XsUV8qCKGT line 1:------> say(so True ⏏and 1) expecting an infix operator with precedence tighter than list prefixFAILED 00:01 107m» | ||
diakopter | urp | ||
std: say (so True and 1) | 05:30 | ||
p6eval | std 29928: OUTPUT«ok 00:01 107m» | ||
diakopter | o_o | ||
o|o | |||
TimToady: is that a genuine buggle? | 05:31 | ||
now. I'm getting angry at everything EXCEPT you, alester :) | 05:32 | ||
22:21 < lue> alester | |||
erm | |||
TimToady | no, the the "Missing final term" might be | ||
diakopter | mispaste | ||
TimToady | *though the | 05:33 | |
diakopter | why does say (so True and 1) pass but say(so True and 1) doesn't? | 05:34 | |
TimToady | because those aren't function arg parens | ||
05:34
hicx174 left
|
|||
diakopter | std: say((so True and 1)) | 05:34 | |
p6eval | std 29928: OUTPUT«ok 00:01 107m» | ||
diakopter | o | ||
05:36
hicx174 joined
|
|||
diakopter | rakudo: say(1 and 1) | 05:38 | |
p6eval | rakudo f6092e: OUTPUT«Confused at line 11, near "say(1 and "current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)» | ||
diakopter | pugs: say(1 and 1) | ||
p6eval | pugs: OUTPUT«1» | ||
TimToady | pugs: say(1,2 and 3) | ||
p6eval | pugs: OUTPUT«13» | ||
TimToady | but you see, and is supposed to be looser than comma... | 05:39 | |
which means it can't be meaningful in a function's arguments | |||
diakopter | pugs: say(1,2and 3) | 05:40 | |
p6eval | pugs: OUTPUT«13» | ||
diakopter | rakudo: say (3,1 and 2,4) | 05:41 | |
p6eval | rakudo f6092e: OUTPUT«24» | ||
05:41
athenot left
|
|||
diakopter | rakudo: say (3;1 and 2;4) | 05:41 | |
p6eval | rakudo f6092e: OUTPUT«4» | 05:42 | |
diakopter | o_O | ||
TimToady | 3 statements | ||
diakopter | Perl. Statement Lists are Expressions, too. | 05:43 | |
Perl. Statement[ List]s are Expressions, too. | |||
rakudo: say (;;).WHAT | 05:44 | ||
p6eval | rakudo f6092e: OUTPUT«Int()» | ||
05:46
athenot joined
|
|||
diakopter | but if there are no commas... | 05:47 | |
oh | |||
TimToady | I have no idea why that's Int | 05:48 | |
diakopter | rakudo: say 6 / 7 / 6 / (7**-1) # masakbot | 05:49 | |
p6eval | rakudo f6092e: OUTPUT«Inf» | ||
diakopter | rakudo: say 7**-1 # masakbot | ||
p6eval | rakudo f6092e: OUTPUT«0» | ||
diakopter | heh | ||
05:50
quietfanatic left,
alester left,
athenot left
|
|||
diakopter | pugs: say 1/7/7/7/7/7/7/7*7 # masakbot FAIL | 05:52 | |
p6eval | pugs: OUTPUT«0.0000084998597523140868175675101360827546» | ||
diakopter | rakudo: say 1/7/7/7/7/7/7/7*7 # masakbot FAIL | ||
p6eval | rakudo f6092e: OUTPUT«1» | ||
diakopter | I mean rakudo :) | ||
and * are left-associative *together*, right? | 05:54 | ||
/ and * are left-associative *together*, right? | |||
arlinius | rakudo: say 1/0*1 | ||
p6eval | rakudo f6092e: OUTPUT«Inf» | ||
arlinius | rakudo: say 1/0*Inf | ||
p6eval | rakudo f6092e: OUTPUT«Inf» | ||
diakopter | perl6: say 1/7/7*7*7 | 05:55 | |
p6eval | elf 29928, pugs, rakudo f6092e: OUTPUT«1» | ||
TimToady | rakudo: say so Inf | ||
p6eval | rakudo f6092e: OUTPUT«1» | ||
diakopter | perl6: say 1/7/7/7/7*7*7 | ||
p6eval | elf 29928: OUTPUT«0.0204081632653061» | ||
..rakudo f6092e: OUTPUT«1» | |||
..pugs: OUTPUT«0.0204081632653061224489795918367346938776» | |||
diakopter | elf++ pugs++ | ||
arlinius | heh | ||
diakopter | 'tis a parse fail | 05:56 | |
I think | |||
hejki | pugs is the haskell impl, well what's elf? :> | ||
diakopter | perl/ruby/perl | 05:57 | |
hejki | :> | ||
diakopter | that's a ... scary fail | 05:58 | |
rakudo: say ((((((1/7)/7)/7)/7)*7)*7) | 05:59 | ||
p6eval | rakudo f6092e: OUTPUT«0.0204081632653061» | ||
hejki | i'm just wondering what you did replace with perl in the first (or the last) part:) | ||
diakopter | STD for the first perl | ||
hejki | sexually transmitted disease? :P | ||
diakopter | I suppose it could be transmitted sexually, if you tried hard enough | 06:00 | |
hejki | (: | ||
diakopter | rakudo: say (1/(7/(7/(7/(7*(7*7)))))) | 06:01 | |
hejki | does any implementation have laziness yet? i'd guess pugs could have, after all it's in haskell :> | ||
p6eval | rakudo f6092e: OUTPUT«49» | ||
diakopter | pugs doesn't compile *to* haskell | ||
hejki | oh | ||
TimToady | rakudo now has laziness | ||
hejki | oh really? :o | ||
nice :) | 06:02 | ||
TimToady | rakudo: say 1..*.batch(10) | ||
p6eval | rakudo f6092e: OUTPUT«» | ||
TimToady | rakudo: say (1..*).batch(10) | ||
p6eval | rakudo f6092e: OUTPUT«Method 'batch' not found for invocant of class 'Range'current instr.: '_block14' pc 29 (EVAL_1:0)» | ||
TimToady | rakudo: say (1..*).iterator.batch(10) | ||
p6eval | rakudo f6092e: OUTPUT«» | ||
TimToady | hmm | ||
hejki | rakudo: my @ar = gather { for ^Inf -> $x { take $x if $x % 3 == 0; }; }; say @ar[1]; | ||
diakopter | <sidelong squint> | ||
p6eval | rakudo f6092e: ( no output ) | ||
TimToady | rakudo: say (1...*).iterator.batch(10) | ||
p6eval | rakudo f6092e: OUTPUT«12345678910» | ||
TimToady | rakudo: say (1...*).batch(10) | 06:03 | |
p6eval | rakudo f6092e: OUTPUT«12345678910» | ||
06:03
xomas joined,
xomas left,
xomas joined
|
|||
diakopter | rakudo: say (1...^*).batch(10) | 06:03 | |
p6eval | rakudo f6092e: OUTPUT«10-1-2-3-4-5-6-7-8» | ||
diakopter | O_O | ||
hejki | :O | ||
TimToady | rakudo: say (1,2,4 ... *)[10] | 06:04 | |
p6eval | rakudo f6092e: ( no output ) | ||
diakopter | # masakbot: see my last | ||
TimToady | maybe doesn't intuit yet | ||
hejki | rakudo: say (1,3,5...*)[6]; | ||
not even with easier logic :) | |||
diakopter | I think it timed out | ||
hejki | ye | ||
TimToady | rakudo: say (1,2,4, {$^a * $^a} ... *)[10] | ||
p6eval | rakudo f6092e: ( no output ) | 06:05 | |
rakudo f6092e: OUTPUT«Method 'postcircumfix:<[ ]>' not found for invocant of class 'Failure'current instr.: '!postcircumfix:<[ ]>' pc 10568 (src/builtins/Role.pir:90)» | |||
TimToady | rakudo: say (1,2,4, {$^a + $^a} ... *)[10] | ||
p6eval | rakudo f6092e: OUTPUT«Method 'postcircumfix:<[ ]>' not found for invocant of class 'Failure'current instr.: '!postcircumfix:<[ ]>' pc 10568 (src/builtins/Role.pir:90)» | ||
diakopter | rakudo: say (1,2,4 ... *).batch(11)[10] | ||
p6eval | rakudo f6092e: OUTPUT«1024» | ||
TimToady | rakudo: say (1,2,4, * * 2 ... *)[10] | ||
p6eval | rakudo f6092e: OUTPUT«Method 'Num' not found for invocant of class 'Block'current instr.: 'perl6;Mu;' pc -1 ((unknown file):-1)» | ||
TimToady | rakudo: say (1,2,4, -> $x { $x * 2 } ... *)[10] | ||
p6eval | rakudo f6092e: OUTPUT«Method 'postcircumfix:<[ ]>' not found for invocant of class 'Failure'current instr.: '!postcircumfix:<[ ]>' pc 10568 (src/builtins/Role.pir:90)» | ||
diakopter | mine worked :P | 06:06 | |
TimToady | rakudo: say (1,2,4, -> $x { $x * 2 } ... *).batch(10) | ||
p6eval | rakudo f6092e: OUTPUT«Method 'batch' not found for invocant of class 'Failure'current instr.: '_block14' pc 29 (EVAL_1:0)» | ||
TimToady | decommuting & | 06:07 | |
06:08
astrojp left
|
|||
diakopter | rakudo: say (1..Inf).iterator.batch(10) | 06:08 | |
p6eval | rakudo f6092e: OUTPUT«12345678910» | ||
diakopter | rakudo: say (1..Inf).iterator.batch(1000) | ||
p6eval | rakudo f6092e: | ||
..OUTPUT«123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130… | |||
diakopter | rakudo: say (Inf...1).iterator.batch(100) | 06:09 | |
p6eval | rakudo f6092e: | ||
..OUTPUT«InfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInf… | |||
diakopter | :) | ||
rakudo: say (NaN...Inf).iterator.batch(10) | 06:10 | ||
p6eval | rakudo f6092e: OUTPUT«NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN» | ||
diakopter | std: say and die 6 | 06:11 | |
p6eval | std 29928: OUTPUT«Undeclared routine: 'and' used at line 1ok 00:01 105m» | ||
diakopter | TimToady: see above | ||
rakudo: say and die 3 | |||
p6eval | rakudo f6092e: OUTPUT«3current instr.: '&die' pc 16799 (src/builtins/Junction.pir:347)» | ||
06:12
snarkyboojum joined
06:15
athenot joined
|
|||
diakopter | actually, that's a rakudo parse wrongness; # masakbot see above | 06:16 | |
06:17
alester joined
06:19
athenot left
06:39
simcop2387 left
|
|||
mberends | good morning | 06:42 | |
06:43
gfx joined,
simcop2387 joined
|
|||
diakopter | hi | 06:45 | |
06:49
Sunil joined
|
|||
eternaleye | rakudo: multi sub fy-pick( @foo is copy, Whatever ) { my $remaining = @foo.end; while $remaining { my $pos = (rand * $remaining).Int; @foo[$pos, $remaining] = @foo[$remaining, $pos]; --$remaining; }; return @foo; }; say ~fy-pick( ^10, * ) | 06:53 | |
p6eval | rakudo f6092e: OUTPUT«No applicable candidates found to dispatch to for 'fy-pick'current instr.: '_block14' pc 29 (EVAL_1:0)» | ||
eternaleye | alpha: multi sub fy-pick( @foo is copy, Whatever ) { my $remaining = @foo.end; while $remaining { my $pos = (rand * $remaining).Int; @foo[$pos, $remaining] = @foo[$remaining, $pos]; --$remaining; }; return @foo; }; say ~fy-pick( ^10, * ) | 06:54 | |
p6eval | alpha 30e0ed: OUTPUT«5 2 8 7 9 6 4 0 3 1» | ||
eternaleye | \o/ | ||
06:54
kaare joined
06:55
kaare is now known as Guest22077
|
|||
eternaleye | alpha: multi sub fy-pick( @foo is copy, int $count ) { my $remaining = @foo.end; while $remaining > $count { my $pos = (rand * $remaining).Int; @foo[$pos, $remaining] = @foo[$remaining, $pos]; --$remaining; }; return @foo[*-$count..@foo.end]; }; say ~fy-pick( ^10, 3 ) | 06:59 | |
p6eval | alpha 30e0ed: OUTPUT«Unable to parse multisig; couldn't find final ')' at line 10, near ", int $cou"in Main (file <unknown>, line <unknown>)» | ||
eternaleye | alpha: multi sub fy-pick( @foo is copy, Int $count ) { my $remaining = @foo.end; while $remaining > $count { my $pos = (rand * $remaining).Int; @foo[$pos, $remaining] = @foo[$remaining, $pos]; --$remaining; }; return @foo[*-$count..@foo.end]; }; say ~fy-pick( ^10, 3 ) | ||
p6eval | alpha 30e0ed: OUTPUT«4 2 8» | ||
07:00
alester left
07:01
pmurias joined
|
|||
eternaleye | alpha: multi sub fy-pick( @foo is copy, Whatever, :replace ) { gather { my $pos = (rand * @foo.end).Int; take( @foo[$pos] ); }; return @foo; }; say ~fy-pick( ^10, *, :replace ).batch(20) | 07:02 | |
p6eval | alpha 30e0ed: OUTPUT«Unable to parse multisig; couldn't find final ')' at line 10, near ":replace )"in Main (file <unknown>, line <unknown>)» | ||
eternaleye | alpha: multi sub fy-pick( @foo is copy, Whatever, :replace($) ) { gather { my $pos = (rand * @foo.end).Int; take( @foo[$pos] ); }; return @foo; }; say ~fy-pick( ^10, *, :replace ).batch(20) | ||
p6eval | alpha 30e0ed: OUTPUT«Method 'batch' not found for invocant of class 'Perl6Array'in Main (file src/gen_setting.pm, line 324)» | ||
eternaleye | rakudo: multi sub fy-pick( @foo is copy, Whatever, :replace($) ) { gather { my $pos = (rand * @foo.end).Int; take( @foo[$pos] ); }; return @foo; }; say ~fy-pick( @foo = ( ^10 ), *, :replace ).batch(20) | 07:03 | |
p6eval | rakudo f6092e: OUTPUT«Confused at line 11, near "say ~fy-pi"current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)» | ||
eternaleye | rakudo: multi sub fy-pick( @foo is copy, Whatever, :replace($) ) { gather { my $pos = (rand * @foo.end).Int; take( @foo[$pos] ); }; return @foo; }; say ~fy-pick( my @bar = ( ^10 ), *, :replace ).batch(20) | ||
p6eval | rakudo f6092e: OUTPUT«Redeclaration of symbol @bar at line 11, near " = ( ^10 )"current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)» | ||
eternaleye | rakudo: multi sub fy-pick( @foo is copy, Whatever, :replace($) ) { gather { my $pos = (rand * @foo.end).Int; take( @foo[$pos] ); }; return @foo; }; say ~fy-pick( (my @bar = ( ^10 )), *, :replace ).batch(20) | 07:04 | |
p6eval | rakudo f6092e: OUTPUT«Method 'batch' not found for invocant of class 'Array'current instr.: '_block14' pc 29 (EVAL_1:0)» | ||
eternaleye | rakudo: multi sub fy-pick( @foo is copy, Whatever, :replace($) ) { gather { my $pos = (rand * @foo.end).Int; take( @foo[$pos] ); }; }; say ~fy-pick( (my @bar = ( ^10 )), *, :replace ).batch(20) | ||
p6eval | rakudo f6092e: OUTPUT«1» | ||
eternaleye | rakudo: multi sub fy-pick( @foo is copy, Whatever, :replace($) ) { gather { while 1 { my $pos = (rand * @foo.end).Int; take( @foo[$pos] ); }; }; }; say ~fy-pick( (my @bar = ( ^10 )), *, :replace ).batch(20) | ||
p6eval | rakudo f6092e: OUTPUT«20» | ||
eternaleye | rakudo: multi sub fy-pick( @foo is copy, Whatever, :replace($) ) { gather { while 1 { my $pos = (rand * @foo.end).Int; take( @foo[$pos] ); }; }; }; say ~fy-pick( (my @bar = ( ^10 )), *, :replace ).batch(20) | 07:05 | |
p6eval | rakudo f6092e: OUTPUT«20» | ||
eternaleye | rakudo: multi sub fy-pick( @foo is copy, Whatever, :replace($) ) { gather { while 1 { my $pos = (rand * @foo.end).Int; take( @foo[$pos] ); }; }; }; say ~(fy-pick( (my @bar = ( ^10 )), *, :replace ).batch(20)) | ||
p6eval | rakudo f6092e: OUTPUT«20» | ||
eternaleye | ... | ||
It's like I grok it in large but not in small | 07:06 | ||
07:20
uniejo joined
07:26
xabbu42 joined
07:29
Trashlord joined
07:30
quietfanatic joined
07:33
Su-Shee joined
|
|||
pugssvn | r29929 | lwall++ | [STD] Don't give misleading message when prefix missing its term | 07:38 | |
07:39
barney joined
07:41
pmurias left
07:47
ihrd1 joined
07:48
snarkyboojum left
07:52
ihrd1 left
07:57
riffraff joined
07:58
PacoLinux left
08:03
Sunil left
08:04
payload1 joined,
payload left
08:12
masak joined
|
|||
masak | good morning, #perl6 | 08:12 | |
TimToady | good evening | 08:13 | |
std: so so and so | |||
p6eval | std 29929: OUTPUT«===SORRY!===Prefix requires an argument at /tmp/6tPuObw2jW line 1 (EOF):------> so so and so⏏<EOL> expecting any of: prefix or meta-prefix prefix_postfix_meta_operator termFAILED 00:01 108m» | 08:14 | |
masak | std: so not True; | ||
p6eval | std 29929: OUTPUT«ok 00:01 106m» | ||
TimToady | std: so not | ||
p6eval | std 29929: OUTPUT«===SORRY!===Prefix requires an argument at /tmp/7lTOjXUIWj line 1 (EOF):------> so not⏏<EOL> expecting any of: prefix or meta-prefix prefix_postfix_meta_operator termFAILED 00:01 106m» | ||
masak | std: not so ... | 08:15 | |
p6eval | std 29929: OUTPUT«ok 00:01 106m» | ||
08:20
snarkyboojum joined
08:21
JimmyZ joined
|
|||
JimmyZ | std: if so | 08:21 | |
p6eval | std 29929: OUTPUT«===SORRY!===Prefix requires an argument at /tmp/uhOgFEHHnQ line 1 (EOF):------> if so⏏<EOL> expecting any of: prefix or meta-prefix prefix_postfix_meta_operator termFAILED 00:01 106m» | ||
JimmyZ | std: if so ugly rip it out | ||
p6eval | std 29929: OUTPUT«===SORRY!===Missing block (apparently gobbled by undeclared routine?) at /tmp/6aBpVkiC0C line 1 (EOF):------> if so ugly rip it out⏏<EOL> expecting argument listUndeclared routines: 'it' used at line 1 'out' used at line 1 | ||
.. 'rip' used a… | |||
TimToady | std: .say if .so given True | 08:22 | |
p6eval | std 29929: OUTPUT«ok 00:01 105m» | ||
JimmyZ | std: rip it out if so ugly | ||
p6eval | std 29929: OUTPUT«Undeclared routines: 'it' used at line 1 'out' used at line 1 'rip' used at line 1 'ugly' used at line 1ok 00:01 106m» | ||
JimmyZ | stdo: if 1 true; | 08:23 | |
std: if 1 true; | |||
p6eval | std 29929: OUTPUT«===SORRY!===Missing block at /tmp/sOMiPfLSZH line 1:------> if 1 ⏏true; expecting any of: bracketed infix infix or meta-infixFAILED 00:01 106m» | ||
masak | JimmyZ: also, two terms in a row. | 08:26 | |
(though that rule is temporarily lifted since we're in a special form) | |||
spinclad | heh, i like Peter Makholm's trailing talk, 'Perl 5 isn't so bad after all' | ||
08:29
xomas left
08:31
xomas joined,
xomas left,
xomas joined
|
|||
masak | spinclad: URL? | 08:32 | |
JimmyZ | masak: I can't understand | 08:33 | |
masak | from the learning-from-the-suffering-of-other-language-communities department: here's a Ruby string encoding rant: github.com/candlerb/string19/raw/47...soapbox.rb | ||
JimmyZ: know what a term is? | |||
JimmyZ | if? | ||
masak | JimmyZ: no, a term is a 'lexical item', like a number, or a variable, or a string, or a list... | 08:34 | |
it's the nouns of programming languages. | |||
JimmyZ | I'd like 'if 1 true' passes std. | 08:35 | |
masak | yes, and I'm in the process of explaining to you why it won't :) | ||
JimmyZ | so, why? | 08:36 | |
masak | because you can't have two terms in a row. both '1' and 'true' are terms. | ||
by the way, back when 'true' existed in Perl 6, it expected an argument, so you can't have it last in an expression. | |||
JimmyZ | and what's about perl 5? | 08:37 | |
std: if 1 return ture; | 08:38 | ||
p6eval | std 29929: OUTPUT«===SORRY!===Missing block at /tmp/GHmSn5XPBD line 1:------> if 1 ⏏return ture; expecting any of: bracketed infix infix or meta-infixFAILED 00:01 108m» | ||
spinclad | masak: www.opensourcedays.org/2010/node/267 :) | ||
hejki | :D | ||
tureing complete | |||
JimmyZ | std: my $a = 1; if $a return; | 08:39 | |
p6eval | std 29929: OUTPUT«===SORRY!===Missing block at /tmp/U74WdUpfQI line 1:------> my $a = 1; if $a ⏏return; expecting any of: bracketed infix infix or meta-infixFAILED 00:01 106m» | ||
masak | JimmyZ: so you're essentially advocating removing the braces? that won't happen. | ||
JimmyZ | std: my $a = 1; return if $a; | ||
p6eval | std 29929: OUTPUT«ok 00:01 106m» | ||
masak | spinclad: ah, should have guessed. :) | 08:40 | |
spinclad: yes, that's a nice title. gave me a bit of the wrong impression because of the context (five Perl 6 talks prior to it), but the description sounds nice. | 08:41 | ||
JimmyZ | masak: I just want to know why return if $a works. | ||
spinclad | 'perl 5 isn't all that bad as you say' | ||
masak | JimmyZ: when you phrase it that way, it almost sounds sensible. :) | 08:42 | |
spinclad | .oO{ oh, it has a description now? it was just a black text title last i looked, a while ago... } | 08:43 | |
08:46
snarkyboojum left
|
|||
masak | JimmyZ: think of it as two different types of 'if': the quick-and-easy type and the slightly-more-robus type. with the quick-and-easy version, you just slap on an 'if True' at the end of your statement. with the robus version, you have to be a bit more elaborate and use curly braces. | 08:51 | |
JimmyZ: I know that doesn't fully answer your question. it's the start of an explanation though. | |||
JimmyZ | std: if (-> { $^a + $^b})(1,1) { say 'hello' } | 08:52 | |
p6eval | std 29929: OUTPUT«===SORRY!===Placeholder variable $^a cannot override existing signature ( ) at /tmp/kO6TqK9JEk line 1:------> if (-> { $^a⏏ + $^b})(1,1) { say 'hello' } expecting any of: POST postfix postfix_prefix_meta_operatorFAILED 00:01 107m» | ||
spinclad | masak: yes, a talk about the Perl Renaissance sounds good, and Modern, and not at all Stop Dissing Our Language, TYVM. I hope the hall will have room to celebrate together the latest hot news of two sibling languages and their communities. | ||
JimmyZ | std: if (-> { $^a + $^b})(1,1)) { say 'hello' } | ||
p6eval | std 29929: OUTPUT«===SORRY!===Placeholder variable $^a cannot override existing signature ( ) at /tmp/MT9iEWW39G line 1:------> if (-> { $^a⏏ + $^b})(1,1)) { say 'hello' } expecting any of: POST postfix postfix_prefix_meta_operatorFAILED | 08:53 | |
..00:01 107m» | |||
JimmyZ | std: if ( { $^a + $^b})(1,1)) { say 'hello' } | ||
p6eval | std 29929: OUTPUT«===SORRY!===Expression needs parens to avoid gobbling block at /tmp/lvm8XLTXPn line 1:------> if ⏏( { $^a + $^b})(1,1)) { say 'hello' }Missing block (apparently gobbled by expression) at /tmp/lvm8XLTXPn line 1:------> if ( { $^a + | ||
..$^b})… | |||
JimmyZ | std: if ( -> $a, $b { $a + $b})(1,1)) { say 'hello' } | ||
p6eval | std 29929: OUTPUT«===SORRY!===Expression needs parens to avoid gobbling block at /tmp/fkllYkk0KR line 1:------> if ⏏( -> $a, $b { $a + $b})(1,1)) { say 'helMissing block (apparently gobbled by expression) at /tmp/fkllYkk0KR line 1:------> if ( -> $a, $b | ||
..… | |||
spinclad | *robust | ||
masak | aye. | ||
JimmyZ | std: if for $c -> $a, $b { $a + $b} { say 'hello' } | 08:54 | |
p6eval | std 29929: OUTPUT«===SORRY!===Variable $c is not predeclared at /tmp/UqKZOiWv9g line 1:------> if for $c⏏ -> $a, $b { $a + $b} { say 'hello' } expecting any of: POST postfix postfix_prefix_meta_operatorFAILED 00:01 105m» | ||
spinclad | std: if ({ $^a + $^b}(1,1)) -> $c { say "it makes $c" } | 08:55 | |
p6eval | std 29929: OUTPUT«ok 00:01 108m» | ||
masak | TimToady: with :!defined, can we kill off *.notdef now? there's one mention in S02 and two in S32/Basics. | 08:56 | |
08:56
JimmyZ left
|
|||
spinclad | rakudo: if ({ $^a + $^b}(1,1)) -> $c { say "it makes $c" } | 08:57 | |
p6eval | rakudo f6092e: OUTPUT«it makes 2» | ||
08:59
snarkyboojum joined
|
|||
mathw | Morning | 09:03 | |
m-locks | gm | 09:04 | |
09:07
quester joined,
dakkar joined
|
|||
masak | morning, mathw. | 09:08 | |
spinclad | good early morn, mathw, dawn still abed here | 09:11 | |
mathw | Dawn is well and truly past here | 09:16 | |
09:18
payload joined,
payload1 left
09:19
k23z__ left
09:23
payload left
09:26
jonasbn joined
|
|||
mathw | Wow masak, a whole load of your RT tickets just appeared in my inbox | 09:28 | |
masak | I would say 'sorry about that', but I guess I'm not... :) | ||
mathw | It's okay :) | 09:30 | |
I like to see that the masakbot is still in operation | 09:31 | ||
09:31
mathw sets mode: +o masak
|
|||
mathw | masak++ | 09:31 | |
masak | oh, operating just fine. | ||
mathw | :) | 09:32 | |
masak | "Hello, I'm Carl Mäsak. I'm an IRC bot. On my good days I pass the Turing test." | 09:33 | |
mathw | The Turing test is flawed | 09:34 | |
Emulation of a human is not really a very good test for a functional AI | |||
It's an AI, not a human... | |||
snarkyboojum | is it? :) | ||
mathw | Okay so you could write an AI which emulated a human | 09:35 | |
masak | mathw: depends on what the goal is, I guess. | ||
mathw | But why bother? | ||
spinclad | 'Hi, i'm an airplane. on my good days I flap my wings and pretend i'm a bird.' | ||
masak | mathw: I think there's good money in making programs that successfully pretend to be human. | 09:37 | |
mathw: depending on the exactness of the simulation, I can also see actual uses for such a technology. | |||
I agree that the human-likeness criterion is arbitrary and perhaps limiting, but I wouldn't say it's not interesting. | |||
mathw | It's probably harder | 09:38 | |
Although a human-like AI might be less scary | |||
An AI which behaves like an artificial lifeform and develops incomprehensible motivations would be a bit more worrisome | |||
masak | unless we land in the Uncanny Valley :) | ||
mathw | Although humans are scary enough, so... | ||
mathw intuits that all AIs are scary | 09:39 | ||
mathw further intuits that all sentient life forms are scary | |||
spinclad | 'hi, i'm a box on the net. on good days i pay the bills that keep me fed and cool. on bad days i just sulk.' | ||
limited self-situation (not to say awareness) need not be over-taxing... modelling one's duties and so attending to them is not so different from inbuilt knowing how to do them. free-form interaction need not be among those duties. | 09:43 | ||
09:43
jonasbn left
|
|||
spinclad intuits that people have long been scary | 09:43 | ||
09:44
b_jonas joined
09:46
barney left
|
|||
mberends | a SatNav with voice output passes the Turing Test without being asked any questions. "Turn around when possible. At the next roundabout, turn left"... Or is that the Turning Test that the human is trying to pass? | 10:09 | |
10:18
yinyin left
|
|||
masak | mberends: not sure that counts. the fact that the thing speaking to me is a little box with an LCD, is a bit of a tip-off. :) | 10:19 | |
mberends | masak: then you should be doing the test blindfold. Er, no, car drivers aren''t allowed to do that ;) | 10:20 | |
mathw | echo location! | 10:23 | |
what do you mean you don't have any bat DNA? | |||
10:26
orafu left,
orafu joined
|
|||
masak | mberends: :) | 10:26 | |
mberends | ah, jnthn-san is finally waking :) | 10:29 | |
10:29
riffraff left
10:30
riffraff joined
10:33
riffraff left
10:43
riffraff joined
|
|||
masak | could defining a new type be seen as a sort of grammar modification, albeit a very mild one? | 10:54 | |
colomon | Defining a new operator certainly is... | 10:55 | |
masak | yes... | ||
related question from yesterday: how do I define types so that they're *not* exported? | |||
colomon | I thought you could do "my class X", or something like that? Never tried it, I admit. | 10:56 | |
masak | hm. makes sense. thanks. | ||
colomon | It makes sense, but is it spec? And does it work? ;) | 10:57 | |
mathw | I think it is spec | ||
I'm sure I've read about that before | |||
It restricts visibility of the new type to the lexical scope | |||
(I think) | |||
(If it doesn't, why not, I want a good reason) | |||
sjohnson | yo matt | 10:59 | |
colomon | > (1,2,4, -> $a {$a + $a} ... *).batch(10).perl.say | ||
(1, 2, 4, 8, 16, 32, 64, 128, 256, 512) | |||
masak | lunch & | 11:01 | |
11:01
masak left
|
|||
mathw | std:my class Robot {} | 11:01 | |
std: my class Robot {} | 11:03 | ||
11:03
jonasbn joined
|
|||
p6eval | std 29929: OUTPUT«ok 00:01 107m» | 11:03 | |
mathw | ah it needs the space | ||
11:08
lestrrat is now known as lest_away
|
|||
colomon | rakudo: say 81 < 9.Rat | 11:08 | |
p6eval | rakudo f6092e: OUTPUT«0» | ||
colomon | rakudo: say Int ~~ Num | 11:10 | |
p6eval | rakudo f6092e: OUTPUT«1» | ||
11:12
pnate joined
|
|||
mathw | rakudo: my class Robot {} | 11:14 | |
p6eval | rakudo f6092e: OUTPUT«Can't handle scope declarator my on packages yetcurrent instr.: 'perl6;Perl6;Compiler;Package;finish' pc 26286 (src/gen/parameter_pm.pir:491)» | ||
mathw | \o/ rakudo knows it's not finished :) | ||
jnthn | oh morning | 11:18 | |
colomon | \o | ||
11:21
rv2733 joined
|
|||
mathw | oh hai jnthn | 11:23 | |
jnthn | mathw: lol hai | 11:27 | |
11:35
snarkyboojum left
11:41
gfx left
11:48
xomas left
12:08
am0c joined
|
|||
colomon | justrakudoit.wordpress.com/2010/03/...s-on-real/ | 12:13 | |
12:15
mikehh left
|
|||
mberends | colomon++: you could have entitled it Getting Real ;) | 12:16 | |
colomon | ;) | 12:17 | |
cognominal | jnthn, it is official now, the french perl workshop will be in Calais, June 10-11 | 12:25 | |
any English or French speaker is welcome :) | 12:26 | ||
colomon | The sad thing is, after all the work last night on the series operator, I should probably churn out another blog post on it, but I've got to get to $work now. | ||
12:27
lest_away is now known as lestrrat
|
|||
jnthn | cognominal: Whoa...that is right up against the Ukraine one. | 12:27 | |
(which starts on the 12th...) | |||
cognominal | too bad. | ||
jnthn | Well, with some slightly creative travel arrangements... | 12:28 | |
:-) | |||
I guess I can miss a day or one or the other of them, and so long as my talks get scheduled on the day I'm around, it's do-able. | |||
cognominal | I can make sure you talk the first day, if you want | ||
jnthn | *of | ||
Yeah | |||
cognominal | ok | ||
jnthn | OK, I'll keep it in mind. Can't commit now - life too crazy (moving appartment/country/job/life at the moment :-)). | 12:29 | |
But would like to do both, so, we'll see. :-) | |||
cognominal | ok, expect to see you if you can make it. | ||
12:38
am0c left
12:42
pmurias joined
12:51
payload joined
12:52
lichtkind joined
|
|||
lichtkind | mberends: hai hai | 12:53 | |
moritz_: can i get a commit bit on the perl 6 book? | 12:57 | ||
takadonet | morning all | ||
12:58
ignacio_ joined
|
|||
lichtkind | moin | 12:59 | |
pmurias | lichtkind: it's on github so you can fork it | 13:01 | |
13:01
masak joined
|
|||
jnthn | lolitsmasak | 13:01 | |
lichtkind | pmurias: shure but maybe i want it push back in mainline | ||
masak | yayitsjnthn | 13:03 | |
colomon | news.perlfoundation.org/2010/03/com...grant.html | ||
jnthn++ | |||
13:04
Exodist left
|
|||
masak | jnthn++! | 13:05 | |
13:05
Exodist joined
|
|||
lichtkind | masak: can i get commit bit to book or should i clone? | 13:06 | |
13:06
ignacio_ left
|
|||
lichtkind | jnthn++ :) | 13:07 | |
13:07
frettled sets mode: +oooo colomon masak cognominal mberends
|
|||
masak | lichtkind: cloning/pull-requests sounds like a good option, at least short-term. | 13:08 | |
13:14
pmurias left
|
|||
lichtkind | masak: is november fixed? :) | 13:16 | |
masak | lichtkind: no :( | 13:17 | |
jnthn | Thanks, folks. | 13:18 | |
jnthn has happy to finish the grant too :-) | |||
masak | lichtkind: I'm in the middle of slides preparations for OSD. | ||
jnthn | mberends: lunch? | ||
mberends | huh? | ||
13:18
xabbu42 left
|
|||
jnthn | chcem jest bryndzove halusky! | 13:18 | |
lichtkind | :) | 13:19 | |
jnthn | bbl :-) | 13:20 | |
13:21
ignacio_ joined
13:25
cognominal left
13:35
Trashlord left
13:43
alester joined
13:45
athenot joined,
payload left
13:55
ruoso joined
13:57
alester left
14:01
payload joined
|
|||
[particle] | S03: s/boolen/boolean/ | 14:05 | |
lichtkind | mberends: maybe you have further ideas for www.perlfoundation.org/perl6/index.cgi?timeline | 14:12 | |
14:13
IllvilJa left
|
|||
pugssvn | r29930 | masak++ | [S03] typo, discovered by particle++ | 14:17 | |
14:19
cognominal joined
|
|||
PerlJam | lichtkind: that first entry is weird. | 14:20 | |
14:20
xabbu42 joined
|
|||
PerlJam | lichtkind: it makes it seem like Larry had something to do with the coffee mug and that "the idea of Perl 6" didn't exist prior to that point. Both of which are not exactly true. | 14:21 | |
14:24
cotto left,
cotto joined
|
|||
masak | the joke about 'chronically' as a misspelling of 'chronological' doesn't make much sense. | 14:25 | |
(that is, I assume it's a joke) | |||
PerlJam | yeah, I wasn't sure what to make of that either | 14:26 | |
masak | 'due medical problems' -> 'due to medical problems'. I'm not sure that item deserves to be in the timeline. | 14:27 | |
on the other hand, I'd like to see a mention of the Ponie project. | |||
'came public with' -> 'announced'. | 14:28 | ||
PerlJam | What about the Perl 6 prehistory? 1998 - Chip Salzenburg starts the Topaz project | ||
(sorry chip if I've misspelt your name) | |||
masak | Salzenberg. | 14:29 | |
PerlJam | for some reason I'm never sure if it's -burg or -berg | ||
masak | PerlJam: think 'salty mountain', not 'salty city'. | 14:30 | |
Su-Shee | burgs stand on bergs. ;) | ||
masak | if the burgs are lucky, that is :) | ||
PerlJam | masak: that actually may help (as I do tend to think "city") | ||
masak <-- language association hotline, 24/7 | 14:31 | ||
PerlJam | :-) | ||
14:32
lichtkind left,
hicx174 left,
Khisanth left,
rhr left
|
|||
PerlJam | I don't think I'll every forget "salty mountain" now ... let's just hope I remember it when it comes to Chip's name :) | 14:32 | |
Su-Shee | the real salzburg is on a berg as well. ;) | ||
masak | PerlJam: just imagine Chip scaling a mountain of salt. :) | 14:33 | |
Su-Shee | "would you pass me the salt" will never be said as before. ;) | ||
masak | truck pulls up... dumps contents... | 14:34 | |
"The salt shaker would have been enough, you know." | |||
14:36
lichtkind joined,
Khisanth joined,
rhr joined
|
|||
PerlJam | shakers and a jehovah's witness ... | 14:37 | |
lichtkind | PerlJam: i know its true, feel free to change or i do it tonight when im back | ||
14:38
synth joined
14:43
hicx174 joined
14:53
athenot left
14:55
payload left,
uniejo left
14:56
PacoLinux joined
14:57
payload joined,
alester joined
14:58
Guest22077 left
|
|||
masak | the item about Apocalypse 1 links to 'Synopses', but the Synopses article doesn't much mention the apocalypses. | 15:03 | |
www.perlfoundation.org/perl6/index.cgi?synopses | |||
the phrasing '(almost) human readable' looks like another attempt at being funny. please remove. | |||
"The Synopses are the (almost) human readable documents which constantly kept up to date". This is not a defining property of the Synopses at all. | 15:04 | ||
The Synopses serve as a specification of Perl 6. | |||
Tene | Mmm... more cellphone pie for breakfast. | 15:14 | |
masak: can you check if try{} catches other control exceptions for me | 15:15 | ||
masak | sure. | ||
b_jonas | masak: luckily it links to perlcabal.org/syn/ which makes this clear in the first sentence | ||
masak | b_jonas: yes, but I don't see why the wiki (whose purpose it is to inform) couldn't be a bit less confusing. | 15:16 | |
b_jonas | sure | 15:17 | |
masak | rakudo: my @a = gather { take 1; try { take 2 }; take 3 }; say @a.perl | 15:18 | |
p6eval | rakudo f6092e: OUTPUT«[1, 3]» | ||
masak | Tene: :) | ||
Tene: guess that answers your question. | |||
Tene | okay, that means that it's likely the easy fix. | ||
masak | rakudo: for 1..10 -> $n { if $n == 5 { try { last } }; say $n } | 15:19 | |
p6eval | rakudo f6092e: OUTPUT«12345678910» | ||
Tene | looking at it now. | ||
masak | Tene++ | ||
Tene | alpha: for 1..10 -> $n { if $n == 5 { try { last } }; say $n } | 15:22 | |
p6eval | alpha 30e0ed: OUTPUT«12345678910» | ||
15:22
f00li5h[HireMe] left
15:24
f00li5h[HireMe] joined
15:26
Trashlord joined
15:31
alester left
15:32
alester joined,
IllvilJa joined
15:34
quester left,
hanekomu left
15:39
b_jonas left,
Psyche^ joined
15:41
nihiliad joined
15:42
Patterner left,
Psyche^ is now known as Patterner
15:45
Salada345 joined
|
|||
Tene | Oh, it's compiling so slowly because I still have my cpu throttled down. | 15:49 | |
heh. | |||
masak: fixed and committed. Please confirm and take care of the ticket. | 15:58 | ||
masak | Tene: will do. Tene++ | 15:59 | |
dalek | kudo: d66fe37 | tene++ | src/Perl6/Actions.pm: Slight refactor of push_block_handler |
||
kudo: 4edd19d | tene++ | src/Perl6/Actions.pm: Re-work try {} to ignore control exceptions |
|||
Tene | AFK, $work again | 16:00 | |
TimToady | Tene++ | ||
16:02
jaldhar left,
jaldhar joined
|
|||
TimToady | kudo: for 1..10 -> $n { if $n == 5 { last; CATCH {} }; say $n } | 16:03 | |
rakudo: for 1..10 -> $n { if $n == 5 { last; CATCH {} }; say $n } | |||
p6eval | rakudo f6092e: OUTPUT«1234» | ||
TimToady | rakudo: for 1..10 -> $n { if $n == 5 { last; CONTROL {} }; say $n } | 16:04 | |
p6eval | rakudo f6092e: OUTPUT«12345678910» | ||
TimToady | that looks about right | ||
masak | aye. | 16:05 | |
TimToady | except for the fact that it should probably be rethrowing without a 'when * {}' | 16:06 | |
masak | one step at a time :) | ||
mberends | travel Bratislava -> Arnhem o/ | 16:07 | |
TimToady | \o | ||
masak | o/ | ||
16:08
mberends left
|
|||
TimToady | just think how much more fun Unicode would have been if they'd introduced alternating characters so we could do animation | 16:09 | |
masak | as it stands now, you'll just have to get two <blink> elements to get 180 degrees out of phase :P | 16:11 | |
a much cleaner solution, independent of code points. | 16:12 | ||
diakopter | masak: hi | ||
masak | diakopter: \o | ||
diakopter | (see masakbot hilites in the irclog if you like) | 16:13 | |
16:13
pmurias joined
|
|||
pmurias | ruoso: hi | 16:13 | |
masak | ooh! haven't done that today. | ||
16:13
am0c joined
|
|||
masak | rakudo: say 7**-1 # from diakopterbot | 16:14 | |
p6eval | rakudo f6092e: OUTPUT«0» | ||
masak submits rakudobug | |||
frettled | heh | ||
masak | pugs: say 1/7/7/7/7/7/7/7*7 | 16:15 | |
p6eval | pugs: OUTPUT«0.0000084998597523140868175675101360827546» | ||
masak | rakudo: say 1/7/7/7/7/7/7/7*7 # also found by diakopter++ | ||
p6eval | rakudo f6092e: OUTPUT«1» | ||
masak submits rakudobug | |||
diakopter | I don't get that one | ||
it's not fully left-associative nor fully right-associative | |||
masak | me neither. kudos to whoever gets it. | ||
rakudo: say (Inf...1).iterator.batch(100) | 16:16 | ||
p6eval | rakudo 4edd19: | ||
..OUTPUT«InfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInfInf… | |||
masak | not a bug, but I liked that one :P | ||
diakopter | heh | ||
masak | "Inf bottles of beer on the wall..." | 16:17 | |
diakopter | rakudo: say (1...^*).batch(10) | ||
p6eval | rakudo 4edd19: OUTPUT«10-1-2-3-4-5-6-7-8» | ||
masak | rakudo: say and die 3 | ||
frettled | eeeeh | ||
p6eval | rakudo 4edd19: OUTPUT«3current instr.: '&die' pc 16799 (src/builtins/Junction.pir:347)» | ||
frettled | 10-1-2-..? | ||
diakopter | 10,-1,-2 | ||
frettled | ah | 16:18 | |
masak | std: say and die 3 | ||
p6eval | std 29930: OUTPUT«Undeclared routine: 'and' used at line 1ok 00:01 107m» | ||
16:18
Toony joined
|
|||
masak | o.O | 16:18 | |
diakopter | rakudo doesn't complain about 'and' | ||
masak | should it? | ||
diakopter | so it must be interpreting it as infix and | ||
frettled | diakopter: actually, 1, 0, -1, -2 etc :) | ||
diakopter | ohhh | ||
frettled | rakudo: say (1…^*).batch(10).perl | 16:19 | |
p6eval | rakudo 4edd19: OUTPUT«Confused at line 11, near "say (1\u2026^*)"current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)» | ||
frettled | rakudo: say (1...^*).batch(10).perl | ||
p6eval | rakudo 4edd19: OUTPUT«(1, 0, -1, -2, -3, -4, -5, -6, -7, -8)» | ||
masak submits rakudobug for 'say and' | |||
diakopter | why would ^* produce that | ||
frettled | Shouldn't <…> work as a substitute for <...>? | ||
masak | frettled: not according to the spec, AFAIK. | 16:20 | |
masak submits rakudobug for '1...^*' | |||
diakopter | what's that supposed to do | 16:22 | |
? | |||
rakudo: say (;;).WHAT | 16:23 | ||
p6eval | rakudo 4edd19: OUTPUT«Int()» | ||
diakopter | rakudo: say (;).WHAT | 16:24 | |
p6eval | rakudo 4edd19: OUTPUT«Int()» | ||
PerlJam | masak: are you sure that's a bug? :) | ||
diakopter | I don't know what ^* should do | ||
masak | PerlJam: I think it is, yes. | 16:25 | |
PerlJam: it shouldn't count downwards. | |||
sjn | rakudo: say (^*).WHAT | ||
p6eval | rakudo 4edd19: OUTPUT«Range()» | ||
masak | hey, look at this! | ||
frettled | hmm? | 16:26 | |
sjn | rakudo: say (*).WHAT | ||
p6eval | rakudo 4edd19: OUTPUT«Whatever()» | ||
PerlJam | rakudo: say ^* | ||
p6eval | rakudo 4edd19: OUTPUT«» | ||
masak | rakudo: .say for 1/7*7, 1/7/7*7, 1/7/7/7*7, 1/7/7/7/7*7 | ||
p6eval | rakudo 4edd19: OUTPUT«10.14285714285714310.142857142857143» | ||
PerlJam | rakudo: my @a = ^*; say @a.batch(10); | ||
p6eval | rakudo 4edd19: OUTPUT«Method 'batch' not found for invocant of class 'Array'current instr.: '_block14' pc 29 (EVAL_1:0)» | ||
masak | that explains it, I think. | ||
diakopter | say (1,2,4 ... *).batch(11)[10] # it's not lazy unless you use .batch | 16:27 | |
rakudo: say (1,2,4 ... *).batch(11)[10] # it's not lazy unless you use .batch | |||
p6eval | rakudo 4edd19: OUTPUT«1024» | ||
diakopter | rakudo: say (1,2,4 ... *)[10] # it's not lazy unless you use .batch | ||
masak | the 7's cancel out each other. | ||
PerlJam | rakudo: say (^*).batch(10); | ||
diakopter | right | ||
p6eval | rakudo 4edd19: ( no output ) | ||
rakudo 4edd19: OUTPUT«Method 'batch' not found for invocant of class 'Range'current instr.: '_block14' pc 29 (EVAL_1:0)» | |||
diakopter | but how | ||
PerlJam | should .batch work on Ranges and Arrays? | ||
masak | diakopter: it's as if / had higher prec than * | 16:28 | |
diakopter | they would cancel each other out if it were right-associative | ||
if "/" were right-ass I mean | |||
er, right-assoc | |||
masak | maybe it iss. | ||
well, something's wrong, at least. | |||
diakopter | (1,2,4 ... *)[10] times out | 16:29 | |
but (1,2,4 ... *).batch(11)[10] doesn't | |||
16:29
jonasbn left
16:34
athenot joined
|
|||
masak | maybe .[] isn't properly lazy yet. | 16:34 | |
diakopter | oh | 16:35 | |
masak: you're right; it's a precedence thing | |||
16:35
dan_linder1 joined
|
|||
masak | ok. | 16:36 | |
diakopter | wait no | ||
masak | :) | ||
diakopter | I recant recant | ||
16:49
mj41 joined,
am0c left
16:53
nsh left,
sbp left
|
|||
masak | food & | 17:00 | |
17:00
justatheory joined,
masak left,
ned joined
|
|||
pmurias | diakopter: how's sprixel progressing? | 17:00 | |
TimToady | the 7/7 one is likely because of Rat literals, which we probably need to unspec | 17:06 | |
and rely only on constant folding | 17:07 | ||
17:07
mikehh joined
|
|||
colomon | diakopter: [] on iterators isn't lazy yet. | 17:08 | |
17:13
dev_ joined
17:14
dev_ left,
k23z__ joined,
k23z__ left
17:15
cognominal left,
k23z__ joined,
cognominal joined
17:17
k23z__ left,
k23z__ joined
17:24
SmokeMachine joined
17:25
astrojp joined
17:26
astrojp left,
astrojp joined
17:33
ShaneC joined
|
|||
colomon | SF has broken Rakudo again :( | 17:34 | |
lastofthecarelessmen.blogspot.com/2...acked.html | |||
pugssvn | r29931 | lwall++ | [S02] remove 1/2 and +2-3i literal forms, now rely on angle dwimmery for literals, | ||
r29931 | or constant folding otherwise. | |||
PerlJam | "angle dwimmery"? | 17:35 | |
PerlJam goes to read the diff | |||
colomon | TimToady: I already removed the +2-3i literal form in Rakudo -- it was causing problems with expressions like -2+3i. | ||
k23z__ | why don't you guys move to github ? is Rakudo so big that it won't fit 200mb ? | 17:37 | |
at least in sources if not builds | |||
PerlJam | k23z__: what are you talking about? Rakudo is on github | 17:38 | |
colomon | Rakudo is on github. | ||
PerlJam | k23z__: if you're referring to pugs, there's some other advantages to keeping things as they are. | ||
k23z__ | I didn't know | ||
no no,I'm not refering to pugs | |||
sorry for my lack of knowledge .. | 17:39 | ||
PerlJam | k23z__: rakudo.org/how-to-get-rakudo | ||
k23z__ | do you guys have a permutation class , like this one on Perl6 ? If no, I'm offering to port my code to Perl6 search.cpan.org/~wsdookadr/CM-Permu...utation.pm | 17:41 | |
17:42
ive joined
|
|||
PerlJam | k23z__: you don't need our permission or blessing to do that :) | 17:43 | |
k23z__ | yes but would there be anyone to help ? | 17:46 | |
PerlJam | k23z__: #perl6 is always here to help with Perl 6 stuff. Like any other channel on IRC, it's just a matter of catching the right people at the right time. | ||
k23z__ | one more question , I am banned permanently from #perl , does that mean I'll be banned on #perl6 also ? | 17:47 | |
takadonet | k23z__: no | 17:48 | |
PerlJam | k23z__: #perl6 operates independantly from #perl. | 17:49 | |
k23z__: but ... why were you banned from #perl and who banned you? | |||
(getting permabanned from freenode #perl is highly unusual) | 17:50 | ||
k23z__ | mst and apeiron , I wasn't actually aware that their click practically owns Perl5 , I had some problems with mst and got banned permanently | ||
m-locks | there are no ops there currently | ||
k23z__ | what can I say ,I'm an unusual person .. | ||
m-locks: yes there are, they just don't put the @ .. | |||
PerlJam | k23z__: are you *sure* it's a permaban? | 17:51 | |
k23z__ | PerlJam: 101% | ||
m-locks | k23z__: umm i thought that was not possible | ||
k23z__ | m-locks: what was not possible ? | ||
m-locks | it says in the list of nick that 0 ops | ||
17:52
meppl joined
|
|||
m-locks | to be a channel operator without others seeing it | 17:52 | |
k23z__ | m-locks: check /bans , I'm there | ||
anyway going outside | |||
for a stroll | |||
m-locks | aye | ||
17:54
ive left
17:59
dakkar left,
justatheory left
|
|||
colomon | rakudo: ((1...*) Z (10 ... 1)).batch(20).perl.say | 18:04 | |
p6eval | rakudo 4edd19: OUTPUT«(1, 10, 2, 9, 3, 8, 4, 7, 5, 6, 6, 5, 7, 4, 8, 3, 9, 2, 10, 1)» | 18:05 | |
colomon | rakudo: ((1...*) Z (10 ... 1)).batch(40).perl.say | ||
p6eval | rakudo 4edd19: OUTPUT«(1, 10, 2, 9, 3, 8, 4, 7, 5, 6, 6, 5, 7, 4, 8, 3, 9, 2, 10, 1)» | ||
colomon | that seems fine... | ||
18:05
astrojp left
|
|||
colomon | but I can duplicate SF's bad results locally. | 18:11 | |
rakudo: ((3, 6 ... *) Z (4, 8 ... *)).batch(20).perl.say | 18:12 | ||
p6eval | rakudo 4edd19: OUTPUT«(4, 4, 8, 12, 16, 20, 24, 28, 32, 36, 40, 44, 48, 52, 56, 60, 64, 68, 72, 76)» | ||
colomon | ooooh, there you go. | ||
Can't have two instances of the same gather operating at the same time, maybe? | 18:13 | ||
PerlJam | likely | ||
colomon | rakudo: my $a = (3, 6 ... *).iterator; my $b = (4, 8 ... *).iterator; say $a.get; say $b.get; say $a.get; say $b.get; | 18:14 | |
p6eval | rakudo 4edd19: OUTPUT«44812» | ||
colomon | Yup, that's it. | ||
18:16
pnate left
|
|||
colomon | Weird that the 4 appears twice | 18:16 | |
18:19
rgrau joined
|
|||
diakopter | m-locks: those in the channel operator list can issue channel commands through chanserv | 18:20 | |
18:20
pnate joined
18:21
justatheory joined
|
|||
m-locks | diakopter: oh ok | 18:22 | |
18:28
Chillance joined
|
|||
k23z__ | colomon: it's nice that rakudo understands that a...b with a>b means reverse(a..b) | 18:31 | |
would it be easy to translate parrot code to native assembly ? | 18:32 | ||
err , ah I forgot parrot is a vm for dynamic languages ... | |||
the answer is no right ? | |||
18:35
dan_linder1 left
|
|||
k23z__ | what is the intended purpose for Perl6 in the light that Perl5 was mainly used for webdevelopment and automating stuff ( although I use it for completely other purposes ) | 18:45 | |
? | |||
I mean, will Perl6 be a web development language ? ? | 18:46 | ||
diakopter | general purpose programming language, like Perl 5 | ||
18:49
kfo left
18:51
kfo joined
18:57
khet joined,
khet left
18:58
Toony left
|
|||
k23z__ | I just read masak's description of a debugger github.com/masak/tardis/blob/master/docs/theory | 19:03 | |
is this just for the tardis debugger or for debuggers in general ? | 19:04 | ||
"When the debugger is run, it sits collecting all possible states from all the" | |||
ticks, and then upon completion spits out "Done. 49367 ticks." | |||
The user can then browse through ticks 0..49366 in various intelligent ways. | |||
colomon | That's just his idea of how Tardis should run. | ||
k23z__ | ah yes I understand | 19:05 | |
this Tardis cannot take account for user input | |||
for for some blocking input source for that matter ... | |||
19:07
nihiliad left,
nihiliad joined
|
|||
k23z__ | hmm, on a second thought I think it can, if it does what Masak says until user-input and afterwards stop and accepts the user input then does what Masak says again .. | 19:10 | |
19:14
kaare_ joined,
jonasbn joined
19:22
kaare_ left
19:23
k23z__ left,
k23z__ joined
19:29
ruoso left
19:30
ignacio_ left
19:37
meppl left
|
|||
pugssvn | r29932 | lwall++ | [STD] remove 1/2 and -1+3i literal forms | 19:40 | |
k23z__ | err, can I have hosting for a project ? | 19:42 | |
colomon | k23z__: why not use github? | ||
19:46
ignacio_ joined,
ruoso joined
|
|||
k23z__ | github is not enough | 19:47 | |
Tene | What kind of hosting do you want, for what kind of project, and what do you need that github does not provide? | 19:48 | |
k23z__ | enough space ? | ||
ssh access | |||
with perl6 on it | 19:49 | ||
and perl5 | |||
and git | |||
PerlJam | Hmm. | ||
k23z__ | that would be enough :) | ||
PerlJam | You could ask Juerd for a feather account. | ||
Tene | that's asking for a shell server, not a repository hosting. | ||
juerd offers that on feather. you should contact him. | |||
PerlJam | But if you're just going to fill up the disk or other such nonsense, don't bother | ||
19:50
ash_ joined
|
|||
k23z__ | fill up with what ? this is strictly for a project, I have storage space | 19:50 | |
I would need cycles however .. | |||
PerlJam | k23z__: well, ask Juerd and see what happens. | ||
19:51
justatheory left
|
|||
ash_ | so... i have a question about the most recent pugs-svn commit, to the spec, regarding rationals and 1+3i style literals... does that mean writing 1/2 is not 'the right way' to do it anymore? doing <1/2> is now the correct way to write all rationals? | 19:52 | |
was this because / is confusing to figure out where its a division and where its a fraction/rational? | 19:53 | ||
and by most recent pugs commit, i mean r29931 (it might not be the most recent anymore) | |||
colomon | I think the problem was that 1/7/7/7/7/7 example. | ||
ash_ | yeah, just glancing at that looks confusing to me | 19:54 | |
colomon | you expect it to be 1 divided by 7 divided by 7.... | ||
but I think it was probably parsing (1/7)/(7/7)/(7/7) or something like that. | |||
19:54
Khisanth left
|
|||
colomon | You can still say 1 / 7 by saying 1 / 7. | 19:55 | |
It's just now it fits better. | |||
Or to work with the example that I know was happening (because I fixed it in Rakudo). | |||
-3+2i was parsing as -(3+2i) because 3+2i was a complex literal. | 19:56 | ||
19:56
airbase left
|
|||
ash_ | gotya, cool | 19:56 | |
colomon | I discovered it because it made a couple of tests blow up. | ||
ash_ | so basically those old forms left room for mis-interpretation | ||
19:57
athenot left
|
|||
TimToady | phone | 20:01 | |
20:01
TiMBuS joined
|
|||
ash_ | is it x or :x for file tests? | 20:06 | |
colomon | should be :x, right? (I get smiley interference on this subject...() | 20:07 | |
TimToady | $x ~~ :x translates to "so $x.x" | 20:08 | |
20:09
athenot joined
|
|||
ash_ | oh, okay, i thought $obj ~~ :x would translate to $obj.:x | 20:09 | |
20:10
Khisanth joined
|
|||
ash_ | colomon: if you go to preferences (⌘ + , ), then go to appearance and you can set Emoticons to show as text instead of images | 20:12 | |
20:12
riffraff left
|
|||
colomon | ash_: usually I like them as images... ;) | 20:13 | |
ash_ | ah, well thats fine, just thought i'd let you know | ||
20:15
pnate left
20:20
pnate joined
|
|||
colomon | ash_++ | 20:21 | |
20:22
szabgabx joined
|
|||
ash_ | i am updating my perl 6 presentation for an ACM presentation later this month, anyone have any suggestions for stuff to highlight? | 20:23 | |
20:25
SmokeMachine left,
uniejo joined
|
|||
colomon | what sort of thing are you looking for? | 20:26 | |
ash_ | not sure, just interesting things about perl 6 i might of missed in my current presentation | ||
i go over multi-methods, custom operators, grammars, classes and roles | |||
colomon | meta operators? | 20:27 | |
laziness? | |||
ash_ | ah, laziness would be good to talk about | ||
PerlJam | laziness is pervasive in Perl 6. | ||
to not talk about it would be a disservice to your audience :) | |||
ash_ | ya, i'll be sure to mention it | 20:28 | |
colomon | PerlJam: especially implementor laziness.... ;) | ||
Tene | you'd have to be pretty lazy not to talk about it. | 20:30 | |
ash_ | one of my examples is one i saw on moritz_++'s blog, the postfix:<!>, since i get to talk about custom operators and a cool way of implementing it with [*] 1...$b | 20:38 | |
i guess thats not working yet in master rakudo yet | 20:39 | ||
alpha: say [+] 1..3; | |||
p6eval | alpha 30e0ed: OUTPUT«6» | ||
ash_ | rakudo: say [+] 1..3; | ||
p6eval | rakudo 4edd19: OUTPUT«Confused at line 11, near "say [+] 1."current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)» | ||
colomon | ash_: right, no user-defined operators or meta-operators in master yet. | 20:43 | |
(You can overloading existing operators, but you cannot create new ones.) | 20:44 | ||
ash_ | sad day, i won't tell them about that bit, i am sure they will come back eventually | ||
colomon | I wouldn't be surprised if a lot of that stuff will be back in the next couple of weeks. | ||
diakopter | Outlook autocorrects "typoed" to "typed". oh, the irony. | ||
20:48
payload left
20:51
payload joined,
pnate left
20:56
xomas joined,
ruoso left
21:02
pjcj joined
21:04
payload1 joined
21:05
hicx174 left
21:06
sbp joined,
nsh_ joined
21:07
payload1 left
21:08
payload1 joined,
payload left
21:09
pmurias left
21:10
pmurias joined
|
|||
ash_ | hmmm so prefix seems to be working, but postfix custom ops dont | 21:11 | |
rakudo: sub prefix:<!> ($a) { say $a; }; &prefix:<!>(4); !4; | |||
p6eval | rakudo 4edd19: OUTPUT«44» | ||
ash_ | rakudo: sub postfix:<!> ($a) { say $a; }; &postfix:<!>(4); 4!; | ||
p6eval | rakudo 4edd19: OUTPUT«Confused at line 11, near "4!;"current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)» | ||
ash_ | thats interesting | ||
21:13
justatheory joined
|
|||
colomon | ash_: there already is a prefix:<!> in the grammar. There is no postfix:<!> in the grammar. | 21:14 | |
That's the difference you're seeing. | |||
ash_ | ah, my bad, prefix:<!> is not, completely forgot about that | 21:15 | |
21:25
nihiliad left,
nihiliad joined
21:29
uniejo left
21:34
Trashlord left
21:38
payload1 left
|
|||
m-locks | Q: Was ist paradox an der Analysis? | 21:39 | |
A: Man faltet, um zu glxE4tten... | |||
21:41
ignacio_ left,
payload joined
21:49
newbie joined,
newbie is now known as jaffa4
|
|||
jaffa4 | !seen diakoper | 21:49 | |
!seen diakopter | 21:50 | ||
21:52
jonasbn left
21:57
athenot_ joined,
athenot left,
athenot_ is now known as athenot,
xabbu42 left
|
|||
lichtkind | moritz_: ping | 22:01 | |
moritz_: your link to me on your site is broken: wiki.perl-community.de/Wissensbasis/Perl6Tafel | 22:04 | ||
22:16
Su-Shee left
22:21
athenot left
22:24
payload left
22:28
parrot joined
22:40
meppl joined
22:59
payload joined,
payload left,
payload joined
23:00
lestrrat is now known as lest_away
23:05
lue joined
|
|||
lue | hello! | 23:05 | |
23:10
pmurias left,
jaffa4 left
|
|||
colomon | o/ | 23:11 | |
lue | o/ | 23:12 | |
(reading the logs; noone's talked for about an hour o.o ) | |||
lue will be working on file tests whilst hoping someone's really here | 23:24 | ||
ash_ | *crickets* | ||
23:24
markjreed joined
|
|||
lue perks his ears | 23:26 | ||
markjreed | rakudo: for { a=>1, b=>2 } { say "{$^p.key} {$^p.value}" } | 23:27 | |
p6eval | rakudo 4edd19: OUTPUT«Lexical '$p' not foundcurrent instr.: '_block65' pc 552 (EVAL_1:217)» | ||
23:27
TiMBuS left
|
|||
markjreed | alpha: for { a=>1, b=>2 } { say "{$^p.key} {$^p.value}" } | 23:27 | |
p6eval | alpha 30e0ed: ( no output ) | ||
ash_ | rakudo: for { a => 1, b => 2 } { say $_.key, $_.value } | 23:28 | |
p6eval | rakudo 4edd19: OUTPUT«Method 'key' not found for invocant of class ''current instr.: '_block55' pc 400 (EVAL_1:153)» | ||
markjreed | alpha: for { a=>1, b=>2 } { say "{$_.key}:{$_.value}" } | ||
ash_ | rakudo: for { a => 1, b => 2 } { say $_ } | ||
p6eval | alpha 30e0ed: ( no output ) | 23:29 | |
rakudo 4edd19: OUTPUT«a 1b 2» | |||
ash_ | rakudo: for { a => 1, b => 2 } { say $_.WHAT } | ||
p6eval | rakudo 4edd19: OUTPUT«Hash()» | ||
TimToady | you can't use $^a or $_ inside inner {}s | ||
ash_ | rakudo: for { a => 1, b => 2 } { say $_.keys, $_.values } | ||
p6eval | rakudo 4edd19: OUTPUT«ab» | ||
23:30
cotto_working left
|
|||
markjreed | I thought you explicitly could with $_… | 23:30 | |
TimToady | the $^p is scoped to the {} inside, but you're trying to get to the loop param, which is the outer {} | 23:31 | |
markjreed | so if you want to interpolate expressions, you have to use explicit parameters. | ||
Yes, that makes sense for the positionals. But I thought $_ was explicitly available to inner blocks. | |||
s/positionals/placeholders/ | |||
TimToady | rakudo: for { a=>1, b=>2 }.pairs -> $p { say "{$p.key} {$p.value}" } | ||
p6eval | rakudo 4edd19: OUTPUT«b 2a 1» | 23:32 | |
TimToady | also, a {} hash literal will only make one term in a list | ||
hence the .pairs | |||
23:34
ihrd joined,
ihrd left
|
|||
markjreed | right, sorry, I was doing it with a my var locally. | 23:35 | |
rakudo: for { a=>1, b=>2}.pairs { say "{$_.key}:{$_.value}" } | 23:36 | ||
p6eval | rakudo 4edd19: OUTPUT«a:1b:2» | ||
markjreed | that's what I thought. works for $_ | ||
lue | rakudo: say '/etc/passwd'.e | ||
p6eval | rakudo 4edd19: OUTPUT«1» | ||
23:37
parrot left
|
|||
TimToady | yes, $_ is really OUTER::<$_> since there's no parameter | 23:39 | |
so that's okay | |||
23:41
xomas left
23:42
cotto_working joined
|
|||
lue | rakudo: '/etc/passwd'.s | 23:42 | |
p6eval | rakudo 4edd19: ( no output ) | ||
lue | rakudo: say '/etc/passwd'.s | ||
p6eval | rakudo 4edd19: OUTPUT«813» | 23:43 | |
lue | rakudo: say '/etc/passwd'.s ~~ 813 | ||
p6eval | rakudo 4edd19: OUTPUT«1» | ||
23:47
athenot joined
23:49
mssm joined
|
|||
pugssvn | r29933 | lue++ | [t/spec] an empty file for file-test.t | 23:49 | |
r29934 | lue++ | [t/spec] a test file for file-test.t | 23:50 | ||
r29935 | lue++ | [t/spec] file-test.t for file tests | |||
lue | what is the 'first block' of a file? (I'm going to learn a lot about files when I'm done :D ) | 23:56 | |
TimToady | context? | 23:58 | |
markjreed | files are stored on disk in blocks... | ||
typically each block is 512 bytes | |||
TimToady | ah, you're perhaps thinking about -T and -B from p5 | 23:59 | |
lue | yes, I am | ||
:T and :B in P6 :) |