»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg p6eval perl6: ... | irclog: irc.perl6.org/ | UTF-8 is our friend! Set by sorear on 4 February 2011. |
|||
00:00
preflex left,
preflex_ is now known as preflex
|
|||
timotimo | TimToady: can you identify the obvious mistake here? gist.github.com/2230981 | 00:07 | |
TimToady | the only obvious mistake is thinking the mistake is obvious | 00:10 | |
timotimo | thinking thinking the mistake is obvious is the obvious mistake is obviously a mistake, through its own logic | 00:11 | |
00:12
baest joined
|
|||
felher | timotimo: when do you get this error? Buidling rakudo? | 00:13 | |
*building | |||
timotimo | yes, it comes after "make" | ||
./perl6 --setting=NULL --optimize=3 --target=pir --output=src/gen/CORE.setting.pir src/gen/CORE.setting | |||
maximum recursion depth exceeded | |||
felher tries this here | 00:14 | ||
timotimo: does the gist include the full patch? | |||
timotimo | i even tried to make clean it before that :) | ||
yes, that's all git diff outputs | 00:15 | ||
00:23
envi_ joined
|
|||
moritz | timotimo: there's a 'my' missing before the stub | 00:26 | |
not sure if it causes the error though | |||
felher is just compiling with 'my' | 00:27 | ||
timotimo | i'll remake, too | ||
moritz | timotimo: you can also try to run the compilation step with --ll-exception | 00:28 | |
timotimo | what does ll stand for? | ||
moritz | low level | ||
./perl6 --ll-exception --setting=NULL --optimize=3 --target=pir --output=src/gen/CORE.setting.pir src/gen/CORE.setting | 00:29 | ||
felher | adding my seems to compile forever instead of failing on my machine... | 00:31 | |
timotimo | how can you tell? :) | ||
felher | i can't :) | ||
But it 'seems' :) | |||
moritz | I watch the compilation with 'top' or 'htop' | ||
timotimo | it's still chugging away at the cpu | ||
moritz | and if the memory consumption stays constant for a minute or longer, it's usually a hang | 00:32 | |
timotimo | ah. | ||
moritz | timotimo: fwiw the error you are getting usually comes from using a type a string that hasn't set up its stringification method, or something. That can happen during error reporting :/ | 00:33 | |
*as a string | |||
00:33
PacoAir left
|
|||
moritz | having Perl6::World.throw in the backtrace is | 00:35 | |
an indicator that it really loops during error reporting | |||
timotimo | memory has not changed yet. can actually be a hang :\ | ||
00:35
localhost left
|
|||
moritz | and the caller of .throw is src/Perl6/Grammar.pm:1227 | 00:35 | |
which is a redeclaration error | 00:36 | ||
timotimo | oh? so that class already exists somewhere? or something similar? | ||
00:37
localhost joined
|
|||
moritz | timotimo: yes | 00:37 | |
timotimo: because operators.pm comes *after* Exception.pm | |||
timotimo: so by the time you write the stub, the real thing has already been declared | |||
timotimo | ah, so the stub class is not needed | ||
moritz | correct | ||
timotimo | i thought i had gotten an error before i added that stub | 00:38 | |
japhb_ | I just merged the nom changes for the last several months into the str-numeric branch, up to the point that moritz started doing things to src/core/Str.pm. | 00:39 | |
Basically I've managed to merge in everything up to about 10 commits ago from nom. | 00:40 | ||
moritz | those commits might require some hand merging/tuning | 00:41 | |
japhb_ | moritz, we should figure out a good path forward here, because I'd hate to lose all the work I did in that branch, but str-numeric was not merged back precisely because we didn't have a decent plan for how to deal with all the spec failures. | ||
timotimo | cool, it went through | 00:42 | |
moritz | japhb_: agreed | ||
timotimo: \o/ | |||
timotimo | thanks! | ||
i'll know what's up in the future now | |||
moritz | japhb_: how much work would it be to make the str-numeric branch laxer for now and merge it? | 00:43 | |
japhb_: then we can take care of the spectest failures, and then make it strict again | 00:44 | ||
japhb_ | Give me a few minutes to take a look at the current state ... | ||
timotimo | i even have a passing test now. great! | ||
felher | timotimo++ :) | 00:45 | |
moritz | japhb_: fwiw I also won't mind terribly if you undo my fail() changes in the branch, I can always add them in later | ||
00:46
wolfman2000 left
|
|||
japhb_ | moritz, is there a good (easy and clean) way for me to merge just your changes outside Str.pm? | 00:47 | |
moritz | japhb_: I don't know | 00:48 | |
japhb_: are you using git rebase? or merge? | |||
japhb_ | merge -- didn't want to screw everyone by rebasing a published branch | 00:49 | |
00:49
havenn left
|
|||
moritz | japhb_: the only idea I have is to not merge nom, but the last revision before I touched Str.pm | 00:51 | |
japhb_ | Already did that -- that's the "10 commits ago" I was referring to. | ||
I'm trying a new tack: | |||
Merge everything, but take my version of Str.pm. | |||
moritz | japhb_: ah. And then cherry-pick the unrelated commits since then | ||
japhb_: that's probably even better :-) | 00:52 | ||
japhb_ | :-) | ||
moritz | at least, if you use only your version of Str.Numeric; I guess there were other worthwhile changes in Str.pm | ||
(like, the .match refactor) | |||
japhb_ | moritz, You didn't do that in the last 10 commits, did you? | 00:54 | |
(Because everything else is already merged up to that point) | |||
moritz | ah, correct | 00:55 | |
never mind then | |||
you can probably do something along the lines of | 00:56 | ||
git show str-numeric:src/core/Str.pm > src/core/Str.pm | 00:57 | ||
git add src/core/Str.pm | |||
that should resolve all conflicts in that file with the version from the str-numeric branch | |||
timotimo | under what circumstance do i do is Exception and when do i do does X::Comp instead? | 00:58 | |
moritz | timotimo: 'does X::Comp' is for compilation errors | 00:59 | |
ie stuff detected at compile time | |||
timotimo | ah, ok. | ||
not actually sure how to decide that :\ | 01:00 | ||
well, the pull request discussion will show. | |||
moritz | for 'does'? | ||
or a different error= | |||
s/=/?/ | |||
timotimo | "cannot bind to a zen array/hash slice" | ||
seems runtime to me | 01:01 | ||
moritz | yes, runtime | ||
01:01
alester left
|
|||
moritz | if the error is triggered from src/core/*.pm, it's nearly always runtime | 01:01 | |
timotimo | good | ||
now i need to figure out how to trigger this error | |||
01:02
havenn joined
|
|||
moritz | (and if not, we're in trouble anyway, because we don't have the line number of the error when we are in core/*.pm) | 01:02 | |
nom: my @a; @a[] := (1, 2, 3); | |||
p6eval | rakudo 099d30: OUTPUT«Cannot bind to a zen array slice in method postcircumfix:<[ ]> at src/gen/CORE.setting:1125 in block <anon> at /tmp/234UU_AtPS:1» | ||
moritz | in this case, 'zen' just means 'empty' | ||
timotimo | ah, and := means binding? | 01:03 | |
moritz | I guess it wouldn't hurt to change the error message to "Cannot bind to an empty {array,hash} slice" | ||
timotimo: yes | |||
timotimo | i have two exceptions for that, is that okay, too? | 01:04 | |
japhb_ | OK, pushed a new str-numeric | ||
... and learned a bit about git mergetool | |||
moritz | timotimo: I think I'd prefer one exception, with an attribute to distinguish the array and hash cases | 01:05 | |
timotimo | would a bool flag be okay for that? | ||
moritz | my class X::Bind::ZenSlice is Exception { has $.type = 'array'; method message() { "Cannot bind to a zen $.type slice" } } | 01:06 | |
japhb_ | moritz, so now we should be about as merged as we can be. Only your changes to Str.Numeric() would have been lost, and not much there. | ||
timotimo | OK. | ||
moritz | timotimo: that way it's extensible to more future data types | ||
japhb_: great | |||
now that my daughter sleeps again, I'll try that "sleep" thing too | 01:07 | ||
japhb_ | Good thinking | ||
sorear | good night | ||
timotimo | good luck ;) | ||
01:08
havenn left
|
|||
moritz | thanks | 01:08 | |
& | |||
01:09
envi_ left
01:11
japhb_ left
|
|||
felher heads for bed, too | 01:12 | ||
good night, #perl6 | |||
timotimo bikes home or something | 01:14 | ||
01:16
vlixes left
01:18
wolfman2000 joined
01:22
jaldhar joined
01:28
fgomez joined
01:29
libertyprime left
01:30
libertyprime joined
|
|||
lichtkind | good night | 01:33 | |
01:47
BruceZu left
01:48
BruceZu joined
01:50
lichtkind left
01:51
benabik joined
|
|||
jnthn | hello, for a short moment :) | 01:55 | |
jnthn has reached the end of the world :) | |||
sorear | hello, jnthn | 01:58 | |
which end? | |||
au | the middle end? | 02:00 | |
jnthn | sorear: Ushuaia, which claims to be the southernmost city in the world. :) | 02:01 | |
timotimo | what. | 02:02 | |
sjn | Argentina, eh | 02:03 | |
jnthn | sjn: Yeah. Been vacationing. :) | ||
Back to hacking in a week or so though. Unless I get eaten by penguins or something. | |||
jnthn is in theory going on a trip to see some in a day or two :) | 02:04 | ||
sorear | In view of the Earth's oblateness, I think Quito has a better claim to being a city closest to the end of the world | 02:05 | |
sjn | jnthn: ask your hosts about their opinion of the city of Puerto Williams :) | ||
jnthn | sjn: :P | 02:06 | |
sjn | "What? That's no city, it's barely a hovel!" :) | 02:07 | |
oh, the entertainment one can find on wikipedia :D | |||
jnthn | I could actually trip to Puerto Williams from here, but it see | 02:08 | |
s/,.+// | 02:09 | ||
timotimo | hum. would this be wrong? throws_like 'my @a; @a[] := <foo bar baz>', X::Bind::ZenSlice, what => 'array'; | ||
because that test line blows up saying: # Got: X::Syntax::Confused() | |||
oh, actually, wrong test i'm looking at! | 02:10 | ||
02:10
whiteknight left
|
|||
timotimo | how would i initialize a role that has a single public attribute? :\ | 02:20 | |
(trying to cause "can only supply an initialization value for a role if it has a single public attribute") | 02:21 | ||
jnthn | nom: role R { }; 42 but R('omg') | 02:23 | |
p6eval | rakudo 099d30: OUTPUT«Can only supply an initialization value for a role if it has a single public attribute in sub infix:<but> at src/gen/CORE.setting:9794 in block <anon> at /tmp/DRf_ixD4Zv:1» | ||
jnthn | nom: role R { has $.x; }; 42 but R('omg') | ||
p6eval | rakudo 099d30: ( no output ) | ||
timotimo | oh, it's not for does, it's for but! | 02:24 | |
huh. but it's thrown in infix:<does>. i'm confuse | |||
okay, i clearly need sleep, because that was just wrong. | |||
oh, there's one in infix:<but> and one in infix:<does>, too! | 02:26 | ||
jnthn | oh, you can trigger it with does too | ||
timotimo | can you tell me how to trigger that? the signature is multi infix:<does>(Mu:D \$obj, Mu:U \$role, :$value! is parcel) is rw { | ||
jnthn | nom: role R { }; class C { }; C.new does R(42) | ||
p6eval | rakudo 099d30: OUTPUT«Can only supply an initialization value for a role if it has a single public attribute in sub infix:<does> at src/gen/CORE.setting:9773 in block <anon> at /tmp/GNRd8Y5RPl:1» | ||
timotimo | weird. what did i do wrong here? > role foo {}; my $a does foo(99); | 02:27 | |
Contextual %*PARAM_INFO not found | |||
i feel X::Role::Initialization is not sufficiently good, but i can't come up with anything else that's not at least 80 characters long ... | 02:29 | ||
jnthn | timotimo: I think you found a compiler NYI with a crappy message | ||
timotimo | i don't know how to file a sufficiently good bug, so i suppose whoever wants to can do that for me if they feel like it | 02:30 | |
jnthn | timotimo: Well, the reasl answer is I need to implement traits on variables. :) | 02:31 | |
geekosaur | I think the %*PARAM_INFO is a known bug, yeh | ||
timotimo | good, then | ||
jnthn | Wouldn't surprise me if it's already ticketed. Var traits being NYI sure are. | 02:32 | |
*surely | |||
timotimo sends pull request and goes to bed | 02:39 | ||
jnthn figures he'll get some rest now too | 02:42 | ||
'najt | |||
timotimo | gnite :) | 02:44 | |
sorear | n: print Str | 02:51 | |
p6eval | niecza v16-4-gd48d4a8: ( no output ) | ||
sorear | n: print <2.3>.WHAT | ||
p6eval | niecza v16-4-gd48d4a8: OUTPUT«Rat()» | ||
02:52
lestrrat left
02:53
lestrrat joined
03:05
orafu left,
orafu joined
03:25
tyatpi joined
03:38
derrazo_ joined
03:40
derrazo left
03:45
lestrrat left
03:46
lestrrat joined
04:03
leprevost joined
04:08
elkng joined
|
|||
elkng | is there 5to6 ? | 04:09 | |
sorear | perlgeek.de/blog-en/perl-5-to-6/ ? | 04:12 | |
elkng | tool, there is 2to3 "a Python program that reads Python 2.x source code and applies a series of *fixers* to transform it into valid Python 3.x code.", isnt there same tool for perl ? | 04:15 | |
sorear | No. | ||
6/5 are much more different, and 6 isn't going to replace 5 anyway | 04:16 | ||
TimToady | there was a translator from GSoC several years ago written in Haskell, but it's probably bitrotted and specrotted by now | 04:18 | |
04:24
colomon left
|
|||
Teratogen | is it true that cosmic rays can cause actual bit rot? | 04:25 | |
benabik | Yes, although the odds of significant damage occurring due to cosmic rays on earth is fairly low. | 04:26 | |
The atmosphere is pretty good at blocking them, which is good news for life in general. | |||
japhb | Note that IIUC large servers now have *so many* bits of RAM and motherboard traces, both stuffed into quite small spaces, that the chance of random bit-flips of RAM in a large server is enough that you'd basically be nuts not to design in error correction these days. Hard drive error correction has actually gotten to be such a major percentage of the platter space that they had to change sector size recently in order to improve the useful | 04:30 | |
data/error correction ratio. | |||
04:32
fgomez left
|
|||
sorear | Teratogen: iirc they discovered that alpha particles from thorium contamination in chip encapsulation packages are more significant than cosmic rays | 04:35 | |
benabik | Quantum tunneling is a major consideration for error these days. It's crazy. | ||
sorear | the "cosmic ray" explanation came into vogue well before chip features reached the nanoscale | ||
04:42
envi_ joined,
fgomez joined
04:58
tyatpi left
04:59
leprevost left
|
|||
cxreg | hiring perl people in seattle, if anyone knows someone looking | 04:59 | |
05:02
Teratogen left
05:06
colomon joined
05:09
Teratogen joined
|
|||
Teratogen | oops | 05:09 | |
05:10
average_drifter left
|
|||
Teratogen | don't type ctrl-c in the terminal that you start X Windows from | 05:10 | |
it shuts down X Windows | |||
=/ | |||
05:16
sftp left,
colomon left
|
|||
sorear | cxreg: if only, if only | 05:20 | |
05:24
colomon joined
05:28
birdwindupbird joined
05:36
GlitchMr joined
|
|||
japhb | Putting my hands where my mouth is (or something like that): | 05:40 | |
github.com/japhb/perl6-bench | |||
^^ A rough sketch of a tool to benchmark and compare various Perl 6 implementations against perl5, so that it becomes possible to make "no more than 10x slower than perl5" a verifiable goal | 05:41 | ||
Perhaps I should have called it perl65-bench or perl6-perl5-bench or something. | 05:42 | ||
Well in any case, masak: I'm looking for objections, if any. And also help expanding it. :-) | 05:43 | ||
GlitchMr | Heh, I would like to see more :) | ||
Perhaps I could make something... for example file processing related... | |||
Where is my UNIX dictionary... | |||
japhb | FWIW, I'm happy to move the repo to the perl6 github org, if prefered, under whatever name makes sense to everyone. | 05:44 | |
GlitchMr | We have github.com/perl6/bench-scripts, but it's about testing performace of various Perl 6 implementations and it's sort of old... | 05:45 | |
japhb | GlitchMr, it helps if new tests actually run in both Rakudo and Niecza now. ISTR not all file ops are supported in Niecza yet. | 05:46 | |
GlitchMr | ... hmmm... that could be issue... | 05:47 | |
niecza> while (<STDIN>) {} | 05:50 | ||
This appears to be Perl 5 code at (eval) line 1: | |||
... really helpful warning... | |||
sorear | that | ||
that's an error, not a warning. please learn the difference. | 05:51 | ||
HINT: look for SORRY! or Potential difficulties: | |||
GlitchMr | At least, it's good that it doesn't make loop (string 'STDIN' is always truthy)... | ||
06:03
kaleem joined
06:04
derrazo_ left
06:07
mj41 joined
|
|||
moritz | good morning | 06:07 | |
timotimo++ # rakudo and roast pull requests | |||
06:07
mucker joined
|
|||
sorear | good morning moritz | 06:07 | |
what is the status of dalek, and how well can I help? | 06:08 | ||
06:08
wtw joined
|
|||
moritz | sorear: I have no idea hwo to migrate dalek. | 06:09 | |
sorear: basically i know nothing about what kind of infrastructure it needs, where it lives and what the prerequs are | |||
sorear | ugh | 06:10 | |
moritz | correct | ||
sorear | can you get me an acct on feather3? | ||
moritz | sorear: yes | ||
sorear: is dalek in any way risky to run? | 06:11 | ||
sorear | no | ||
moritz | sorear: then we should run it on feather1 instead | ||
hm, OTOH that would make it harder to couple dalek and p6eval | |||
06:14
birdwindupbird left
|
|||
sorear | niecza: [Z] | 06:16 | |
p6eval | niecza v16-5-ge2f3bfa: OUTPUT«(timeout)» | ||
sorear | niecza: [X] | ||
p6eval | niecza v16-5-ge2f3bfa: ( no output ) | ||
06:20
birdwindupbird joined
06:21
sporous left,
sporous joined
06:22
mj41 left
06:38
araujo left
06:40
tarch joined
06:41
Tedd1 left
06:44
dalek joined,
ChanServ sets mode: +v dalek
06:45
dalek left,
dalek joined,
ChanServ sets mode: +v dalek
06:46
dalek left
06:47
dalek joined,
ChanServ sets mode: +v dalek
|
|||
dalek | hi | 06:48 | |
sorear | dalek core seems to be working now | ||
moritz | \o/ | 06:50 | |
I guess the notification URL will change :/ | 06:51 | ||
sorear | yes | ||
(I haven't gotten the http listener working anyway) | |||
sid, eh | 06:52 | ||
moritz | aye :/ | 06:54 | |
sorear | what? | 06:58 | |
no zlib-dev? | |||
dalek | ecza: ede8b6d | (Solomon Foster)++ | lib/CORE.setting: Fix Bag.Str and KeyBag.Str to conform to TimToady's suggestions. |
07:07 | |
ecza: d48d4a8 | (Solomon Foster)++ | src/NieczaActions.pm6: Appropriate error message for out-of-range digits in a radix. This should probably be merged with the CORE.setting verison of the same function in the long run, but for now this makes things work. |
|||
ecza: e2f3bfa | sorear++ | lib/CORE.setting: Stop Str.say from crashing (GlitchMr++ for fuzz testing) |
|||
ecza: f585b26 | sorear++ | lib/Builtins.cs: Stop [Z] from hanging |
|||
moritz | sorear: is there a new push URL? | 07:08 | |
dalek | d: 292f669 | larry++ | STD.pm6: disallow anonymous constant declarations |
07:09 | |
d: 1ad3292 | larry++ | STD.pm6: give modern advice on \p and \P |
|||
d: 3c2fb9c | larry++ | STD.pm6: obs updates; move ident checks to explain_mystery Obsolescence messages based on identifiers now done from explain_mystery so that user-defined subs of the same name aren't impacted. Added messages for new P5 regex modifiers, qr, local, and new (as function call). |
|||
sorear | moritz: yes | ||
I'm in the process of updating all the perl6/ repositories | |||
just change the hostname | |||
moritz | phenny: ask pmichaud to please change the hostname of the notification URLs of the rakudo/rakudo and rakudo/star repos to feather3.perl6.nl | 07:12 | |
phenny | moritz: I'll pass that on when pmichaud is around. | ||
moritz | or give me admin privs right away :-) | ||
dalek | : 74e91c9 | sorear++ | misc/dalek-push.txt: Update URLs in dalek-push.txt documentation |
07:17 | |
07:18
jai joined,
agentzh joined
|
|||
sorear | just mailed diakopter to say that dalek is moved | 07:19 | |
moritz | sorear++ | ||
Teratogen | aren't the daleks evil? | 07:20 | |
or are the just alien? | |||
sorear | canonically, yes | ||
Teratogen | Doctor Who, right? | ||
sorear | no, they're no-holds-barred nazi expies | ||
no alienness about them | |||
07:20
fglock joined
|
|||
jai | hi.. | 07:21 | |
have a nice day to all | |||
any one help me to learn perl language.. | 07:22 | ||
sorear | Hello and welcome jai. | ||
o/ fglock | |||
jai: are you sure you didn't want #perl? | |||
jai | hi.. sorear.. i hope you are good | ||
i want perl | 07:23 | ||
sorear | so why #perl6? | ||
this is a specialized channel | 07:24 | ||
jai | ok.. sorry | ||
GlitchMr | Perl 6 is work in progress | ||
While compilers are sort of usable, you would likely want way more stable Perl 5. | 07:25 | ||
jai | sorear: i am having some query. can i ask now.. | ||
sorear | don't ask to ask | ||
just ask | 07:26 | ||
07:26
daxim joined
|
|||
fglock | o/ | 07:27 | |
jai | if i learn perl,, it is good for my career or not? | 07:28 | |
sorear | yes, good | ||
GlitchMr | Well, it's always new experience. | 07:29 | |
Teratogen | Perl > Java | ||
GlitchMr | Perl is glue language, even if your company doesn't use it for project itself, there is possibility of using Perl for operating on files and stuff like this. | 07:30 | |
dalek | ecza: faba63b | sorear++ | src/Op.pm6: Fix substatement block for (say (for ... { ... })) |
07:33 | |
07:42
NamelessTee joined
07:47
mj41 joined
|
|||
dalek | ecza: b4b916a | sorear++ | src/ (2 files): Make say ($_*$_ for 0..9) DTRT (only for for now) |
08:14 | |
sorear -> sleep | 08:15 | ||
08:19
NamelessTee left
08:24
jai left
08:28
liuchong joined
|
|||
tadzik | good morning #perl6 | 08:30 | |
08:30
NamelessTee joined
|
|||
moritz | \o tadzik | 08:31 | |
08:45
dakkar joined
08:53
alvis`` joined
|
|||
cognominal | plato.stanford.edu/entries/cellular-automata/ # may be of interest for some people here | 08:54 | |
08:56
alvis` left
09:08
lestrrat left,
lestrrat joined
09:11
mdupont left
09:14
zipf joined
09:17
zipf left
09:18
zipf joined
09:22
kaleem left
09:23
mdupont joined
09:34
liuchong left
09:35
kaleem joined
09:38
replore_ joined
|
|||
GlitchMr | perl6: printf '%v08b', ':)' | 09:41 | |
p6eval | pugs: OUTPUT«00000000» | ||
..niecza v16-8-gb4b916a: OUTPUT«Unhandled exception: invalid format specifier at /home/p6eval/niecza/lib/CORE.setting line 0 (sprintf @ 1)  at /home/p6eval/niecza/lib/CORE.setting line 1237 (printf @ 3)  at /tmp/4ojgQapVcj line 1 (mainline @ 2)  at /home/p6eval/niecza/lib/CORE.set… | |||
..rakudo f2004a: OUTPUT«'0' is not a valid sprintf format in sub sprintf at src/gen/CORE.setting:1936 in sub printf at src/gen/CORE.setting:1941 in block <anon> at /tmp/urUxH5xlBd:1» | |||
GlitchMr | :) | ||
r: printf '%0v8b', ':)' | |||
p6eval | rakudo f2004a: OUTPUT«'8' is not a valid sprintf format in sub sprintf at src/gen/CORE.setting:1936 in sub printf at src/gen/CORE.setting:1941 in block <anon> at /tmp/9lw32P0T82:1» | ||
GlitchMr | ... uhmmm... | ||
09:42
araujo joined,
araujo left,
araujo joined
|
|||
GlitchMr | Perhaps I would insert some sprintf tests :P. | 09:43 | |
09:44
replore_ left
|
|||
GlitchMr | github.com/perl6/roast/blob/master...f.t#L73-82 | 09:47 | |
I don't know if I've missed something, but I don't see %C in printf documentation. | |||
Any printf() documentation, not even S32 or perldoc... | |||
Teratogen | what is %C supposed to do? | 09:48 | |
GlitchMr | I don't know | ||
Teratogen | neither do I | ||
maybe it is undefined | |||
GlitchMr | It's... just mentioned in one test... | ||
Teratogen | ? | ||
GlitchMr | But niecza seems to do something, I just don't know what... | 09:49 | |
niecza> sprintf '%C', '2' | |||
niecza> sprintf '%q', '2' | |||
invalid format specifier | |||
I've got... nothing at %C... | |||
I'm... confused... | |||
sprintf "%d%C is %d digits long", | 09:50 | ||
1234, | |||
sub ($s, @args is rw) { @args[2] = $s.elems }, | |||
... sub {}... interesting... | |||
Teratogen | I don't see it in perlfunc | ||
oh | |||
Perl 6 | |||
hm | |||
sorry I thought I was on #perl | |||
GlitchMr | lol | ||
Teratogen | it probably does do something in Perl 6 | ||
moritz | I think it's been removed | ||
Teratogen | maybe %undefined becomes undefined | 09:51 | |
moritz | commit 8ef142f7f49fc62be17dd0569d34e7e17e02bc7b | ||
Teratogen | like %C just becomes a C | ||
GlitchMr | "I challenge the world to come up with a use case for '%C'." :) | 09:52 | |
So, I guess it can be removed from tests? | |||
dalek | ast: 91d1b92 | moritz++ | S32-str/sprintf.t: remove test for deprecated %C sprintf format |
09:53 | |
moritz | it has been removed from the tests :-) | ||
GlitchMr | Heh, I wanted to insert few other tests anyways :P | ||
09:53
kaleem left
09:54
kaleem joined
|
|||
moritz | you can still do that. | 09:56 | |
GlitchMr | I know... | 09:58 | |
I wouldn't even notice that %C is there if I wouldn't want to add few tests. | 09:59 | ||
Perhaps I will add few completely untested features like vectors... | 10:01 | ||
perl6: sprintf | 10:04 | ||
p6eval | niecza v16-8-gb4b916a: OUTPUT«Unhandled exception: System.IndexOutOfRangeException: Array index is out of range. at Builtins.sprintf (Niecza.Variable[] args) [0x00000] in <filename unknown>:0  at Run.CORE.C603sprintf (Niecza.Frame ) [0x00000] in <filename unknown>:0  at Niecza.Ker… | ||
..pugs: OUTPUT«*** No compatible multi variant found: "&sprintf" at /tmp/1TTQ3twTNb line 1, column 1 - line 2, column 1» | |||
..rakudo f2004a: OUTPUT«===SORRY!===CHECK FAILED:Calling 'sprintf' will never work with no arguments (line 1) Expected: :(Cool $format, *@args)» | |||
10:07
PacoAir joined
10:08
zipf left
|
|||
GlitchMr | # Failed test | 10:09 | |
# got: string | |||
# expected: st | |||
I love edge cases :) | |||
perl6: use Test; is sprintf('%I32d %hhd', 3, 257), '3 1', 'type argument'; | 10:24 | ||
p6eval | pugs: OUTPUT«pugs: *** Unsafe function 'use' called under safe mode at /tmp/xJUqIuqbh9 line 1, column 1» | ||
..rakudo f2004a: OUTPUT«'I' is not a valid sprintf format in sub sprintf at src/gen/CORE.setting:1936 in block <anon> at /tmp/P_ifgELDf4:1» | |||
..niecza v16-8-gb4b916a: OUTPUT«Unhandled exception: invalid format specifier at /home/p6eval/niecza/lib/CORE.setting line 0 (sprintf @ 1)  at /tmp/gQf8Jafj8A line 1 (mainline @ 2)  at /home/p6eval/niecza/lib/CORE.setting line 3838 (ANON @ 3)  at /home/p6eval/niecza/lib/CORE.setti… | |||
GlitchMr | perl6: use Test; is sprintf('%hhd', 257), '3 1', 'type argument'; | 10:25 | |
p6eval | niecza v16-8-gb4b916a: OUTPUT«Unhandled exception: invalid format specifier at /home/p6eval/niecza/lib/CORE.setting line 0 (sprintf @ 1)  at /tmp/9nW6vumXBJ line 1 (mainline @ 2)  at /home/p6eval/niecza/lib/CORE.setting line 3838 (ANON @ 3)  at /home/p6eval/niecza/lib/CORE.setti… | ||
..pugs: OUTPUT«pugs: *** Unsafe function 'use' called under safe mode at /tmp/44OQPBz8DQ line 1, column 1» | |||
..rakudo f2004a: OUTPUT«not ok 1 - type argument# got: '257'# expected: '3 1'» | |||
GlitchMr | ... wait... specification doesn't mention %hh... weird... | ||
So I shouldn't test it... | 10:26 | ||
perl6: printf('%.0f', 0) | 10:29 | ||
p6eval | pugs, rakudo f2004a: OUTPUT«0» | ||
..niecza v16-8-gb4b916a: OUTPUT«??» | |||
GlitchMr | That "??" doesn't make sense... | ||
moritz | %.0f doesn't make sense either, do it? | 10:30 | |
GlitchMr | It does | ||
It rounds numbers | |||
irb(main):002:0> sprintf '%.0f', 5.6 | |||
=> "6" | |||
irb(main):003:0> sprintf '%d', 5.6 | |||
=> "5" | |||
tadzik | r: printf('%.0f', 5.6) | 10:31 | |
p6eval | rakudo f2004a: OUTPUT«6» | ||
GlitchMr | .0 may be used to control precission | ||
That's sort of hacky, but whatever... | |||
perl6: printf('%3.2s', 'string') | 10:32 | ||
p6eval | niecza v16-8-gb4b916a: OUTPUT«string» | ||
..pugs, rakudo f2004a: OUTPUT« st» | |||
GlitchMr | This is more hacky :P | ||
10:35
mikemol left
10:41
agentzh left
11:02
kaleem left
11:03
zipf joined
11:05
benabik left
11:44
kaleem joined
|
|||
GlitchMr | perl6: method object($/) { make $<pairlist>.ast ?? hash ( $<pairlist>.ast ) !! {}; } | 11:44 | |
p6eval | rakudo f2004a: OUTPUT«Useless declaration of a has-scoped method in mainline» | ||
..pugs: ( no output ) | |||
..niecza v16-8-gb4b916a: OUTPUT«===SORRY!===Methods must be used in some kind of package at /tmp/loHel_9iuF line 1:------> method object⏏($/) { make $<pairlist>.ast ?? hash ( $<Ternary !! seems to be missing its ?? at /tmp/loHel_9iuF line 1:-----… | |||
GlitchMr | perl6: class ACME::Blah; method object($/) { make $<pairlist>.ast ?? hash ( $<pairlist>.ast ) !! {}; } | ||
p6eval | pugs, rakudo f2004a: ( no output ) | 11:45 | |
..niecza v16-8-gb4b916a: OUTPUT«===SORRY!===Ternary !! seems to be missing its ?? at /tmp/pXSjtgcTDK line 1:------> list>.ast ?? hash ( $<pairlist>.ast ) !!⏏ {}; }Parse failed» | |||
GlitchMr | ... but... I see that !!... | ||
colomon | std: class acme::Blah; method object($/) { make $<pairlist>.ast ?? hash ( $<pairlist>.ast ) !! {}; } | ||
p6eval | std 3c2fb9c: OUTPUT«===SORRY!===Ternary !! seems to be missing its ?? at /tmp/s9Wfmmm2f_ line 1:------> list>.ast ?? hash ( $<pairlist>.ast ) !!⏏ {}; }Parse failedFAILED 00:01 115m» | ||
11:47
Trashlord left
|
|||
GlitchMr | perl6: #=... what? | 11:47 | |
p6eval | niecza v16-8-gb4b916a: OUTPUT«===SORRY!===Action method comment:sym<#=> not yet implemented at /tmp/KjGAiu6f1c line 1 (EOF):------> #=... what?⏏<EOL>Unhandled exception: Check failed at /home/p6eval/niecza/boot/lib/CORE.setting line 1366 (die… | ||
..pugs, rakudo f2004a: ( no output ) | |||
11:48
Trashlord joined
11:49
benabik joined
12:02
zhu_yj joined
12:03
havenn joined,
zhu_yj left
|
|||
GlitchMr | perl6: IO::Socket::INET.new | 12:07 | |
p6eval | rakudo f2004a: OUTPUT«Could not find symbol 'IO::Socket::&INET' in block <anon> at /tmp/uFg6Q0JttN:1» | ||
..niecza v16-8-gb4b916a: OUTPUT«Unhandled exception: Unable to resolve method postcircumfix:<( )> in class Any at /tmp/iJPTJQEcyf line 1 (mainline @ 2)  at /home/p6eval/niecza/lib/CORE.setting line 3838 (ANON @ 3)  at /home/p6eval/niecza/lib/CORE.setting line 3839 (module-CORE @ 65)… | |||
..pugs: OUTPUT«*** No such subroutine: "&IO::Socket::INET" at /tmp/vHfLz5C3lt line 1, column 1 - line 2, column 1» | |||
tadzik | GlitchMr: forbidden in SAFE.setting I think | 12:09 | |
GlitchMr | Whatever, I get exactly this same message on niecza... | ||
For some reason, I cannot start IO Socket... | |||
12:09
daxim left
|
|||
GlitchMr | Perhaps it doesn't exist... | 12:10 | |
benabik | GlitchMr: That use of printf isn't hacky. It's spec. printf works in weird and wonderful ways. | ||
GlitchMr | I know :P | ||
github.com/perl6/roast/pull/17 | 12:11 | ||
But I've made more evil stuff :P | |||
benabik | GlitchMr: And, yes, IO::Socket::INET doesn't exist in niecza. I'd say that error message is a bug though. | 12:12 | |
(Or at least it doesn't exist as far as `ack -a Socket` will tell me.) | 12:14 | ||
moritz | and in rakudo, the IO package is replaced by a stub in SAFE.setting | 12:15 | |
12:23
mucker left
12:24
zipf left
|
|||
timotimo | std: class acme::Blah { method object($/) { make $<pairlist>.ast ?? hash ( $<pairlist>.ast ) !! {}; } } | 12:45 | |
p6eval | std 3c2fb9c: OUTPUT«===SORRY!===Ternary !! seems to be missing its ?? at /tmp/bgWxA2mjX1 line 1:------> list>.ast ?? hash ( $<pairlist>.ast ) !!⏏ {}; } }Parse failedFAILED 00:01 115m» | ||
moritz | that looks like code from JSON::Tiny | 12:51 | |
ah, not quite | |||
12:51
GlitchMr42 joined
|
|||
moritz | if you worry that $<pairlist> might not be defined, you can write $<pairlist>.?ast.?hash // {} | 12:51 | |
though I don't quite understand the source of the error | 12:52 | ||
12:52
GlitchMr left,
GlitchMr42 is now known as GlitchMr
12:53
mikemol joined
|
|||
moritz | std: make $<pairlist>.ast ?? hash ( $<pairlist>.ast ) !! {} | 12:53 | |
p6eval | std 3c2fb9c: OUTPUT«===SORRY!===Ternary !! seems to be missing its ?? at /tmp/lx37FLOoo5 line 1:------> list>.ast ?? hash ( $<pairlist>.ast ) !!⏏ {}Parse failedFAILED 00:01 112m» | ||
moritz | std: $<pairlist>.ast ?? hash ( $<pairlist>.ast ) !! {} | ||
p6eval | std 3c2fb9c: OUTPUT«===SORRY!===Ternary !! seems to be missing its ?? at /tmp/w85ye890TX line 1:------> list>.ast ?? hash ( $<pairlist>.ast ) !!⏏ {}Parse failedFAILED 00:01 112m» | ||
moritz | std: $<pairlist>.ast ?? $<pairlist>.ast.hash !! {} | ||
p6eval | std 3c2fb9c: OUTPUT«ok 00:01 110m» | ||
moritz | ah, precedence problem | ||
std: $<pairlist>.ast ?? ( hash $<pairlist>.ast ) !! {} | |||
p6eval | std 3c2fb9c: OUTPUT«ok 00:01 111m» | ||
colomon | space between hash and ( ? | 12:54 | |
moritz | hash is a listop, and ?? !! has tighter precedence than listops | ||
colomon: removing that is also an option | |||
12:58
havenn left
13:08
derrazo joined
13:19
icwiener joined
13:24
sftp joined
13:26
zipf joined
13:29
zipf left,
spider-mario joined
13:34
icwiener left,
icwiener joined
13:37
fgomez left
13:41
fgomez joined
13:42
fgomez left,
fgomez joined
|
|||
flussence | heh, D seems to have discovered $obj.&func()... :) | 13:47 | |
spider-mario | what does it look like in D ? | 13:51 | |
flussence | obj.func() | ||
here's the article - drdobbs.com/blogs/cpp/232700394 | 13:52 | ||
spider-mario | thanks | ||
flussence | it looks like it calls a function with that name if there's no matching method. I'm not sure that's a great idea... | 13:53 | |
moritz | just got to that point in that article, and I have to agree | 13:54 | |
it's not safe against addition of methods | |||
"different things should look different" | |||
14:04
elkng left
14:06
elkng joined
14:08
alvis``` joined,
alvis`` left
14:11
cosimo left
14:12
cosimo joined
14:14
thou joined
14:15
wtw left
14:17
GlitchMr42 joined,
GlitchMr left
14:28
zipf joined
14:36
pnu left,
icwiener left
14:37
icwiener joined
14:40
kaleem left
14:41
kaleem joined,
GlitchMr42 left
14:42
GlitchMr42 joined
14:50
pomysl_ joined,
pomysl left
14:55
tokuhiro_ joined
14:59
GlitchMr joined
15:01
GlitchMr42 left
|
|||
masak | evening, #perl6. | 15:12 | |
colomon | o/ | 15:14 | |
moritz | \o masak, colomon | 15:19 | |
spider-mario | afternoon here | ||
colomon | morning here, but who's counting? | 15:20 | |
masak | japhb++ # github.com/japhb/perl6-bench | ||
15:23
icwiener left,
icwiener joined
15:33
kaleem left
15:35
tarch left
15:40
pnu joined
15:43
kaare_ joined,
havenn joined
15:44
spider-mario left,
spider-mario joined
15:46
Psyche^ joined
15:50
Patterner left,
Psyche^ is now known as Patterner,
zipf left
15:56
ponbiki joined
16:00
havenn left
|
|||
masak | nom & | 16:02 | |
16:09
fsergot joined
16:13
fglock_ joined
16:14
MayDaniel joined
16:22
bbkr left
16:23
GlitchMr42 joined,
pnu left,
bbkr joined
16:25
zipf joined
|
|||
[Coke] | guten abend, masak. | 16:25 | |
16:25
zipf left
16:26
xinming left,
GlitchMr left
|
|||
PerlJam | .oO( Coke is wishing masak a good ABnormal END? ) |
16:29 | |
;) | |||
[Coke] | phenny: "abend"? | 16:30 | |
phenny | [Coke]: "evening" (de to en, translate.google.com) | ||
geekosaur | so if evening's an AbEnd, what's a normal end in German? :p | 16:31 | |
PerlJam | geekosaur: beer! | 16:32 | |
16:33
REPLeffect left,
REPLeffect joined,
tokuhiro_ left
16:34
birdwind1pbird joined,
tokuhiro_ joined
|
|||
sjn | PerlJam: "aBend" (i.e. a Banana or something similarly bendy :) | 16:35 | |
so when the .de's say hello in the evening, they actually say "good banana" | 16:36 | ||
sjn is obviously in the rational corner today | |||
16:39
tokuhiro_ left,
xinming joined
16:41
GlitchMr42 is now known as GlitchMr
|
|||
bonsaikitten | sjn: so what is a morgen? ;) | 16:41 | |
moritz | c vcb gfv s<77gg yy<dasssss | ||
a "morgen" is an areal unit, usually used for land | 16:42 | ||
[Coke] | "tag" - you're it. | ||
moritz | en.wikipedia.org/wiki/Morgen | 16:43 | |
[Coke] | S26-documentation/why.t - this shouldn't have bare skips in it. | 16:44 | |
(nothing in the suite should) | |||
most of the hard skips are from pugs days, but I suspect all the doc ones are from rakudo | 16:45 | ||
16:46
fsergot left
16:52
mj41 left
16:55
fgomez left
16:57
birdwind1pbird left
16:58
dakkar left
16:59
wolfman2000 left,
havenn joined
17:01
fgomez joined
|
|||
[Coke] | +# 03/29/2012 - rakudo++ ; niecza (96.12%); pugs (38.93%) | 17:01 | |
colomon: that's another 0.01%! | 17:02 | ||
colomon | o| | 17:03 | |
(that's me shaking my fist) | |||
doubt I'll be any help this weekend, I'm packed and ready to leave for Ambercon... | |||
dalek | d: 5740094 | larry++ | STD.pm6: catch listop in ??!!; remove unused .<sub> hack |
17:04 | |
17:05
birdwindupbird left
17:13
lichtkind joined
|
|||
japhb | masak, glad you like the nascent perl6-bench. | 17:15 | |
Anyone: Comments? Suggestions? Changes/features/tests you'd like to see on the short list? | |||
moritz | r: my $b = KeyBag.new({ foo => 2, baz => 1}); say $b.pairs.perl | 17:16 | |
p6eval | rakudo f2004a: OUTPUT«("foo" => 2, "baz" => 1).list» | ||
moritz | r: my $b = KeyBag.new({ foo => 2, baz => 1}); say ~($b.map: { .key xx .value }) | 17:17 | |
p6eval | rakudo f2004a: OUTPUT«Method 'value' not found for invocant of class 'KeyBag' in block <anon> at /tmp/zEVgKDMmJX:1» | ||
moritz | r: my $b = KeyBag.new({ foo => 2, baz => 1}); say ~($b.pairs.map: { .key xx .value }) | ||
p6eval | rakudo f2004a: OUTPUT«foo foo baz» | ||
17:18
REPLeffect left
|
|||
moritz | nom: my %h = a => 1, b => 2; eager %h.map: {say .WHAT } | 17:19 | |
p6eval | rakudo f2004a: OUTPUT«Pair()Pair()» | ||
17:23
colomon left
17:31
REPLeffect joined
17:32
havenn left
17:38
MayDaniel left
17:47
havenn joined
|
|||
lichtkind | is there a way to fetch html woth perl 6? | 17:59 | |
18:03
thou left,
fgomez left
18:04
Gothmog_ left
|
|||
masak | lichtkind: have you tried using IO::Socket::INET? | 18:07 | |
lichtkind | not yet | 18:08 | |
i gound hust today that for simple on line scripting thing perl 6 was more convinient than perl 5 | |||
18:08
Gothmog_ joined
18:09
sjohnson joined
|
|||
moritz | "gound hust"? | 18:09 | |
moritz can't parse that | |||
I'm afraid that LWP::Simple is currently broken on nom | 18:10 | ||
masak | moritz: "found just" | ||
shifted one position to the left. | |||
lichtkind | shit i wanted say found out but my hands were one key to right | ||
masak is genious | 18:11 | ||
masak | I get by. | ||
lichtkind | how to install IO::Socket | ||
sjohnson | masak.hi | 18:12 | |
masak | IO::Socket::INET comes bundled with Rakudo compiler. | ||
sjohnson! \o/ | |||
lichtkind | iv not seen it on modules.perl6 | ||
great | |||
sjohnson | looks like rakudo is coming along smoothly as I suspected | ||
lichtkind | does modules also get updates with every fetch | 18:16 | |
18:17
MayDaniel joined,
havenn left
|
|||
lichtkind | and my second question where is actually that lib, cuz: Could not find IO::Socket::INET in any of: lib, /home/lichtkind/.perl6/lib, /home/lichtkind/code/perl/six/rakudo/install/lib/parrot/4.1.0-devel/languages/perl6/lib, . | 18:17 | |
moritz | lichtkind: no need to 'use' it, it's built-in | ||
lichtkind | ah | ||
thank you | |||
[Coke] | moritz: should that error out, though? | 18:18 | |
or just return true, already loaded? | |||
star: use IO::Socket::INET; | |||
p6eval | star 2012.01: OUTPUT«===SORRY!===Could not find IO::Socket::INET in any of: lib, /home/p6eval/.perl6/lib, /home/p6eval/rakudo-star-2012.01/install/lib/parrot/3.11.0/languages/perl6/lib, .» | ||
moritz | [Coke]: dunno | ||
18:20
havenn joined
|
|||
cbk1090 | moritz, it would be nice to see IO::Socket::INET to help us understand how it works. | 18:21 | |
moritz | cbk1090: it's in rakudo's sources in src/core/Socket.pm and src/core/Socket/INET.pm | ||
18:21
leprevost joined
|
|||
[Coke] | cbk1090: perlcabal.org/syn/S32/IO.html#IO%3A...%3A%3AINET | 18:22 | |
spec's a little light. | |||
cbk1090 | cool thanks | ||
[Coke] |  =encoding ALREADYDONE ?? | ||
(looks like a htmlification glitch. | 18:23 | ||
lichtkind | what wrong with IO::Socket::INET.new('host'=>'www.perlfoundation.org/perl6/index...._tablet'); ? | 18:28 | |
masak | lichtkind: you tell us. | 18:29 | |
18:32
thou joined
18:33
mj41 joined,
s1n left
|
|||
lichtkind | it sayd Too many positional parameters passed; | 18:33 | |
but i cant believe it even if put in a hash it still tells that | 18:34 | ||
even if tell just the host | 18:35 | ||
it say it got 2 args | |||
benabik | lichtkind: `IO::Socket::INET.new(:host<google.com>, :port(80))` works for me | 18:36 | |
sjohnson | tadzik: still have that fat face emot? | 18:39 | |
i have to reset it now that I've migrated to another shell during my long absence | |||
lichtkind | why it doesnt take the other syntac for pairs? | ||
benabik wonders if google minds me poking their web servers as network connectivity and library tests. | |||
flussence | .u 1f616 | 18:40 | |
phenny | flussence: Sorry, no results for '1f616'. | ||
benabik | lichtkind: The syntax is host => 'localhost' not 'host' => 'localhost' | 18:41 | |
The fat arrow converts the LHS to a string automagically. | |||
lichtkind | oh that changes | 18:42 | |
p5 handeled that differently | |||
masak | yes. | ||
benabik | Hm. | ||
18:42
havenn left
|
|||
benabik | Although that appears to be only different in a call? | 18:42 | |
masak | yes. captures are a bit of a sublanguage of their own. | 18:44 | |
PerlJam | It's languages all the way down. | 18:46 | |
masak | perl6: say (:()).WHAT | ||
lichtkind | thanks you a lot but i have 2 new problems | ||
p6eval | pugs: OUTPUT«Scalar::Perl5» | ||
..niecza v16-8-gb4b916a: OUTPUT«===SORRY!===Action method fakesignature not yet implemented at /tmp/hLhVCQbpvY line 1:------> say (:(⏏)).WHATAction method sigterm not yet implemented at /tmp/hLhVCQbpvY line 1:------> say (:()⏏).WHA… | |||
..rakudo 018b27: OUTPUT«Signature()» | |||
masak | perl6: say (\()).WHAT | ||
p6eval | pugs: OUTPUT«Scalar::Perl5» | ||
..rakudo 018b27, niecza v16-8-gb4b916a: OUTPUT«Capture()» | |||
lichtkind | can i put the timeout up? | 18:47 | |
masak | lichtkind: you should've listened to Jamie Zawinski :P | ||
lichtkind | i just read about him this week | ||
thats enough :) | |||
what he said? | 18:48 | ||
second is how i get html of the socket | |||
get doesnt seemes to do what i expect | |||
masak | he said "...now you've got two problems." | ||
18:48
s1n joined
|
|||
lichtkind | that classic | 18:48 | |
i expected something fresh like the 9 people | 18:49 | ||
masak | well, you started it :) | ||
20:46 < lichtkind> thanks you a lot but i have 2 new problems | |||
lichtkind | i know | 18:51 | |
but u prefer to run that p6 script that i write | |||
masak | lichtkind: maybe the spectests will help you find out how to use IO::Net::INET? | 18:52 | |
lichtkind | didnt found it | 18:53 | |
moritz | lichtkind: are you aware of tools like grep and ack? | 18:56 | |
masak | lichtkind: t/spec/S32-io/IO-Socket-INET.t | 18:57 | |
let us know if you know of a more intuitive name and place for that file :P | 18:58 | ||
18:59
brrt joined
19:01
MayDaniel left
19:02
thou left
|
|||
lichtkind | ah its in the spec | 19:04 | |
GlitchMr | rule statement_mod_loop:given {<sym> <modifier_expr> } | 19:11 | |
I'm confused... | |||
Why `given` is loop statement modifier? | |||
moritz | because it's a useful categorization | 19:13 | |
PerlJam | maybe because it's a topicalizer? | ||
masak | what moritz said. | ||
GlitchMr | Heh, I've checked that "looping", and it only seems to be used to determine if do { } while 1 is obsolete... | ||
masak | if it helps your imagination, consider it a one-iteration loop. (but without next/last/redo semantics) | 19:14 | |
lichtkind | help! the more i read github.com/perl6/roast/blob/master....t#L6-L156 the less i understand | ||
moritz | GlitchMr: I think there's a second application | ||
GlitchMr | r: do { } given 'something' | ||
p6eval | rakudo 018b27: OUTPUT«===SORRY!===Unsupported use of do...given; in Perl 6 please use repeat...givenat /tmp/2k0KdBDXXh:1» | ||
moritz | GlitchMr: Perl 6 allows using of a conditinal and of a loop statement modifier in the same statement | ||
ie say $_ if $_ %% 2 for ...; | 19:15 | ||
nom: say $_ if $_ %% 2 for 1..4; | |||
p6eval | rakudo 018b27: OUTPUT«24» | ||
moritz | nom: say $_ if $_ %% 2 given 4 | ||
p6eval | rakudo 018b27: OUTPUT«4» | ||
GlitchMr | | $<wu>=['while'|'until']<.keyspace> | 19:16 | |
Perphaps do { } should check for those two words... | |||
19:17
PacoAir left,
icwiener left,
icwiener joined
|
|||
lichtkind | i really see there no example in it does anybody know here how to fetch a html page? | 19:18 | |
[Coke] | b: say 3.7/9.7 | ||
p6eval | b 1b7dd1: OUTPUT«0.381443298969072» | ||
moritz | lichtkind: it's trivial with LWP::Simple, which currently doesn't work. | ||
lichtkind | allright so i wait | ||
i just wanted script that checks the tablets for sanity and stats | 19:19 | ||
and i wanted know if example extraction actually works | |||
[Coke] | moritz: what is LWP::Simple blocking on? | ||
moritz | [Coke]: URI | ||
which, last I checked, had some weird compilation error | 19:20 | ||
[Coke] will not continue to play this game. ;) | |||
ah, good. | |||
[Coke] kicks off a rebuild of his "hack on rakudo" checkout in hopes of getting back to it ever. | 19:21 | ||
19:21
brrt left
|
|||
moritz | eeks, it dies inside the ModuleLoader | 19:21 | |
hm | 19:22 | ||
19:24
derrazo left
|
|||
moritz | nom: our %escapes; for 0 .. 255 -> $c { %escapes{ chr($c) } = sprintf '%%%02X', $c; } | 19:25 | |
p6eval | rakudo 018b27: OUTPUT«Method 'at_key' not found for invocant of class 'Any' in method postcircumfix:<{ }> at src/gen/CORE.setting:1185 in block <anon> at /tmp/IjDSbedXUx:1» | ||
moritz | that's the error :/ | ||
r: printf '%%%02X', 0' | |||
p6eval | rakudo 018b27: OUTPUT«===SORRY!===Confusedat /tmp/Bj1Y25C50T:1» | ||
moritz | r: printf '%%%02X', 0 | ||
p6eval | rakudo 018b27: OUTPUT«%00» | ||
moritz | nom: our %escapes := {}; for 0 .. 255 -> $c { %escapes{ chr($c) } = sprintf '%%%02X', $c; } | 19:26 | |
p6eval | rakudo 018b27: OUTPUT«===SORRY!===Cannot use bind operator with this left-hand sideat /tmp/ps7guoDxOq:1» | ||
19:26
birdwindupbird joined
|
|||
moritz | r: our %a; %a<b> = 'c'; | 19:26 | |
p6eval | rakudo 018b27: OUTPUT«Method 'at_key' not found for invocant of class 'Any' in method postcircumfix:<{ }> at src/gen/CORE.setting:1185 in block <anon> at /tmp/mm0N2fXvBI:1» | ||
moritz | masak: do you know if that's known? | ||
r: our %a = (); %a<b> = 'c'; | |||
p6eval | rakudo 018b27: OUTPUT«Method 'STORE' not found for invocant of class 'Any' in block <anon> at /tmp/4dgXPFVBT7:1» | 19:27 | |
moritz | n: our %a = (); %a<b> = 'c'; | ||
p6eval | niecza v16-8-gb4b916a: ( no output ) | ||
[Coke] | file a bug and see if it attracts pmichaud. ;) | ||
19:27
fsergot joined
|
|||
fsergot | hi #perl6 o/ | 19:28 | |
masak | fsergocie! \o/ | 19:29 | |
moritz: I think so, yes. | |||
moritz | URI.pm now compiles again (locally) | 19:30 | |
masak | moritz++ | 19:33 | |
moritz: rt.perl.org/rt3/Ticket/Display.html?id=102876 seems to capture the above buggy semantics. | 19:35 | ||
moritz | masak++ | 19:36 | |
t/november-urlencoded.t .. ok | |||
19:38
tyatpi joined
|
|||
moritz | one passing test file | 19:39 | |
19:40
thou joined
19:44
birdwindupbird left
19:45
birdwindupbird joined
19:47
havenn joined
19:48
tyatpi left
19:49
GlitchMr left
|
|||
lichtkind | good night | 19:51 | |
19:52
havenn left
19:54
mcero joined
|
|||
moritz | t/escape.t now passes | 19:54 | |
19:56
lichtkind left
19:58
tyatpi joined
|
|||
moritz | t/01.t now passes | 19:59 | |
japhb | moritz++ # Knockin' 'em down, one test file at a time ... | 20:00 | |
20:03
tyatpi left
|
|||
moritz | ... except that I don't know how to tackle that last one | 20:03 | |
oh hell, I'll just TODO it for now | |||
pull request sent. | 20:05 | ||
20:08
havenn joined
|
|||
moritz | r: constant %escapes = (^255).map({ | 20:12 | |
p6eval | rakudo 018b27: OUTPUT«===SORRY!===Unable to parse blockoid, couldn't find final '}' at line 2» | ||
moritz | r: constant %escapes = (^255).map({; .chr => sprintf '%%%02X', $_ }).hash; say %escapes<e> | 20:13 | |
p6eval | rakudo 018b27: OUTPUT«===SORRY!===invoke() not implemented in class 'Undef'» | ||
[Coke] | moritz: were you avoiding regressions in rakudo? | ||
moritz | r: constant %escapes = (^256).hash; say %escapes<e> | ||
p6eval | rakudo 018b27: OUTPUT«Any()» | ||
moritz | [Coke]: the one with 'our %hash' | ||
20:14
Chillance joined
|
|||
moritz | [Coke]: apart from that it was mostly exceptions and object initialization | 20:14 | |
[Coke]: and I removed some workarounds around old rakudo bugs | |||
20:15
kaare_ left
|
|||
moritz | r: constant %escapes = (^255).map({; chr($_) => sprintf '%%%02X', $_ }).hash; say %escapes<e> | 20:15 | |
p6eval | rakudo 018b27: OUTPUT«===SORRY!===invoke() not implemented in class 'Undef'» | ||
moritz | r: constant %escapes = (^255).map({; $_ => $_ }).hash; say %escapes<e> | ||
p6eval | rakudo 018b27: OUTPUT«===SORRY!===invoke() not implemented in class 'Undef'» | ||
moritz | r: (^255).map({; $_ => $_ }).hash; | ||
p6eval | rakudo 018b27: ( no output ) | ||
moritz | r: constant $a = (^255).map({; $_ => $_ }).hash; | ||
p6eval | rakudo 018b27: OUTPUT«===SORRY!===invoke() not implemented in class 'Undef'» | ||
moritz | r: constant $a = (^255).hash; | ||
p6eval | rakudo 018b27: OUTPUT«===SORRY!===Odd number of elements found where hash expected» | ||
moritz | r: constant $a = (^256).hash; | 20:16 | |
p6eval | rakudo 018b27: ( no output ) | ||
moritz | masak: wanna submit rakudobug? | ||
masak submits rakuodbug | 20:17 | ||
20:27
stdio left
20:28
fglock_ left
20:30
birdwindupbird left
20:34
tyatpi joined
20:35
tyatpi left,
bacek_ left,
tyatpi joined
|
|||
spider-mario | r: (^255).map({$_ => $_ }).hash; | 20:36 | |
p6eval | rakudo 018b27: OUTPUT«use of uninitialized variable $!key of type Any in string contextMethod 'count' not found for invocant of class 'Hash' in method reify at src/gen/CORE.setting:4628 in method reify at src/gen/CORE.setting:4553 in method reify at src/gen/CORE.setting:4553 in… | ||
spider-mario | r: constant $x = [*] 2 .. 6; say $x; | ||
p6eval | rakudo 018b27: OUTPUT«720» | ||
spider-mario | oh, rakudo from git now handles that, indeed | 20:38 | |
in rakudo star 2012.02, I got : | |||
Cannot handle constant $x with non-literal value yet at line 1, near ";\n" | |||
nice :) | |||
20:38
fgomez joined
|
|||
moritz | well, we do improve the compiler from time to time :-) | 20:38 | |
jnthn++ | |||
20:39
PacoAir_ joined,
xinming_ joined
20:42
xinming left
20:44
havenn left
20:46
ponbiki left
|
|||
TimToady | spider-mario: {$_ => $_ } is not supposed to be considered a hash, according to S04:1569, so that's a bug | 20:50 | |
20:50
spider-mario left
20:51
spider-mario joined
|
|||
TimToady | spider-mario: did you see what I just said? | 20:52 | |
spider-mario | yes | ||
but isn’t a list of pairs (to-hash)able? | 20:53 | ||
TimToady | not if parameterized, and according to S04:1569, $_ counts as a parameter | ||
spider-mario | the block is parameterized | ||
but map applies it | 20:54 | ||
so what results should be a list of (1 ⇒ 1), should it not? | |||
TimToady | and returns a pair each time | ||
20:54
Trashlord left
|
|||
spider-mario | r: (^255).map({$_ => $_ }).perl | 20:54 | |
p6eval | rakudo 018b27: OUTPUT«use of uninitialized variable $!key of type Any in string contextMethod 'count' not found for invocant of class 'Hash' in method reify at src/gen/CORE.setting:4628 in method reify at src/gen/CORE.setting:4553 in method gimme at src/gen/CORE.setting:4941 in… | ||
moritz | but rakudo constructs a Hash right away, so .map doesn't get a block in teh first place | ||
TimToady | the bug is that it's already been turned into a hash, so map can't call it | ||
spider-mario | oh | ||
TimToady | and $_ isn't set before the hash is made, hence the uninit error | 20:55 | |
r: (^255).map( -> $_ { $_ => $_ } ).perl | |||
p6eval | rakudo 018b27: ( no output ) | ||
TimToady | r: (^255).map( -> $_ { $_ => $_ } ).perl.say | ||
p6eval | rakudo 018b27: OUTPUT«(0 => 0, 1 => 1, 2 => 2, 3 => 3, 4 => 4, 5 => 5, 6 => 6, 7 => 7, 8 => 8, 9 => 9, 10 => 10, 11 => 11, 12 => 12, 13 => 13, 14 => 14, 15 => 15, 16 => 16, 17 => 17, 18 => 18, 19 => 19, 20 => 20, 21 => 21, 22 => 22, 23 => 23, 24 => 24, 25 => 25, 26 => 26, 27 => 27, 28 =… | ||
TimToady | it's supposed to behave like that | ||
spider-mario | r: (map {$_ => $_}, (^256)).perl.say | ||
p6eval | rakudo 018b27: OUTPUT«use of uninitialized variable $!key of type Any in string contextCannot call 'map'; none of these signatures match::(Callable &code, *@values) in block <anon> at /tmp/mEsgiEgb_2:1» | ||
20:55
elkng left
|
|||
moritz | same problem | 20:56 | |
spider-mario | r: (map {$^x => $^x}, (^256)).perl.say | ||
p6eval | rakudo 018b27: OUTPUT«(0 => 0, 1 => 1, 2 => 2, 3 => 3, 4 => 4, 5 => 5, 6 => 6, 7 => 7, 8 => 8, 9 => 9, 10 => 10, 11 => 11, 12 => 12, 13 => 13, 14 => 14, 15 => 15, 16 => 16, 17 => 17, 18 => 18, 19 => 19, 20 => 20, 21 => 21, 22 => 22, 23 => 23, 24 => 24, 25 => 25, 26 => 26, 27 => 27, 28 =… | ||
TimToady | r: (^255).map( { $^a => $^a } ).perl.say | ||
p6eval | rakudo 018b27: OUTPUT«(0 => 0, 1 => 1, 2 => 2, 3 => 3, 4 => 4, 5 => 5, 6 => 6, 7 => 7, 8 => 8, 9 => 9, 10 => 10, 11 => 11, 12 => 12, 13 => 13, 14 => 14, 15 => 15, 16 => 16, 17 => 17, 18 => 18, 19 => 19, 20 => 20, 21 => 21, 22 => 22, 23 => 23, 24 => 24, 25 => 25, 26 => 26, 27 => 27, 28 =… | ||
benabik | r: $_=1; say {$_ => $_}.WHAT | ||
p6eval | rakudo 018b27: OUTPUT«Hash()» | ||
TimToady | another workaround | ||
timotimo | p6: sub infix:<W T F>($a, $b, $c, $d) { say "a: $a, b: $b, c: $c, d: $d"; }; 99 W 88 T 77 F 66; | ||
spider-mario | we thought about it at the same time | ||
p6eval | niecza v16-8-gb4b916a: OUTPUT«===SORRY!===Two terms in a row at /tmp/Ihb1syvoVi line 1:------> a: $a, b: $b, c: $c, d: $d"; }; 99 W 88 ⏏T 77 F 66;Parse failed» | ||
benabik | r: $_=1; say (-> $_ {$_ => $_}).WHAT | ||
p6eval | ..pugs: OUTPUT«***  Unexpected "W" expecting operator at /tmp/_KVpZqggKG line 1, column 77» | ||
..rakudo 018b27: OUTPUT«===SORRY!===Confusedat /tmp/158iYnOdSL:1» | |||
timotimo | is this supposed to work? | ||
p6eval | rakudo 018b27: OUTPUT«Block()» | ||
TimToady | no | ||
timotimo | do operators have to have non-alphanumeric characters? | 20:57 | |
benabik | I don't think non-binary infix is allowed. | ||
timotimo | ternary operator? | ||
TimToady | not even ??!! works that way | ||
benabik | Is not defined like that. | ||
timotimo | oke | ||
benabik | Ternary is closest to an infix macro with a custom parse rule (as I understand it) | 20:58 | |
TimToady | line 3856 in STD.pm6 | 20:59 | |
timotimo | oh, okay | 21:01 | |
21:01
mcero left
|
|||
sjohnson | TimToady: hi | 21:02 | |
21:11
leprevost left
21:12
fgomez left
21:15
fgomez joined,
fgomez left,
fgomez joined
|
|||
tadzik | sjohnson: should have it somewhere | 21:16 | |
( `ー´) | |||
( ° ー°) | |||
(´ー` ) | |||
there you go | |||
masak | aww | 21:18 | |
tadzik | :) | 21:19 | |
sjohnson | nice | ||
sweet | |||
sjohnson missed those emots | |||
(i lost my last irc shell) | |||
timotimo | can someone rebuild a current version of the perl6 book? i wasn't able to build it myself the last time i tried and a few changes and enough time have already accumulated to warrant a newer edition i think | 21:21 | |
21:25
zipf joined
|
|||
masak | very few people can actually build the book :/ | 21:26 | |
tadzik | :) | ||
I remember the hassle when I compiled the kindle version | |||
21:26
zipf left
|
|||
masak | 'night, #perl6 | 21:30 | |
tadzik | g'night | ||
21:31
PacoAir_ left
|
|||
fsergot | good night! :) | 21:32 | |
21:43
tyatpi left
21:45
NamelessTee left
21:55
derrazo joined
22:03
bacek_ joined
22:04
LylePerl left
22:10
mj41 left
22:12
BruceZu left
22:21
ponbiki joined
22:27
vlixes joined
22:29
ponbiki left
22:36
whiteknight joined
22:37
fgomez left
|
|||
fsergot | nn #perl6 ! o/ | 22:38 | |
22:38
fsergot left
22:40
cardcha joined
|
|||
cardcha | Ugh | 22:43 | |
windows you suck | |||
to bad your pretty much required for gaming | |||
): | 22:44 | ||
spider-mario | I play Lugaru | 22:45 | |
:D | |||
and on consoles (mainly GameCube and Dreamcast). | |||
(perhaps a bit of emulation on PSP too) | |||
timotimo | are you following the development of overgrowth? | ||
spider-mario | (emulating GB, GBA and SNES) | ||
not often, but I am interested, indeed | 22:46 | ||
cardcha | noes | ||
what is overcast | |||
It's such a pain to program on windows | |||
timotimo | i recently upgraded my computer and installed a windows for the first time in at least 5 years to play tribes: ascend. turns out all i play is natural selection 2 ... | ||
cardcha | Whenever someone asks me what my computer specs are I say 82.5 billion floating point operations per second because it sounds important | 22:48 | |
22:48
fgomez joined
22:49
havenn joined
22:51
benabik left
|
|||
cardcha | I just GeoIPED youi | 22:55 | |
23:00
havenn left
23:01
libertyprime left
|
|||
timotimo | is s04 the right place to look for how exceptions work in perl6? the book says almost nothing about it and s04:exceptions is really, really short | 23:02 | |
23:03
fgomez left
23:06
icwiener_ joined
23:07
icwiener left
23:14
libertyprime joined
23:19
spider-mario left
|
|||
timotimo | there's the 2011 advent post on exceptions, but it doesn't cover how to rethrow an error that was matched by a when block and it doesn't explain the "magic" behind the decision to mark an exception as handled when it has been matched | 23:22 | |
23:25
Chillance left,
icwiener_ left
|
|||
timotimo | so, if there's an implicit loop inside CATCH; that would set $_ to each exception, but $! will sometimes not-equal $_, because $! is only the "latest" exception, not the one currently being handled? | 23:28 | |
23:33
colomon joined
23:37
tokuhiro_ joined
|
|||
timotimo | aaah - If you test a Failure for .defined or .Bool, the Failure marks itself as handled - this will cause the when statements in the CATCH block to mark the exception as handled? | 23:38 | |
or is a Failure object something different from an exception that was thrown with di? | |||
23:39
havenn joined
|
|||
timotimo | maybe i don't know enough about perl itself, but the part on exceptions in s04 is a bit too short for my tastes | 23:40 | |
can this be correct? | 23:47 | ||
is +($!.pending.grep( ! *.handled )), 4, | |||
'$!.pending has three unhandled exceptions'; | |||
shouldn't it say "four" in the string or 3 in the line above? | |||
github.com/perl6/roast/blob/master...ding.t#L30 is the line btw | 23:49 | ||
oh, of course there's a whole segment on "exception handlers" directly above it that i just didn't see | 23:55 |