»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg camelia perl6: ... | irclog: irc.perl6.org | UTF-8 is our friend! Set by sorear on 25 June 2013. |
|||
00:10
abnorman left
00:11
abnorman joined,
ajr_ left
00:13
census left
00:30
zwut00 left,
Targen left
01:18
cooper_ is now known as cooper,
cooper left,
cooper joined
01:26
aindilis joined
01:30
FROGGS_ joined,
fridim__ joined
01:34
FROGGS left
01:41
FROGGS_ left
01:46
dayangkun joined
01:49
araujo left,
araujo joined
02:01
dayangkun left
02:06
abnorman left
02:11
BenGoldberg left
02:16
FROGGS joined
02:19
EvanTeitelman left
02:20
abnorman joined
02:58
sorear joined
03:24
preflex_ joined,
ChanServ sets mode: +v preflex_,
preflex left,
preflex_ is now known as preflex
04:08
raiph left,
raiph joined
04:09
EvanTeitelman joined
04:13
raiph left
04:26
Targen joined
04:27
Mouq joined
04:31
EvanTeitelman left
04:46
daniel-s__ joined
04:54
fridim__ left
05:04
atroxaper joined
05:05
Mouq left
05:08
jeff_s1 left,
jeff_s1 joined
05:11
xilo left
05:36
SamuraiJack joined
05:52
FROGGS left
05:53
xenoterracide left
05:57
hummeleBop joined,
xenoterracide joined
|
|||
moritz | \o | 06:00 | |
06:05
FROGGS joined
06:11
jercos joined
06:19
denisboyun joined
|
|||
[Coke] | moritz: just coming online? | 06:23 | |
lizmat | good *, #perl5! | 06:25 | |
moritz | [Coke]: yes | ||
dalek | rl6-roast-data: 7754068 | coke++ | / (5 files): today (automated commit) |
06:26 | |
rl6-roast-data: b7e1698 | coke++ | perl6_pass_rates: Fix date - running after midnight somewhere... |
|||
moritz | was there any parrot release yesterday? | ||
[Coke] ... there, now I can go to sleep. | 06:27 | ||
nwc10 was wondering exactly that | |||
labster | my email says there was parrot release. | ||
lizmat | moritz: there is an announcement | ||
moritz | oh right | ||
nwc10 | e-mail as of 6 minutes ago? | ||
[Coke] | #parrot claims so | 06:28 | |
tadzik | this emails also informs of pmurias++ passing GSoC! \o/ | ||
moritz | my mixture of mail rules means that the announcement is sorted into my p6l folder, where I didn't actively look for it | ||
labster | fixed one bug? | ||
moritz | tadzik: midterms | ||
tadzik | oh? | ||
nwc10 | I think that the e-mail only arrived 7 minutes ago | ||
moritz | All three of our GSoC students passed their midterms, and are on track to complete their Parrot and Perl 6 projects on time. | ||
tadzik | oh, misread | 06:29 | |
moritz | tadzik: even better, we can expect more awesomeness from pmurias++ | ||
tadzik | so gsoc is a lot longe these days | ||
of course :) | |||
nwc10 | labster: the news is consistent with the recent commit history: github.com/parrot/parrot/commits/master | ||
labster | Well, no rush on upgrading then, we don't even use PCRE, right? | 06:31 | |
moritz | labster: we don't. But if it fixes build issues with PCRE, then we won't have to pass --without-pcre to parrot's Configure.pl anymore :-) | 06:32 | |
lizmat | r: say $^N # note it doesn't catch the Perl5 special var check | 06:36 | |
camelia | rakudo bda446: OUTPUT«===SORRY!=== Error while compiling /tmp/dDEbHNRo8pCannot use placeholder parameter $^N in the mainlineat /tmp/dDEbHNRo8p:1------> say $^N⏏ # note it doesn't catch the Perl5 spec» | ||
lizmat | so I guess all of the $^letter handling wrt to Perl 5 variables, can be removed | 06:37 | |
I guess that predates the invention of placeholder variables | |||
TimToady: do you agree ? | |||
moritz | std: / $^N / | ||
camelia | std 06636e4: OUTPUT«===SORRY!===Unsupported use of $^N variable; in Perl 6 please use $/[*-1] at /tmp/TY1D63p4b0 line 1:------> / $^N ⏏/Parse failedFAILED 00:00 42m» | ||
moritz | r: / $^N / | 06:38 | |
camelia | rakudo bda446: OUTPUT«===SORRY!=== Error while compiling /tmp/xPVsSpkA_6Cannot use placeholder parameter $^N in the mainlineat /tmp/xPVsSpkA_6:1------> / $^N⏏ /» | ||
lizmat | r: sub a { say $^N }; a("foo") | 06:39 | |
camelia | rakudo bda446: OUTPUT«foo» | ||
FROGGS | lizmat: is it about just stripping this? rakudo/src/Perl6/Grammar.nqp:1590: # TODO: $^X and other "caret" variables | ||
lizmat | std: sub a { say $^N }; a("foo") | ||
camelia | std 06636e4: OUTPUT«===SORRY!===Unsupported use of $^N variable; in Perl 6 please use $/[*-1] at /tmp/nRsKMy8Pzf line 1:------> sub a { say $^N ⏏}; a("foo")Parse failedFAILED 00:00 43m» | ||
lizmat | I think std is wrong here | ||
it's about stripping the entire special_variable token | 06:40 | ||
200+ lines | |||
since that can now be handled by X::Syntax::Perl5Var | 06:41 | ||
FROGGS | 'now' means it is already in nom? | 06:43 | |
TimToady | see S06:1966 | ||
synopsebot | Link: perlcabal.org/syn/S06.html#line_1966 | ||
06:43
kaleem joined
|
|||
lizmat | aha, so nom is wrong in that respect | 06:44 | |
but otherwise, TimToady, would you agree it is a good thing to move special_variable handling to P6 user space? | 06:45 | ||
instead of in the grammar ? | |||
TimToady | I dunno, it relies on LTM currently with lots of special lookahead dwimmery | 06:46 | |
lizmat | well, it currently doesn't work | ||
r: say $* | |||
camelia | rakudo bda446: OUTPUT«===SORRY!=== Error while compiling /tmp/lgIvcHUKBGNon-declarative sigil is missing its nameat /tmp/lgIvcHUKBG:1------> say ⏏$* expecting any of: argument list prefix or term prefix or meta-prefix»… | ||
diakopter | where is the parrot announcement | ||
lizmat | r: say $" | 06:47 | |
labster | diakopter: in my email box. | ||
camelia | rakudo bda446: OUTPUT«===SORRY!=== Error while compiling /tmp/AnOGdUUcY6Non-declarative sigil is missing its nameat /tmp/AnOGdUUcY6:1------> say ⏏$" expecting any of: argument list prefix or term prefix or meta-prefix»… | ||
lizmat | r: say $' | ||
camelia | rakudo bda446: OUTPUT«===SORRY!=== Error while compiling /tmp/bjdlifmvqlNon-declarative sigil is missing its nameat /tmp/bjdlifmvql:1------> say ⏏$' expecting any of: argument list prefix or term prefix or meta-prefix»… | ||
moritz | it was sent to perl6-announce too, so it'll eventually appear on planetsix too | ||
lizmat | I was appropriating that error into Perl5Var and then turn it into what STD gives | ||
labster | diakopter: this is the relevant bit of the changes, though. github.com/parrot/parrot/commit/2e...764180f363 | 06:48 | |
lizmat | $ perl6 -e 'say $"' | ||
===SORRY!=== Error while compiling -e | |||
Unsupported use of $" variable; in Perl 6 please use .join() method | |||
diakopter | okay, I thought you were saying there was some non-standard announcement | ||
06:50
crab2313 joined
|
|||
TimToady | and not all of it can be based on triggering by an error | 06:50 | |
std: $/ = "\n"; | |||
camelia | std 06636e4: OUTPUT«===SORRY!===Unsupported use of $/ variable as input record separator; in Perl 6 please use the filehandle's :irs attribute at /tmp/jYCxINWN1p line 1:------> $/⏏ = "\n";Parse failedFAILED 00:00 41m» | ||
TimToady | that's actually legal P6 | ||
[Coke] | r: say [Coke] | 06:51 | |
camelia | rakudo bda446: OUTPUT«===SORRY!=== Error while compiling /tmp/AEzTR4o_jpUndeclared name: Coke used at line 1. Did you mean 'Code'?» | ||
lizmat | r: $/ = "\n" | 06:52 | |
camelia | rakudo bda446: ( no output ) | ||
lizmat | TimToady: so you're saying that rakudo has it wrong, or std ? | ||
TimToady | rakudo | ||
lizmat | as in, you cannot assign to $/, and if you do, you're assuming it is a P5 variable | 06:53 | |
TimToady | yes | ||
unfortunately assignment to $/ is a common idiom in P5 | 06:54 | ||
lizmat | and preferablly at compile time of course | ||
TimToady | that's what STD does | ||
std: $/ [=] "\n"; | 06:56 | ||
camelia | std 06636e4: OUTPUT«Potential difficulties: Useless use of [] around infix op at /tmp/7eozoLelWC line 1:------> $/ ⏏[=] "\n";ok 00:00 43m» | ||
TimToady | snerk | ||
std: ($/) = "\n"; | |||
camelia | std 06636e4: OUTPUT«ok 00:00 44m» | ||
TimToady | std: $/ := "\n"; | ||
camelia | std 06636e4: OUTPUT«ok 00:00 43m» | ||
TimToady | I think P6 $/ typically uses binding semantics underneath anyway | 06:57 | |
lizmat | do you have an opinion on keeping special_variable token in the grammar otherwise | ||
removing that and put all the specific feedback info in the X::Syntax::Perl5Var class ? | 06:59 | ||
TimToady | it would probably be possible to move most of the special variable detection into error analysis, but some of them would have eaten a twigil without a \w, and others that aren't followed by a twigil would have to look ahead to see if there was something P5ish | ||
lizmat | brb | ||
07:00
brrt joined
|
|||
TimToady | I guess it would be easier to turn off the P5ism detection if it weren't in the grammar | 07:00 | |
might cut down on lexer size a little too | |||
FROGGS | masak: I think github.com/perl6/roast/blob/master...ay02.t#L23 is against perlcabal.org/syn/S02.html#The_.fmt_method | 07:01 | |
TimToady: do you agree that the directive count of .fmt/sprintf must match the argument count passed? | 07:02 | ||
TimToady | well, the use case for the allowing them to disagree is marginal at best | 07:03 | |
and one can always trim or extend a list of arguments to suit | 07:04 | ||
also, depends on how you count "argument", since some formats are applied repeatedly to arrays/hashes by .fmt | 07:06 | ||
nr: say <1 2 3>.fmt("%5.2f") | |||
camelia | rakudo bda446, niecza v24-88-g1f87209: OUTPUT« 1.00 2.00 3.00» | 07:07 | |
TimToady | like that | ||
07:07
abnorman left
|
|||
dalek | rl6-bench: 7dac837 | (Timo Paulssen)++ | comp (2 files): add rakudo-jvm to the components |
07:10 | |
rl6-bench: 3191de6 | (Geoffrey Broadwell)++ | comp (2 files): Fix compiler naming to be more VM-neutral |
|||
rl6-bench: 06d0b53 | (Geoffrey Broadwell)++ | components.json: Update rakudo-jvm build steps to current procedure as of 2013-08-18 |
|||
rl6-bench: 61c4213 | (Geoffrey Broadwell)++ | components.json: nqp repo renames must be reflected in build instructions for things that use nqp |
|||
rl6-bench: a48bb92 | (Geoffrey Broadwell)++ | perl6/rc-forest-fire: Type checking of array contents in new Rakudo catches type bug in rc-forest-fire; to make it fair across all perl6en, just de-constrain the array |
|||
FROGGS | TimToady: I am talking about the call to sprintf | ||
TimToady | well, you mentioned .fmt | ||
FROGGS | TimToady: so this is invalid when we use nqp::sprintf, because only the key is used: github.com/perl6/roast/blob/master...ay02.t#L24 | 07:11 | |
TimToady | but yes, sprintf should probably enforce agreement, at compile time if it can | ||
lizmat | TimToady: ok, clear, need to run errands now, bbl & | 07:12 | |
FROGGS | TimToady: and we are thinking that if you use directives like %$3s, the rule is more like "every arg has to be used" | 07:13 | |
07:14
crab2313 left
|
|||
TimToady | nr: say { :a(1), :b(2) }.fmt('%s:%0.0s', ' -- ') | 07:15 | |
camelia | niecza v24-88-g1f87209: OUTPUT«a:1 -- b:2» | ||
..rakudo bda446: OUTPUT«a: -- b:» | |||
TimToady | it's possible to print something with 0 width, I guess | ||
well, except in niecza :) | |||
07:16
crab2313 joined
|
|||
TimToady | given we can do 0 width, it's more reasonable to enforce the need for both a key and a value field, but I'm not sure this use of .fmt rises to the same level of error-proneness as an sprintf with the wrong number of args | 07:17 | |
FROGGS | nqp-jvm: say(sprintf("%0.0s", ["test test, can you 'ear me?"])) | 07:18 | |
camelia | nqp-jvm: OUTPUT«Lexical '&sprintf' not found in <anon> in <anon> in eval in evalfiles in command_eval in command_line in MAIN in <anon> in <anon>» | ||
TimToady | nr: say { :a(1), :b(2) }.fmt('%s:', ' -- ') | ||
camelia | rakudo bda446, niecza v24-88-g1f87209: OUTPUT«a: -- b:» | ||
FROGGS | nqp-jvm: say(nqp::sprintf("%0.0s", ["test test, can you 'ear me?"])) | ||
camelia | nqp-jvm: OUTPUT«No registered operation handler for 'sprintf' in compile_op in as_jast in as_jast in <anon> in process_args in <anon> in <anon> in compile_op in as_jast in as_jast in <anon> in compile_all_the_stmts in as_jast in as_jast in <anon> in compi… | ||
FROGGS | huh? | ||
TimToady | neither niecza nor rakudo has trouble with a short .fmt on a key/value pair | ||
FROGGS | TimToady: that works locally using nqp::sprintf | 07:19 | |
TimToady | and there are probably lots of times you're interested in only the key, so we could support that as a special case | ||
FROGGS | (it prints nothing | ||
) | |||
TimToady | why are you trying to print an array? | ||
FROGGS | TimToady: well, parrot's sprintf doesnt care about too many args, nqp::sprintf does | 07:20 | |
TimToady: nqp's op is like that | |||
TimToady | right, no variadics | ||
FROGGS | hmmm, maybe rakudo can let nqp parse the directives, return the argument count, and the decide only to pass the key | 07:21 | |
the would make Hash.fmt("%s") work | 07:22 | ||
but not sprintf( "%s", Hash ) I think | |||
07:22
abnorman joined
|
|||
TimToady | well, not if Hash flattens into an argument list | 07:23 | |
sprintf( "%s", $hash ) would work | |||
07:23
_daniel-s__ joined
|
|||
TimToady | fsdo work | 07:23 | |
07:24
cognominal joined
|
|||
TimToady | arguably, Array.fmt("%s %s") could figure out it should do .kv | 07:24 | |
FROGGS | hmmm | 07:25 | |
TimToady | well, more likely "%d: %s\n" or some such | ||
FROGGS | what if you have several directives and a mix of hashes and arrays? It can't decide to only pass keys or not | ||
TimToady | .fmt never has a mix | 07:26 | |
FROGGS | but sprintf("", .... ) | ||
TimToady | and sprintf is 1 for 1 | ||
07:26
daniel-s__ left
|
|||
FROGGS | 1 for 1? | 07:26 | |
TimToady | 1 % for each arg | ||
sprintf doesn't dwim like .fmt does | 07:27 | ||
FROGGS | ahh, because the args dont flatten | ||
TimToady | if you say sprintf("%s", $array), the array stringifies before %s has its way with it | 07:28 | |
likewise $hash | |||
07:28
cognominal left
|
|||
FROGGS | yeah | 07:28 | |
so it will work out nicely | 07:29 | ||
TimToady | we have to stay close to C semantics with sprintf, but .fmt can be dwimmier | ||
07:29
pernatiy left,
zakharyas joined
|
|||
FROGGS | I know now how to fix this fwiw: perl6 -e 'say Int.fmt("%d")' | 07:29 | |
0 | |||
err | |||
perl6 -e 'say Inf.fmt("%d")' | |||
get_boxed_ref could not unbox for the given representation | |||
this ^^ | |||
TimToady | there's no integer representation of Inf | 07:30 | |
unlike floaters | |||
FROGGS | true, thinko | ||
and %s already works | 07:31 | ||
jnthn | morning | ||
FROGGS | jnthn: morning | ||
TimToady | so we'd have to treat that specially if we wanted %d to be able to do Inf | ||
jnthn: o/ | |||
FROGGS | r: say Inf.fmt('%s') | ||
camelia | rakudo bda446: OUTPUT«Inf» | ||
FROGGS | TimToady: and this is where the sprintf argument handler comes in handy | ||
TimToady | eval: printf("%d\n", inf) | 07:33 | |
or however you invoke P5 here... | |||
prints -1 | |||
:) | |||
07:33
cognominal joined
|
|||
moritz | p5eval: printf("%d\n", inf) | 07:35 | |
p5eval | moritz: -11 | ||
moritz | p5eval: sprintf("%d\n", inf) | ||
p5eval | moritz: -1 | ||
TimToady | not sayin' we should follow p5's behavior here... | 07:36 | |
jnthn yawns | |||
TimToady yawns, but for the opposite reason | |||
jnthn | :) | ||
FROGGS gets c[#] | |||
diakopter yawns for monkey reasons | 07:37 | ||
07:40
fhelmberger joined
07:41
fhelmberger left,
fhelmberger joined
07:48
ssutch left
|
|||
TimToady | zzz & | 07:48 | |
08:03
crab2313 left
08:12
ilogger2 joined,
ChanServ sets mode: +v ilogger2
08:13
Pleiades` joined
|
|||
masak | antenoon, '6 | 08:13 | |
08:13
_ilbot joined
08:14
eiro joined,
Rix joined,
popl joined
|
|||
moritz | \o masak | 08:15 | |
08:15
popl left
|
|||
masak | moritz: "You don't have permission to access /perl6/2013-08-20 on this server" for irclog.perlgeek.de/perl6/2013-08-20 | 08:16 | |
yesterday is "Forbidden", apparently. | |||
lizmat | not for me ? | ||
masak .oO( now, if you had said that about tomorrow, I wouldn't have batted an eye ) | |||
08:17
cosimo joined
|
|||
masak | hey, now it works again. | 08:17 | |
08:17
itz joined,
Kiralexis joined
|
|||
masak | never mind. | 08:17 | |
anyway, it failed twice. | |||
moritz | masak: might be a temporary problem with rate limiting | ||
I'll have to find a better balance between not bothing users and limiting for bots | |||
lizmat | surely, yesterday is just a static file ? | 08:18 | |
08:18
Nei joined
|
|||
Nei | certainly looks fine to me here ;) | 08:19 | |
moritz | lizmat: it's not; I should make it one, eventually | ||
having it all dynamic was perfect when I still did heavy hacking on the markup | 08:20 | ||
08:21
popl joined,
popl left,
fhelmberger joined,
fhelmberger left,
fhelmberger joined
08:22
dmol joined
08:24
jeff_s1 joined
08:26
pernatiy joined
08:31
popl joined
|
|||
popl | sorry for the joining and parting. I am troubleshooting an encoding issue with my terminal. :) | 08:32 | |
08:32
popl left
08:34
popl joined
08:35
popl left
08:38
sqirrel joined
|
|||
moritz | .tell popl a good test for a UTF-8 terminal is perl -Mcharnames=:full -CS -wle 'print "\N{EURO SIGN}"' | 08:39 | |
moritz notices he doesn't know anymore how to use the message bot de jour | |||
08:39
dakkar joined
|
|||
jnthn | I fear yoleaux may have been appropriately named... | 08:40 | |
nwc10 was trying to remember enough French. I think it's "ajourd hui, comment s'appel le message bot du jour?" | 08:41 | ||
grammar and spelling likely to be a lot worse than my German | |||
jnthn | .oO( "le bot message" at least *sounds* frencher... ) |
08:42 | |
08:43
popl joined
|
|||
moritz | nwc10: I dimly recall that in French you do it in reverse order. If it's "message bot" in DE or EN, it's "bot de message" in FR | 08:43 | |
08:43
popl left
|
|||
masak .oO( the French. they do it backwards. ) | 08:43 | ||
also, probably a bit tautological with both "ajourd'hui" and "du jour" :) | 08:45 | ||
08:46
dmol left
|
|||
masak | (I don't remember how to spell French either, by the way) | 08:46 | |
08:46
dmol joined
|
|||
jnthn | masak: F-r-e-n-c-h | 08:46 | |
You actually got it right :P | 08:47 | ||
masak | thank you! you're a big help. | ||
nwc10 | For some reason this makes me think of | ||
jnthn | yay, I did something useful today \o/ | ||
nwc10 | My dog has no nose | How does he smell? | Terrible | ||
tadzik | :D | ||
How does a duck look? | With its eyes, duh | 08:48 | ||
it's less wrong in Polish | |||
masak somehow is reminded of bash.org/?25464 | 08:49 | ||
diakopter | if it looks like a duck, walks like a duck, quacks like a duck ... the duck's probably not cooked enough yet | ||
masak | I wonder how many type theorists have learned about duck typing and gone "what... what are you... wh... noooooooooo" | 08:51 | |
jnthn | Ducks that glance at you are the tastiest. Om nom. Peeking duck. | ||
masak | dåligt. | ||
arnsholt | =D | 08:52 | |
masak | at least the peeking duck is less annoying than the pecking duck. | ||
diakopter | or the pekid duck | 08:54 | |
08:55
jeff_s1 left
|
|||
jnthn | I think the animal pun in the MoarVM talk at YAPC is still my worst, though. :) | 08:55 | |
diakopter | jnthn: I was the only one who laughed I think | ||
I didn't mind being the only one | |||
08:56
pecastro joined
|
|||
masak | what animal pun? | 08:56 | |
diakopter | mwahaha | ||
jnthn | masak: The penguin in the GC slides... | ||
masak | amazingly, Peking duck is made from a type of duck called Pekin duck. en.wikipedia.org/wiki/American_Pekin_Duck | ||
diakopter: I laffed, but I was forewarned :) | |||
diakopter | wait, I'm thinking of another pun in the slides | ||
jnthn | There was another? :) | 08:57 | |
diakopter | where I truly was the only one who laughed | ||
oh dear.. | |||
08:57
djanatyn left
|
|||
diakopter | I could've sworn... | 08:58 | |
08:58
Tene joined,
ponbiki joined
|
|||
masak | didn't pdcawley shout "what are you doing to the children, you sick bastard!?" :P | 08:58 | |
(turning them into gentoo penguins) | |||
08:58
ponbiki is now known as Guest59420
|
|||
jnthn | haha | 08:58 | |
Probably :) | |||
08:58
djanatyn joined
|
|||
JimmyZ | masak: www.oreillynet.com/etel/blog/2004/0...ple_e.html | 08:59 | |
extend | |||
09:00
gdey joined
|
|||
JimmyZ | oh, this www.thinkgeek.com/product/5aa9/ | 09:00 | |
09:00
jeff_s1 joined
|
|||
masak | the first comment in that first link, "There are 2 kinds of people -- those who divide people into kinds, and those who don't." -- is one of the few autopuns that I don't consider very funny. too "constructed". | 09:01 | |
diakopter | yeah; it's not tongue-in-cheek enough in its devastating criticism | 09:02 | |
"there are 2 kinds of people -- those who write comments on this blog" | 09:03 | ||
masak | :) | ||
the thinkgeek comments made me depressed. why oh why did I read the comments? :( don't read the comments. | |||
diakopter doesn't see thinkgeek comments | 09:04 | ||
masak | good. | 09:05 | |
brrt | slight, non-perl6-related-rant: why does everybody think that, if its over http, and somewhere json is used, and it isn't SOAP or JSON-RPC or something, its' automatically REST? | ||
diakopter | "2 in base 10 is | ||
10 in base 2" | |||
how many other pairs of those are there | |||
brrt | 'cause REST means a really specific thing, and 9-out-of-10 times people who call their system REST do not try to achieve that specfic thing at all | 09:06 | |
masak | diakopter: "n in base 10 is 10 in base n" | ||
diakopter: for any n. that's what "10" means. | |||
jnthn | brrt: I know. You're like "hypermedia constraint" and they're like "wtf is that" :) | 09:07 | |
brrt | exactly | ||
masak | "A RESTful API is only truly RESTful if it uses hypermedia to tell us about all the actions that can be performed on the curent resource, allowing us to traverse the API from a single entry point." | 09:08 | |
I talked about this to my participants yesterday. | |||
a SOAP guy in the audience was not impressed. | |||
jnthn | I'm never quite sure whether to treat the richardson maturity model as "it's OK to call it REST if you're on the way there" or "you shouldn't call it REST unless you're at level 3" | ||
masak | he: "you still need to spec all your resources and the verbs on them!" me: "well, yeah..." | ||
brrt | i'll be the first to admit that not everybody wants or needs the full flexibility of a REST model | 09:09 | |
jnthn | brrt: Oh, for sure. | ||
masak .oO( if we don't do our REST properly they will all HATEOAS ) | |||
diakopter | jnthn: but I have unique urls for everything. | ||
jnthn | brrt: I think when a lot of people say REST they really want to say "HTTP-based API" | ||
diakopter: That's level 1 of the maturity model. :) | 09:10 | ||
brrt | which is exactly the situation i'm in jnthn :-) | ||
masak | jnthn: that's like, so immature! | ||
jnthn | masak: SOAP is level 0 :P | ||
brrt | and i keep saying, no, thats not REST, because we don't have unique urls, no form of redirection or whatever, and GET and POST are equivalent | ||
jnthn | Thing is, I suspect if you fed the average consumer of a HTTP API a truly RESTful one, they'd not really know how to consume it properly anyway... | 09:11 | |
diakopter | masak: so how many other bases work there in place of 10 | ||
jnthn | That is, they'd go couple to all the URLs anyways... | ||
09:12
denis_boyun joined
|
|||
diakopter | "but my web server only understands TRACE method | 09:12 | |
" | |||
jnthn: what does TRACE mean in REST | 09:14 | ||
because it HAS to mean SOMETHING | |||
brrt | we (n the vaguest sense) perhaps should launch some sort of education offensive | ||
09:14
rindolf joined
09:15
Nei left
|
|||
diakopter | moritz: can you query your clogs to find out the person whose comments cause the most people to part the channel (not quit) soon after? | 09:16 | |
moritz | diakopter: I don't think parts are logged reliably | 09:18 | |
lizmat | is it sane to throw another exception from within the message method of an exception ? | 09:19 | |
specifically, throw an X::Syntax::SigilWithoutName from with a X::Syntax::Perl5Var | 09:20 | ||
if the strange var name is not one of the ones existing in Perl 5 ? | |||
moritz | NO | ||
lizmat | figured :-) | ||
diakopter | only if the message is "turtles" | ||
moritz | having .message die gives the worst possible user experience | ||
lizmat: seems like you want a kind of static function that decides for you which exception to construct | 09:21 | ||
diakopter | endless loop is worse | ||
moritz | deleting all your files is also worse :-) | 09:22 | |
lizmat | I'm a slow mail reader | ||
I tend not to read mail real fast | 09:23 | ||
diakopter dubs thee "outlook" | |||
diakopter dubbeth thee "outlook" | |||
jnthn | .oO( "outlook not so good" ) |
||
diakopter | masak: did you think of any other bases than 10? :) | 09:25 | |
moritz | diakopter: all bases are base 10 :-) | 09:26 | |
09:30
denis_boyun left
09:36
fhelmberger left
09:37
fhelmberger joined
09:39
daxim joined
|
|||
masak | diakopter: no :) | 09:40 | |
diakopter | must mean base 10 is magical | 09:43 | |
masak | I don't know how you conclude that. | 09:44 | |
lizmat | if you think about it, 10 is really yin/yang | 09:45 | |
masak | define "is really". | 09:47 | |
diakopter | masak: the joke is that the "base 10" and "base 2" are both expressed in base 10 | 09:50 | |
so there's really 3 variables there | 09:51 | ||
masak | diakopter: I suspected you were after something like that. | ||
JimmyZ | multi trait_mod:<is>(Routine $rl, :$really!) { ... } | ||
masak | diakopter: in any discussion about bases that purports to be serious, I usually agree on some convention with the other party, to keep things non-confused. | 09:52 | |
JimmyZ: :P | |||
JimmyZ | s/Routine $rl/Int $i/ | 09:53 | |
;) | |||
09:54
kaleem joined
|
|||
diakopter | "in what base was that number you just said?" "okay, in what base was that number?" "okay, in what base was THAT number?" | 09:56 | |
moritz | base specs are always decimal. | 09:58 | |
problem solved. | |||
diakopter | my measure of Perl 6's readiness: how long it takes me to come up with a new WEIRD bug when I sporadically try to | 10:00 | |
masak | waitwait... is the readiness directly proportional to the time it takes, or inversely? :P | 10:03 | |
diakopter | depends on oyur definition of bug | 10:04 | |
jnthn | Could go either way. I mean, we make it run faster and diakopter can find bugs faster. We make it less buggy and diakopter can find bugs slower. We make it faster and less buggy and it retains its current readiness :P | 10:06 | |
masak | depends if it gets less buggy faster or faster faster :P | 10:07 | |
nwc10 | by this metric, how ready is Perl 5? | 10:11 | |
masak | oh, I thought you removed the last bug from Perl 5 a couple of years ago... :P | 10:22 | |
diakopter | nwc10: that one's trickier, because it's so difficult to nail down what is a bug | 10:23 | |
I could discover a thousand behaviors that seem bizarre and unexpected to me.. but which others will tell me, "oh, no, that's how it's supposed to work" | 10:25 | ||
masak | which makes backwards compatibility so much more... interesting. | ||
because it's kind of a moving target, or at least not a fully-known target. | |||
diakopter | and it's not like I'll ever find the test for that particular case in the test suite, if it's there | 10:26 | |
s/test/RT/g | 10:27 | ||
Failed language names: Morass. Tarpit. Boondoggle. Tarbaby. Sepulchre. | 10:28 | ||
er, failed names of languages, I meant | 10:29 | ||
not Names for failed languages | |||
marketing department: "I really don't think we can sell your language if it's named deathtrap" | 10:31 | ||
"your choice of AllSoftwareSucks for the name of your Operating System is curious" | 10:36 | ||
dalek | kudo/nom: a24bf6f | (Elizabeth Mattijsen)++ | src/ (2 files): Catch a few more special P5 variable names |
10:40 | |
10:41
rindolf left,
ribasushi joined
|
|||
lizmat | what is the best way in NQP to see if a character is in A..Z ? | 10:46 | |
ge A && le Z ? | 10:47 | ||
jnthn | r: my $chr := 'G'; say('A' le $chr le 'Z') | ||
camelia | rakudo bda446: OUTPUT«True» | ||
jnthn | r: my $chr := 'g'; say('A' le $chr le 'Z') | ||
camelia | rakudo bda446: OUTPUT«False» | ||
jnthn | oops | ||
nqp: my $chr := 'g'; say('A' le $chr le 'Z') | |||
camelia | nqp: OUTPUT«1» | ||
lizmat | in NQP | ||
jnthn | nqp: my $chr := 'G'; say('A' le $chr le 'Z') | 10:48 | |
camelia | nqp: OUTPUT«1» | ||
lizmat | cool! | ||
jnthn | um...no, it got it wrong! | ||
wtf | |||
Of course, you can always $chr ~~ /^<[A..Z]>$/ :) | 10:49 | ||
Anyway, you can write it with ge && le too | |||
10:49
fhelmberger left
|
|||
lizmat | $chr ~~ works in nqp ? | 10:49 | |
jnthn | r: my $chr := 'G'; say($chr ~~ /^<[A..Z]>$/) | 10:50 | |
camelia | rakudo bda446: OUTPUT«「G」» | ||
10:50
fhelmberger joined
|
|||
jnthn | r: my $chr := 'g'; say($chr ~~ /^<[A..Z]>$/) | 10:50 | |
dammit, nqp | |||
nqp: my $chr := 'g'; say($chr ~~ /^<[A..Z]>$/) | |||
nqp: my $chr := 'G'; say($chr ~~ /^<[A..Z]>$/) | |||
camelia | rakudo bda446: OUTPUT«Nil» | ||
nqp: OUTPUT«» | |||
nqp: OUTPUT«G» | |||
jnthn | anyway, yes :) | ||
lizmat | cool | ||
thanks! | |||
jnthn is happy to see that this is already mentioned in the Rakudo and NQP internals course :) | 10:51 | ||
lizmat | :-) | ||
masak | \o/ | ||
lizmat | r: { say $^X }("foo") | 10:58 | |
camelia | rakudo bda446: OUTPUT«foo» | ||
lizmat | $ perl6 -e '{ say $^X }("foo")' | ||
===SORRY!=== Error while compiling -e | |||
Unsupported use of $^X variable; in Perl 6 please use $*EXECUTABLE_NAME | |||
spectesting now | |||
moritz | std: { say $^X }("foo") | 11:02 | |
11:02
denis_boyun joined
|
|||
camelia | std 06636e4: OUTPUT«===SORRY!===Unsupported use of $^X variable; in Perl 6 please use $*EXECUTABLE_NAME at /tmp/iQS4nIgiEM line 1:------> { say $^X ⏏}("foo")Parse failedFAILED 00:00 43m» | 11:02 | |
moritz | but isn't $^X valid Perl 6 also? | ||
grondilu | rn: say { $_ < 2 ?? 1 !! $_*&?BLOCK($_-1) }(4); | 11:05 | |
camelia | niecza v24-88-g1f87209: OUTPUT«24» | ||
..rakudo bda446: OUTPUT«===SORRY!=== Error while compiling /tmp/IjPPeU4UcHUndeclared name: &?BLOCK used at line 1» | |||
lizmat | moritz: no | ||
perlcabal.org/syn/S06.html#line_1968 | 11:06 | ||
masak | somehow this article made me think of #perl6 in general and jnthn in particular: tvtropes.org/pmwiki/pmwiki.php/Main...geonMaster | ||
dalek | kudo/nom: 8e617d5 | (Elizabeth Mattijsen)++ | src/Perl6/Actions.nqp: Disallow $^A..Z as perl S06:1968 |
11:07 | |
synopsebot | Link: perlcabal.org/syn/S06.html#line_1968 | ||
moritz | masak: I propose to change our standard expletive to "WTP", "What The Pun" :-) | 11:08 | |
(and if you don't immediately like this proposal, punder it a bit :-) | 11:09 | ||
lizmat | What The Poo ? | ||
masak | moritz: :P | ||
lizmat | Winnie! | ||
masak | moritz: I will take it punder consideration. | ||
lunch & | |||
lizmat | or just Winnie The Poo | 11:10 | |
11:10
kaleem left,
kaleem joined
|
|||
masak .oO( Winnie The Unicode Pile of Poo ) | 11:10 | ||
11:15
pmurias joined
|
|||
dalek | kudo-js: 1df3259 | (Pawel Murias)++ | src/QAST/Compiler/JavaScript.nqp: While emitting JavaScript correctly quote string containing \. |
11:17 | |
kudo-js: 336fb9b | (Pawel Murias)++ | src/QAST/Compiler/JavaScript.nqp: Implement \s in regexes. |
|||
kudo-js: 63954ec | (Pawel Murias)++ | runtime/serialization.js: Correctly deserialize hashes of variants containing the key "deserialize". |
|||
kudo-js: cb76b7f | (Pawel Murias)++ | runtime.js: Make nqp::join stringify it's arguments properly. |
|||
kudo-js: 4b63f88 | (Pawel Murias)++ | runtime.js: Implement nqp::printfh. |
|||
kudo-js: 614cc21 | (Pawel Murias)++ | / (2 files): Implement nqp::shell. |
|||
kudo-js: 5ba0bda | (Pawel Murias)++ | runtime.js: A slightly hackish implementation of nqp::where for P6opaque objects. |
11:19 | ||
kudo/nom: 149bd0f | (Elizabeth Mattijsen)++ | docs/ChangeLog: Mention that $^A..$^Z are no longer allowed |
|||
11:32
sqirrel left
11:40
fhelmberger_ joined
11:44
fhelmberger left
|
|||
dalek | kudo/nom: 4c26636 | (Elizabeth Mattijsen)++ | src/core/Exception.pm: Move message of SigilWithoutName to Perl5Var, eradicate SigilWithoutName |
11:44 | |
ast: 70940e2 | (Elizabeth Mattijsen)++ | S32-exceptions/misc.t: SigilWithoutName is now Perl5Var |
11:45 | ||
11:46
fhelmberger joined,
fhelmberger_ left
|
|||
dalek | kudo/nom: e84ddaf | (Elizabeth Mattijsen)++ | src/Perl6/Actions.nqp: Make sure we do the $^A..Z check before the mainline check |
11:57 | |
12:05
kbaker joined
|
|||
dalek | ast: 449915a | (Elizabeth Mattijsen)++ | S32-exceptions/misc.t: Add some more Perl5Var exception tests |
12:07 | |
lizmat | this concludes mo foray into Grammar and Actions wrt to Perl5 variables in Perl 6 for nw | 12:08 | |
*my | |||
need to get more experience with grammars before touching <special_variable> again | 12:15 | ||
12:20
benabik joined,
denis_boyun left
|
|||
lizmat | r: .say for < $< $> > # rakudobug ? | 12:26 | |
camelia | rakudo e84dda: OUTPUT«$<$>» | ||
moritz | std: .say for < $< $> > | 12:28 | |
camelia | std 06636e4: OUTPUT«ok 00:00 42m» | ||
moritz | seems STD agrees | 12:29 | |
lizmat | agrees that the space between $< and $> disappears ? | ||
and it becomes a single string ? | |||
benabik | Yeah. I would have expected "$<\n$>\n" | ||
r: < $< $> >.perl.say | 12:30 | ||
camelia | rakudo e84dda: OUTPUT«("\$<\$>",).list» | ||
jnthn | It didn't become a single string | ||
oh, or did it... | 12:31 | ||
Hm | |||
Hm, that should probably have become quote words... | |||
benabik | Well, it became a list with a single string, technically. :-D | ||
jnthn | Yeah. Odd | ||
masak submits rakudobug | |||
dalek | ast: 1055f06 | (Elizabeth Mattijsen)++ | S32-exceptions/misc.t: Why not check exhaustive for all of the Perl5Var cases |
12:33 | |
ast: a528442 | (Elizabeth Mattijsen)++ | S32-exceptions/misc.t: Don't need to check for '$*' twice |
12:34 | ||
tadzik | better check twice, to be sure :) | 12:35 | |
12:35
nyuszika7h left
12:36
nyuszika7h joined
|
|||
dalek | ast: c1d1a44 | (Elizabeth Mattijsen)++ | S32-exceptions/misc.t: Grrr you can't "todo" throws_like tests (almost certain you get TODO's passed) |
12:37 | |
lizmat | time for a break, cycling& | 12:38 | |
12:46
rindolf joined
|
|||
clkao | win 22 | 12:48 | |
timotimo | is that the anti-version of catch 22? | ||
clkao | lol | ||
masak | no, it's Windows from the future. | ||
JimmyZ | is windows 98 from the future? | 12:49 | |
and windows 7 from the past | 12:50 | ||
timotimo | JimmyZ: that's the biggest y2k bug ever right there :) | ||
in 80 years, windows 95 will make a big comebacks onto quantum computers solar-system wide. | 12:51 | ||
JimmyZ | ;) | ||
masak | JimmyZ: Windows 22 (also known as "win22") was released on November 2024. | 12:52 | |
;) | |||
JimmyZ | and windows 2003? | ||
masak | March 201023. | ||
JimmyZ | ;) | ||
12:53
kamen44 joined
|
|||
masak still chuckles at #python's "NO LOL | NO PROJECT EULER" /topic | 13:00 | ||
timotimo | hehe | ||
13:00
kamen44 left
|
|||
masak | it's like in Malmö central station, we had a sign "no balloons". | 13:00 | |
someone tweeted "what is this, East Germany?" | |||
13:02
yoleaux joined,
ChanServ sets mode: +v yoleaux
13:13
sidus joined
|
|||
masak | sidus: greetings. | 13:14 | |
FROGGS | timotimo: from 13.09. to 16.09. a night in hotel acasa is 99€, because there is the Automobilmesse >.< | 13:15 | |
13:15
ajr joined,
ajr is now known as Guest80712
|
|||
timotimo | bleh. | 13:15 | |
that's very expensive. | 13:16 | ||
FROGGS | it is | ||
13:16
Guest80712 is now known as ajr_
13:21
PacoAir joined
13:23
PacoAir left,
PacoAir joined
13:25
kaare_ joined
13:28
denis_boyun joined
13:33
rindolf left
13:37
skids joined
13:41
fridim__ joined
13:45
iSlug joined
13:46
fridim__ left
13:48
fhelmberger_ joined,
rindolf joined
13:49
Guest59420 is now known as ponbiki
13:51
fhelmberger left
13:56
Targen_ joined
14:08
bluescreen10 joined
|
|||
masak .oO( hotel acausal ) | 14:08 | ||
14:10
thou joined
14:17
pernatiy left
14:19
pernatiy joined
14:29
denis_boyun left
14:32
gdey left
14:35
iSlug left
14:39
Psyche^_ joined
14:43
FROGGS joined
14:45
wingfold joined
14:55
jnap joined
14:56
pmurias left
14:57
kbaker left
15:04
kbaker joined
15:15
fgomez joined,
gdey joined,
gdey left
15:16
gdey joined,
berekuk joined
15:24
lowpro30_ joined
15:25
Targen_ left
|
|||
TimToady | nqp: my $chr := 'G'; say($chr.ord ~~ 'A'.ord .. 'Z'.ord) | 15:35 | |
camelia | nqp: OUTPUT«Confused at line 2, near "say($chr.o"current instr.: 'panic' pc 14721 (src/stage2/gen/NQPHLL.pir:5232) (src/stage2/gen/NQPHLL.nqp:279)» | ||
jnthn | Double fail. No ranges, and no methods on strings. :) | 15:36 | |
TimToady | nqp: my $chr := 'G'; say(ord($chr) ~~ ord('A') .. ord('Z')) | ||
camelia | nqp: OUTPUT«Confused at line 2, near "say(ord($c"current instr.: 'panic' pc 14721 (src/stage2/gen/NQPHLL.pir:5232) (src/stage2/gen/NQPHLL.nqp:279)» | ||
TimToady | ah well | 15:37 | |
[Coke] | (REST) I call my crappy apis RESTful. they're RESTy. RESTlike. RESTalicious. (but not usually really REST) | ||
(backscrollin, across the universe..) | |||
TimToady | RESTiferous, most of 'em are | ||
timotimo | "well RESTed" | 15:38 | |
geekosaur | resting gently among the perls | 15:39 | |
TimToady tries to avoid picturing geekosaur on the half shell | 15:40 | ||
15:40
xinming joined
|
|||
TimToady | npr: .say for < $< $> > | 15:45 | |
camelia | niecza v24-88-g1f87209, pugs: OUTPUT«$<$>» | ||
..rakudo e84dda: OUTPUT«$<$>» | |||
[Coke] | ah, shit. :( | ||
TimToady | looks like rakudo is odd-person-out | ||
jnthn | I blame the guy who messed around loads with quoting last :P | 15:46 | |
15:48
ajr_ left
|
|||
daxim | brrt is my man! | 15:51 | |
let me chime in, 8 hours too late | |||
fielding on his blog made it clear that the maturity model does not apply - if there's no hypermedia, it isn't rest. basta | 15:52 | ||
jnthn | Fair enough. | 15:53 | |
Given they're *constraints* I guess you'd expect it to be that way. | |||
daxim | exactly! … but it's a complicated topic :( | 15:54 | |
jnthn | *nod* | ||
daxim | I'm doing my part by educating the local developer scene, touring meetup | 15:55 | |
15:55
crab2313 joined
|
|||
daxim | learning from examples works best | 15:55 | |
perigrin | [Coke]: RESTifarian? | 15:56 | |
15:58
MilkmanDan joined
15:59
kaleem left
|
|||
geekosaur | the RESTaurant | 15:59 | |
[Coke] | perigrin: giveitaREST | 16:01 | |
16:02
daxim left
|
|||
jnap | RESTinpeace? | 16:02 | |
perigrin | [Coke]: when it comes to web interactions I find it hard to RESTrain myself. | ||
diakopter | seems everyone's a terroREST nowadays | ||
MilkmanDan | Oh lawd, what did I walk into... | 16:03 | |
jnthn | #perl6 | ||
geekosaur | shoulda RESTed first? | ||
perigrin | what jnthn said | ||
diakopter | jnthn: which web scheme is fairest of them all | 16:05 | |
jnthn | diakopter: your mom's scheme, of course... | 16:06 | |
diakopter arrests you | 16:07 | ||
TimToady | MilkmanDan: er, welcome! | 16:13 | |
16:13
locsmif joined
|
|||
TimToady | pay not attention to the rest of these jokers...er...oops | 16:15 | |
*no | |||
16:16
cognominal joined
|
|||
TimToady | MilkmanDan: we do, occasionally, have on-topic conversations here... | 16:16 | |
perigrin | the REST of the time ... | ||
TimToady | it's just that, since Perl 6 is designed to interface with everything else in the world, we often end up talking about...everything else... | 16:17 | |
MilkmanDan: did you have any questions about Perl 6? | 16:21 | ||
16:21
cognominal left
16:22
cognominal joined
|
|||
MilkmanDan | TimToady: Just wondering the state of the new onion, really. | 16:22 | |
But I think I've gotten a good enough idea from www.modernperlbooks.com/mt/2012/12/...erl-6.html | |||
TimToady | um | 16:24 | |
a lot has changed since December | 16:25 | ||
not all of it with the approval of chromatic++ :) | |||
FROGGS | hehe | ||
>.< | 16:26 | ||
MilkmanDan | heh | ||
Fair enough. | |||
I got there via www.perlmonks.org/?node_id=1047676 though. | |||
My original question was "I wonder why there are no mentions of perl6 at benchmarksgame.alioth.debian.org/ " | 16:27 | ||
I had assumed that it had gotten along a lot farther since last I looked, and you know what that means.... | 16:28 | ||
TimToady | well, the JVM port isn't really expected to be all that performant initially, though it's encouraging that in at least one case it was faster | ||
moarvm is expected to be performant, but it's not quite self-hosted yet | 16:29 | ||
so I expect you'll see a lot more benchmarking in the coming year | |||
MilkmanDan | nod | 16:32 | |
Parrot doesn't seem to be ready for production either, from what I gather. Not so? | 16:34 | ||
TimToady | Parrot...was not a success story... | 16:39 | |
MilkmanDan | So I gathered. | 16:40 | |
TimToady | except in the Edisonian sense of finding out ways not to invent the lightbulb | ||
well, this is overstated a hair, since we're still using it to bootstrap other implementations | 16:41 | ||
MilkmanDan | Also there doesn't seem to be a Learning Perl for 6, unless the git project that hasn't been touched in 9 months is already complete. | ||
er, complete and intended to serve. | |||
16:41
spider-mario joined
|
|||
TimToady | a "new camel" is in the works, but it'll take a while | 16:42 | |
MilkmanDan | I'd be more at the llama stage. :) | ||
diakopter is more at the pupa stage | |||
pmichaud | morning, #perl6 | 16:43 | |
moritz | \o * | ||
TimToady | o/ | ||
16:43
Rix left
|
|||
FROGGS | o/ | 16:44 | |
TimToady: who is writing it? | |||
grondilu | MilkmanDan: the synopsyses are not too bad a way to learn Perl 6, imho. They are decently well written. | ||
jnthn | o/ | ||
TimToady | FROGGS: TheDamian is my co-author. | 16:45 | |
FROGGS | cool | ||
TimToady | still mostly at the outline stage though | ||
FROGGS | jnthn: I'm in frankfurt from friday evening (20:30) to monday morning... when do you plan to arrive/depart? | 16:46 | |
TimToady: yeah, if I would intend to write a book it will most likely only reach that stage | 16:47 | ||
TimToady | takes a bit of OCD to successfuly write a book | ||
FROGGS | OCD? | 16:48 | |
TimToady | obsessive compulsive disorder | ||
jnthn | FROGGS: I don't (can't) know about arrival yet | ||
FROGGS | I know LSD fwiw, but these are not the 70s | ||
TimToady | since my OCD has to fit in with all my other syndromes, I have to work on emphasizing that aspect when I flip into writing mode | ||
16:48
SamuraiJack joined
|
|||
jnthn | FROGGS: I'll arrive on Friday at some point. It depends whether I end up teaching on the Friday, and where I'd be coming from. | 16:49 | |
FROGGS | yeah | ||
jnthn | FROGGS: Probably I depart Monday. | ||
FROGGS | it took like 5 months to write an article for the german $foo magazine, it would take ages to write a book, and it wouldn't easy to read I fear | 16:50 | |
brb | 16:51 | ||
TimToady | at the moment I'm OCDing more on my CJK character database, but I only have 818 characters left to do, out of roughly 70,000, so I can (I hope) let that go soon. | 16:52 | |
16:53
pernatiy left
|
|||
TimToady | well, right now I'd better obsess about getting my poor kitty some catfood... | 16:54 | |
16:55
dakkar left
17:01
gdey_ joined
17:03
Targen joined
|
|||
jnthn | back in a couple of hours | 17:05 | |
& | |||
MilkmanDan | grondilu: Not bad, for a beginner? Or not bad for someone who is already working in p5? | ||
17:06
gdey left
17:13
djanatyn left
|
|||
grondilu | MilkmanDan: I'm not sure what you mean by "beginner". I meant that it's not bad for someone who has a good culure in programming. | 17:14 | |
17:14
djanatyn joined
|
|||
grondilu | the synopsys are a good way to learn perl6 for anyone who is already used to read perl5 doc, that what I meant. | 17:15 | |
colomon | nqp: my $chr := 'g'; say('A' le $chr le 'Z') | ||
camelia | nqp: OUTPUT«1» | ||
colomon | nqp: my $chr := 'g'; say('A' le $chr && $chr le 'Z') | 17:16 | |
camelia | nqp: OUTPUT«0» | ||
colomon | nqp: my $chr := 'G'; say('A' le $chr && $chr le 'Z') | ||
camelia | nqp: OUTPUT«1» | ||
MilkmanDan | grondilu: Ok. So, closer to the camel book than the llama. | ||
colomon doesn't know if someone else pointed that out along the way, ETOOMUCHBACKLOG | |||
colomon is also suffering from ETOOMUCHISETHEBY | |||
17:17
timotimo joined
|
|||
benabik | colomon: I don't think the comparisons are supposed to chain in NQP. | 17:19 | |
src/NQP/Grammar.pm:691: NQP::Grammar.O(':prec<m=>, :assoc<left>', '%relational'); | |||
grondilu | nqp: my $chr := 'g'; say(0 le 'Z') | 17:21 | |
camelia | nqp: OUTPUT«1» | ||
grondilu | nqp: my $chr := 'g'; say('A' le $chr)) | ||
camelia | nqp: OUTPUT«Confused at line 2, near "say('A' le"current instr.: 'panic' pc 14721 (src/stage2/gen/NQPHLL.pir:5232) (src/stage2/gen/NQPHLL.nqp:279)» | ||
grondilu | nqp: my $chr := 'g'; say('A' le $chr) | ||
camelia | nqp: OUTPUT«1» | ||
grondilu | nqp: my $chr := 'g'; say(1 le 'Z') | ||
camelia | nqp: OUTPUT«1» | ||
benabik | grondilu: Exactly. 'A' le $chr le 'Z' is ('A' le $chr) le 'Z', which is probably not what you meant. | 17:22 | |
17:22
crab2313 left
|
|||
benabik | Perhaps the relationals should be nonassoc rather than left. | 17:23 | |
17:23
abnorman joined
|
|||
benabik | (Alternatively, chaining, which is more convenient.) | 17:23 | |
grondilu | indeed, order relations are *never* associative, are they? | 17:24 | |
grondilu kind of remember this from his maths course, long ago | |||
benabik | It's a type problem. < : 'a -> 'a -> Bool. So unless you're trying to order booleans, it's naturally non-associative. | 17:25 | |
lizmat is back | 17:26 | ||
grondilu | an order relation is: reflexive, antisymetric and transitive. But *not* associative. | ||
en.wikipedia.org/wiki/Order_theory | |||
so yeah, it should be non-associative. | |||
benabik | Or chaining, which is a non-standard associativity. (a < b < c --> a < b && b < c, but evals b once) | 17:27 | |
grondilu | yeah but that's different. we were discussing about the fact that < was defined as :assoc<left>, which is wrong as I understand it. | 17:29 | |
when you write a < b < c, you actually use a ternary operator, don't you? | 17:30 | ||
I mean it's not the same operator at all. | |||
(because < as a binary operator is not associative, so a < b < c can not be defined. You must define a ternary operator that uses the same symbol) | 17:34 | ||
TimToady | well, it's really a variadic higher-order function that alternates comparands with comparators | ||
17:35
abnorman left
|
|||
grondilu | How does one define a ternary infix in Perl 6? | 17:35 | |
TimToady | by cheating | 17:36 | |
grondilu | sub infix:<a b>($x, $y, $z) {...} # like that? | ||
17:36
MilkmanDan left
|
|||
grondilu | std: sub infix:<a b>($x, $y, $z) {...} # like that? | 17:36 | |
camelia | std 06636e4: OUTPUT«Potential difficulties: $x is declared but not used at /tmp/HHqisw6VMp line 1:------> sub infix:<a b>(⏏$x, $y, $z) {...} # like that? $y is declared but not used at /tmp/HHqisw6VMp line 1:------> sub infix:<a b>($x, ⏏$y, $z) {… | ||
benabik | ?? !! is implemented as token infix:<?? !!> { '??' <O(prec)> '!!' } | ||
TimToady | I suppose that could be supported, if we were interested in encouraging ternary operators :) | ||
benabik | I think you'd have to use `is parsed`. | ||
grondilu | TimToady: I think it's the most logical way to define a < b < c | 17:37 | |
TimToady | I don't; I already said what I think it is above. | ||
benabik | grondilu: But then what happens when you try a < b < c < d | ||
diakopter | chained comparison needs the same compiler trick as chained || | ||
grondilu | benabik: oh yeah, good point. | ||
17:37
Rix joined
|
|||
TimToady | diakopter: except || degenerates gracefully to binops, while < doesn't | 17:39 | |
the chain ops differ from list associative ops in allowing the operators to differ | |||
a || b ^^ c is not list associative | 17:40 | ||
17:40
abnorman joined
|
|||
TimToady | but a < b != c is chaining | 17:40 | |
catfoodr & | 17:41 | ||
grondilu | so yeah that's the higher order function stuff. TimToady's right I guess, which is not too surprising :) | 17:43 | |
benabik makes sure that changing it to non-associative doesn't break things. | |||
colomon | benabik: I agree, but someone up-log was trying to chain them. | ||
benabik | colomon: Well, I'm not sure what magic is needed to make them chain, but I can at least break the code in a useful way. :-) | 17:44 | |
17:46
rindolf left
17:47
gdey_ left
|
|||
lizmat | Seems it's going to be hard to get a hotel room in Frankfurt around 13/16 September | 17:47 | |
so I booked 4 extra 2xsingle rooms at the www.booking.com/hotel/de/arena.en-gb.html | 17:48 | ||
which is around the corner from the venue | |||
17:49
bluescreen10 left
|
|||
lizmat | so the first 10 attendees of the Rakudo and NQP Internals Workshop will have a place to stay and need not book anything | 17:50 | |
unless they want to arrive before the 13th or leave after the 16th | |||
timotimo | ooooooh | 17:52 | |
benabik | lizmat++ | ||
timotimo | i booked a hotel already | ||
17:52
wingfold left
|
|||
timotimo | in the "hotel tourist" | 17:52 | |
lizmat | can you cancel it still ? | 17:53 | |
timotimo | yes, but it'll cost me full price | ||
lizmat | I mean without paying anything ? | ||
ah, then you can't cancel :-) | |||
timotimo | nope | ||
lizmat | is it far from the venue ? | ||
benabik | nqp passes self-tests with non-assoc relationals. Now building Rakudo. | 17:54 | |
17:54
gdey joined
17:56
lowpro30 joined,
gdey left
17:57
gdey joined
|
|||
lizmat | timotimo: looks like 4 stops with the S-Bahn, that is, if it goes into Hbf | 17:57 | |
Let's see how the number of attendees works out | 17:58 | ||
if there is room in the Arena Hotel, then you can decide whether to stay there or go to Hotel Tourist after all | 17:59 | ||
17:59
lowpro30_ left
|
|||
FROGGS | how much is a night in Hotel Arena? | 18:01 | |
18:02
Mouq joined,
berekuk left
|
|||
FROGGS | I pay 80 eur in Hotel Tourist, and it is the cheapest I could find (in case you dont want to share your toilet with others...) | 18:02 | |
18:03
fhelmberger_ left
18:04
pecastro left
18:06
pernatiy joined,
berekuk joined
18:12
wingfold joined
|
|||
lizmat | FROGGS: did you book also already ? | 18:14 | |
FROGGS | yes | ||
lizmat | shite (excusez le mot) | ||
at Tourist ? | |||
FROGGS | right | ||
lizmat | non-refundable, I assume | ||
Arena would come to ~ 75 euro if you share with someone | 18:15 | ||
FROGGS | Alle Stornierungen werden mit dem Gesamtbetrag berechnet.Änderungen, die bis zu 30 Tage vor Anreisedatum erfolgen, sind kostenfrei.Änderungen, die verspätet erfolgen, sowie Nichtanreisen werden mit dem Gesamtbetrag berechnet. | 18:16 | |
:o( | |||
18:16
thou left
|
|||
Mouq | What is $*W? | 18:16 | |
lizmat | ok, I guess you will be hotelmates with timotimo | ||
FROGGS | Mouq: the World | ||
lizmat | src/Perl6/World.nqp | 18:17 | |
Mouq | Ahh, cool. Thank you | ||
FROGGS | lizmat: yeah, but we have separate rooms | ||
18:18
abnorman left,
thou joined
|
|||
lizmat | well, I hope that nobody else has booked yet... | 18:19 | |
if so, we should have ample rooms | 18:20 | ||
in any case, I've just decided that the hotel will be on my bill anyway | 18:21 | ||
so I'll refund you and timotimo for the stay in Tourist | |||
so that we are all equal in that respect at the RaNIW | 18:22 | ||
FROGGS | O.o | ||
wow | |||
lizmat | is that a plan? | ||
I'd rather invest in the Perl community this way, then giving TPF money :-) | 18:23 | ||
FROGGS | that is an awesome offer, but I have no problem paying my room, really | ||
why that? | |||
lizmat | well, in that case, I won't refund you :-) | ||
FROGGS | *g* | ||
18:24
wingfold left,
ssutch joined
|
|||
lizmat | because I feel it is very important to have a smooth / cosy / intense / workshop / social / hackathon | 18:24 | |
hopefully, everybody at the workshop will in the future contribute to Rakudo / NQP | 18:25 | ||
knowing each other better helps a lot, in that respect | |||
FROGGS | true | ||
lizmat | I just didn't expect hotels to be so scarce already | ||
brb | 18:26 | ||
FROGGS | that is why I already come on friday at half past eight in the evening, and leave monday at nine | ||
lizmat: there is a car show at that time, hotel prizes are almost twice as much as usual | |||
18:29
fhelmberger joined
18:32
abnorman joined
|
|||
dalek | p: 0c91ec7 | benabik++ | src/NQP/Grammar.nqp: Relational operators are non-associative As colomon++ pointed out, 'A' le 'g' le 'Z' evaluates to true because infix:<le> is left associative and 1 le 'Z'. While the appropriate chaining behavior a la full perl 6 would be more helpful, marking the relationals as non-associative at least prevents your code from doing the wrong thing. |
18:32 | |
18:34
fhelmberger left
|
|||
dalek | ecs: 33d795b | larry++ | S05-regex.pod: disallow direct assignment to $/ |
18:35 | |
timotimo | lizmat: wow, that offer is very generous; you are going to pay for my cancellation *as well as* the hotel room close to the venue? | 18:36 | |
lizmat | well, if there is no more room for you in the Arena Hotel, I'm going to ask you to use your room at the Tourist | ||
so don't cancel | |||
timotimo | okay | ||
lizmat | there is no point | ||
timotimo | right. if i don't cancel, it's no difference for money, but a negative impact on flexibility | 18:37 | |
lizmat | indeed | ||
timotimo | that's crazy cool :) thanks a lot | 18:38 | |
i'll gladly accept that offer | |||
lizmat | you're welcome :-) | ||
benabik | .oO( Now I just need someone to pay for a trans-Atlantic flight, and I'm set. ;-) ) |
||
FROGGS | *g* | 18:39 | |
18:39
SamuraiJack left
|
|||
lizmat | TimToady: as I understand <special_variable>, this should already happen | 18:39 | |
but it doesn't: is that related to LTM not working at the moment? | 18:40 | ||
benabik | Where's YAPC::NA 2014? | ||
lizmat | Sofia, Bulgaria | ||
FROGGS | that is EU | ||
lizmat | oops, YAPC::EI | ||
NA is in Orland, FL | 18:41 | ||
Orlando | |||
benabik | It's not easy for me to attend ::NA, so ::EU seems extremely unlikely. :) | ||
TimToady | lizmat: you mean the $/ = test? beats me...I just write the spec | 18:42 | |
was just catching the spec up to what std already does | |||
lizmat | indeed :-) | 18:44 | |
jnthn back | 18:58 | ||
lizmat | jnthn: fyi, I've already booked a hotel in Frankfurt from Fri/Mon | 18:59 | |
jnthn | lizmat: For mig? | 19:00 | |
*me | |||
lizmat | yes | ||
jnthn | \o/ | ||
Cool | |||
lizmat | well, if you want it | ||
:-) | |||
jnthn | Sure :) | ||
lizmat | the hotel is around the corner from the venue | ||
jnthn | The Monday end of it is easy. The Friday is more likely to be free for me too so I can arrive in time for some dinner rather than flying in on the evening. | 19:01 | |
Though don't know for a bit. | |||
jnthn ticks "be on a podcast" off on his list of accomplishments | 19:02 | ||
timotimo | \o/ | ||
FROGGS | podcast? where? | ||
jnthn | FROGGS: Hm, not sure where, I shoulda asked that :) | 19:06 | |
Nothing about Perl stuff, though. More about what I do at $dayjob :) | |||
FROGGS | still... :o) | 19:07 | |
are they google-able? do they have a name? | |||
jnthn | It should be up on Monday, I'll probably tweet it or something... :) | 19:09 | |
FROGGS | hmmm, if you are going to post that on facebook than I have to get my wife to stalk you | 19:10 | |
FROGGS has no facebook account | 19:11 | ||
lizmat neither, but woolfy does | |||
.oO( one in the family is enough for the NSA to follow us) |
|||
timotimo | lizmat: is there a list i need to put my name into to be officially "in" the workshop? | 19:12 | |
lizmat | you're on the list :-) | ||
the list for now: jnthn, lizmat (woolfy),timotimo,FROGGS,moritz,[Coke],Roland Schmitz | 19:14 | ||
did I forget anybody already ? | |||
FROGGS | dunno | 19:15 | |
jnthn | yay, I'm on the list \o/ | ||
woolfy | jnthn++ | ||
FROGGS | hi woolfy | ||
jnthn | woolfy! \o/ | ||
woolfy | no, there's no woolfy here, just a bleak and sweaty shadow with food poisoning and pneumonia! :-) | 19:16 | |
jnthn | whoa! | ||
Hope you're better soon. That sounds like a nasty combo... | 19:17 | ||
19:17
cognominal left
|
|||
lizmat was only sick for ~ 48 hours coming back from Kiev | 19:17 | ||
woolfy | so nasty that cognominal left the room... :-) | ||
FROGGS | ohh ó.ò | ||
hehe | |||
woolfy | Hey, positive thing: I lost 5,5 kg in 5 days! Dieticiens | 19:18 | |
s dream | |||
hmm | |||
lizmat | tadzik expressed interested in attending, afaik | ||
jnthn managed to escape getting sick from Kiev | |||
lizmat | tadzik ? | ||
lizmat wonders if the sick people were the ones who went to basement in Mafia the last night | 19:19 | ||
not all of the people there got sick, but all the sick people were there, afaik | 19:20 | ||
woolfy | All the sick people were there: lizmat, woolfy, sno (and his wife), markov, leont | ||
Not sick was riba | |||
19:22
zwut00 joined
|
|||
tadzik | lizmat: oh yes, I am interested :) | 19:25 | |
lizmat | so, should I add you to the list ? | ||
timotimo | wow, get better soon, woolfy! | ||
tadzik | of course | 19:26 | |
what dates are those, again? | |||
lizmat | consider yourself added | ||
tadzik | I should probably make travel arrangements | ||
lizmat | 14/15 sep | ||
better arrive on 13, leave on 16 I guess | |||
tadzik | yeah | ||
lizmat | rooms already booked (if you don't mind sharing) | ||
tadzik | oooh! | 19:27 | |
moritz | lizmat: I'm not sure if leont expressed interest | ||
tadzik | Thank you! I never mind sharing :) | ||
timotimo is cool with sharing, doesn't snore and is friendly to people and animals | |||
woolfy | timotimo: thanks (on medication now, will get better soon) | ||
lizmat | I'll check with leont | ||
19:27
fhelmberger joined
|
|||
moritz | lizmat: and maybe sno | 19:28 | |
(he wanted to hack on nativecall or an XS replacement) | |||
tadzik | fwiw, I was not in mafia and I was not sick :) | ||
moritz was not in the mafia, and now has a bad cough, but I also had a cough before I went to Kiev | 19:29 | ||
lizmat | I will ask sno this weekend at the FrosCON | ||
19:29
fhelmberger left,
fhelmberger_ joined
|
|||
lizmat | pmichaud: all our strength wished to you in this difficult time | 19:30 | |
19:31
lowpro30_ joined
|
|||
woolfy | pmichaud: my thoughts are with you | 19:31 | |
Can we help? | 19:32 | ||
FROGGS | ohh | 19:34 | |
pmichaud: my sincerest condolences | |||
19:35
lowpro30 left
|
|||
FROGGS | :/ | 19:36 | |
19:40
jnap1 joined
19:41
jnap left
|
|||
timotimo | pmichaud: i'm sorry for your loss :( | 19:45 | |
colomon | pmichaud: like woolfy said, if there's anything we can do to help, just let us know. :( | 19:46 | |
19:51
gdey left
|
|||
Tene | pmichaud: My condolences for your loss. | 19:55 | |
colomon | lizmat++ | 19:57 | |
20:03
pjcj_ joined
20:05
fhelmberger_ left,
pjcj_ left
|
|||
pmichaud | thanks, all. | 20:10 | |
dalek | kudo/nom: c772e72 | (Elizabeth Mattijsen)++ | src/Perl6/World.nqp: Only need to check on variables longer than *2* characters |
20:11 | |
lizmat | hugme hug pmichaud | ||
hugme hugs pmichaud | |||
dalek | p: 92e2858 | (Tobias Leich)++ | / (3 files): use nqp::sprintf for parrot backend also We used it for JVM only, but by adding nqp::sprintfdirectives, which parses a format string to return the directive count, it is ready to use. |
20:12 | |
timotimo | FROGGS: another piece of good news for the changelog | ||
20:12
lowpro30_ left
|
|||
FROGGS | true | 20:13 | |
jnthn | FROGGS: We get no regressions from that? | ||
FROGGS | no | ||
20:14
Mouq left
|
|||
dalek | kudo/nom: 083e3f2 | (Tobias Leich)++ | / (3 files): use nqp::sprintf, Hash.fmt needed special-casing though |
20:15 | |
jnthn | FROGGS: yay | ||
FROGGS | :o) | ||
20:16
hummeleBop joined
|
|||
tadzik hugs pmichaud | 20:16 | ||
20:20
kaare_ left
|
|||
moritz | FROGGS: does that mean that parakudo now handles bigints in %d formats? | 20:25 | |
FROGGS | moritz: yes | ||
moritz | \o/ | ||
jnthn | \o/ | ||
FROGGS | I'm currently rebuilding all in order to strip #?rakudo.parrot todo's | 20:26 | |
moritz | r: printf '%d', 2**65 | ||
camelia | rakudo e84dda: OUTPUT«0» | ||
moritz | not yet rebuilt | ||
colomon | FROGGS++ | ||
FROGGS | :o) | ||
jnthn | convergence++ | ||
Better still, we can use the same sprintf impl on MoarVM :) | |||
FROGGS | jnthn: yeah, an old copy of it is already in there | 20:27 | |
timotimo | all our visions of cross-platforminity are coming true! | ||
FROGGS | as seen by the bt from yesterday | ||
*g* | |||
and guess why I do all this? | 20:28 | ||
I need it for v5 :P | |||
lizmat | :-) | ||
moritz | :-) | ||
lizmat | No registered operation handler for 'sprintfaddargumenthandler' | ||
:-( | |||
moritz | lizmat: did you update nqp? | ||
FROGGS | and reconfigure | 20:29 | |
lizmat | shouldn't that happen automatically when I do a perl Configure.pl --gen-parrot ? | ||
ok, i'll nuke nqp dir and do it again | |||
tadzik | rakudobrew build all \o/ | ||
jnthn | Was NQP_REVISION bumped? | 20:30 | |
tadzik | ^C \o/ | ||
moritz | yes | ||
lizmat | Note: checking out '2013.07-98-g92e2858'. | ||
HEAD is now at 92e2858 | 20:31 | ||
seems ok | |||
tadzik | fun fact: two first characters of the revisions are the same | ||
2013.07-87-g9706494 vs 2013.07-98-g92e2858 | |||
jnthn | g is no revision char :P | ||
tadzik | really? :( | 20:32 | |
jnthn | It means git, I think | ||
moritz | I think it stands for 'git# | ||
s/#/'/ | |||
jnthn | I mean, the sha-1 is in hex... :) | ||
tadzik | oh well, it's a little bit more than hex can handle :) | ||
jnthn | g is a bit big for hex :) | ||
lizmat | .oO( we need BIGhex ) |
||
20:32
donaldh joined
|
|||
lizmat | bigint just doesn't cut it anymore in the modern world :-) | 20:33 | |
dalek | ast: 165aab2 | (Tobias Leich)++ | / (2 files): unfudge sprintf tests |
||
lizmat | there goes JVM below 99% again :-) | 20:34 | |
moritz | :( | ||
oh, but that's because parakudo goes up, right? | 20:35 | ||
FROGGS | right | ||
dalek | kudo/nom: 44ba8ad | (Elizabeth Mattijsen)++ | docs/ChangeLog: printf %d for bigints works on parakudo |
||
FROGGS runs spectest again just because he is paranoid | |||
lizmat | No registered operation handler for 'sprintfaddargumenthandler | ||
again :-( | |||
guess I'll nuke the install dir to be sure | 20:36 | ||
FROGGS | can somebody else try? | 20:37 | |
tadzik tries | |||
moritz | I'm building on jvm right now | ||
tadzik | parakudo's still building | ||
FROGGS | there is nothing unpushed related to sprintf | ||
donaldh | hai o/ | 20:38 | |
FROGGS | hi donaldh | ||
donaldh | try ? latest commits ? | ||
FROGGS | yeah | ||
donaldh | nqp is looking good for me, just building rakudo | ||
20:39
hummeleBop left
|
|||
moritz tries too | 20:40 | ||
masak | moritz: got another "Forbidden" from irclog. | 20:41 | |
FROGGS: just saw irclog.perlgeek.de/perl6/2013-08-21#i_7479324 | 20:42 | ||
FROGGS: I agree that's not useful, and should always be two args for hashes. | |||
FROGGS: feel free to enforce that. | |||
FROGGS | masak: later there was a discussion with TimToady, and we agreed to pass the key only if there is just one sprintf directive | 20:43 | |
masak: here, irclog.perlgeek.de/perl6/2013-08-21#i_7479412 | 20:45 | ||
moritz | masak: are you behind a large NAT? | ||
lizmat | seems to get past stage pir now | ||
FROGGS crosses fingers | |||
lizmat | $ perl6 -e 'printf "%d\n", 2**65' | ||
36893488147419103232 | |||
yeah! | 20:46 | ||
FROGGS | \o/ | ||
lizmat | running spectest now | ||
donaldh | is there an eval bot for jvm rakudo ? | ||
FROGGS | donaldh: not that I know | ||
camelia: help | |||
camelia | FROGGS: Usage: <(nqp-jvm|star|pugs|nqp|std|niecza|rakudo|b|nom|npr|n|r|perl6|prn|rn|p|rnp|nrp|pnr|rpn|p6|nr)(?^::\s) $perl6_program> | ||
FROGGS | no | ||
timotimo | hm, it seems to me we got rid of the last blockers recently, no? | 20:47 | |
moritz | lizmat: I get the same error on JVM | ||
FROGGS | timotimo: what blockers? | ||
timotimo | for getting a jvm evalbot | ||
lizmat | moritz: seems that nuking the install dir made it work for me | 20:48 | |
FROGGS | lizmat: I had that once too, but I dunno what enforces that | ||
lizmat | I guess at some point it tries to use the old nqp? | ||
FROGGS | hmmm, next time we could check if something still has an old mtime | 20:50 | |
t/spec/S32-io/IO-Socket-INET.t (Wstat: 0 Tests: 41 Failed: 7) | |||
Failed tests: 2, 4, 6, 20, 33, 39, 41 | |||
the rest is fine on my box | |||
masak | moritz: possibly. I am in a hotel. | 20:51 | |
FROGGS: at first glance, that feels like a bad idea. | 20:52 | ||
FROGGS: for the simple reason that that's not how sprintf rolls, so neither should .fmt | |||
lizmat | FROGGS: that is a long standing pb | ||
those tests take 20 seconds when they shouldn't | |||
masak | FROGGS: if we let .fmt do that, then .fmt shoulders some of the logic of sprintf (which is bad), having to parse the directives itself. | ||
FROGGS | masak: it does not parse 'em | 20:53 | |
lizmat | it indicates a problem in the socket code, or a problem in the test | ||
FROGGS | masak: but true, in this case Hash decides what it is going to pass to sprintf in case of a .fmt call | ||
20:54
jnap1 left
|
|||
lizmat | intriguing, after the rebuild all of my ico related errors are gone | 20:54 | |
FROGGS | lizmat: you're welcome :P | 20:55 | |
lizmat | so, spectest clean | ||
FROGGS | awesome | ||
lizmat | *icu | ||
20:55
xenoterracide joined
|
|||
FROGGS | the IO-Socket-INET tests are clean too? | 20:55 | |
lizmat | no | ||
FROGGS | k | ||
lizmat | the same 7 failures | ||
FROGGS | I'd try to fix them if it wasn't that late already | 20:56 | |
lizmat | ok, maybe the 5 second boundary is too small | 20:57 | |
donaldh | MacOS, JVM, No registered operation handler for 'sprintfdirectives' | ||
Just cleaning everything, nuking install dirs, etc. | 20:58 | ||
FROGGS | rm -rf install && cd parrot && make install && perl ConfigureJVM.pl && make install | ||
donaldh | jvm :-) | 20:59 | |
FROGGS | ahh, ehh, yeah *g* | ||
dalek | ast: e95d9dd | (Elizabeth Mattijsen)++ | S32-io/IO-Socket-INET.t: Give 10 seconds time instead of 5 |
||
lizmat | with this change, INET passes when run by itself for me | ||
running it as part of the spectest now | 21:00 | ||
maybe I should increase the time some more if run in a parallel spectest | 21:01 | ||
FROGGS | lizmat++ | ||
same on my box | |||
21:01
skids left,
jnap joined
|
|||
FROGGS | we have a clean test suite \o/ | 21:01 | |
lizmat | not sure if it is clean with TEST_JOBS=8 | 21:02 | |
FROGGS | meh | ||
only 4 here :o( | |||
but hey, it is still an awesome laptop :o9 | |||
:o) | |||
timotimo has 2 cores in his laptop and trying to compile a rakudo will invariably get the temperature up to 90degC and the cores underclocked to not melt | 21:04 | ||
moritz | setting compilation still fails here | 21:05 | |
after 'git clean -xdf' in both rakudo and nqp | |||
lizmat | moritz: did you nuke the install dir ? | ||
timotimo | it's really annoying that "auto" will only go up to "fullspeed", which is about half as fast as "disengaged" | ||
21:06
grondilu left
|
|||
donaldh | r: %*ENV<AAAAA> = 'aaaaa'; say(%*ENV.keys) | 21:07 | |
camelia | rakudo e84dda: OUTPUT«MANPATH PERLBREW_VERSION PERLBREW_PERL SHELL TERM USER LS_COLORS PERLBREW_BASHRC_VERSION PERLBREW_ROOT MANPATH_WITHOUT_PERLBREW MAIL PATH PWD LANG PERLBREW_HOME PATH_WITHOUT_PERLBREW SHLVL HOME PERLBREW_MANPATH PERLBREW_PATH LOGNAME _ OLDPWD» | ||
donaldh | r: %*ENV<AAAAA> = 'aaaaa'; say(%*ENV<AAAAA>) | 21:08 | |
camelia | rakudo e84dda: OUTPUT«aaaaa» | ||
donaldh | weird huh? | ||
lizmat | %*ENV is special, check src/core/terms | ||
I wouldn't be surprised that keys is not updated | |||
donaldh | Why special. Broken special? | ||
lizmat | it's also not VM agnostic, so could be a pb on one VM only | ||
donaldh | I get same on JVM. | 21:09 | |
moritz | r: %*ENV<AAAAA> = 'aaaaa'; say(%*ENV.keys.sort) | ||
lizmat | FROGGS: parallel spectest now also clean for me | ||
camelia | rakudo e84dda: OUTPUT«HOME LANG LOGNAME LS_COLORS MAIL MANPATH MANPATH_WITHOUT_PERLBREW OLDPWD PATH PATH_WITHOUT_PERLBREW PERLBREW_BASHRC_VERSION PERLBREW_HOME PERLBREW_MANPATH PERLBREW_PATH PERLBREW_PERL PERLBREW_ROOT PERLBREW_VERSION PWD SHELL SHLVL TERM USER _» | ||
FROGGS | lizmat: that is pretty cool | ||
donaldh | Also, no point in specialness on JVM. | ||
FROGGS | I'm eager to see the module smoke results | ||
donaldh | I assume it's special because it's maintaining parrot's env ? | ||
or other reasons? | |||
lizmat | for one, it only installs proxies for the keys addad after the env is read | 21:10 | |
jnthn would probably know more | 21:11 | ||
but it looks like the enviter is not updated by the proxy | 21:12 | ||
otoh, I could be talking out of the side of my neck | |||
jnthn | The Env thing on Parrot is actually not a normal Hash, but rather an Env PMC. Shoving stuff in it should update the environment. | 21:13 | |
I think that's why the proxy. To update that. | |||
lizmat | r: say %*ENV<HOME>; %*ENV.delete("HOME"); say %*ENV<HOME>; say %*ENV.keys.grep( { m/HOME/ } ) | 21:15 | |
camelia | rakudo e84dda: OUTPUT«/home/p6eval(Any)PERLBREW_HOME HOME» | ||
lizmat | delete also doesn't remove it from keys | ||
TimToady | doesn't seem like the right strategy for JVM, if JVM considers env immutable; we'd need something more like our own %*ENV that gets passed to exec at the last moment | ||
lizmat | so apparently changes to %*ENV are not propagates to .keys / .values on %*ENV | 21:16 | |
although the changes *are* carried out | |||
TimToady | in any case, "my %*ENV" is a different variable, and making all these variables proxy to PROCESS::<%ENV> is gonna go terribly wrong | 21:17 | |
lizmat is tired and sad, sleep& | 21:18 | ||
FROGGS | lizmat: sleep well | ||
timotimo | Stage parse : 653.470 | 21:21 | |
time for sleep :| | |||
FROGGS | gnight | ||
dalek | : 9d6ae74 | (Tobias Leich)++ | STATUS.md: status update (new nqp+rakudo revision) |
21:27 | |
: 9e01b03 | (Tobias Leich)++ | / (2 files): status update after nqp/rakudo update |
|||
21:28
abnorman left
|
|||
FROGGS | gnight @all | 21:28 | |
donaldh | No registered operation handler for 'sprintfdirectives' | 21:31 | |
we don't seem to have a sprintfdirectives on JVM | |||
FROGGS | ohh | ||
true | |||
hold on | |||
dalek | p: 0e552b1 | (Tobias Leich)++ | src/vm/jvm/QAST/Compiler.nqp: added nqp::sprintfdirectives for jvm backend, donaldh++ |
21:34 | |
donaldh | thx FROGGS++ | 21:35 | |
dalek | kudo/nom: 9fcbf53 | (Tobias Leich)++ | tools/build/NQP_REVISION: update nqp revision |
||
21:38
kbaker left
|
|||
donaldh | for %*ENV.keys -> $x { %*ENV.delete($x) }; say +%*ENV; say +%*ENV.keys; say +%*ENV.values | 21:42 | |
r: for %*ENV.keys -> $x { %*ENV.delete($x) }; say +%*ENV; say +%*ENV.keys; say +%*ENV.values | |||
camelia | rakudo 44ba8a: OUTPUT«232323» | ||
21:43
abnorman joined
|
|||
donaldh | r: for %*ENV.keys -> $x { %*ENV.delete($x) }; for %*ENV.keys -> $x { say %*ENV<$x> } | 21:45 | |
camelia | rakudo 44ba8a: OUTPUT«(Any)(Any)(Any)(Any)(Any)(Any)(Any)(Any)(Any)(Any)(Any)(Any)(Any)(Any)(Any)(Any)(Any)(Any)(Any)(Any)(Any)(Any)(Any)» | ||
TimToady thinks in the P6 model, PROCESS::<%*ENV> should be considere immutable, and you set "temp %*ENV" to have a local environment that your children (dynamic and exec) will inherit | 21:51 | ||
PROCESS<%*ENV> can be shared by different interpreters with different GLOBAL packages, so at minimum, to preserve sanity in something like an apache setup, we should copy PROCESS::<%*ENV> to GLOBAL::<%*ENV> before we modify it | 21:52 | ||
but "temp %*ENV" already makes a dynamically scoped copy, so that's probably good enough | 21:53 | ||
so I suspect PROCESS::<%*ENV> should throw an exception if you try to modify it in place | 21:54 | ||
note that S02:3010 allows implementations to provide writeable PROCESS variables, but I don't think %*ENV should be one of them | 21:56 | ||
synopsebot | Link: perlcabal.org/syn/S02.html#line_3010 | ||
TimToady | $*PID isn't writeable either... | 21:57 | |
donaldh: does this make sense to you? | 21:58 | ||
21:59
araujo joined
|
|||
donaldh | TimToady: yes. immutable++ | 21:59 | |
TimToady | at least, the top one | ||
dynamic %*ENV can be mutable, maybe | 22:00 | ||
but those will be invisible to calls into Java, unless the interface allows passing a new env | |||
s/Java/JVM/ | 22:01 | ||
donaldh | > { temp %*ENV = (); shell('env') } | 22:03 | |
PWD=/Users/donaldh/git/rakudo | 22:04 | ||
SHLVL=1 | |||
_=/usr/bin/env | |||
TimToady | masak: calls to .fmt are self-clocking, and don't have to maintain lockstep the way sprintf does; therefore a little more dwimmery is appropriate there, and it is a rather trivial piece of dwimmery at that, with very little wat | ||
donaldh: yeah, that should propagate the new env down to shell() | |||
donaldh | TimToady: it does, on my branch ;-) | 22:05 | |
TimToady | \o/; this is probably the only sane way to do business on some VMs such as the JVM | ||
donaldh | I think it's the sane way to do business on parrot too, IMHO. | 22:06 | |
masak | TimToady: hm. I don't think I can see the playing field clearly. need to mull over it. | ||
22:06
zwut00 left
|
|||
TimToady | I was originally of your opinion, and changed my mind, if that helps at all :) | 22:07 | |
TimToady hates it when people say that, to be fair... :) | 22:08 | ||
22:08
denis_boyun joined,
FROGGS left
|
|||
donaldh | :) | 22:08 | |
22:10
bbkr__ joined
22:13
spider-mario left
|
|||
masak | TimToady: hehe. | 22:17 | |
22:17
FROGGS joined,
jnap left
|
|||
masak | TimToady: well, I don't have time to change my opinion right now, because I'mma sleep. | 22:17 | |
'night, #perl6 | |||
donaldh | 'night masak o/ | ||
22:18
dmol left
|
|||
TimToady | o/ | 22:18 | |
22:18
jnap joined
22:23
cbk joined
|
|||
dalek | p/shell-rework: f437682 | (Donald Hunter)++ | src/vm/jvm/ (3 files): Add nqp::shell3 that takes and %env. Remove previous attempt at env. |
22:25 | |
p/shell-rework: e3ef857 | (Donald Hunter)++ | / (5 files): Merge branch 'master' of github.com:perl6/nqp into shell-rework |
|||
p/shell-rework: 6aea459 | (Donald Hunter)++ | src/vm/jvm/QAST/Compiler.nqp: Merge branch 'master' of github.com:perl6/nqp into shell-rework |
|||
22:26
denis_boyun left
22:28
FROGGS left,
benabik left
|
|||
donaldh | Okay to merge github.com/perl6/nqp/pull/112 ? | 22:30 | |
jnthn | donaldh: +1 | 22:31 | |
Provided it builds ;) | |||
22:31
PacoAir left
|
|||
donaldh | jnthn: I am experimenting with removing the %*ENV specialness on JVM. Everything seems saner. | 22:34 | |
jnthn | \o/ | ||
donaldh | did you see that TimToady is leaning towards immutability of PROCESS::<%*ENV> | 22:35 | |
dalek | p: f437682 | (Donald Hunter)++ | src/vm/jvm/ (3 files): Add nqp::shell3 that takes and %env. Remove previous attempt at env. |
22:36 | |
p: e3ef857 | (Donald Hunter)++ | / (5 files): Merge branch 'master' of github.com:perl6/nqp into shell-rework |
|||
p: 6aea459 | (Donald Hunter)++ | src/vm/jvm/QAST/Compiler.nqp: Merge branch 'master' of github.com:perl6/nqp into shell-rework |
|||
p: 4a311ef | (Donald Hunter)++ | src/vm/jvm/ (3 files): Merge pull request #112 from perl6/shell-rework Add nqp::shell($cmd, $dir, %env) op and support existing nqp::shell($cmd) until rakudo catches up |
|||
donaldh | > { temp $*CWD = '/'; shell('pwd'); }; shell('pwd') | 22:44 | |
TimToady | otoh, see recently specced chdir/visitdir functions | 22:48 | |
though visitdir might be a macro that desugars to temp $*CWD | 22:49 | ||
Fry's & | 22:50 | ||
22:50
Mouq joined
22:55
Mouq left
|
|||
donaldh | github.com/rakudo/rakudo/pull/196 | 22:59 | |
sleep& | 23:03 | ||
23:04
donaldh left
|
|||
avuserow thinks donaldh++'s "immutable++" seems like an autopun | 23:07 | ||
23:15
BenGoldberg joined
|
|||
BenGoldberg | Good evening | 23:15 | |
jnthn | 'night, #perl6 | 23:18 | |
23:28
lichtkind joined
23:29
lichtkind_ joined,
lichtkind_ is now known as licjtkind
|
|||
licjtkind | TimToady: you where involved into what jonathan presentd in kiev? | 23:30 | |
23:35
FROGGS joined
23:38
sidus left
23:39
cognominal joined
23:46
sidus joined
23:47
pochi left,
pochi_ joined
23:50
thou left
23:53
berekuk left,
sidus left
|