»ö« | perl6.org/ | nopaste: paste.lisp.org/new/perl6 | evalbot usage: 'perl6: say 3;' or rakudo: / pugs: / std: | irclog: irc.pugscode.org/ | UTF-8 is our friend! Set by Juerd on 28 August 2009. |
|||
jnthn | morning | 00:01 | |
TimToady | o/ | ||
zerhash: the download button on perl6.org will get you to a How to download rakudo page | |||
zerhash | ya i see | 00:02 | |
thanks | |||
TimToady | zerhash++ for diving in | 00:03 | |
zerhash | :D | ||
zerhash installs rakudo | |||
zerhash waits for a puff of smoke to come from machine | 00:04 | ||
TimToady | for expert help on rakudo ask jnthn and pmichaud | ||
you'll note the jnthn is not in the western hemisphere :) | 00:05 | ||
zerhash | ok | 00:06 | |
jnthn spans Eurasia. | 00:07 | ||
;) | |||
zerhash | so i install rakudo. then the pugs test sweet should work | ||
rakudo devs work around our tests | |||
TimToady | you probably want 'make spectest' | 00:08 | |
zerhash | in pugs? or rak? | ||
jnthn | Well, it's the spec test suite, for any implementation. But for historical / "it works awesomely" reasons, the tests still live in the Pugs repo. | ||
Rakudo. | |||
After make, make test will run a few small sanity tests (enough to be sure the test harness will compile and run). | |||
00:08
rhr left
|
|||
jnthn | Then make spectest runs thousands of tests. :-) | 00:09 | |
00:09
vmbrasseur left
|
|||
zerhash | ok i see how it works | 00:10 | |
svn co of pugs spec test | |||
where is the rakudo chan? | |||
TimToady | mostly here, some in #parrot on irc.perl.org | ||
but the perl6 aspects, here | 00:11 | ||
any of the implementations are welcome to hang out here | |||
00:13
rhr joined
|
|||
colomon | Errr.... building Rakudo with a fresh git clone (and --gen-parrot) is failing for me at the moment. | 00:28 | |
lisppaste3 | colomon pasted "Error message with latest git clone and --gen-parrot" at paste.lisp.org/display/86734 | 00:29 | |
colomon | commit 01ae3fae981eed2ecd8a75c94a72c119340044cf | 00:30 | |
00:31
hudnix joined
|
|||
jnthn | colomon: Ooh, a Parrot build error. | 00:31 | |
What platform? | |||
colomon | OS X | ||
BTW, git++. | 00:32 | ||
Very awesome to be able to switch back to an earlier version of rakudo while I was away on vacation, far from the Internet. | |||
00:33
carlin joined
|
|||
jnthn | colomon: Am asking on #parrot | 00:34 | |
colomon | Thank you. | ||
jnthn | colomon: May be result of the profiling branch merge... | ||
colomon | Oooo, parrot has profiling now? | ||
TimToady | apparently not on your machine :P | 00:37 | |
jnthn | I believe so - I didnt yet try it. | ||
jnthn afk for a bit | 00:44 | ||
colomon | Looks like it's building just fine on my 64-bit Linux machine... | 00:51 | |
00:55
baest left
|
|||
colomon | But make test fails? | 00:56 | |
TimToady | fails t/01-sanity/07-simple-multisubs.t on my machine | 00:58 | |
Ubunto 64-bit | |||
colomon | Failed t/00-parrot/03-op-logic and t/01-sanity/08-say the second time through. | 00:59 | |
Five different tests the first time through, including t/01-sanity/07-simple-multisubs. | 01:00 | ||
Weird, I didn't do anything in between, just ran make test again. | |||
TimToady | passed everything 2nd time | ||
obviously something intermittent | |||
colomon | cue twilight zone music.... | 01:01 | |
TimToady | and mine was just a realclean, not fresh checkout, btw | ||
realclean/git/etc. | |||
colomon | Mine was a fresh checkout. | ||
When I tried running 03-op-logic.t on it's own, I got "Can't open perl script "t/spec/fudgeall": No such file or directory". | 01:02 | ||
TimToady | failed multisubs again | 01:04 | |
colomon | Errrr... there is no t/spec directory? | 01:05 | |
TimToady | not in that directory, try parent or grandparent | 01:06 | |
01:07
nbrown left,
nbrown joined
|
|||
colomon | I'm talking from the rakudo directory: rakudo/t/spec isn't there. | 01:07 | |
TimToady | strange | 01:08 | |
I have one here | |||
colomon | There's no spec directory anywhere in my rakudo tree. (I haven't run make spectest in this fresh build yet.) | ||
TimToady | git failure? | ||
colomon | No, there's no rakudo/t/spec on github, either. | 01:09 | |
TimToady | svn failure? | ||
bypassed the svn co from pugs somehow? | |||
colomon | That would be make spectest, no? This is just make test that is causing problems. | ||
TimToady | well, fudgeall is a pugs repo dependency | 01:10 | |
colomon | Why would make test mess with it? | ||
TimToady | sees a fudge directive maybe? | 01:11 | |
doesn't look like it | 01:13 | ||
colomon | yeah | ||
TimToady | how are you running the test "standalone"? | ||
some prove variant? | 01:14 | ||
colomon | make t/00-parrot/03-op-logic.t | ||
TimToady | that may be supplying the fudgeall | ||
colomon | It works for the spectests, so I just assumed. | ||
TimToady | it's strange to tell make to make something that's already there | ||
01:15
tak11 left
|
|||
colomon | So it may not even be related to our intermittent bug? | 01:15 | |
TimToady | I'd guess not | ||
colomon | Well, going back to the full make test, errors reported seem to be "Parse errors: No plan found in TAP output". Does that match what you're seeing? | 01:18 | |
TimToady | you mean spectest? | 01:19 | |
colomon | No, that's what I saw on all five errors from my latest "make test". | 01:20 | |
TimToady | haven't seen that | ||
sounds like you have an old Test module out there somewhere | 01:21 | ||
the 'plan *' is fairly recent, I think | |||
colomon | The tests that are failing don't use test at all. | ||
say '1..24'; | |||
(for instance) | |||
(I mean, don't use "Test.pm" at all -- it's hand-coded standard perl test format.) | 01:23 | ||
01:24
frew__ left,
frew__ joined
|
|||
TimToady | très étrange | 01:25 | |
01:26
ysth joined
01:27
Whiteknight left
|
|||
ysth | Do the stubby exception generators (.../!!!/???) take optional lists or single arguments? | 01:28 | |
TimToady | they are listops | ||
ysth | S03 says "The argument is optional", but says ... has List prefix precedence (and die/warn/fail take lists, don't they?) | ||
01:29
tak11 joined
|
|||
ysth | excellent. | 01:29 | |
TimToady | basically, they're just fail, die, and warn with different default messags | ||
01:29
asciiville joined
|
|||
ysth | what is ...'s default message? the 5.11.0 implementation says "Unimplemented" | 01:32 | |
allbery_b | that's basically it | ||
01:32
pdcawley_ joined
|
|||
allbery_b | (...) means "this is a placeholder" | 01:32 | |
01:35
sri_kraih left
|
|||
TimToady | maybe "Implementation stub executed" or some such | 01:36 | |
01:36
sri_kraih joined,
sri_kraih left
|
|||
TimToady | but Unimplemented would be fine | 01:36 | |
01:37
sri_kraih joined
|
|||
araujo | hello all | 01:40 | |
TimToady | \o | 01:41 | |
araujo | hola TimToady :) | ||
01:48
pdcawley left,
pdcawley_ is now known as pdcawley
|
|||
araujo gets to package his code for this summer of code | 01:50 | ||
Ryan52 | araujo: package for what? | 01:51 | |
araujo | Ryan52, to submit the code | ||
Ryan52 | ah. fun. :) | ||
araujo: what was your project? | |||
asciiville | or even Implementedless :) | 01:52 | |
araujo | socghop.appspot.com/student_project...4023180742 | ||
Ryan52, that one | |||
(non perl6 related) | 01:53 | ||
TimToady | asciiville: lol | ||
asciiville | there's more than one way to say it :) | ||
TimToady | Insufficiently unimplementednessless | ||
Ryan52 | araujo: ah, cool! | ||
asciiville | those are definitely great messages | 01:54 | |
araujo | Ryan52, :D | 01:55 | |
asciiville | i'm guessing unimplementednessless is causing Merriam Websters parser to bork | 01:56 | |
araujo surely would have lot of problems pronouncing that word | 01:59 | ||
asciiville | i had problems typing it... | ||
araujo still needs to polish his english pronunciation | |||
Ryan52 | araujo: I'm a native english speaker, and I still can't say it :P | 02:00 | |
araujo | haha | ||
asciiville | it would be a great module on CPAN, ACME::UnImplementedNessLess | 02:01 | |
could just print out a warning, that is all | |||
araujo | you can do it ... people would start referring to it as an acronym I bet ...... UINL | ||
or something like that.... | |||
asciiville | it could be like a Mock Object or something | 02:02 | |
colomon | std: @foo >>->> @bar; | ||
p6eval | std 28205: OUTPUT«===SORRY!===Unexpected block in infix position (two terms in a row, or previous statement missing semicolon?) at /tmp/OI0kuLsQeg line 1:------> @foo >>⏏->> @bar; expecting any of: bracketed infix infix stopper standard | ||
..stopper terminat… | |||
colomon | std: my @foo; my @bar; say @foo >>->> @bar; | 02:03 | |
p6eval | std 28205: OUTPUT«===SORRY!===Unexpected block in infix position (two terms in a row, or previous statement missing semicolon?) at /tmp/ixTjEndH8K line 1:------> my @foo; my @bar; say @foo >>⏏->> @bar; expecting any of: bracketed infix infix stopper | ||
.. stan… | |||
TimToady | hmm | 02:04 | |
asciiville | colomon: are those super-hyperoperators? >>->> | ||
colomon | asciiville: They are some kind of hyperoperators, not sure the exact term. | ||
asciiville | they look sharp :) | 02:05 | |
colomon | It means "expand the right hand side until you can subtract it pairwise from the left hand side". | ||
TimToady | std: @_ »-» 1 | ||
p6eval | std 28205: OUTPUT«Potential difficulties: Variable @_ is not predeclared at /tmp/2KKL7lWu0u line 1:------> @_⏏ »-» 1ok 00:02 38m» | 02:06 | |
TimToady | std: @_ >>->> 1 | ||
p6eval | std 28205: OUTPUT«===SORRY!===Unexpected block in infix position (two terms in a row, or previous statement missing semicolon?) at /tmp/zl9dhSGdtd line 1:------> @_ >>⏏->> 1 expecting any of: bracketed infix infix stopper standard stopper | ||
..terminatorOth… | |||
TimToady | bug | ||
colomon | std: my @foo; my $bar; say @foo >>->> $bar; | ||
p6eval | std 28205: OUTPUT«===SORRY!===Unexpected block in infix position (two terms in a row, or previous statement missing semicolon?) at /tmp/kCZgw8hQLF line 1:------> my @foo; my $bar; say @foo >>⏏->> $bar; expecting any of: bracketed infix infix stopper | ||
.. stan… | |||
colomon | TimToady: That's what I thought, wanted to make sure it wasn't one which had been fixed recently, as I hadn't updated your "tryfile" in a while. | 02:07 | |
TimToady | doesn't recognize the Texas version for some reason | ||
asciiville | there's an I18N just for Texas? | ||
TimToady | oh, it's seeing the -> in the middle | ||
colomon | So I just need to get away from Texas... useful tip! | 02:08 | |
asciiville | gotta get to Texas someday myself | ||
colomon | TimToady: Do you want me to submit that one "officially"? | 02:09 | |
TimToady | std bugs don't have a mechanism | 02:10 | |
I'll just remember it :) | |||
and probably fix it tonight | 02:11 | ||
colomon | TimToady++ | ||
ysth | I assume rakudo's current state of yada yada only being allowed in a sub is a lack-of-implementation thing, not intentional? | 02:14 | |
TimToady | yes | ||
asciiville | or optionally, lack-of-unimplementationnessless | 02:15 | |
02:16
alester joined
|
|||
ysth | thanksw | 02:17 | |
02:20
ihrd left
|
|||
asciiville | rakudo: use Digest::MD5:from<parrot>; | 02:20 | |
p6eval | rakudo 446d49: OUTPUT«Null PMC access in get_pmc_keyed()in Main (src/gen_setting.pm:445)» | ||
02:21
kborer left
|
|||
asciiville | sometimes it works, sometimes it don't | 02:23 | |
actual question: is it better to inline PIR for functionality not yet available in rakudo? | 02:25 | ||
probably should have finished the question: than to attempt to build a PIR module directly and include it with the Module:from<parrot>; statement? | 02:27 | ||
02:29
zpmorgan joined
02:30
justatheory left
02:38
colomon left
|
|||
pmichaud | fwiw, it's okay to submit STD bugs to the rakudobug queue. We just mark them as [spec] | 02:38 | |
(and the rakudobug queue is officially 'perl6' anyway :-) | 02:39 | ||
asciiville: it probably depends on whether you think your module will be of benefit only to rakudo or also to other parrot languages | |||
02:40
Confield joined
|
|||
pugs_svn | r28206 | lwall++ | [STD] fix colomon++'s bug on >>->> parsing | 02:40 | |
asciiville | pm: good point. i wondered if there were any performance benefits as well | 02:41 | |
pmichaud | hard to say yet | 02:43 | |
asciiville | after I learned of the Module:from<parrot>; statement yesterday, I had been playing round with the PIRs in the parrot_install/lib/<>/library directory. The :from<parrot> appeared to load .pbc as whereas Rakudo would have to parse/compile everytiime if inlined | 02:44 | |
sorry about the broken English :) | 02:45 | ||
pmichaud | well, Rakudo knows how to load .pir also | ||
(and .pbc) | 02:46 | ||
02:52
alester left
|
|||
ysth | To avoid describing things in terms of other languages, could we call fff the single-test flipflop operator? S03 says "sed style". p5's perlop says "sed-like". | 02:56 | |
But maybe that's just honoring perl's roots | 02:57 | ||
03:00
SmokeMachine joined
|
|||
ysth | hmm, now I can't find "sed-like" there. It just gives a description and says "as in B<sed>" | 03:05 | |
03:25
sri_kraih_ joined
03:29
alester joined
03:41
sri_kraih left,
sri_kraih_ is now known as sri_kraih
03:43
mepplock joined
03:58
meppl left
03:59
mepplock is now known as meppl
04:12
zloyrusskiy joined
04:26
frew__ left,
meppl left
04:37
Zloy_Russkiy joined,
Zloy_Russkiy left
04:45
asciiville left
04:48
nihiliad left
05:02
sevvie_ joined
05:06
sevvie left,
sevvie_ is now known as sevvie
05:08
wayland76 joined
05:10
KatrinaTheLamia joined,
SmokeMachine left
|
|||
Tene | :( no masak | 05:12 | |
05:13
mj41_ joined
|
|||
jnthn | 'tis a little early for masak. | 05:13 | |
05:13
wayland joined
|
|||
Tene | yeah, but I was gonna have him tell me what to do for sqlite. | 05:14 | |
05:14
wayland76 left
|
|||
jnthn | aww. | 05:14 | |
05:14
wayland is now known as wayland76
|
|||
Tene | FINE ILL JUST DO IT MYSELF | 05:18 | |
First I need to move it somewhere where it actually gets installed or something | |||
or maybe japhb has a better option for me... | 05:19 | ||
05:19
wayland joined
05:20
broquaint left
|
|||
Tene hides irc. | 05:21 | ||
wayland checks the hides to see if they're tan :) | 05:23 | ||
05:28
mj41 left
05:32
synth left
05:34
finanalyst joined
05:39
cmv left
|
|||
Tene | phenny: tell masak I copied SQLite3.pir into parrot's library, so it now gets installed, and you can use that example from elsewhere. Depending on how my night goes, I'll now work on a nicer Perl 6 library to use it. | 05:42 | |
phenny | Tene: I'll pass that on when masak is around. | ||
Tene | phenny: thanks | ||
05:44
wayland76 left,
meppl joined
|
|||
spinclad | re class Foo {...} : /me would be happy to retarget class Foo; to this, retiring the rest-of-file scope. seems a natural syntax for a stub declaration (though it adds to the burden of migrating from 5 to 6) | 05:52 | |
05:54
kidd left
|
|||
moritz_ | good morning | 06:07 | |
Tene | hi moritz. | ||
moritz_ | spinclad: class Foo; is increadibly handy, you shouldn't just steal the syntax | ||
Tene | jnthn: do you have any idea what this "positional inside named args at position 3" stuff is? | 06:09 | |
oh... nm | |||
>.> | |||
that's what I got for calling a sub with too many args. | 06:10 | ||
jnthn | Tene: Aye, it usually means something like that. :-) | 06:12 | |
moritz_ usually sees that from method calls | |||
because methods have an implict *%_ | |||
06:14
masak joined
|
|||
masak | o/ | 06:14 | |
phenny | masak: 05:42Z <Tene> tell masak I copied SQLite3.pir into parrot's library, so it now gets installed, and you can use that example from elsewhere. Depending on how my night goes, I'll now work on a nicer Perl 6 library to use it. | ||
Tene | hi masak | ||
jnthn | \o | ||
masak | note: masak is up early today. :) | ||
Tene | masak: give me just a sec, and I'll have something nice for you. | ||
masak | \o/ | ||
06:18
azawawi joined
|
|||
azawawi | hi | 06:18 | |
masak | azawawi: morning! | 06:19 | |
Tene | masak: finished for now, pushing... | 06:21 | |
masak | std: loop { say "OH HAI"; last } while 1 | ||
p6eval | std 28206: ( no output ) | ||
masak | std: loop { say "OH HAI"; last } while 1 | ||
p6eval | std 28206: ( no output ) | ||
jnthn | std: alive | 06:22 | |
Tene | masak: github.com/tene/perl6-sqlite/tree/master | ||
p6eval | std 28206: OUTPUT«Undeclared routine: alive used at 1ok 00:02 36m» | ||
jnthn | std: loop { say "OH HAI"; last } while 1 | ||
p6eval | std 28206: OUTPUT«===SORRY!===Missing semicolon or comma after block at /tmp/Jy1DGIRCd0 line 1:------> loop { say "OH HAI"; last } ⏏while 1 expecting any of: infix stopper statementUndeclared routine: while used at 1FAILED 00:04 37m» | ||
masak | Tene: looking. | ||
Tene | masak: it *really* needs to be cleaned up... abstracted... | ||
masak adds to the ticket that STD appears to do the right thing nowadays. | |||
Tene | There should be a function to fetch just a row, instead of just individual columns, for example. | 06:23 | |
masak | Tene: understood. I looked at Sequel yesterday, and I think it's the right thing to port. | ||
Tene | masak: you are 'masak' on github? | ||
masak | their abstraction is called 'dataset' and it's right in many ways IMO. | ||
Tene: I am. | |||
Tene | sequel.rubyforge.org/ -- this Sequel? | 06:24 | |
masak | that one. | ||
Tene | Yes, I can do that. | ||
masak | I spent some time yesterday reading source. | ||
Tene: should we start a separate repo for that one? I think we should. | |||
suggested name of port: Squirrel. | |||
moritz_ | TimToady: (re tests failing after parrot branch merge) for me it helped to delete the directory in which parrot was installed, rakudo/parrot_install by default | ||
06:25
sevvie_ joined
|
|||
Tene | masak: Yes, probably... but the SQLite library needs to be more complete before then... we should also look at the DBDI work... | 06:25 | |
moritz_ | phenny: tell colomon (re tests failing after parrot branch merge) for me it helped to delete the directory in which parrot was installed, rakudo/parrot_install by default | ||
phenny | moritz_: I'll pass that on when colomon is around. | ||
masak | Tene: if you don't stop me, I'll probably start working on Squirrel today. | ||
Tene: I'll be doing it with a mocked db first. | 06:26 | ||
Tene | masak: That sounds fine. You have commit rights on perl6-sqlite3 | ||
masak | \o/ | ||
hugme: hug Tene | |||
hugme hugs Tene | |||
moritz_ | DBDI is still in the stage of trying to translate java classes and interfaces to Perl 6 classes and role definitions | ||
jnthn | Squirrel? | ||
Tene | masak: So go make your squirrel, and show me the API that is needed for SQLite3 driver for it... | ||
and I'll do that tomorrow. | |||
masak | excellent. | ||
Tene | So whatever you get specced for it, I'll implement. | ||
cotto | If anyone has any suggestions on how I can make Parrot's profiling more useful to Rakudo, I'd be glad to hear them. | 06:27 | |
moritz_ | cotto: make it faster ;-) | ||
Tene | Tomorrow during my day/evening, unless something comes up. | ||
masak | jnthn: are you asking about the choice of name, or the scope of the project? | ||
Tene: that sounds good. | |||
jnthn | masak: What is the project? :-) | 06:28 | |
Tene | jnthn: port of sequel.rubyforge.org/ | ||
masak | jnthn: a port of Ruby's Sequel. sequel.rubyforge.org/ | 06:29 | |
EMASAKTOOSLOW | |||
moritz_ opens masakbug: make masak++ 20% faster | |||
Tene | 30%! | ||
I have some significant masak needs. | 06:30 | ||
masak | you know what they say... first make it run, then make it right... | ||
06:30
rfordinal3643 left
|
|||
Tene | Then make 30 subclasses. | 06:30 | |
masak | .oO( serious threading problems... ) |
06:31 | |
jnthn | In some senses, Rakudo can't have any serious threading problems. ;-) | 06:32 | |
Tene | jnthn: there's a patch in trac that allegedly fixes the Parrot bug that was blocking threading in Rakudo. | ||
I've got it queued up in my firefox tabs for evaluation... | |||
masak | is rt.perl.org/rt3/Ticket/Display.html?id=63510 invalid? I suspect it is. | ||
jnthn | ah, cool | ||
cotto | moritz_, noted | 06:33 | |
Tene | anyone here want threading in rakudo soon enough to ask me to bump its priority up? | ||
jnthn | NPMCA sucks. | ||
Tene: It'd be a Cool To Have. | |||
Tene | OK. | 06:34 | |
jnthn | At least, it'd open some doors. | ||
Tene | I'll fork a thread to work on that while I work on SQLite. :) | ||
moritz_ | Tene: iirc it was blocking on TT #757 - that ticket now has patches that claim to solve it | ||
Tene | moritz_: yes, so as long as they are good patches and there are no additional blockers... | ||
then it should be easy. | 06:35 | ||
jnthn | .oO( I can haz async? ) |
||
moritz_ | well, I have no idea if the patches are good - but I can hope ;-) | 06:36 | |
06:37
moritz_ sets mode: +oo Tene masak
|
|||
Tene | moritz_: if you could do a test run on parrot and rakudo with the latest patch there... it would be helpful. | 06:37 | |
Tene leaves to phone the gf and then sleep. | |||
06:38
alester left,
nsh left
|
|||
jnthn feels weird watching the day end in the US and the day start in Europe. | 06:38 | ||
06:39
nsh joined,
sevvie left
06:40
xinming joined,
ewilhelm left,
ewilhelm joined,
orafu left
06:41
orafu joined
06:42
azawawi left
06:44
DakeDesu joined
06:45
KatrinaTheLamia left
06:51
charsbar joined
06:53
sharada joined
|
|||
masak | rakudo: say "abc" ~~ m ☃.(.).☄ | 07:01 | |
p6eval | rakudo 446d49: OUTPUT«abc» | ||
07:01
azawawi joined
|
|||
masak | no need for that Snowman::Comet module just yet... | 07:01 | |
azawawi | moritz_: i figured out a fix to rt.perl.org/rt3//Public/Bug/Display...l?id=68746 on win32 | ||
moritz_: any commit bits? :) | |||
moritz_ | azawawi: no, you need to submit a patch | 07:02 | |
jnthn | masak: Some bugs will be a shame to fix ;-) | ||
azawawi | moritz_: np | 07:03 | |
07:06
sparc left
|
|||
moritz_ | azawawi: just stumbled upon perlpilot.blogspot.com/2009/09/thin...padre.html | 07:07 | |
07:08
pdcawley left
|
|||
azawawi | moritz_: thanks... | 07:08 | |
zamolxes | > | ||
> | |||
lambdabot | not an expression: `' | ||
zamolxes | > | ||
> Cosmin Capataneanu | |||
lambdabot | Not in scope: data constructor `Cosmin'Not in scope: data constructor `Capa... | ||
zamolxes | > Unit Director | ||
lambdabot | Not in scope: data constructor `Director' | ||
zamolxes | > | ||
> Adresa: | |||
lambdabot | <no location info>: parse error (possibly incorrect indentation) | ||
zamolxes | > P-ta Alba Iulia nr.8, bl. i7, sc.3, et.2, ap.50-52, sector 3, Bucuresti | ||
lambdabot | <no location info>: parse error on input `,' | ||
07:08
zamolxes left
|
|||
masak | aww, I wanted to use my op bit... :/ | 07:09 | |
07:10
zamolxes joined
|
|||
zamolxes | :( | 07:10 | |
so sorry | |||
moritz_ | in soviet russia op bits use you ;-) | ||
masak | hugme: hug zamolxes | 07:11 | |
hugme hugs zamolxes | |||
moritz_ | happens to the best of us too | ||
masak | aye. | ||
wayland | ...and I'm living proof of that (cough cough :) ) | ||
zamolxes | :) | 07:12 | |
masak | rt.perl.org/rt3/Ticket/Display.html?id=67234 is famous, btw. it bit TimToady during the YAPC keynote. :) thus perhaps the most advertised bug in RT. | 07:13 | |
zamolxes | usually it's my cat's fault, but now i just accidentally middle-clicked while scrolling | ||
masak | zamolxes: Linux, eh? | 07:14 | |
zamolxes | hrm, or something, don't thing I had a reason to scroll | ||
yep | |||
masak | dangerous stuff. | ||
07:14
rfordinal joined
|
|||
wayland | That's why I'm trying to replace my scroll wheel with a SpaceNavigator 3D mouse | 07:16 | |
masak | rakudo: { &^c("$^a, $^b") }.("morning", "perl6ers", &say) | 07:17 | |
p6eval | rakudo 446d49: OUTPUT«Parameter type check failed; expected Callable, but got Multi for c in call to _block50in Main (/tmp/OfyPsGNZhs:2)» | ||
masak | jnthn: you wondered if I wanted something in particular fixed... the above, while not high-prio, is sufficiently annoying. | 07:18 | |
rt.perl.org/rt3/Ticket/Display.html?id=68116 | |||
jnthn | eww | 07:19 | |
yes, that is annoying. | |||
azawawi fixed rt.perl.org/rt3/Ticket/Display.html?id=68746 | 07:24 | ||
07:25
rgrau joined
|
|||
moritz_ | as long as nobody has paths with backslashes on linux... ;-) | 07:25 | |
azawawi: I'll test it later on, and commit + push if it doesn't break anything on linux (don't think it will) | 07:26 | ||
azawawi | moritz_: Thanks for your help... I managed to build a c:\strawberry\six PDX distro that will be included in the next Padre 0.45 almost-six MSI installer (for win32) | 07:27 | |
07:28
broquaint joined
07:30
rfordinal left
|
|||
azawawi | moritz_: can u please fix my CREDITS entry in Rakudo like this gist.github.com/182771 ? | 07:32 | |
07:33
iblechbot joined
|
|||
moritz_ | aye | 07:35 | |
azawawi | moritz_: thx | 07:36 | |
moritz_: perl6 --version does not show any useful information. | 07:42 | ||
moritz_ | azawawi: I know, we have two tickets open for that already | 07:43 | |
masak | it's on my April list, soon to be published. | 07:46 | |
jnthn | The April List | ||
masak | 34 bugs on there right now, but I'm still culling. | 07:47 | |
jnthn will be curious to see it | |||
34 isn't so bad. | |||
masak | I want it to be a list of things that bite innocent people, not a list of easily workaroundable highly abstracted bugs of the "don't do that, then" variety. | ||
dalek | kudo: a0c8a44 | moritz++ | C (2 files): [build] fix \ to / in paths passed to parrot's Configure.pl |
07:48 | |
07:49
rbaumer left
07:54
timbunce joined
|
|||
wayland | Am I innocent enough? :) | 08:00 | |
(afk food &) | |||
08:03
azawawi left
08:07
agentzh joined
08:17
Guest98709 is now known as bionoid
08:32
cmv joined
08:35
cognominal joined
08:39
rbaumer joined
08:40
agentzh left
08:57
cmv left,
ejs joined
08:58
barney joined
09:05
frederico joined
09:13
rgrau left
09:16
drbean_ joined
|
|||
wayland | ooh, tim bunce. Maybe we'll get some DBI 2 soon :) | 09:16 | |
timbunce | I gott'a get NYTProf v3 out the door first. Haven't even got to work on that recently. Kind'a crazy at the moment. | 09:17 | |
moritz_ | timbunce: good news, pmichaud++ is working on getting stub class declarations working properly, that might make things easier for us | 09:18 | |
09:18
agentzh joined
09:20
drbean left
|
|||
timbunce | I saw that. We may still have a problem because we don't know if the name is the name of a class or a role. | 09:20 | |
but doing two passes would avoid that | |||
wayland | timbunce: No pressure -- I'm just getting pre-excited :) | ||
timbunce | :) | ||
wayland | Do we get stub roles with stub classes? | ||
Or is that a separate problem? | 09:21 | ||
wayland would like stub roles, if that means role foo {...} | |||
jnthn | Probably same kinda problem. | 09:23 | |
Though little different I guess. | |||
09:30
azawawi joined
|
|||
azawawi | moritz_: is Safe and Test going to be bundled with rakudo's parrot_install in the future? | 09:30 | |
09:31
rblasch joined
09:41
jaffa8 joined
09:44
azawawi left
09:54
sharada left
10:04
carlin left
10:05
carlin joined
10:12
fredrecsky joined,
frederico left
10:13
iblechbot left
10:17
dakkar joined
10:30
carlin left
10:31
agentzh left
|
|||
moritz_ | azawawi: probably yes | 10:34 | |
10:35
pmurias joined
10:38
colomon joined
10:43
azawawi joined
|
|||
azawawi | moritz_: ahmadzawawi.blogspot.com/2009/09/up...6-pdx.html | 10:43 | |
pmurias | ruoso: hi | 10:44 | |
ruoso | hi pmurias | 10:51 | |
10:52
carlin joined
|
|||
ruoso commute & | 10:54 | ||
10:54
ruoso left,
azawawi left
10:58
athaba joined
11:00
zostay_ joined
|
|||
athaba | hi, how do I use BigInts and BigNums with perl6/rakudo? | 11:00 | |
colomon | athaba: pretty sure that's not implemented yet. | 11:01 | |
phenny | colomon: 06:25Z <moritz_> tell colomon (re tests failing after parrot branch merge) for me it helped to delete the directory in which parrot was installed, rakudo/parrot_install by default | ||
athaba | okay, thanks | 11:03 | |
what is a short/efficient way to have a block executed X times, if I don't need the current value. I use 'for 1..X', but it doesn't seem like the best way | 11:07 | ||
11:07
cmv joined
|
|||
colomon | athaba: have a vague memory there is a "repeat" command... | 11:08 | |
but it doesn't do what I was thinking. | |||
athaba | yeah, it's even more complex | 11:09 | |
moritz_ | you have to use map or for | ||
the X.times is ruby :-) | |||
but 'for ^N { block }' is not really much to write | 11:10 | ||
colomon | Could you do something like { ... } xx 10? | ||
athaba | yes, I know. I hoped for perl6 offering something similar | ||
colomon | moritz_: I was assuming it was an efficiency issue ... create a big list with for ^N if N is large. | ||
and if you don't want the value of that list.... | 11:11 | ||
moritz_ | colomon: it is today, but it's going to be a lazy iterator | ||
wayland | seen Matt-W | ||
phenny: seen Matt-W | |||
colomon | moritz_: sure, but the horrible efficiency issues are here today! ;) | ||
moritz_ | @seen Matt-W | 11:12 | |
lambdabot | Unknown command, try @list | ||
wayland | That's what lambdabot says to me too | 11:14 | |
Maybe lambdabot has bitrot | |||
11:28
sm^^^ joined
11:30
zamolxes left
11:31
sm` left
11:32
wayland is now known as wayland76
11:41
fredrecsky left
|
|||
Matt-W | Hello | 11:52 | |
frettled | H-h… hello? | ||
Matt-W | What lambdabot should have said is "Matt-W will return in 40 minutes", but it's not that clever | 11:53 | |
11:53
sharada joined
|
|||
frettled | Nor is it prescient, apparently. | 11:53 | |
carlin | ENOPRECOGNITION | 11:55 | |
Matt-W | That's probably a good thing, all told | ||
frettled | Besides, it's NYI in Rakudo. | ||
Matt-W | Although it might be able to tell people when Perl 6 will be 'ready' as they define 'ready', and thus save us a lot of explanation | ||
carlin | it would probably respond; ENOIDEA | 11:58 | |
or 42 | |||
12:00
tak11 left
12:09
_timbunce joined
12:10
takadonet joined
|
|||
takadonet | morning all | 12:10 | |
moritz_ | good localtime takadonet | ||
takadonet | hehe | 12:11 | |
12:17
meppl left
|
|||
frettled | moritz_: localtime NYI, please use gmtime. | 12:19 | |
Good gmtime, takadonet :D | |||
12:24
DakeDesu is now known as KatrinaTheLamia
12:28
timbunce left,
_timbunce is now known as timbunce
12:29
hudnix left
|
|||
frettled | masak: regarding Extreme Makeover - Temporal.pm Edition: do you have any particular plans yet, and if so, in a text file or something? I suddenly feel vaguely inspired again. | 12:31 | |
12:40
ruoso joined
12:41
azawawi joined
|
|||
azawawi | hi | 12:41 | |
spinclad | moritz_: re class Foo; to eof incredibly useful: more so than class Foo { #`[rest of file here] } ? | 12:44 | |
i'm surprised, then. | 12:45 | ||
hi, azawawi | 12:46 | ||
moritz_ | spinclad: yes | ||
spinclad: basically because it allows you not to indent the body of the class | 12:47 | ||
and still have each closing } on an indetion level of its own | |||
spinclad | there is that, true. a matter of layout then. | 12:48 | |
moritz_ | aye | 12:50 | |
and it does matter a lot to me to have my code laid out properly | |||
spinclad | 'use an editor that does it for you.' <-- note: i don't endorse this argument | ||
moritz_ | that's not related to it at all | ||
my editor does it properly | |||
but you still ahve one more level of indenting | 12:51 | ||
which basically carries no information, but if you leave it out it's still confusing | |||
spinclad | and it's _because_ it runs to eof that it carries no information on each line | 12:52 | |
moritz_ | aye | 12:53 | |
anyway, I strongly recommend writing usable Perl 6 code | |||
it gives you some perspectives of the language that you don't notice by just thinking about it | 12:54 | ||
(that's what made me start the POD discussions one year ago that ended in a flame war, but now seems to produce good results, Damian++) | 12:55 | ||
spinclad | i've done some, but often enough had more than one class in a file, so preferred class { }. | ||
pmurias | what should a RELEASE/REFERENCE do on the p5 interpreter? (it's destroyed manualy) | 12:56 | |
ruoso: ^^ | |||
PerlJam | good morning fellow #perl6 denizens | 13:03 | |
spinclad | along with class { } being more lexically natural to my taste, so i've felt the class-to-eof as (now) tacked onto the language, and open to reconsideration. but i take your argument. (more) | 13:05 | |
azawawi | PerlJam: hi there | 13:07 | |
masak: el-pingo | 13:10 | ||
masak | azawawi: ka-powng. | ||
azawawi | masak: im trying november on win32 as i promised before :) | 13:11 | |
masak | azawawi: cool! | ||
frettled: I have plans, but not written down anywhere. I could write them down, or we could discuss them here. | |||
azawawi | masak: a lot of the docs are outdated a bit (when rakudo was inside parrot) | ||
masak: commit bit please | 13:12 | ||
13:12
KyleHa joined
|
|||
frettled | masak: There may be significant RTT in discussing it here, but I'm not opposed to that. Phenny is so nice. :D | 13:12 | |
spinclad | so now i'm thinking over distinguishing the two class Foo; s: (1) 'class Foo is stub;', or (2) 'class Foo:' (with colon) to end of file. | ||
KyleHa | Is this still the problem of declaring that a class exists without defining it? | 13:14 | |
azawawi | masak: if it works out on win32, i think i can cook a Padre::Plugin::November | ||
spinclad | yes | ||
moritz_ | KyleHa: IMHO it's not a problem | ||
we have a syntax for it | |||
masak | azawawi: the repository belongs to viklund. ping, viklund. | ||
moritz_ | and since yesterday it's also specced | ||
KyleHa | s/problem/discussion/ | ||
moritz_ | before it was just in TimToady's head, and maybe implied here and there | ||
masak | azawawi: that sounds vaguely intriguing. | 13:15 | |
moritz_ | hugme: hug azawawi | ||
hugme hugs azawawi | |||
masak | frettled: OK, so the previous goal of the Temporal spec was to provide a minimal toolset for date and time. after playing around with it, I've decided that the toolset is too minimal. | ||
azawawi | hugme: help :) | 13:16 | |
KyleHa | If I may throw out a nonsensical suggestion, 'class Foo is fer realz;', or, for explicit error production, 'class Foo is fer lulz;' | ||
hugme | azawawi: 'hugme: (add $who to $project | list projects | show $project | hug $nickname)' | ||
frettled | masak: not to mention a bit too complicated, perhaps. :) | ||
moritz_ | hugme: show json | ||
hugme | moritz_: the following people have power over 'json': masak, moritz_, viklund. URL: github.com/moritz/json/ | ||
azawawi | hugme: list projects | ||
hugme | azawawi: I know about these projects: json, perl6-examples, proto, svg-matchdumper, svg-plot, tufte | ||
masak | frettled: I haven't thought about simplifications, but I do have a use case which I focus quite heavily upon. | 13:17 | |
frettled | masak: ### days until April? ;) | 13:18 | |
masak | rakudo: ((Temporal::DateTime.new(:date(Temporal::Date.new(:year(2010), :month(4))), :time(Temporal::Time.new)).epoch - time) / 86400).ceiling.fmt("%d days left until April!").say | ||
p6eval | rakudo 446d49: OUTPUT«Confused at line 2, near "(:date(\u200bTe"in Main (src/gen_setting.pm:3469)» | ||
masak | frettled: yep. | ||
frettled | masak: one of my usecases is the one I just can't seem to stop blogging about (timestamping in logs and STDOUT) | 13:19 | |
masak | frettled: that's a nice one too. | ||
rakudo: ((Temporal::DateTime.new(:date(Temporal::Date.new(:year(2010), :month(4))), :time(Temporal::Time.new)).epoch - time) / 86400).ceiling.fmt("%d days left until April!").say | 13:20 | ||
p6eval | rakudo 446d49: OUTPUT«Use of uninitialized valueUse of uninitialized valueUse of uninitialized valueUse of uninitialized valueUse of uninitialized value205 days left until April!» | ||
13:20
frederico joined
|
|||
frettled | yeah, that one is a bit of a bother. | 13:20 | |
azawawi | masak: pinged viklund | ||
masak: thanks | |||
masak | azawawi: let me know if you time out pinging him, and I'll bother him by more effective means. | 13:21 | |
frettled | masak: I also like to think of a future performance aspect; I don't want to have to insult the Temporal.pm implementors as much as I've apparently (accidentally and unintentionally) insulted Dave Rolsky. | ||
masak | who's that? :) and how did you insult him? | ||
azawawi | masak: i already emailed him... | ||
moritz_ | the DateTime author | ||
masak | azawawi: excellent. | ||
moritz_: aha. | 13:22 | ||
PerlJam | frettled++ accidentally insulting Dave Rolsky :) | ||
PerlJam looks around to see if autarch is on channel | 13:23 | ||
frettled | hehe | 13:24 | |
masak: In essence, what I want to avoid is the trap that simple printing/formatting of datetime information is several orders of magnitude slower than someone taking the «raw» epoch timestamp and doing it themselves. | 13:25 | ||
masak | frettled: that sounds like a worthy goal. :) | ||
PerlJam | frettled: is one order of magnitude acceptable? | ||
frettled | masak: Supporting simple date and time calculation is also important, but it shouldn't affect the performance part. | ||
PerlJam: not for my uses | |||
PerlJam | frettled: good. | 13:26 | |
frettled | PerlJam: and I suspect it isn't for any sysadmin who might want to use Perl to do real-time output. | ||
PerlJam | aye. | ||
PerlJam resembles said sysadmin | |||
frettled | :) | ||
hugme: hug PerlJam | 13:27 | ||
hugme hugs PerlJam | |||
PerlJam | back in the day, one of the things that really bugged me about the brand new perl 5 was that the date/time stuff was *WAY* slower than it had been with perl 4. I got over it because of Moore's law (heh, I accidentally wrote "Moose" initially) but had their been a significant improvment in the abstraction, I would have gotten over it sooner. | 13:28 | |
I can live with a slightly slower execution speed if I win in writability, readability and maintenance | 13:30 | ||
(even for real-time stuff as long as "real-time" means "soon enough" :) | |||
13:32
azawawi left,
frew__ joined
|
|||
frettled | mm | 13:32 | |
PerlJam: Dave Rolsky provided me with a benchmarking script for performance, BTW, which I modified to this: jani.at.ifi.uio.no/tmp/dt-bench | 13:34 | ||
13:38
agentzh joined
|
|||
PerlJam runs it | 13:39 | ||
13:42
frew__ left,
colomon left
13:44
drbean_ left
13:52
ejs left,
colomon joined
|
|||
masak | frettled: I have a repository on github for the Temporal.pm refactor, but I see I've only pushed one commit to it: github.com/masak/temporal-flux-perl...9785fd9f01 | 13:55 | |
I also have a local Rakudo branch where I try to implement what I spec. | 13:56 | ||
13:56
M_o_C joined
|
|||
frettled | Ah! | 13:58 | |
That's nice. | |||
13:59
timbunce left
|
|||
masak | I'd like for Temporal::DateTime.new('2010-04-01') to work. | 13:59 | |
IIRC, I ran into some slight problems implementing that. | |||
I should try it again soon. | |||
14:01
timbunce joined
|
|||
moritz_ | actually we could offer a Temporal::Date which only deals with dates, not times | 14:06 | |
that's much simpler | |||
and often does the job too | |||
moritz_ is quite fond of Perl 5's Date::Simple | |||
14:10
justatheory joined
|
|||
masak | moritz_: there is a Temporal::Date, but IIUC it's only meant to be used by Temporal::DateTime by current spec/impl. | 14:10 | |
moritz_: but yes, I agree. and it probably wouldn't be too difficult. | |||
14:11
colomon left
14:14
jhorwitz joined
14:17
zpmorgan left
|
|||
frettled | moritz_: It's simpler except when it isn't :) | 14:18 | |
moritz_: One of the things I want to fix is the leap second thing. That's only possible to solve with some sort of LUT, I'm afraid. | 14:19 | ||
and that's needed for Temporal::Date | |||
I think I'd like to propose one implementation that's not leap second aware, and another that is. The second will be slightly slower. | |||
14:21
cognominal left
|
|||
frettled | But what I'm afraid of there, is that people will then opt to ignore leap seconds, and then come to rely on it in some application where they ought to be leap second aware. | 14:21 | |
So the leap second part probably needs to be pretty close to the core. | 14:22 | ||
masak | having two parallel implementations is already a bit more complexity than I'd like to see in the core. | 14:24 | |
frettled | Leap seconds are nasty little buggers in more than one way, too. The operating system's clock is probably NTP adjusted these days, but you can't really know that it is. If it is NTP adjusted, then leap seconds will be taken care of automagically, and that can lead to interesting problems when comparing dates, datetimes and times across a leap second boundary. | ||
Fortunately, we know _when_ the leap seconds are supposed to inserted related to UT1 (IIRC), so it should be manageable. | 14:25 | ||
masak: yes, me too | 14:26 | ||
Tene | hi masak | 14:28 | |
masak | good day, Tene. | 14:29 | |
14:29
cognominal joined
|
|||
ruoso | pmurias, hmm... conceptually we could make a refcount for the interpreter itself, and destroy it in the end... | 14:29 | |
14:41
alester joined
14:45
pmurias left
14:48
mikehh joined,
carlin left
14:50
chez joined,
sevvie_ is now known as sevvie
14:51
nihiliad joined
|
|||
chez | ?eval say "hello!" | 14:51 | |
masak | perl6: say "hello!" | ||
p6eval | elf 28206, pugs, rakudo 446d49: OUTPUT«hello!» | ||
14:51
Psyche^ joined
14:52
finanalyst left
|
|||
chez | does the bot support private messages ? | 14:52 | |
masak | aye. | ||
chez | thanks I'm afraid of spamming the channel :p | ||
masak | chez: I've also heard that there are offline versions of each implementation :) | 14:53 | |
chez | hey erm what implementation is this ? | ||
14:53
Patterner left,
Psyche^ is now known as Patterner
|
|||
masak | all of them. Elf, Pugs, and Rakudo. | 14:54 | |
chez | oh | ||
masak | (those are the one represented by p6eval) | ||
s/one/ones/ | |||
for download, I'd recommend Rakudo. | |||
chez | how do I test something with pugs only ? | ||
14:54
Zloy_russkiy joined
|
|||
chez | yeah I have rakudo on my pc | 14:54 | |
masak | pugs: say "OH HAI" | ||
p6eval | pugs: OUTPUT«OH HAI» | ||
chez | thanks | ||
masak | np. | ||
14:57
patspam joined
15:00
cognominal left
|
|||
chez | my @s = ($_ * 2 if $_ ** 2 > 3 for 0 .. 99); | 15:02 | |
does the above line look valid ? | |||
masak | does to me. | 15:04 | |
chez | because I've not been able to get it running on any of the implementations | ||
masak | perl6: my @s = ($_ * 2 if $_ ** 2 > 3 for 0 .. 99); say @s.perl | ||
p6eval | rakudo 446d49: OUTPUT«Null PMC access in find_method()in method Perl6Object::perl (src/gen_setting.pm:1812)called from method Any::map (src/gen_setting.pm:1399)called from method List::perl (src/gen_setting.pm:1399)called from Main (/tmp/oA3E2Udm8g:2)» | 15:05 | |
..pugs: OUTPUT«***  Unexpected "@s" expecting "=", operator, ")", context, ":" or "(" at /tmp/QU2I8ES51K line 1, column 4» | |||
..elf 28206: OUTPUT«syntax error at (eval 125) line 3, near "(for" at ./elf_h line 5881» | |||
masak | chez: no, they probably don't implement that yet. | ||
PerlJam | std: my @s = ($_ * 2 if $_ ** 2 > 3 for 0 .. 99); | ||
p6eval | std 28206: OUTPUT«ok 00:02 38m» | ||
15:05
rfordinal joined
|
|||
chez | ah | 15:06 | |
PerlJam | chez: that's how you know if it's syntactically valid. | ||
chez | thanks | ||
15:08
iblechbot joined
15:15
[particle]1 joined
15:16
[particle] left,
[particle]1 is now known as [particle]
15:18
cognominal joined
15:37
jrtayloriv left
15:39
Zloy_russkiy left
|
|||
moritz_ | but rakudo doesn't do list comprehensions yet | 15:39 | |
afk | 15:40 | ||
masak | neither do Pugs or Elf, it seems. | ||
15:45
carlin joined,
agentzh left
|
|||
carlin | rakudo: use IO::Socket::INET; my $s = IO::Socket::INET.new; $s.open('localhost', 123456); $s.send('foo'); say "Lorem ipsum"; | 15:47 | |
p6eval | rakudo 446d49: OUTPUT«gethostbyname failure [localhost]Lorem ipsum» | ||
TimToady | masak: ss/fixed until April/fixed before April/ # or 'by April' | 15:48 | |
carlin | rakudo: use IO::Socket::INET; my $s = IO::Socket::INET.new; $s.open('127.0.0.1', 123456); $s.send('foo'); say "Lorem ipsum"; | 15:49 | |
p6eval | rakudo 446d49: OUTPUT«Lorem ipsum» | ||
carlin | Hmm. Here the REPL just quitely dies. | ||
masak | TimToady: gracias. my non-nativeness shines through. :) | 15:50 | |
TimToady | well, all languages are weird | 15:51 | |
masak | 对 | ||
TimToady | but to me, 'until' implies fixing something continuously up to that point | ||
masak | yes, I see that reading now. | ||
TimToady | and then in April we'll give up gixing them :) | ||
masak | fixed. TimToady++ | ||
TimToady | gixed | ||
masak | :P | 15:52 | |
15:58
carlin left
15:59
cognominal left
16:01
jaldhar left
|
|||
pmichaud | good morning, #perl6 | 16:03 | |
jnthn | oh hai pmichaud | ||
TimToady | ö/ | ||
16:04
jrtayloriv joined
|
|||
masak | greetings, pmichaud | 16:04 | |
16:04
barney left
|
|||
M_o_C | What are the two dots for, TimToady? Some camelia related thing? | 16:05 | |
pmichaud | TimToady now has a crown? ;-) | ||
aha! we need to sell Camelia "bug antenna" that people can wear at conferences :-P | 16:06 | ||
masak | or tiny antennae. | ||
M_o_C | More like attachable antennas :D | ||
pmichaud | kind of like the BSD horns :-) | ||
16:06
cognominal joined
16:13
masak left
16:14
cognominal left
16:15
payload joined
16:19
alester left
16:20
colomon joined
|
|||
TimToady | std: @*foo >>->> 1 | 16:20 | |
p6eval | std 28206: OUTPUT«ok 00:03 38m» | 16:21 | |
TimToady | colomon++ | ||
pugs_svn | r28207 | colomon++ | [t/spec] Skip/todo now-broken tests after the div patch. | 16:22 | |
16:29
zamolxes joined
16:37
cmv left
16:38
chez left
|
|||
dalek | kudo: 9c449f6 | pmichaud++ | docs/spectest-progress.csv: spectest-progress.csv update: 436 files, 14273 (69.3% of 20599) pass, 0 fail |
16:40 | |
jnthn | Wow, over 14,000 :-) | 16:45 | |
pmichaud | yes, but we're also back below 70% :-) | 16:46 | |
jnthn | aww | ||
pmichaud | I've decided to re-run the statistics since the August release | ||
jaffa8 | you know guys, I am really surprised that you can keep it up doing what you do. | ||
pmichaud | I think it'll be a bit more accurate | ||
jaffa8: I'm surprised also :) | 16:47 | ||
jaffa8 | this thing is not finished in one day. | 16:48 | |
I am surprised that you are surprised. | |||
TimToady | we can't keep up what we're doing, but we do it anyway :) | 16:59 | |
but everyone has to find their own tortoise/hare balance point | |||
PerlJam | continuing despite the setbacks and "failures" is still quite amazing when you think about the mental energy that goes into those setbacks and "failures" | 17:00 | |
TimToady | what amazes me is how many times I've rediscovered that fallbacks are a bad idea | ||
which says something about inheritance :) | 17:01 | ||
.oO(and what it says probably sounds a lot like "Liskov") |
17:02 | ||
PerlJam | fallforwards are always better than fallbacks (unless you happen to be standing in front of a deep pit ;) | ||
TimToady | I dunno, when we fall back in autumn I get an extra hour of sleep... | ||
17:03
sri_kraih left
|
|||
PerlJam | Just apply the axiom of choice on your time slices and your sleeping/waking schedule will work itself out :) | 17:04 | |
(and pick finer grained slices perhaps) | |||
TimToady | especially if you don't believe in it | ||
takadonet | one day this will all be over... | ||
PerlJam | takadonet: do you mean to say that one day perl 6 will be finished?!? ;> | 17:05 | |
TimToady | most likely in the morning, since asteroids are likelier then | ||
takadonet | PerlJam: That we have more then a few people working on rakudo | 17:06 | |
huf | i was under the impression that "finished" only applies to languages in the sense "dead" | ||
17:06
ysth left
|
|||
TimToady | Perl 4 is stable | 17:07 | |
PerlJam drops a pebble in the meme pool intiating more ripples of nuance | |||
huf | isnt it pretty rare tho? | ||
PerlJam | TimToady: you should chide Allison for trying to destabilize Perl 1. | 17:08 | |
17:19
sri_kraih joined
17:20
rblasch left
17:22
Zloy_russkiy joined
17:29
cdarroch joined
17:48
payload left
17:49
frederico left
|
|||
charsbar | perl6: say 10! | 17:54 | |
p6eval | elf 28207: OUTPUT«Parse error in: /tmp/wCZ6T6Ofr7panic at line 1 column 0 (pos 0): Can't understand next input--giving upWHERE: say 10!WHERE:/\<-- HERE STD_red/prelude.rb:99:in `panic' STD_red/std.rb:76:in `scan_unitstopper' STD_red/std.rb:224:in `comp_unit' STD_red/std.rb:210:in | ||
..`_UNIT'… | |||
..rakudo 446d49: OUTPUT«Confused at line 2, near "!"in Main (src/gen_setting.pm:3469)» | |||
..pugs: OUTPUT«***  Unexpected "!" expecting "_", fraction, exponent, term postfix, operator, ":" or "," at /tmp/NKVd5uPvoM line 1, column 7» | |||
colomon | rakudo: sub postfix:<!>($n) { [*] 1..$n; }; say 10!; | 17:57 | |
PerlJam | rakudo: sub infix:<!>($n) { return [*] 1..$n }; say 10!; | ||
oops | |||
colomon++ | |||
dunno why I typed infix | |||
p6eval | rakudo 446d49: OUTPUT«3628800» | ||
rakudo 446d49: OUTPUT«Confused at line 2, near "!;"in Main (src/gen_setting.pm:3469)» | |||
17:57
alester joined,
stephenlb joined
|
|||
colomon | I was faster typing because I left off the "return". ;) | 17:57 | |
charsbar | aha, thanks, colomon++ | ||
PerlJam | alester++ thanks for the new ack :) | ||
17:57
sm^^^ left
17:58
sm` joined
|
|||
alester | you're welcome | 17:59 | |
colomon | I don't think factorial is a default operator in Perl 6 -- it's so simple to write anyway that it's hardly worth having it be part of the standard... | ||
PerlJam | colomon: though it might end up in a module or a perl 6 distribution as Math::Notations or something. | 18:00 | |
colomon | PerlJam: It's not really very useful without bignums anyway... | ||
charsbar | I'm translating jnthn's slides for YAPC::Asia, without seeing his code, and just wanted to be confirmed 10! was implemented or not | 18:01 | |
pmichaud | charsbar: postfix:<!> is not part of the default library, no | 18:03 | |
charsbar: however, postfix:<!> can be defined in Rakudo and it does work | |||
charsbar | pmichaud: ok, thanks | ||
18:05
rblasch joined
|
|||
colomon | I almost think it's worth more to leave it out so defining it can be an example! | 18:05 | |
moritz_ | colomon: aye ;-) | 18:06 | |
18:07
arthur-_ joined
|
|||
M_o_C | Another question, is it normal that RT will display emails unobfuscated when you don't create a new issue via the web interface? | 18:07 | |
18:09
azawawi joined,
__ash__ joined
18:11
rbaumer left
18:12
rfordinal left
18:13
gbacon joined
|
|||
TimToady | colomon: note that Int is defined to be bignum already | 18:14 | |
18:15
M_o_C left
|
|||
TimToady | it's just nyi | 18:15 | |
__ash__ | hm.... a fresh checkout of rakudo then running perl Configure.pl --gen-parrot fails on OS X 10.6, something seems wrong with parrot it seems | 18:16 | |
18:16
sjn left
|
|||
moritz_ | __ash__: please try to cd parrot; svn up; make | 18:17 | |
18:17
M_o_C joined
|
|||
pmichaud | I think Rakudo might be currently tied to a version of Parrot that fails to build on OS X | 18:17 | |
I'm fine with bumping PARROT_REVISION if we can prove that spectests still pass | 18:18 | ||
moritz_ | rakudo even passes spectests with the patches from TT #757 | ||
__ash__ | parrot with the latest revision builds | 18:19 | |
i am building rakudo, then i'll run tests, one sec | |||
moritz_ | I'll spectest, if it passes I'll bump the parrot revision | ||
pmichaud | moritz++ | ||
moritz_ | I just answered a usenet post in de.comp.lang.perl.misc about how to develop applications with Rakudo, what tools to use etc ;-) | 18:21 | |
18:22
pmurias joined
|
|||
__ash__ | is there a coverage tool for perl6 yet? | 18:23 | |
M_o_C | moritz_: Maybe turn it into a blog post? | 18:25 | |
alester | moritz_: Or give me a URL to it so I can Perlbuzz Tweet it. | ||
colomon | TimToady: I know, I am eagerly awaiting bignum support so I can play around with those Project Euler number theory problems. :) | 18:26 | |
18:26
nbrown left
|
|||
__ash__ | with the most current svn checkout of parrot make test results in 0 failures, i am running spectest now | 18:27 | |
pmurias | colomon: be brave, write your own bignumbs ;) | ||
colomon | pmurias: Don't think I haven't thought about it! | ||
With operators working, it should be possible. | 18:28 | ||
Tene | TimToady: Why is ' not allowed at the end of an identifier? | ||
colomon | But it's not like I have a shortage of Perl 6 projects at the moment. | ||
arnsholt | Take the Perl 5 bidnum modules and port them? =) | ||
18:30
nbrown joined
|
|||
colomon | moritz_: I needed to add a perl Configure.pl in the parrot directory to get your suggested fix to work. But parrot is happily compiling now... | 18:30 | |
pmurias | Tene: do you need a ' at the end for anything? | 18:31 | |
perl6: $foo'bar = 123;say $foo'bar; | 18:32 | ||
p6eval | pugs: OUTPUT«***  Unexpected "'" expecting "::" Variable "$foo" requires predeclaration or explicit package name at /tmp/F0pNVtqs3k line 1, column 5» | ||
..rakudo 446d49: OUTPUT«Symbol '$foo'bar' not predeclared in <anonymous> (/tmp/pHXoV8bZ2p:2)in Main (src/gen_setting.pm:3469)» | |||
..elf 28207: OUTPUT«Parse error in: /tmp/a7nRgluv2xpanic at line 1 column 0 (pos 0): Can't understand next input--giving upWHERE: $foo'bar = 123;say $foo'bar;WHERE:/\<-- HERE STD_red/prelude.rb:99:in `panic' STD_red/std.rb:76:in `scan_unitstopper' STD_red/std.rb:224:in `comp_unit' | |||
..STD_red/s… | |||
18:32
rbaumer joined
|
|||
pmurias | perl6: my $foo'bar = 123;say $foo'bar; | 18:32 | |
p6eval | elf 28207: OUTPUT«Parse error in: /tmp/FWJoWT7RXGpanic at line 1 column 0 (pos 0): Can't understand next input--giving upWHERE: my $foo'bar = 123;say $foo'barWHERE:/\<-- HERE STD_red/prelude.rb:99:in `panic' STD_red/std.rb:76:in `scan_unitstopper' STD_red/std.rb:224:in `comp_unit' | ||
..STD_red… | |||
..rakudo 446d49: OUTPUT«123» | |||
..pugs: OUTPUT«***  Unexpected "'" expecting word character, "?", "!", trait, "=", infix assignment, term postfix or operator at /tmp/YoRjz5eCD6 line 1, column 8» | |||
Tene | pmurias: It might be kinda neat to be able to say, like, my $a' = f($a); | ||
colomon | That is a common math idiom. | ||
moritz_ | M_o_C, alester: groups.google.com/group/de.comp.lan...6c0b3b253# (it's German though, as the de. implies ;-) | 18:33 | |
pmurias | math identifier are bad | ||
Tene | bad? | ||
pmurias | * identifiers | ||
alester | ARGH | ||
pmurias | they are all one lettered | ||
ruoso | std: my $a; sub foo {...}; my $a' = foo($a); | 18:37 | |
p6eval | std 28207: OUTPUT«===SORRY!===Confused at /tmp/5qo9G1SJhP line 1:------> my $a; sub foo {...}; my $a⏏' = foo($a); expecting any of: POST bracketed infix infix stopper postfix postfix_prefix_meta_operator shape definition | ||
..standard stopper statement m… | |||
ruoso | std: my $a; sub foo {...}; my $a'b = foo($a); | ||
p6eval | std 28207: OUTPUT«ok 00:03 38m» | ||
colomon | pmurias: but in a lot of math programming contexts, one letter is all that is needed to clearly express what is going on. | ||
ruoso | yeah... you cannot finish the name with the special char | ||
18:38
mberends joined
|
|||
colomon | Perhaps there is an appropriate Unicode symbol that is legal for a variable name? | 18:38 | |
pmurias | colomon: you can add a _ , like $a_ ;) | ||
colomon | moritz_, __ash__: After building the latest version of parrot, I'm getting a Bus error executing | 18:42 | |
__ash__ | Yeah, i got it on 2 tests, the rest so far are fine | ||
moritz_ | colomon: did you reconfigure (or clean) rakudo after that? | 18:43 | |
18:43
finanalyst joined
|
|||
colomon | No. How would I reconfigure? (And do I need to make install parrot?) | 18:43 | |
moritz_ | in rakudo, do a rm -rf parrot_install/* | 18:44 | |
then cd parrot | |||
make install install-dev | |||
cd .. | |||
18:44
rblasch left
|
|||
moritz_ | perl Configure.pl && make -j 3 install | 18:44 | |
__ash__ | hmmm, i have to go, i'll come back and let you guys know if any other tests have issues, i did a clean install and I am having the buss error like colomon | 18:45 | |
18:45
__ash__ left
|
|||
colomon | moritz_: make install install-dev appears to be trying to install at /usr/local/include/parrot ? | 18:45 | |
M_o_C | alester: Basically moritz tells him that proto doesn't really install modules which it downloads right now and that he tends to fixes this with BEGIN { @*INC.push: 'lib', '../svg/lib' } as setting perl6lib is occasionally annoying. However moritz mentions that masak and mberends will soon implement this feature in proto. Finally he suggests to convert the modules to PIR as Rakudo is currently rather slow and points out that you need to beware that | ||
Might it be that my last message got cut? My client displays it correctly but I got a server message about some truncation... | 18:47 | ||
pmichaud | truncated at "beware that" | ||
18:47
nbrown left
|
|||
M_o_C | ...beware that rakudo will prefer *.pm files over the according *.pir variants. | 18:48 | |
<EOF> ;) | |||
pmichaud | actually, rakudo prefers *.pir over *.pm | ||
otherwise Test.pir would never get used | |||
M_o_C | True, my mistake, he got it right. Sorry. | 18:49 | |
18:49
nbrown joined
|
|||
moritz_ | if that's of general interest I can turn that into a blog post. | 18:49 | |
(in English) | |||
M_o_C | Well, seems like little content for a blog post to me. I'd wait till the install-feature gets implemented in proto. | 18:50 | |
mberends has just resumed work on the proto installed-modules branch :) | 18:51 | ||
M_o_C | moritz_: I hope I got the other parts of your message right in my translation :x | 18:52 | |
colomon | moritz_: All the mucking about with parrot wasn't getting me anywhere, so I've just bumped my local PARROT_REVISION to the latest, and I'm trying again with --gen-parrot. | ||
moritz_ | M_o_C: yes, you did (afaict :) | 18:53 | |
pmurias | ruoso: have you thought what should REFERENCE/RELEASE on the p5 interpreter do? | 18:55 | |
ruoso | pmurias, it depends if we're going to allow arbitrary creation of new interpreters | ||
if we do, we need to make the refcounting | |||
18:55
nbrown left
|
|||
azawawi | moritz_: could u apply this small rakudo patch to ignore some win32 files, gist.github.com/183146 ? | 18:57 | |
18:57
nbrown_ joined,
nbrown_ is now known as nbrown
|
|||
moritz_ | azawawi: I'm off to cook some lunch, but I'll do later on | 18:58 | |
azawawi | moritz_: thanks | 18:59 | |
19:00
Guest93158 left
19:01
nbrown left,
nbrown joined
19:02
azawawi left
|
|||
colomon | Bumping build/PARROT_REVISION to 41159 and then doing a --gen-parrot build has gotten me a rakudo that passes "make test". Working on "make spectest" now. | 19:04 | |
moritz_ | my spectest just finished - lots more "Non-zero wait status: 11" | 19:05 | |
about 50 or so, I'd gues | |||
ss | |||
dalek | kudo: ef31fec | moritz++ | .gitignore: add some windows specific files to .gitignore, azawawi++ |
19:06 | |
kudo: 62879bb | moritz++ | : Merge branch 'master' of [email@hidden.address] |
|||
19:12
nbrown left,
masak joined
|
|||
masak | time for some fun with databases! | 19:12 | |
19:13
lmc joined
19:14
nbrown joined
19:21
finanalyst left
19:22
__ash__ joined
19:25
iblechbot left
|
|||
Tene | yay masak! | 19:27 | |
19:27
hugme left
|
|||
masak | yay Tene! | 19:28 | |
I'll now begin my exploration of Squirrel-space. | |||
Tene | Mysteeeeerious! | 19:30 | |
moritz_ | over the weekend I did quite some SVG::Plot hacking | 19:31 | |
and as I added legend boxes to the lines plots I noticed that the code became more and more unmaintainable | 19:32 | ||
mostly the positioning code | |||
pmurias | ruoso: will we use the p5 undef as the p6 undef? | ||
moritz_ | that it would be much cleaner to put certain things (legend box, title, the main plot etc.) in boxes, and position them afterwards when I know how much space they need each | 19:33 | |
s/^/I realized / | |||
and then I looked at the scruffy code again | |||
and noticed that that's exactly what the Scruffy::Components are ;-) | 19:34 | ||
19:34
Zloy_russkiy left
|
|||
moritz_ | so my motivation for porting scruffy to Perl 6 has just increased | 19:35 | |
masak | Tene: I started by porting the Short Example in the Sequel README.pod: github.com/masak/web/blob/2a3469525...el-example | 19:40 | |
I think the functionality needed to make that run won't be too difficult to implement. | |||
maybe I'll get there in the next 24 hours or so. | 19:41 | ||
moritz_++ | |||
Tene: the syntax on lines 5-9 might well change once we have macros and modifiable grammars. | 19:42 | ||
now... what's the Simplest Thing That Could Possibly Work? | 19:46 | ||
moritz_ | say "hello, world"; | ||
masak | I keep thinking I want to redo the exercise from last week, but with Sequel/Squirrel underpinnings. | ||
i.e. use Text::CSV as a backend. | 19:47 | ||
then Tene could take a look at how I did that, and hook up sqlite similarly. | |||
masak re-reads last Web.pm blog post | |||
19:47
nbrown left
|
|||
colomon | moritz_: I only get two failures in make spectest (OS X still) -- S02-whitespace_and_comments/unicode-whitespace.t and S04-declarations/my.t. | 19:49 | |
masak | moritz_: 'hello world' in this field would kinda correspond to the example I just translated. | ||
19:49
nbrown joined
|
|||
moritz_ | colomon: could you please nopaste the summary of the failed tests? | 19:50 | |
19:50
takadonet left
|
|||
lisppaste3 | colomon pasted "OS X failures with latest parrot and --gen-parrot" at paste.lisp.org/display/86772 | 19:51 | |
19:51
jan_ joined
20:00
cmv joined
|
|||
masak | rakudo: class A {}; multi infix:<<< << >>>(A $a, $b) { "Feed $b into $a" }; say A << 42 | 20:10 | |
p6eval | rakudo 446d49: OUTPUT«Confused at line 2, near "<< 42"in Main (src/gen_setting.pm:3469)» | ||
masak | that'll never work, will it? | ||
std: class A {}; multi infix:<<< << >>>(A $a, $b) { "Feed $b into $a" }; say A << 42 | |||
p6eval | std 28207: OUTPUT«===SORRY!===(Possible runaway string from line 1)Malformed block at /tmp/n0yZN0IkUs line 1 (EOF):------> , $b) { "Feed $b into $a" }; say A << 42⏏<EOL> expecting escapeOther potential difficulties: Variable $a is not predeclared at | ||
../tm… | |||
masak | right. | ||
std++ # nLTA | 20:11 | ||
20:12
kidd joined,
rapacity joined
|
|||
pmichaud | I'll try latest parrot on my system. | 20:12 | |
masak | hm, this CSV idea of mine might not be very good after all... :/ | 20:13 | |
perhaps better to write tests and then make these pass for sqlite instead. | |||
20:15
patspam left
20:16
patspam joined
20:17
sevvie_ joined
|
|||
Tene | masak: even failing tests are helpful. | 20:18 | |
20:18
meppl joined
|
|||
Tene | pmichaud: is it possible to override keyed lookup for class instances in rakudo? | 20:18 | |
pmichaud | Tene: you mean postcircumfix:<[ ]> and postcircumfix:<{ }> ? | ||
20:19
sevvie left
|
|||
Tene | Yes. | 20:19 | |
20:19
sevvie_ is now known as sevvie
|
|||
Tene | The latter, specifically. | 20:19 | |
pmichaud | I'm not sure if it's possible yet, although it's supposed to be getting there soon. | ||
masak | Tene: yes, no doubt. what suddenly struck me, though, is that Squirrel is a frontend for SQL databases, and I might end up in a position where I'd need to implement more SQL in CSV than I think would be fun. | ||
Tene | rakudo: class A { multi postcircumfix:<{ }> { say 'omg lol' } }; my A $a .= new(); my $x = $a{'hi'}; | 20:20 | |
p6eval | rakudo 446d49: ( no output ) | ||
Tene | masak: Heh. | ||
masak | so I'll go for the sqlite for now. | ||
Tene | masak: pm says we can't get the $db<items> thing working yet, but maybe soon. | ||
masak | ya, I saw. | 20:21 | |
workaround is a method for now. no prob. | |||
Tene | well, I guess we could play with trying to bless a hash or something... | ||
but I wouldn' tbe too hopeful. | |||
TimToady | std must've parsed that as say A < < 40 | ||
Tene | masak: I'd be inclined to just make create_table return an object. | 20:22 | |
and also have, say, a table method... which is what you just said. | |||
pmichaud | I might be able to get postcircumfix:<{ }> working rsn | ||
(but don't wait for me on that... lots of stuff on my plate this week) | |||
Tene | pmichaud: Don't worry, I know better than that. :) | 20:23 | |
frettled | Except for masak, PerlJam and me, does anybody else have a religious relationship with the date/time specification and implementation? :D | ||
pmichaud | frettled: yes. | ||
mberends | frettled: no | ||
masak | Tene: I think I have a pretty good grasp of Sequel internals already. 'Dataset' is the cool tech in Sequel. | ||
pmichaud | frettled: see also 'autarch' :) | 20:24 | |
masak | frettled: mine isn't religious... it's more of a science fiction relationship. | ||
frettled | pmichaud: EBADREF :) | 20:25 | |
pmichaud | it will not surprise me if date/time specs end up being another of those "bikeshedding is over, please live with the result" sorts of areas of the spec | ||
Tene | masak: I'd strongly recommend that you get tests in for something first, and then look at wiring up SQLite, 'cos if you don't get that far, I can do the SQLite wiring tonight. | ||
pmichaud | frettled: I'll find a better ref -- one moment | ||
masak | pmichaud: you mean before or after I'm done with my rewrite? :) | ||
Tene: oki. almost done writing first test file. | 20:26 | ||
PerlJam | masak: working code trumps all bike-shedding :) | ||
masak | PerlJam: that's why I was working on a Rakudo branch in parallel. | ||
it was a really good plan. then I ran out of tuits. | 20:27 | ||
PerlJam | no plan survives lack of tuits. | ||
frettled | :) | 20:28 | |
PerlJam just realized he's been walking around all day with a 3cm thorn stuck in his shoe | |||
frettled | good thing it was only the shoe | ||
PerlJam | (honestly I've been sitting most of the day :) | ||
pmichaud | frettled: www.nntp.perl.org/group/perl.perl6....30780.html | ||
autarch == "Dave Rolksy" | 20:29 | ||
but that thread also points out people who have strong interests in date/time :) | |||
frettled | pmichaud: aha, that was implied in a discussion earlier today, but I didn't quite get it. | ||
masak | 'should not handle [...] string parsing'. uh oh. | ||
PerlJam | masak: again, working code ... | 20:30 | |
masak | aye. will do. | ||
pmichaud | afk for a bit | ||
masak | actually, I don't think it'll be that hard. Perl 6 is pretty good at parsing stuff. | ||
PerlJam | masak: DateTime.new(:year(2010), :month(10), :day(28)) is quite annoying IMHO | ||
masak | nod. | ||
I know! | |||
moritz_ | aye | ||
I do think that parsing "Tue Sep 8 22:31:36 CEST 2009" might be a bad idea though | 20:31 | ||
PerlJam | indeed | ||
(at least initially :) | 20:32 | ||
masak | moritz_: I'm planning to parse large parts of ISO 8601. | ||
the nice thing about that standard is that it's both well-defined and degrades nicely according to human expectations. | 20:33 | ||
thus, '2010' is a valid date. | |||
'2010-04' too. | |||
moritz_ | I've often been pleasantly suprised how much thoughts most ISO and RFC authors have put into their subject | 20:34 | |
(same for SVG btw) | |||
masak | verily. | 20:35 | |
not all committees are rotten. | |||
M_o_C | Which are? ;) | 20:36 | |
moritz_ | many administrative I've dealt with | ||
[particle] | 802.11 | ||
M_o_C | Hm, ok, my thoughts were stuck with software-world so nevermind :x | ||
s/with/in/ | 20:37 | ||
frettled | Okay, I've read the discussion from February (rather quickly). | ||
From what I can see, the leap second problem is taken rather lightly, as is usability. | 20:38 | ||
masak: let's do something, show it to people, and see what happens. :) | |||
masak | frettled: you're on :) | ||
did I give you a commit bit already? | |||
moritz_ | (is there another repo I should add to hugme? ;-) | 20:39 | |
pmurias | moritz_: the xpath spec seems to be pretty badly written | ||
masak | moritz_: please. | ||
moritz_ | masak: uhm, which one? | ||
masak | moritz_: github.com/masak/temporal-flux-perl6syn | ||
moritz_ | ok | ||
who should be able to hand out commit bits? | |||
same as perl6-examples? | |||
masak | moritz_: sure. | ||
frettled: it's 'jani' on github, right? | 20:40 | ||
frettled | masak: yep | 20:41 | |
masak: I think you gave me a commit bit to some project or other, but I don't quite recall now :) | |||
masak | frettled: consider yourself commitbitted. | ||
.oO( 'commitbitten'? ) |
|||
frettled | heh, yes, the latter :D | 20:42 | |
moritz_ | ssh: connect to host feather2.perl6.nl port 22: No route to host | ||
that's bad. | |||
masak | hugme: hug frettled | ||
ENOHUGME | |||
frettled hugs masak without intermediate hugmes. | |||
masak | frettled: welcome aboard :) let's create some Temporal flux :D | 20:43 | |
frettled | masak: I cannae change the laws of physics, cap'n! | ||
20:43
frettled sets mode: +o masak
|
|||
moritz_ | Juerd: it seems that feather2 is down - could you please take a look? (at least I get "No route to host") | 20:43 | |
TimToady | which is why we use TAI seconds | ||
masak | frettled: did I mention I'm allergic to speccing by means of class definitions? | ||
frettled | TimToady: how do we get them from the OS? | ||
masak: hehe | |||
masak: (no, you didn't) | 20:44 | ||
TimToady | if the OS is inaccurate, it must be sterilized | ||
masak | I'd like that to go away in the process. | ||
frettled | The OS is probably adjusted by NTP, and doesn't know anything about TAI or whatever. | ||
masak | there's nothing wrong with talking about the methods in prose, or listing them a la S29. | ||
frettled | mm | ||
masak | but having actual implementation code in the methods _is_ wrong, by me. | ||
frettled | definitively | ||
TimToady | indeed, but if the OS is in that frame of mind, then we just do our best to guess the atomic seconds and let the civil time be as inaccurate as it already is :) | 20:45 | |
but atomic seconds are the gold standard | |||
masak | TimToady++ # pragmTAIc | ||
frettled | TimToady: well, we _can_ know at least one thing, and that is when the leap seconds were supposed to be added. If they weren't added by the OS at that time, then that becomes a User Problem. | ||
Tene | TimToady: What's the reason for forbidding ' at the end of identifiers? | ||
20:45
nbrown left
|
|||
mikehh | rakudo (62879bb) builds on parrot r41161 - make test / make spectest (up to 28207) PASS - Ubuntu 9.04 i386 (g++) | 20:46 | |
20:46
hercynium joined
|
|||
mikehh | rakudo - t/spec/S03-operators/arith.rakudo - TODO passed: 131 | 20:46 | |
rakudo - t/spec/S12-attributes/class.rakudo and t/spec/S14-roles/basic.rakudo - Non-zero wait status: 11 (Segfault after passing tests) | |||
TimToady | if we know that a leap second was added, and about when it was added, and how fast the time algorithm fudges to the new setting, we can interpolate how far off the OS is | ||
frettled | So as long as we stick to pretending to know when the leap seconds were supposed to be added, and trust the system's pretense of current time (which would include the leap seconds, right?) | ||
PerlJam | frettled: We just need to install a GPS on every computer so that they not only know what time it is, but where they are in the world. :) | 20:47 | |
frettled | TimToady: knowing when a leap second was (supposed to be) added is a matter of keeping a LUT for dates; they've always been added at the same time of day. | ||
TimToady | or, at least, where they were N milliseconds ago... | ||
frettled | PerlJam: SMOP :D | ||
pmichaud | if keeping dates, might as well keep times. | ||
frettled | pmichaud: yes, that's a matter of future-proofing it. | ||
TimToady | frettled: which is why I with they'd abolish civil leapseconds, and just jump a few minutes every century | 20:48 | |
frettled | we would just need to keep the look-ups _fast_ | ||
PerlJam | If we're to do timezones, we have to keep times around anyway as they vary as a function of time too ;) | ||
20:48
nbrown joined
|
|||
frettled | TimToady: that would be way too pragmatic for astronomers :D | 20:48 | |
TimToady | it's not fair, since the astronomers already have their own atomic clocks | ||
frettled | PerlJam: oh, yes, considering that $country changes their timezone whateverness occasionally | 20:49 | |
TimToady | it's a complete double standard | ||
ruoso can't really see many cases where UTC and local time zones won't be enough... | |||
frettled | so the new package should be called DoubleStandard, and when we want to access a time, we need: DoubleStandard::Date::Time.new() | ||
*g,d&r* | |||
TimToady | yes, but if you want to run a process for exactly 42.68 seconds, you like those seconds not to be varying in length | 20:50 | |
frettled | ruoso: and the problem is that UTC _is_ leap second adjusted | ||
ruoso | but the hardware clock doesn't know about leap seconds | ||
frettled | the hardware clock doesn't, but when the system sets the hardware clock according to leap seconds, _something_ happens. | ||
TimToady | "The time is a lie. The time is a lie. The time is a lie." | 20:51 | |
PerlJam | TimToady: gravitational distortion notwithstanding? Maybe you *do* want their lengths to vary appropriately. | ||
frettled | let's say that you have some sort of process running between 2008-12-31T23:59:59 and 2009-01-01T00:00:15, how long does that take? :D | ||
TimToady | if the atomic clock varies, then sure :) | ||
PerlJam | frettled: in whose frame of reference? | ||
frettled | PerlJam: hee-hee. Within the same frame of reference. | 20:52 | |
ruoso | frettled, my impression on all this leap seconds thing is that it is mostly ignored by non-astronomers | ||
frettled | ruoso: yes, because we just synchronize our watches occasionally | ||
ruoso | is there any DateTime lib that cares about leap seconds ni UTC? | ||
pmichaud | it is considered by missile designers, though :) | 20:53 | |
PerlJam | ruoso: sure ... I mean we've only had what? 23 leap seconds? what's 23 seconds in the grand scheme of things? | ||
:-) | |||
pmichaud | it's also considered by gps navigators, iiuc | ||
frettled | If we keep a LUT of the leap seconds added, we'll be past-proof and future-proof, and it's possible to ignore it for those who don't want to believe in leap seconds. | 20:54 | |
ruoso | I mean, ntp adjustments will represent a bigger threat to "how much time something took" than leap seconds | ||
PerlJam | ruoso: 'tis true. | ||
TimToady | ruoso: correct | ||
frettled | ruoso: Yes, currently, that is true. | ||
But that assumption is not future proof. | |||
TimToady | I think in the future, our computers will only get a better idea of atomic time, not worse | 20:55 | |
PerlJam | TimToady: unless we nuke ourselves into the bronze age or so | ||
ruoso | TimToady, but our computers currently only have UTC idea of time | ||
TimToady | it would be better to converge on that than on sloppy civil time | ||
screw our computers currently | |||
pmichaud | PerlJam: "nuke ourselves" means we just get a new definition of atomic time :) | ||
TimToady | if they're gonna be that inaccurate, I don't mind the inaccuracy of guessing TAI and backtranslating to UTC | 20:56 | |
but I want Perl 6's *idea* of time to be uniform | |||
frettled | quite! | ||
TimToady | atomically speaking | ||
pmichaud | TimToady: implementations are allowed to cheat, yes? | ||
PerlJam | frettled: Listen to whatever TimToady says because according to Tim O'Reilly, he can "see around corners" and I bet even if those corners are more meta-physical that's still true :) | 20:57 | |
TimToady | to the extent that they have to, sure, but the legal fiction is that it's TAI | ||
ruoso | TimToady, the easiest way to do that is to avoid epochs at all | ||
pmichaud | TimToady: that works for me :) | ||
frettled | PerlJam: :) | ||
TimToady | ruoso: the easiest way is to not think about it at all :P | ||
pmichaud | I'm all in favor of legal fictions. Perl 6 is full of them. We'll probably get sued over them. | ||
masak got the test to fail | |||
Tene: still there? | 20:58 | ||
frettled | pmichaud: good grief ;) | ||
pmichaud | hmmmmmm | 20:59 | |
ruoso | TimToady, you mean: say '2008-12-31 23:59:59.000'.DateTime - '2009-01-01 00:00:00.000'.DateTime # prints 2 | ||
pmichaud | something I did broke "make spectest" on my system | ||
as in, "make spectest" itself failed in TAP/Multiplexer.pm line 139 | |||
pmichaud tries again. | |||
TimToady | I don't know what DateTime does, but if you translate those to Instant and subtract, you get a Duration of 2 | 21:00 | |
assuming the translation is accurate, of course | |||
ruoso | TimToady, that was just a silly way to represent "cast to instant"... | ||
masak | phenny: tell Tene that I just pushed a failing test to the Web.pm repo. due to general tiredness, I'll have to continue this foray tomorrow. if you can do something with what's there already, great. if not, I'll see to it tomorrow. | ||
phenny | masak: I'll pass that on when Tene is around. | ||
masak | good night, people. | ||
21:00
zamolxes left
21:01
masak left
|
|||
frettled | good night, masak (I consider you people, too) | 21:01 | |
ruoso | TimToady, but I guess we need to qualify the system used to represent that instant | 21:02 | |
pmichaud | duration of 2 seems correct to me. Because the second after 2008-12-31 23:59:59.000 is 2008-12-31 23:59:60.000 | ||
frettled | TimToady: I think that's probably the most pragmatic way of looking at it. Let the OS worry about what time it is now, but when Perl 6 needs to do calculations on time, worry about leap seconds then. | ||
pmichaud: yup | |||
TimToady | ruoso: it's a Rat number of TAI seconds, as accurate as you care to make it | 21:04 | |
so we're just using the TAI epoch implicitly | 21:05 | ||
PerlJam | "What time is it?" "8:30 epsilon 1500 seconds" | ||
pmurias | frettled: do os'es take leap seconds into account? | ||
pmichaud | where "epsilon 1500 seconds" == "ish" | 21:06 | |
TimToady | varies | ||
PerlJam | pmichaud: many do | ||
oos | |||
pmurias: many do | |||
frettled | pmurias: NTP takes care of it for many of them | ||
pmurias: so it depends on whether you consider ntpd to be part of the OS or not | |||
TimToady | where "takes care" means "papers over the difficulty" | ||
pmichaud | regardless, we *know* the OS doesn't have the correct time :-) | ||
rephrase | |||
we know that many OSes don't have the correct time | 21:07 | ||
PerlJam | Well, without a better time source, the OS is all we have :) | ||
21:07
Whiteknight joined
|
|||
pmichaud | right, but our HLL isn't limited in its knowledge of time to the time source | 21:07 | |
HLLs are all about putting abstractions over OS, library, and hardware :) | 21:08 | ||
even if we said "Perl keeps its time in UTC", the answer to ruoso's question would still be "duration of 2" | |||
moritz_ | and I thought HLLs were all about -Ofun. Now you've spoilt me. | 21:09 | |
TimToady | you just have the wrong idea of fun :) | ||
pmichaud | moritz_: abstractions over OS, library, and hardware increase the -Ofun for larger numbers of people :) | ||
moritz_ | ;-) | ||
pmichaud | and for some of us, building those abstractions are our strange notion of -Ofun | ||
moritz_ | pmichaud: that sounds like a side, not a goal ;-) | ||
pmichaud | ah | ||
I'll rephrase then. | |||
HLLs are about putting abstractions over OS, library, and hardware | 21:10 | ||
*Perl 6* is about doing it with a lot of -Ofun | |||
ruoso | I think bottom line is, Perl doesn't need to "keep its time"... it's just "aware of leap seconds" | ||
(which will probably make its time calculations to deviate from most datetime libraries currently implemented' | |||
pmichaud | we should probably make a library that emulates the behavior of "most datetime libraries", or people's notions of "civil time" | 21:11 | |
but Perl 6 should probably use TAI as its standard | |||
ruoso | pmichaud, but note that UTC includes the leap seconds itself | ||
pmichaud | ruoso: yes -- I think I did note that above. | 21:12 | |
TimToady | so at minimum, a Perl 6 has to know (approximately) how its OS time maps to TAI on Dec 31, and how it will map by the end of Jan 1, and hopefully how to interpolate when != 86400 | ||
frettled | mm | ||
ruoso | "but the number of seconds in a minute can be 60, or sometimes 61 or 59." | ||
pmichaud | yes, I did note that above. | ||
TimToady | there are no minutes in TAI | ||
frettled | that's secondary | ||
;) | |||
frettled imagines people writhing around in pain, groaning «Ze puns! Ze puns!» | 21:13 | ||
ruoso | my point is: we don't need to explain much, except that we work with UTC as spec and take care of leap seconds | ||
TimToady | no days, either, but we can be reasonably certain that NTP will have "fixed" the clock by the end of Jan 1 | ||
21:13
nbrown left
|
|||
pmichaud | ruoso: why not work with TAI as spec, then? It has the advantage of being much more continuous than UTC | 21:14 | |
TimToady | and it'd be nice if we had a clue about how fast it fixes it | ||
old BSD used to change the clock by 10% till the time was adjusted, for instance | |||
pmichaud | either way we have to take care of leap seconds | ||
21:14
nbrown joined
|
|||
ruoso | in my experience people usually mess up when they work with epoch times | 21:14 | |
TimToady | define "mess" that does not put the blame on inaccurate civil time | 21:15 | |
ruoso | like: $time += 86400 while day_of_month($time) != 1; | ||
pmichaud | that's from a misconception that a "day" is 86400 seconds | ||
which is false even from a UTC perspective | |||
ruoso | precisely... | ||
TimToady | but true from the typical Unix box :) | ||
ruoso | that's why I mean not using epoch, but a full instant spec | 21:16 | |
frettled | :) | ||
ruoso | TimToady, nah... most machines do use timezone configs nowadays | ||
TimToady | Perl 6 should just fail to compile any program containing 86400 | ||
ruoso | heh | ||
huf | YES | ||
pmichaud | what about programs that are checking to see if your program is using 86400? ;-) | ||
TimToady | those should fail to fail | 21:17 | |
ruoso | I'm not arguing against TAI | ||
moritz_ | pmichaud: you should know how to write a regex that matches 86400 and doesn't contain it as a substring ;-) | ||
ruoso | I'm arguing to promote the use of ISO8601 timestamps instead of epoch times | ||
PerlJam | is that like an inverse quine? | ||
21:18
iblechbot joined
|
|||
moritz_ | PerlJam: something along these lines, yes ;-) | 21:18 | |
21:18
jaffa8 left
|
|||
TimToady | you're not arguing against epoch times, you're arguing against epoch durations | 21:18 | |
ruoso | specially because ISO8601 takes timezones into account | ||
I'm arguing against epoch math | 21:19 | ||
(for most of their uses) | |||
TimToady | sure, civil time needs to be calculated its own way, since += day isn't a constant | 21:20 | |
pmichaud | this reminds me very much of the problem of calculating "the length of a string" | ||
ruoso | pmichaud, precisely | ||
frettled | hehe | ||
ruoso | my point is exactly the same as why a string doesn't have a encoding | ||
TimToady | violent agreement | ||
frettled | My agreement is merely violet. | ||
ruoso | TimToady, yes and no... | 21:21 | |
I'm talking about user's education | |||
TimToady | nevertheless, if your string doesn't have a canonical encoding, you're hosed | ||
Juerd | moritz_: I've rebooted feather2 and it works again now. | ||
21:21
payload joined
|
|||
TimToady | TAI is our canonical encoding | 21:21 | |
ruoso | TimToady, but that's hidden inside the implementation for strings | ||
TimToady | Instants and Durations are TAI time | 21:22 | |
Juerd | moritz_: Rebooting again, after reconfiguring libc6 | ||
PerlJam | Juerd++ | ||
__ash__ | is there a list of valid --trace=[flags] anywhere? | ||
Juerd | moritz_: echo 'hwcap 0 nosegneg' > /etc/ld.so.conf.d/libc6-xen.conf && ldconfig | ||
pmichaud | __ash__: they're the parrot trace flags | ||
1 is "all opcodes" | |||
4 is "subroutine entry/exits" | |||
those are the only two I've ever found useful. | |||
__ash__ | oh, okay, got it | ||
Juerd | moritz_: Done, ready :) | ||
pmichaud | it's also often useful to do Q:PIR { trace 1 }; ...; Q:PIR { trace 0 }; | 21:23 | |
ruoso | TimToady, TAI doesn't store the timezone originally used | ||
21:23
dakkar left
|
|||
TimToady | then don't use it to store timezones | 21:24 | |
ruoso | but if the standard Instant is TAI, the default is to loose the tz info | 21:25 | |
(which is almost the same mistake Java API did with the Date type) | |||
(and is analogous to saying "every string is utf8") | 21:27 | ||
frettled | If you need to store a specific instant in relation to local time, it seems reasonable to me that you do not store an Instant, but instead store a different type. | ||
That is, we can provide another mechanism for storing that instant. That mechanism can be to store an ISO 8601 time _and_ an Instant. | 21:28 | ||
ruoso | frettled, ISO8601 *is* an Instant | ||
it's just a fully-qualified instant | 21:29 | ||
PerlJam | ruoso: But I wanted a femto-second sized instant! | 21:30 | |
21:30
jhorwitz left
|
|||
TimToady | PerlJam: sorry, your instant will be off by an hour because the timezone changed | 21:30 | |
frettled | ruoso: ISO 8601 is presentation, not representation | ||
ruoso | frettled, sure, but it has an associated data model | 21:31 | |
frettled | (strictly speaking, ISO 8601 is considered representation, but …) | ||
Anyway, the point is: store the time both as TAI and UTC + time zone spec, if knowing the specific point in time is important. | 21:32 | ||
21:33
lmc left
|
|||
ruoso | frettled, you don't need to store both at the same tiem | 21:33 | |
they are easily convertable | |||
TimToady | spacetime is a unity in relativity, but for most purposes we'd like to track them separately in Perl 6 | ||
frettled | ruoso: except that, as you pointed out, if you don't store time zone info, you lose that. | 21:34 | |
21:34
ejs joined
|
|||
PerlJam | If the user needs to know the provenance of the time information, that's one thing, but Perl often shouldn't except to make a convient representation to the user :) | 21:34 | |
ruoso | frettled, you could as well store TAI+TZ | ||
frettled | I must admit that I was a bit quick at answering, yes, TAI + TZ would probably do it. | ||
TimToady | crap | ||
frettled | TimToady: hmm? | 21:35 | |
TimToady | sorry, my finger slipped :) | ||
ruoso | loosing the TZ info in the default Instant type seems like a mistake to me | ||
TimToady | it's not | ||
ruoso | a mistake Java API did | ||
21:36
_timbunce joined
|
|||
frettled | ruoso: it's only a mistake if you care about TZ info when you want to store a point in time. | 21:36 | |
21:36
xomas_ joined
|
|||
TimToady | the mistake is to assume Instant has a location in the first place | 21:36 | |
ruoso | which is true in so many cases for it to be ignored | ||
frettled | ruoso: from my point of view, this is a case for subclassing. | ||
or a role | |||
Let's call that a «localized instant». | 21:37 | ||
TimToady | call it a spacetime | ||
ruoso | TimToady, an Instant carries more semantics than the number of seconds since something happened | ||
frettled | I know that this might be important to people. | ||
PerlJam | frettled: sounds like "a local representation of this TAI time" to me | ||
ruoso | PerlJam, it's not | ||
frettled | no? | 21:38 | |
pmichaud | in the U.S., 5:30 CDT and 6:30 EDT are the "same instant" (modulo various civil-time distortions) | ||
TimToady | call it a stardate :) | ||
frettled | heh | ||
21:38
_timbunce is now known as tb841
|
|||
pmichaud | it seems weird that an identical instant would have multiple representations. | 21:38 | |
21:38
tb841 is now known as tim
|
|||
TimToady | but basic time is a line, darnit | 21:38 | |
ruoso | pmichaud, but for several semantic concerns the same atomic instant in Japan is not the same as in the US | ||
21:39
tim is now known as _tim_
|
|||
pmichaud | but it is. | 21:39 | |
PerlJam | TimToady: if perl is to be a 100-year (or more!) language, ten we might have to rethink this time stuff at some point ;) | ||
21:39
_tim_ is now known as _tim__
|
|||
TimToady | at some instant, you mean | 21:39 | |
frettled | Stardate 2009.251, Ensign's log … | ||
TimToady | we could just redefine 100 years | ||
ruoso | pmichaud, for a *lot* of cases, the timezone implies a different *date* | ||
PerlJam | at some chronomic resonance. | ||
ruoso really needs to go, or else his car will get locked into the park... | 21:41 | ||
ruoso later & | |||
21:41
ruoso left
|
|||
frettled | Anyway, I think it would be reasonable to provide a basic type for just TAI, and one that allows you to store some localization (spacetime? perhaps) data in addition to that. | 21:42 | |
TimToady | that seems like a reasonable decomposition to me; I don't know why ruoso wants to mix them up | ||
for most purposes we can neglect relativity | 21:43 | ||
frettled | Yep. | 21:44 | |
And if we should need to support relativity, I think adding a library or whatchamacallit would be fine -- when we need to do so. | |||
TimToady | gives localtime a new meaning | 21:45 | |
bbl & | 21:46 | ||
PerlJam | It's good to have physicists in the family in any case ;) | ||
frettled | :D | ||
I'll take masak's hint and head for home & bed now, good night! | |||
PerlJam | g'night frettled | ||
21:47
snearch joined
|
|||
PerlJam wanders off too | 21:48 | ||
PerlJam & | |||
21:50
mberends left
21:52
tak11 joined
21:54
timbunce left
21:56
snearch left
22:00
patspam left
22:11
cmv left
22:13
cmv joined
22:14
__ash__ left
22:15
frew_ left,
frew_ joined,
sharada left,
ejs left
22:18
__ash__ joined,
mrsaturn joined
|
|||
mrsaturn | rakudo: "hello, everyone".say; | 22:18 | |
p6eval | rakudo 446d49: OUTPUT«hello, everyone» | 22:19 | |
22:19
KyleHa left
22:21
sm` left
22:22
sm` joined
|
|||
mrsaturn | I like @array.any more than any(@array) | 22:23 | |
22:28
hercynium left
22:29
cognominal joined
22:30
athaba left
22:31
zamolxes joined,
iblechbot left
|
|||
TimToady | mrsaturn: it's likelier to be efficient too, my gut tells me | 22:45 | |
22:45
alester left
|
|||
TimToady | but the other reads better in English | 22:45 | |
22:45
_tim__ left
|
|||
mrsaturn | I still like @array.any. But I guess any(@array) does make slightly more sense | 22:46 | |
22:47
nbrown left
22:48
Limbic_Region joined
|
|||
mrsaturn | is the p6eval bot written in perl? | 22:49 | |
22:51
ruoso joined
23:02
Limbic_Region left
23:04
patspam joined
23:10
__ash__ left
23:15
pmurias left
23:16
freenose joined
23:19
sm` left
23:22
sm` joined,
hercynium joined
23:23
_tim__ joined
|
|||
ruoso | TimToady, I'm arguing about the core type used to represent time instants (assuming we have just one) and the ramifications of that choice... | 23:26 | |
TimToady | Instant is a Real | 23:27 | |
build whatever you like on top of that | |||
ruoso | In that case, can we consider a more information system's friendly type (i.e.: a port of Perl 5 DateTime module) to be core? | 23:30 | |
TimToady | define "core" | ||
23:30
nErVe joined
|
|||
ruoso | as in "built-in" | 23:30 | |
TimToady | we will not make it difficult to deal with civil time :) | 23:31 | |
ruoso | is that a yes? | ||
TimToady | and as far as I'm concerned, Temporal::DateTime is about 2x too long a name | ||
DateTimes are a form of spacetime, and depend on location as well as instant | 23:32 | ||
ruoso | I think p5 DateTime is a very well succeeded implementation to be ported as-is | ||
TimToady | note that location of many computers is changing from instant to instant though :) | ||
I suspect it assumes a fixed-location computer... | |||
ruoso | DateTime->now(time_zone => 'local') # solves that | 23:33 | |
TimToady | you mean it reads it from the GPS? :) | ||
ruoso | well, some computers do update the tz info from gps data | ||
Juerd | Is feather user shay on IRC? | ||
ruoso | openmoko phones are one example | ||
TimToady | Juerd: not that I know of | ||
ruoso | (although it does it using GSM, not GPS) | 23:34 | |
Juerd will email him/her then | |||
TimToady | I expect that GPSs will eventually be so cheap they'll just be built into to almost all devices | ||
Juerd | I think setting up one ssh connection per second is somewhat superfluous :) | ||
TimToady | maybe shay is trying to read the atomic time from somewhere :) | 23:35 | |
ruoso | anyway, I think it should be ok if we have a Instant and a DateTime built-in types | ||
where one is TAI, and the other is TZ-aware | |||
TimToady | I've been wanting to go in for some time and s:g /Temporal::/ :) | ||
er s:2nd[/] = '//' | 23:36 | ||
23:36
drbean joined
|
|||
TimToady | DateTime certainly needs to be location aware, since civil time is location aware | 23:36 | |
Juerd | " :)\ner s:2nd["syntax error...? :) | ||
ruoso | TimToady, (s:g/Temporal::/)++ | 23:37 | |
but I'd still rework its API looking at p5 DateTime, which is currently the de-facto standard type | 23:38 | ||
TimToady | well, anything related to "civic" will need continual redesign as the goverments redefine civilization | 23:39 | |
I'm assuming the defintion of TAI won't drastically change by government whim :) | |||
ruoso | physicists whim is much more stable after all | 23:40 | |
;) | |||
TimToady | we might, possibly, prefer someday to go with "local atomic time", after every device gets an atomic precision clock | ||
then we'll have to deal with relativity and clock skew :) | 23:41 | ||
23:41
nihiliad left
|
|||
TimToady | but I think we can stick with consensus atomic time for a few decades yet | 23:41 | |
ruoso | although the concern about during-process ntp adjustments is probably valid | 23:42 | |
23:42
nErVe left
|
|||
TimToady | it would be nice to be able to tap into ntp's decisions to estimate the CPU clock's inaccuracy | 23:42 | |
Tene | TimToady: tell ntp to use a drift file | 23:43 | |
phenny | Tene: 21:00Z <masak> tell Tene that I just pushed a failing test to the Web.pm repo. due to general tiredness, I'll have to continue this foray tomorrow. if you can do something with what's there already, great. if not, I'll see to it tomorrow. | ||
TimToady | and I'm sure ntp has a very good notion in its configuration as to what time model the OS/cpu uses | ||
whether adjtime is supported, and such | |||
23:45
nErVe joined
|
|||
TimToady | it might be useful to have a daemon with a hi-res clock running across leapsecond boundaries to see how the system is responding, assuming the hi-res clock is in fixed ticks, and doesn't break at the discontinuity | 23:46 | |
ruoso .oO( how does one set a default value for a named parameter in a signature? | 23:48 | ||
TimToady | if no hi-res clock is available, and "cpu" time jumps by 2 seconds sometime due to ntp adjustement, then I suppose that second will just be off by up to a second | ||
:name($var) = "default" | |||
or :$var = "default" | |||
by "named" do you mean "named-only"? | |||
since all parameters are potentially named if they have an identifier | 23:49 | ||
ruoso | named-only, yeah | ||
23:50
M_o_C left
|
|||
TimToady | basically, we have a set of linear mappings between CPU time and TAI, and some discontinuities that can (hopefully) be discovered to the nearest practical instant | 23:52 | |
maybe a drift file already contains the necessary info # not an NTP geek | 23:54 | ||
but there are also some events at the discontinuities that may need to be handled somehow | |||
23:55
Hale-Bopp left
|
|||
ruoso | Rat is narrower than Num, right? | 23:56 | |
so it should probably be better to use Num in the API definition.... | |||
23:57
meppl left
|
|||
ruoso considering keeping Date and Time inner types inside the DateTime package | 23:59 | ||
but maybe not |