»ö« | perl6.org/ | nopaste: paste.lisp.org/new/perl6 | evalbot usage: 'perl6: say 3;' or rakudo: / pugs: / std: , or /msg p6eval perl6: ... | irclog: irc.pugscode.org/ | UTF-8 is our friend! Set by wolfe.freenode.net on 30 October 2009. |
|||
00:02
lestrrat is now known as lest_away
00:14
Exodist left
|
|||
cognominal | I can't find where Parrot_get_ctx_HLL_type is defined :( | 00:15 | |
[particle] | make tags-vi; vim -t Parrot_get_ctx_HLL_type | 00:16 | |
00:20
r0bby joined
|
|||
masak | is $.attr a variable or a method call? | 00:20 | |
00:23
Exodist joined
|
|||
cognominal | [particle], thx. Was using ETAGS and emacs. Don't know what I did wrong. probably bed time. | 00:26 | |
00:26
colomon_ left
00:27
stephenlb left
|
|||
cognominal | ha, was searching using wrong table :( | 00:27 | |
00:28
pointme joined
00:30
colomon_ joined
00:34
colomon joined,
colomon_ left
|
|||
carlin | (re: kicking lambdabot, from the backlog) once rakudo can handle large text-files without segfaulting mubot could replace it, at the moment it segfaults after ~6 hours | 00:35 | |
masak | carlin++ # for mubot | 00:37 | |
diakopter: ping | 00:38 | ||
00:39
lest_away is now known as lestrrat,
cdarroch left
|
|||
sjohnson | calbot | 00:42 | |
carl* | |||
masak | for some reason, I prefer the name 'masakbot'. | 00:43 | |
I don't know why; maybe because I associate my nick more with IRC. | |||
sjohnson: oh, but maybe you meant carlin :) | |||
frettled | carlin ain't a bot | 00:50 | |
carlin++ - go you! | |||
00:51
quantumEd joined
|
|||
frettled | masak: I also like masakbot better, that fits the IRC persona. Besides, carlbot sounds like some kind of badguy from a cheesy movie. :) | 00:51 | |
diakopter | masak: .WHAT | ||
masak | diakopter: my tree spider works now. :) | 00:52 | |
gist.github.com/247924 | |||
diakopter | ok, I'll make it into a p6eval target | ||
:) | |||
masak | er. | ||
no, it's just a prototype :) | |||
it has the regex and the input hard-coded... | 00:53 | ||
diakopter | yeah | 00:54 | |
00:54
colomon left
|
|||
masak | diakopter: during the past few hours, I realized that backtracking needs to be trated as a different sort of failure than simply not matching. quantifiers, for example, behave differently when their cargo fails than when they get a 'backtrack' instruction. | 00:54 | |
diakopter | does it work with multiple layers of backtracking? | ||
masak | diakopter: yes, that's the whole point of the example. | ||
diakopter | well | ||
masak | diakopter: well, vertical layers. | ||
diakopter: it doesn't do horizontal layers. but I can handle that in other ways. | 00:55 | ||
diakopter: another thing which I realized, and haven't quite accepted yet is that each backtracking node needs to register its savepoint *as far up in the tree as possible*, often in another backtracking-capable node. | 00:56 | ||
frettled: I've always wanted to be some kind of bad guy from a cheesy movie :) | 00:57 | ||
frettled | masak: like the «Russian hacker» in Goldeneye? | ||
diakopter | "I am eenveencible!" | 00:58 | |
masak | frettled: ergh, I hate that guy! | ||
frettled: he's so full of hubris that the very movie PHYSICS conspire to kill him. | |||
but I do recognize the feeling of flow in front of the computer. :P | 00:59 | ||
diakopter | "I am eenveencible!" | 01:00 | |
*BOOM* | |||
frettled | masak: With the right kind of lighting (and perhaps some lightning), I'm sure we can portray you as a reaaaaly bad guy. | ||
masak smiles with one side of the mouth | |||
frettled | yes! yes! | ||
masak pets his long-haired white cat in his lap | 01:01 | ||
masak cuts open a cuban cigar with a small pair of scissors manufactured for just that purpose | 01:02 | ||
diakopter | masak: why do you need the Group.new | ||
in that test pattern | |||
masak | diakopter: I don't. it's useless. | ||
diakopter: but in my earlier attempts to understand backtracking, a simple Group could throw me off. | 01:03 | ||
frettled | diakopter: It's just how his evil genius works. | ||
01:03
supernovus joined
01:04
romanhunt joined,
jeremiah left
|
|||
sjohnson | sbotson | 01:04 | |
masak | diakopter: the Group is there for added realism, I guess. PGE doesn't optimize them away -- I checked a few days ago. | 01:05 | |
though I think it could. | |||
01:07
f00li5h[HireMe] left
|
|||
diakopter | masak: my $regexp = RegexContainer.new( Concat.new( Quant.new( 0, Inf, GREEDY, Quant.new( 1, Inf, FRUGAL, Literal.new('a') ) ), Literal.new('a'), Literal.new('b') ) ); # input: aaaaaaaaaaaaaaa | 01:08 | |
masak | diakopter: yup, it doesn't handle two horizontal backtrack handlers. | 01:09 | |
but adding that is trivial. | |||
diakopter | I showed my regex engine to guy with an ivy league compsci phd, and he gave me that pattern and asked me how long it took to fail | ||
masak | instead of allowing one savepoint per node in the tree, allow a stack of them. | 01:10 | |
diakopter | but each could have a different start index | ||
masak | oh wait. these are nested. nevermind. | ||
diakopter: yes, it would take quite some time to fail. | 01:11 | ||
diakopter | how long :) | ||
masak | there's only one way to find out. :) | ||
masak finds out | |||
diakopter | try it with just aaaa | 01:12 | |
masak | ok :) | ||
01:13
xenoterracide left
|
|||
diakopter | equiv is /(?:a+?)*ab/ | 01:13 | |
masak | diakopter: can I merge the two last literals into one literal 'ab'? | 01:14 | |
that's how GGE would do it. | |||
diakopter | sure | 01:15 | |
masak removes the built-in timeout | |||
it runs, but it hit that. | |||
diakopter | time v8 -e '/(?:a+?)*ab/.test("aaaaaaaaaaaaaaaaaaaaaaaaaaaa")' # real 0m1.963s | ||
01:15
nihiliad joined
|
|||
masak | :) | 01:16 | |
that is impressive. | |||
what kind of optimizations are involved? | |||
diakopter | it's not impressive | 01:17 | |
it's quadratic | |||
after 20 chars or so it's noticeable | |||
masak | I see. | ||
01:17
colomon_ joined
|
|||
masak | a tenth of a second seemed little for such a long string. | 01:17 | |
diakopter | time perl -e 'print "a" x 500 =~ /(?:a+?)*ab/' # real 0m0.012s | 01:18 | |
masak | whoa. | 01:19 | |
diakopter | time perl -e 'print (("a" x 50000000) =~ /(?:a+?)*ab/)' # real 0m0.319s | 01:20 | |
oh wait | |||
diakopter ID10T | 01:21 | ||
wait, no | |||
it's fine | |||
01:21
ihrd left
01:22
supernovus left
|
|||
masak | diakopter: I am saddened to report that my tree spider doesn't seem to want to stop matching your regex. :/ | 01:22 | |
must be a bug of some sort. | |||
diakopter | even with input "a"? | ||
masak tries | 01:23 | ||
yes, it ends up in some tight loop where it keeps backtracking to the same quantifier. | 01:24 | ||
I'll see if I can understand what's going on. | |||
diakopter++ # shaking out bugs | |||
diakopter is glad to be in the mentor role for once | |||
aka taskmaster | 01:25 | ||
masak | in order to prove that the tree spider is slow, we must first make it terminate. :) | ||
diakopter | writing a parser/lexer engine is a learning process | ||
masak | undoubtedly. | ||
diakopter | hint: | 01:26 | |
01:27
c1sung joined
|
|||
diakopter | if you continue down the fully-backtracking combinator route, you'll need to "instantiate" (or "clone") each node from the original, and having a "working" tree [logically] distinct from the original pattern tree | 01:27 | |
masak | diakopter: because of reentrancy? | 01:28 | |
diakopter | otherwise it'll be very tricky to manage all the savepoints. | ||
but you're on the right track with the savepoints | 01:29 | ||
masak | I like the game analogy. :) | ||
diakopter | just instantiate a savepoint for every node before actually visiting it.... | ||
masak | every node? I think you just lost me... | 01:30 | |
diakopter | and prototype it in a language with a faster feedback loop :P | ||
(half-kidding) | |||
masak | heh. :) | ||
I'm used to Rakudo's feedback loop. | 01:31 | ||
hah! found the bug! | |||
a failing node which activates a stored savepoint should unregister that savepoint. | |||
colomon_ | rakudo: say (1, 2, 3)>>++ | ||
masak | it's up to the backtracking node to subsequently re-register it. | ||
p6eval | rakudo 7ef386: Confused at line 2, near ">>++"in Main (file <unknown>, line <unknown>) | ||
diakopter | does it fail on "aaa"? | ||
masak | I just tried 'aaaa'. | 01:32 | |
let me time it. | |||
diakopter | pugs: say (1, 2, 3)>>++ | ||
p6eval | pugs: <Error><Error><Error> | ||
diakopter | elf: say (1, 2, 3)>>++ | ||
p6eval | elf 29254: Useless use of a constant in void context at (eval 122) line 3.Can't modify constant item in postincrement (++) at (eval 122) line 3, near ")++"Too many arguments for postincrement (++) at (eval 122) line 3, near ")++" at ./elf_h line 5881 | ||
masak | diakopter: real 10.353s :) | ||
diakopter: some of that is spent compiling the script. | |||
diakopter | O_O | ||
:) mine wasn't much (any) better on small inputs, to start... | 01:33 | ||
colomon_ | std: say (1, 2, 3)>>++ | ||
p6eval | std 29254: ok 00:01 106m | ||
diakopter | std: say (1, 2, 3)>>>>>>>>>>>>>>>>>>>>>>>>>>++ | ||
colomon_ | rakudo: say (1, 2, 3)»++ | ||
p6eval | std 29254: ok 00:01 104m | ||
rakudo 7ef386: Confused at line 2, near "\x{bb}++"in Main (file <unknown>, line <unknown>) | |||
masak | diakopter: I'm not out to be fast. :) | ||
diakopter | "you will be. you. will. be." | 01:34 | |
masak | I've just become entranced with the idea of making a Perl 6 parser in Perl 6. | 01:35 | |
colomon_ | yes another hole in rakudo's hyperoperators. sigh. | ||
diakopter | masak: well, frankly nqp-rx can almost handle a version of what you have there... | ||
masak | diakopter: oh, I'm sure. | 01:36 | |
diakopter: do you know if nqp-rx uses continuations? | |||
diakopter | for PAST::Regex? I think so | ||
colomon_ | rakudo: say (1, 2, 3)>>.sin | ||
p6eval | rakudo 7ef386: 0.8414709848078970.9092974268256820.141120008059867 | ||
diakopter | pmichaud: would know :D | ||
masak | my guess is that it does, i.e. it's Parrot-specific. | ||
GGE won't be. :) | 01:37 | ||
diakopter | orly | ||
cognominal | CGE? | ||
diakopter | what other backend....? | ||
masak | it might not ever be useful, but it'll be a nice use case for Perl 6. | ||
diakopter: if it's written in portable Perl 6, any backend. | |||
colomon_: no, GGE. | |||
diakopter | yeah it'd be a good benchmark framework | ||
masak | exactly. | ||
01:38
xenoterracide joined
|
|||
diakopter | heh | 01:38 | |
masak | colomon_: sorry, that was for cognominal :/ | ||
colomon_ | masak: I gathered as much. :) | ||
01:38
xenoterracide left
01:39
mikehh left
01:40
xenoterracide joined
|
|||
diakopter | masak: yeah, but I'm making a point about Perl 6 backends | 01:41 | |
to myself, perhaps | |||
masak | diakopter: what point? | 01:42 | |
01:42
mikehh joined
01:43
meppl left
01:46
xenoterracide_ joined
01:47
slavik joined
|
|||
carlin | gist.github.com/248768 # If anyone has any spare tuits and could figure out why that output of that is garbled (note the "fef"s in the output), feel free :-) | 01:48 | |
carlin has to go to work | |||
masak | huh. 'fef'. | 01:50 | |
diakopter | about the lack of backends | 01:51 | |
01:51
mikehh left
|
|||
masak | oh, agree. Rakudo is the only backend where it'll even run. however, not due to GGE not being portable, but due to the state of the other backends out there. | 01:53 | |
carlin: I can reproduce the 'fef's here. I have no idea what causes them. | 01:54 | ||
diakopter | carlin: en.wikipedia.org/wiki/Chunked_transfer_encoding | 01:57 | |
01:59
xenoterracide left
02:00
dalek left,
dalek joined,
rgrau left
02:01
mikehh joined
|
|||
diakopter | chunked chunked chunked | 02:02 | |
masak | TimToady: I just realized that, by S02, $.foo will interpolate in qq strings and call the method .foo, regardless of whether there's an attribute $!foo or not in the class. perhaps that doesn't matter much, but it feels kinda strange since all other method calls must have '()' after them. :) | 02:04 | |
huf | what can i pass to perl6 --target= other than pir? | 02:05 | |
masak | huf: parse, past, post... I think. | ||
masak checks | |||
02:05
rgrau joined
02:06
agentzh joined
|
|||
masak | huf: yup, those are the ones, it seems. | 02:09 | |
diakopter | WOW use.perl.org/~schwern/journal/39972 | 02:10 | |
AWESOME. (yes, I think that's worth yelling about) | 02:11 | ||
02:12
mikehh left
|
|||
masak | it sounds pretty awesome, yes. | 02:13 | |
02:13
mikehh joined
02:19
JimmyZ joined
02:20
mikehh left
02:25
orafu left,
orafu joined
02:26
romanhunt left
02:27
mikehh joined
|
|||
huf | what's the difference between @a=1,2; and $a=1,2; ? aside from @a interpolating in lists and $a not. | 02:40 | |
02:40
jaldhar left
02:41
ShaneC left
|
|||
carlin | diakopter: that explains a lot | 02:45 | |
what a hassle | |||
02:46
mikehh left
|
|||
masak | huf: well, both $a and @a will contain an Array after the assignment, so I'm tempted to answer 'not much'. | 02:46 | |
huf: Perl 6 essentially offers you the "$ can contain anything" approach of PHP, but unlike PHP, there are also @ and % and & for when you would like to be more specific. | 02:47 | ||
02:47
mikehh joined
02:48
leedo left
|
|||
carlin | either there's a i-dont-understand-chunked-you-insensitive-clod header or I'll be busy this weekend :/ | 02:48 | |
huf | masak: hmm, so converting between one kind and the other is like \@a and $a[] ? | 02:49 | |
02:49
envi^office joined
|
|||
huf | what's the equivalent for hashes? | 02:49 | |
masak | huf: that's the kind of question I'd never dare answer without running some code to check. :) | ||
huf | ;)) | ||
masak | huf: the equivalent of what? | ||
huf | of that for arrays. converting an interpolating array into a non-interpolating one and vice versa | 02:50 | |
masak | huf: no, I think 'converting' gives the wrong impression. both $a and @a contain the same value, an Array. | ||
02:50
justatheory left
|
|||
masak | huf: so there's no conversion, just $a = @a, and... the other direction I'm not certain about. | 02:50 | |
rakudo: my $a = 1, 2, 3; my @a = $a; say @a.perl | 02:51 | ||
02:51
mikehh left
|
|||
p6eval | rakudo 7ef386: [[1, 2, 3]] | 02:51 | |
masak | as I suspected, that gives you an extra layer. | ||
I usually unpack such a layer with .list | |||
huf | it's a sharp array | ||
masak | rakudo: my $a = 1, 2, 3; my @a = $a.list; say @a.perl | ||
p6eval | rakudo 7ef386: [1, 2, 3] | 02:52 | |
huf | ha! | ||
masak | guess | works as well. | ||
rakudo: my $a = 1, 2, 3; my @a = |$a; say @a.perl | |||
p6eval | rakudo 7ef386: too many positional arguments: 4 passed, 2 expectedin Main (file <unknown>, line <unknown>) | ||
masak | uh. | ||
02:52
mikehh joined
|
|||
masak | did I just confuse the assignment builtin? | 02:53 | |
JimmyZ | good morning, #perl6 | 03:00 | |
rakudo: my @a = 1, 2, 3; my $a = |@a; say $a.perl | |||
p6eval | rakudo 7ef386: too many positional arguments: 4 passed, 2 expectedin Main (file <unknown>, line <unknown>) | 03:01 | |
masak | JimmyZ: 早啊 | ||
JimmyZ | rakudo: my @a = 1, 2, 3; my $a = |@a; say $a>>.perl | ||
p6eval | rakudo 7ef386: too many positional arguments: 4 passed, 2 expectedin Main (file <unknown>, line <unknown>) | ||
masak | JimmyZ: no, the error happens on the second statement. | ||
JimmyZ | I don't know how to use it. | 03:06 | |
03:06
mikehh left
|
|||
JimmyZ | rakudo: my $a = 1, 2, 3; |$a.say; | 03:07 | |
03:07
mikehh joined
|
|||
p6eval | rakudo 7ef386: 123 | 03:07 | |
Wolfman2000 | rakudo: my $a = 1, 2, 3; |$a.join(" ").say; | ||
p6eval | rakudo 7ef386: 1 2 3 | ||
JimmyZ | hmm, that's be used to flatten args. | ||
masak | rakudo: my @a = 1, 2, 3; my $a = |@a | ||
p6eval | rakudo 7ef386: too many positional arguments: 4 passed, 2 expectedin Main (file <unknown>, line <unknown>) | ||
JimmyZ | s/be// | ||
03:07
pointme left
|
|||
masak | JimmyZ: yes, exactly. but assignment is not a call. | 03:08 | |
JimmyZ | yes | ||
masak | so those are not args. | ||
JimmyZ | rakudo: my $a = 1, 2, 3; my @ = (|$a) ; | ||
p6eval | rakudo 7ef386: Malformed declaration at line 2, near "@ = (|$a) "in Main (file <unknown>, line <unknown>) | ||
JimmyZ | rakudo: my $a = 1, 2, 3; my @b = (|$a) ; | ||
p6eval | rakudo 7ef386: ( no output ) | ||
quantumEd | what's (|$a)? | ||
JimmyZ | rakudo: my $a = 1, 2, 3; my @b = (|$a) ; @b.perl.say; | 03:09 | |
p6eval | rakudo 7ef386: [[1, 2, 3]] | ||
quantumEd | rakudo: say |1,2,3 | ||
p6eval | rakudo 7ef386: flattened parameters must be a hash or arrayin Main (file <unknown>, line <unknown>) | ||
JimmyZ | rakudo: my $a = 1, 2, 3; my @b = |$a ; @b.perl.say; | ||
p6eval | rakudo 7ef386: too many positional arguments: 4 passed, 2 expectedin Main (file <unknown>, line <unknown>) | ||
quantumEd | flatten | ||
JimmyZ | rakudo: my $a = 1, 2, 3; my @b = (|$a) ; @b>>.perl.say; | ||
p6eval | rakudo 7ef386: [1, 2, 3] | ||
masak | I'll just pre-emptively submit it as a bug, and we'll see what happens. | ||
masak submits | 03:10 | ||
JimmyZ | it'd be a bug. | ||
masak | at the very least, it's less than... clear what happens. :) | ||
JimmyZ | ng: my $a = 1, 2, 3; my @b = |$a ; @b.perl.say; | ||
p6eval | ng 545373: Confused at line 1, near "my @b = |$"current instr.: 'perl6;HLL;Grammar;panic' pc 519 (src/stage0/HLL-s0.pir:336) | ||
JimmyZ | masak: there's another bug in master, but ng hadn't. | 03:11 | |
masak | JimmyZ: which one are you thinking of? | ||
JimmyZ | rakudo: say ~Str.^methods; | ||
p6eval | rakudo 7ef386: encode succ WHICH ACCEPTS perl sprintf Scalar Complex Str pred map cis comb log atan min acos max bytes chop sin rindex tanh Int values asinh acosech abs end ceiling p5chomp keys kv floor asech ord capitalize pick round evalfile int split match acosh words p5chop lc join sinh cotan | ||
..acotan… | |||
JimmyZ | rakudo: ~Str.^methods.say; | ||
p6eval | rakudo 7ef386: | ||
..ComplexStrpredencodesuccperlACCEPTSWHICHsprintfScalarfmtbytespickevalfileacosecjoinsinhasinhcosechtrimasecchracotanhfloorsechasechrandtruncateroundsortsqrtrindexasinsplitcoshexpmatchacoshgrepwordsvaluescancotanatan2lcfirstsrandmappolarciskvsamecaselogmincapitalizemaxtransfirstsinflipdoesI… | |||
JimmyZ | ng: ~Str.^methods.say; | 03:12 | |
p6eval | ng 545373: WHICH pred perl ACCEPTS succ sec map cis comb log atan acos bytes chop sin tanh asinh acosech abs ceiling floor asech ord round split match acosh words p5chop lc join sinh cotan acotan atan2 trim asec reverse isa cotanh ucfirst tan sech cos rand fmt sqrt asin cosh chomp index uc chr | ||
..acota… | |||
JimmyZ | ng: say ~Str.^methods; | ||
p6eval | ng 545373: WHICH pred perl ACCEPTS succ asinh acosech abs ceiling floor asech ord round split match acosh words p5chop lc join sinh cotan atan2 acotan trim reverse asec cotanh isa ucfirst tan sech cos rand fmt sqrt asin cosh chomp uc index chr acotanh substr flip does atanh exp cosec acosec chars | ||
..ca… | |||
masak | heh :) | ||
JimmyZ | I don't know which one is a bug, but I guest the second. | 03:13 | |
masak | actually, I'm with rakudo master on this one. | ||
~Str.^methods.say should mean ~(Str.^methods.say) | |||
so it prints the list without first stringifying it; hence the lack of spaces. | |||
JimmyZ | so there are all bugs? | 03:14 | |
masak | .say returns 1, which is stringified by '~' | ||
JimmyZ: no, rakudo master has it right. | |||
JimmyZ | ng: ~(Str.^methods.say); | ||
p6eval | ng 545373: succ ACCEPTS WHICH pred perl cotan atan2 lcfirst uc sec map cis log substr sin acosec join sinh cosech acosech abs chomp index ceiling trim asec sech rand ord sqrt asin atanh cosec cosh chars roots reverse isa ucfirst tan cos fmt bytes flip does lc p5chop asinh acotan cotanh chr acotanh | ||
..c… | |||
masak | that's also wrong, yes. | ||
JimmyZ | oh | ||
masak | but I don't submit ng bugs. :) | ||
JimmyZ | rakudo: ~(Str.^methods.say); | ||
p6eval | rakudo 7ef386: | ||
..WHICHperlACCEPTSsprintfScalarComplexStrpredencodesuccatanordacoschoptanhintatanhcoseccharsrootsucreversekeysisaucfirsttansubstrcosfmtbytespickevalfileacosecjoinsinhasinhcosechtrimasecchracotanhfloorsechasechrandtruncatesortroundrindexsqrtasinsplitcoshmatchexpacoshgrepwordsvaluescancotanat… | |||
JimmyZ | all are bugs. | 03:15 | |
rakudo: Str.^methods.say.perl.say; | |||
p6eval | rakudo 7ef386: | ||
..encodesuccWHICHACCEPTSperlsprintfScalarComplexStrpredmap:dcis:e:flogsechminrandmaxtruncatebytessortsinsqrtasinIntcoshgrepasinhacosechabsenducceilingp5chompsamecasefloorsubstrasechordroundflipdoesintsplitmatchacoshacosecwordscosechcotanatan2srandreverseisapolarucfirstcombtanatancosacosfmtt… | |||
JimmyZ | rakudo: ~(Str.^methods.say.perl).say; | 03:16 | |
p6eval | rakudo 7ef386: | ||
..predencodesuccACCEPTSperlWHICHsprintfScalarComplexStrtrimaseccotanhmap:dcis:e:flogsechminrandmaxtruncatebytessortsinsqrtasinIntcoshgrepasinhacosechabsenducceilingp5chompsamecasefloorsubstrasechordroundflipintdoessplitmatchacoshacosecwordscosechcotanatan2srandreverseisapolarucfirstcombtana… | |||
JimmyZ | rakudo: (~(Str.^methods.say.perl)).say; | ||
p6eval | rakudo 7ef386: | ||
..sprintfScalarComplexStrpredsuccencodeperlACCEPTSWHICHacotanlcfirstrootsreducetrimaseccotanhmap:dcis:e:flogsechminrandmaxtruncatebytessortsinsqrtasinIntcoshgrepasinhacosechabsenducceilingp5chompsamecasefloorsubstrasechordroundflipintdoessplitmatchacoshacosecwordscosechcotanatan2srandrevers… | |||
03:19
agentzh left
|
|||
diakopter | yes, it's that say () parsing issue | 03:21 | |
03:29
pointme joined
|
|||
carlin | blogspot is weird, it doesn't fully respect the Accept-Encoding header and it won't encode as gzip unless I pretend to be firefox (not that gzip would help ...) | 03:30 | |
03:40
agentzh joined
03:50
xenoterracide_ left
03:55
perlygatekeeper1 joined,
perlygatekeeper left
|
|||
s1n | aww man, that was a rough semester | 03:58 | |
what's been happening in the world of perl6 in the last few months? | |||
pmichaud: will you have time this weekend? i really want to set up dallas.p6m.org | 03:59 | ||
04:00
jaldhar joined
|
|||
masak | s1n: hello. welcome back. | 04:02 | |
s1n: I think the two most exciting things going on right now are the 'ng' branch in rakudo, and the Perl 6 Advent Calendar. | 04:03 | ||
Wolfman2000 | ...so Perl 6 DOES have a testing module that doesn't require Perl 5 | 04:06 | |
s1n | masak: got a link to the advent calendar? | ||
Wolfman2000 | s1n: perl6advent.wordpress.com | ||
masak | Wolfman2000++ # faster | ||
Wolfman2000: oh, it does. it's had that for years. :) | |||
s1n | okay, interesting | 04:08 | |
it feels weird, i haven't built rakudo since like september | 04:09 | ||
masak | Camelia got a Christmas hat! cute! | 04:10 | |
whoever++ | |||
JimmyZ | rakudo: (~(Str.^methods.say.perl)).print; | ||
p6eval | rakudo 7ef386: | ||
..StrpredencodesuccperlWHICHACCEPTSsprintfScalarComplexreverseisaucfirstkvsamecasetancoscapitalizefmtbytesflipdoesp5choplcasinhacotanreducecotanhchracotanh:d:e:fcombfloorasechatanacosroundchoptanhsplitexpmatchacoshwordscancotanatan2lcfirstucsrandkeyspolarmapcislogsubstrminmaxpicktransevalfi… | |||
s1n | i guess it's time to update my git clone :/ | 04:14 | |
04:14
xenoterracide joined
04:16
quantumEd left
04:20
am0c joined
04:26
mberends joined
|
|||
masak | mberends: morning. :) | 04:30 | |
mberends | masak: a good $early-morning from me to a good $late-night to you | 04:31 | |
masak | there's some suggestive symmetry to it all. | 04:32 | |
04:32
zaphar_ps left
|
|||
mberends enjoyed the backlogging | 04:32 | ||
04:32
zaphar_ps joined
|
|||
masak | mberends: did you see my spider? :) | 04:32 | |
mberends | masak: yes! it looks like baby steps, but full of potential | 04:33 | |
masak | mberends: I think it's the third or fourth time I rethink the matching engine in GGE. | ||
mberends | someone needs to teach you to program in C though. then we'd have something really useful ;) | 04:34 | |
to remove the 'glacial' | |||
masak | mberends: actually, I've half a mind, once I've finished GGE to a reasonable extent, to port it to something faster. | ||
mberends | so do i | 04:35 | |
masak | C is clearly a candidate. | ||
Ruby is another; someone asked on StackExchange about Perl 6 regexes for Ruby. would be fun to provide it for them. | |||
04:35
justatheory joined
|
|||
mberends | yesterday I claimed the p6re namespace with something similar in mind | 04:36 | |
masak | if you want a co-conspirator, you know where to find me. :) | 04:37 | |
mberends | if you do it in C it would help not only Ruby but the whole world | 04:38 | |
masak | o.O | ||
mberends | masak: deal, soon | ||
masak | mberends: though from the helping-the-world perspective, I fear installed-modules is more urgent. | 04:39 | |
mberends | it's been interesting to see the interest in installed-modules, without any effort being invested in it. apparently we both have more interesting/important things to do, and nobody else is going near proto. | 04:40 | |
04:41
brrant joined
|
|||
masak | mberends: well, it's hard work, and I'd gladly do it. but I think I need more of your presence to attempt it. need someone to discuss pros and cons with. | 04:42 | |
mberends | either its roadmap is wrong, or it's just a long SMOP | ||
masak | it *is* a long SMOP, but inevitably questions turn up along the way. | 04:43 | |
I don't feel familiar with the internals anymore, for example. | |||
mberends | me neither, but it will be 2010 before tuits become available | 04:44 | |
masak | ok. | ||
mberends | ELOWBUSNUMBER | ||
masak | I'll make an assessment really soon about whether it's worth putting effort into bringing installed-modules to its goal in time for the ng merge. | 04:45 | |
mberends: well, proto is my most famous mind child of them all. :) it's also the project that has gotten the most outside help, and the highest number of feature requests. | 04:47 | ||
in short, proto is one big unintended success story in the Perl 6 world. | |||
that's why, I guess, I agreed to extending its life by doing the installed-modules thing. even though that change seemingly makes the work to much for one single developer. | 04:48 | ||
Wolfman2000 | evening. sorry for lots of idling. almost done with my third final. Apparently I missed the memo that this one was changed from something else to something easier. :) | ||
masak | might I recommend this for light reading? projectfortress.sun.com/Projects/Co...lRecursion | 05:06 | |
05:15
pnate joined
|
|||
mberends | no | 05:24 | |
masak | in that case, I quickly retract my recommendation... :) | 05:25 | |
mberends | or recommend it for something else :) | ||
masak | actually, it was a general recommendation, for anyone who might fancy yet another morsel of musings by Mr Steele. | 05:26 | |
he usually has nice things to say, and I know that there are people on this channel who like to read such material. I haven't read it myself yet. | 05:27 | ||
Wolfman2000 | masak: Tuesday night EST, I will basically be free from college. What will you want me to do then? | 05:31 | |
masak | Wolfman2000: something that makes you happy. :) | 05:32 | |
Wolfman2000 | masak: I meant in terms of Perl 6 | ||
masak | me too. | ||
I don't have any specific task for you right now. | |||
but if you pick up a project that I've been involved in and toy with it, I'll be happy to guide you or answer questions or fix bugs or point to documentation or whatever. | 05:33 | ||
05:33
hercynium joined
|
|||
Wolfman2000 | ...it's been shown to me that Web.pm is usable. Squerl is usable as well, even if I don't know all of the functionality. | 05:33 | |
Login functionality is also usable. | 05:34 | ||
...what is the proper way of handling syntax highlighting using Perl 6 anyway? | |||
I think that's the one thing I'm still confused about? | |||
05:35
zloyrusskiy joined
|
|||
masak | Wolfman2000: I know of no way to handle syntaxhighlighting of Perl 6 in Perl 6. | 05:35 | |
Wolfman2000: therefore, by necessity, that task would have to be shelled out to something that can, for example STD.pm. | |||
Wolfman2000 | masak: As it's been...kind of shown, isn't STD.pm a Perl 5 module? | 05:36 | |
masak | the part that runs is, yes. | ||
TimToady | STD.pm is P6, but it's translated to P5 to run it | ||
Wolfman2000 | TimToady: how can we make P6 syntax highlight P6 then? | 05:37 | |
TimToady | implement P6 | ||
masak | \o/ | ||
Wolfman2000 | ...alright, I'm missing a step here. | ||
isn't rakudo already doing that? | |||
masak | sure, but not enough. | ||
TimToady | it's...trying... | ||
rakudo isn't close to running STD.pm properly; ng will have a better chance of it | 05:38 | ||
Wolfman2000 | ...then I'll stick to the Perl 5 written pastebin for Perl 6 then | ||
TimToady | for one, requires laziness to implement backtracking | ||
re Mu.defined, maybe the method can be defined in both Mu and in Any | 05:39 | ||
Wolfman2000 | ...basically, nothing is ever simple | 05:40 | |
TimToady | Mu is pretty simle | ||
*simple | 05:41 | ||
Nil doesn't have much to it either | |||
masak | I've always been a fan of ⊥ in that respect. | 05:43 | |
Wolfman2000 | .u ⊥ | 05:44 | |
phenny | U+22A5 UP TACK (⊥) | ||
masak | it has every type imaginable, and is thus so encumbered by functionality that it in effect can do nothing at all. | ||
TimToady | since it's the opposite of Mu, we'd have to call it Um | 05:48 | |
05:48
nbrown_ is now known as nbrown
|
|||
Wolfman2000 | ...umm... | 05:48 | |
can't say I like that idea | |||
masak | 哈哈 | ||
it's not *worse* than Mu. :) | |||
TimToady | yes, you can say it, you just can't say it and mean it | ||
masak | can't mean I like the idea. | 05:49 | |
TimToady | you're not very mean, or close to it | ||
nbrown | masak: I saw you and mberends talking about proto and I'd like to help land the installed-modules branch if I can | ||
masak: I finally have time to play with p6 again | |||
masak | nbrown: excellent! | 05:50 | |
05:50
kaare joined
|
|||
nbrown | i have one small issue, that maybe you can help with | 05:50 | |
masak | let's hear it. | ||
05:50
kaare is now known as Guest25440
|
|||
nbrown | i've been doing my dev on windows and the issues with the run command not working exactly correctly stopped me | 05:50 | |
can i get a feather account to do some linux dev? | 05:51 | ||
masak | nbrown: sure just contact Juerd_. | ||
nbrown: I think he prefers emails sent to him for feather access. give your desired user name, and your reason for wanting an account, and you should be set. | 05:52 | ||
mberends | hello, US based insomniacs! | ||
masak is a Europa-based insomniac | 05:53 | ||
s/pa/pe/ | |||
nbrown | masak: ok, will do. My windows work kinda died a while ago due to run and windows not playing nice and then me running out of time, and now I'm ready to try to make it work again | ||
mberends | masak: give the proto pumpkin to nbrown++ before he runs away! | ||
nbrown | mberends: hi! | ||
masak | the pumpin is lying here on the ground, for anyone to claim. :) | 05:54 | |
nbrown | mberends: I've been wanting to get back involved, so I won't run away, I just might need to get my act in gear again | ||
masak: what's Juerd_'s email address? | 05:55 | ||
mberends | hi nbrown, you're very welcome here, and we might even help you in turn ;) | ||
05:55
rgrau left
|
|||
masak | nbrown: his name has five letters. put it before and after the '@', and finish off with '.nl' | 05:55 | |
mberends | cryptic | 05:56 | |
nbrown | mberends: I've been a lurker for a long time and I already have a proto clone on github: github.com/nbrown/proto, but it's time to stop lurking and start really helping | ||
masak | nbrown++ | ||
nbrown | masak: thanks | ||
masak | wow, wishes do come true. | ||
lurkers: could you get me a new computer, too? :) | |||
mberends | nbrown: excellent, we've become a bit burned out on proto | ||
masak | yes, I think we have. | 05:57 | |
need new brains... er, new volunteer efforts. | |||
mberends | (fresh minds)++ | ||
Wolfman2000 puts away his finals work...basically done for the night, but can easily finish this part in the morning. | |||
nbrown | fresh eyes/minds are always good | 05:58 | |
mberends whispers to masak that Wolfman might like proto too | |||
masak | Wolfman2000: I just had an interesting idea! | 05:59 | |
Wolfman2000 | mberends: I've tried proto. I'm waiting for it to mature a bit. | ||
masak: all ears | |||
masak | Wolfman2000: would you like to help nbrown and me land the installed-modules branch in proto? | ||
it would be a great service to humanity. | |||
Wolfman2000 | masak: ask again when my finals are done. | ||
masak | sure thing. | 06:00 | |
make a continuation... | |||
Wolfman2000 has already made some contributions to Perl 6, but school has to come first. | |||
mberends | a continuation... is like an IOU, is it? | ||
Wolfman2000 | Now, if there is a way for me to get retroactive grant money or something for my helping Perl 6, that would be great. | ||
nbrown | one other thing i keep meaning to ask about, is Perl 6 going to have a FileSpec type module, or is S32 - IO supposed to take care of all of that? | 06:02 | |
mberends | \o # commute | ||
06:03
mberends left
|
|||
TimToady | btw, (backloggin) you guys kept writing my $x = 1,2,3; which doesn't work in real P6 | 06:04 | |
scalar assignment is tighter than , | |||
masak | oh, right. | ||
Wolfman2000 | let me guess... | 06:05 | |
rakudo: my $x = (1,2,3); my @x = |$x; say @x.perl; | |||
p6eval | rakudo 7ef386: too many positional arguments: 4 passed, 2 expectedin Main (file <unknown>, line <unknown>) | ||
Wolfman2000 | ...bother if I recall the tests you guys were doing | ||
masak | I know about the scalar assignments, but I haven't internalized it yet. | 06:07 | |
wonder if there's any broken Perl 6 code out there in the cheese. | |||
TimToady | rakudo: my $x = (1,2,3); my @x = @$x; say @x.perl | 06:08 | |
p6eval | rakudo 7ef386: Symbol '@$x' not predeclared in <anonymous> (/tmp/CGeN9zBlPG:2)in Main (file <unknown>, line <unknown>) | ||
TimToady | rakudo: my $x = (1,2,3); my @x = @($x); say @x.perl | ||
p6eval | rakudo 7ef386: [1, 2, 3] | ||
nbrown | masak: can you think of any changes we should make to the proto TODO list, or should I just start in on it once I have a non windows box to play on? | 06:15 | |
masak | nbrown: hold on, I'll dig out the logs from the last time I touched proto. | 06:16 | |
nbrown | masak: cool, thanks | ||
masak | nbrown: use.perl.org/~masak/journal/39864 use.perl.org/~masak/journal/39866 | 06:18 | |
(the lower parts) | |||
nbrown | masak: ok, that should be something I can tackle :) | 06:20 | |
masak | nbrown: I can also easily define for you what would be considered a winning criterion: if proto can pull down and install the whole bunch of projects listed in projects.list, then installed-modules is definitely ready. :) | ||
nbrown | masak: yeah, I figured that one out :) | ||
masak | mberends++ # writing a detailed TODO plan | 06:21 | |
nbrown: I figured you might. the reason it's important, though, is that Emmentaler depends on exactly that. | |||
nbrown | masak: a while ago I made that installed-modules-windows branch and tried to tackle the TODO plan, but windows perl 6 run issues kinda made it impossible | ||
masak: what exactly is Emmentaler? | |||
masak | too bad. we could use some Windows users. | ||
Wolfman2000 | masak: I secure deleted my Windows 7 VM | 06:22 | |
So no go there | |||
masak | Emmentaler is an idea of a project to inspect the world of Perl 6 projects, by running nightly tests and controls on them. | ||
nbrown | the bit issue was run('dir some/path') did not necessarily return what was expected, so I couldn't make it work for installing the projects | ||
masak | :/ | 06:23 | |
nbrown | masak: cool, I'll be glad to help out with that too when we get proto working | ||
masak | also, the clock is kinda ticking. :) | ||
nbrown | masak: it was extremely frustrating since I couldn't isolate it in a one liner or even a simple test case | 06:24 | |
masak | not that we should let that stress ut out, but it's good to keep in mind. | ||
s/ut/us/ | |||
nbrown: yes, that's exactly why developing things piecemal is essential on top of Rakudo right now. | |||
nbrown | masak: I kinda figured, but I have some time off from work coming up, so I should be able to pitch in a bit more | 06:25 | |
masak | \o/ | ||
nbrown | my work allows me to have a 2 week break off at the end of the year and i'll probably end up playing with perl6 a bunch | ||
masak | I'm doing the same right now. my current vacation allows me to (1) play with Perl 6, and (2) see what happens if I don't go to sleep until I'm tired. | 06:27 | |
nbrown | :) how's (2) working out? | ||
masak | nbrown: I'm on UTC+1 time, and I'm starting to feel a little groggy. the sun is up by now. | 06:28 | |
masak looks out window | |||
wait, no. not quite yet. | 06:29 | ||
nbrown | masak: I'm on UTC-5 and I'm starting to get tired. There noway I'll be up as late as you are | 06:30 | |
masak | it's been a gradual process. | ||
hopefully I'll land about right when it's time to get back to work. | 06:31 | ||
nbrown | I'll cross my fingers for you | ||
06:32
lestrrat is now known as lest_away
|
|||
Wolfman2000 | alright, bed time for me | 06:32 | |
masak | nbrown: more importantly, I figured out how to do regex backtracking without continuations tonight. that problem has been one of the main contributing factors to my insomnia. :) | ||
Wolfman2000: good night! | |||
nbrown | masak: I've been lurking/backlogging your questions on that and I have to say it's a little over my head, but a very interesting idea when I think about it | 06:33 | |
masak | nbrown: I can understand that it's over someone's head -- it was over mine before I started thinking about it. | 06:34 | |
nbrown | masak: I look forward to the blog post where you explain it so a guy like me can understand ;) | ||
masak | nbrown: they're upcoming. there will be seven of them. :) | 06:35 | |
nbrown | amazing | ||
masak | lots of nice pictures and metaphors. | ||
06:36
scottp joined
|
|||
nbrown | masak: now I'm even more excited. Your blog has been a pleasure to read and learn from, but pictures help me with harder concepts | 06:36 | |
masak | yes. they will be essential here, since it's a lot about trees. | 06:37 | |
nbrown | metaphors too, but I'm a visual learner in most things | ||
masak | also, thanks for your kind words. :) | ||
scottp | Good afternoon (well for me in Australia). I have a question about references. | ||
masak | scottp: shoot. | ||
scottp | If you get a list - my @l = 1,2,3 | ||
then if you assign my $t = @l; | |||
vs my $t := @l; | 06:38 | ||
isn't the first supposed to be a copy, and the second a reference ? (in loose terms) | |||
masak | rakudo: my @l = 1,2,3; my $t = @l; $t[1] = 'FOO'; say @l.perl | ||
p6eval | rakudo 7ef386: [1, "FOO", 3] | 06:39 | |
masak | apparently not. :) | ||
scottp | my @l = 1,2,3;my $t := @l;$t[0]=7;say @l[0];say $t[0]; | ||
both seem to be a reference. Is that a bug in my understanding of the spec, or Rakudo implementation? | |||
masak | rakudo: my @l = 1,2,3;my $t := @l;$t[0]=7;say @l[0];say $t[0]; | ||
p6eval | rakudo 7ef386: 77 | ||
scottp | rakudo: my @l = 1,2,3;my $t = @l;$t[0]=7;say @l[0];say $t[0]; | 06:40 | |
p6eval | rakudo 7ef386: 77 | ||
masak | scottp: I think you chose a case where both are references. | ||
scottp: but that not every case is such. | |||
scottp | OK Ta. I asked because it was picked up in my talk at OSDC - www.vimeo.com/7929562 | ||
masak | rakudo: my @a = 1,2,3; my @b = @a; @b[1] = 'FOO'; say @a.perl | 06:41 | |
p6eval | rakudo 7ef386: [1, 2, 3] | ||
nbrown | masak: it's bedtime for me so I can be productive tomorrow, but if you have anymore proto thoughts to pass along, please do, and I'll check in tomorrow | ||
masak | nbrown: it's been very nice talking to you. looking forward to working on the installed-modules with you. | ||
scottp | nbrown: when I gave my talk at OSDC the number of modules proto supported was 42 - it got a good laugh :-) | ||
masak | :) | ||
scottp: nice! now I have a video to watch before I go to sleep. | 06:42 | ||
scottp | It will send you to sleep :-) thehe | ||
nbrown | masak: it's been a pleasure. good night | 06:43 | |
scottp | masak: thanks for the example above, I will work on an example of the perl6-examples explaining when it is a reference and not. | ||
masak | scottp: sounds good. | ||
nbrown | scottp: not too bad for a installer that everyone plans to replace sooner rather than later :) | ||
scottp | Think of it as bootstrapping... sure it may be replaced, but if it didin't exist, nor would the next one | 06:44 | |
nbrown | scottp: agreed, but now i'm really heading to bed :) have a great afternoon | 06:46 | |
JimmyZ | rakudo: my @a = 1,2,3; my $b = \@a; @b[1] = 'FOO'; say @a.perl | ||
p6eval | rakudo 7ef386: Symbol '@b' not predeclared in <anonymous> (/tmp/fCBoGHa3PU:2)in Main (file <unknown>, line <unknown>) | ||
scottp | Chow | ||
masak | hence the name. 'proto' :) | ||
JimmyZ | rakudo: my @a = 1,2,3; my $b = \@a; $b[1] = 'FOO'; say @a.perl | ||
p6eval | rakudo 7ef386: [1, "FOO", 3] | ||
masak | JimmyZ: in other words, the \ is a no-op there. | ||
JimmyZ | It's Capture? | 06:47 | |
masak | I guess so. | ||
Captures are part of the spec that I don't go near yet, because I don't need to understand them to write programs. | |||
and the less I learn about them, the less I have to unlearn when the spec changes. :) | 06:48 | ||
JimmyZ | ;) | ||
I have a Capture patch for parrot, But I don't know wether rakudo uses that or not. | 06:49 | ||
scottp | rakudo: my @l; my $s = "abc"; @l[0] = $s; say @l.perl; | 06:50 | |
p6eval | rakudo 7ef386: ["abc"] | ||
scottp | rakudo: my @l; my $s = "abc"; @l[0] := $s; say @l.perl; | ||
p6eval | rakudo 7ef386: rtype not setin Main (file <unknown>, line <unknown>) | 06:51 | |
masak | ouch. | ||
dragon territory. | |||
scottp | that was the example from the spec - making two "containers" point to the one space... I think my head hurts. | 06:52 | |
masak | keep in mind that Rakudo doesn't implement all of Perl 6 yet. :) | ||
scottp | I think that is what I hit. Good really, it has stopped my head hurting :-) I will keep my example fairly simple for now. Just reference to whole objects or not. | 06:54 | |
masak | scottp: oh, and I agree with you in principle: when I start thinking about the model which encompasses the word 'container' (for something which isn't Arrays and Hashes, but ordinary scalars), my head hurts, too. | 06:55 | |
the gls article I linked to earlier seems to make this point: if you don't have tail call optimisation, you'll have to break encapsulation in some cases. | 06:59 | ||
Tene | okay, I'll make a compromise, I'll work on ng until the battery dies in my laptop, then I can sleep. | 07:08 | |
Anyone know something that doesn't parse in ng yet? | |||
failing that, I'll look at given/when. | 07:09 | ||
masak | scottp: by my understanding, the reason '$b = \@bits' is equivalent to '$b = @bits', is that the array @bits is already a reference. | 07:11 | |
scottp | ok ta. That kind of makes sense. I read something similar on the specs when I started to read about containers. | 07:12 | |
masak | I love the video, by the way. I always enjoy when people explain Perl 6, and you do it well. | 07:13 | |
Tene | Oh, um... given/when already work as specified in ng. I was wrong. Any other ideas? | ||
masak | Tene: gather/take? :) | 07:14 | |
Tene | masak: already in. | ||
masak | wow. | ||
including laziness? | |||
Tene | that was my first contribution to ng. | ||
masak: I'm still blocking on pm for that. He's rethinking the iterator API. | |||
scottp | Night all... off to a concert. | 07:15 | |
Tene | As soon as he figures that out, lazy gather/take is pretty easy. | ||
masak | scottp: \o | ||
Tene | goodnight scottp | ||
masak: i also got exceptions working better than they did in master, although they've got a ways to go. | 07:16 | ||
masak | scottp: no +@bits means numify, not sum. you'd do sum like this: [+] @bits | ||
s/no/no,/ | |||
Tene: cool! | |||
Tene | my next big item is getting fail() to properly return an unthrown exception... getting that to auto-throw itself if it's not checked is going to require scope exit handlers, which rakudo doesn't have yet, iirc. | 07:17 | |
'make spectest' passes. I guess it's not running all of the tests? | 07:18 | ||
that was way too fast. | |||
and short. | |||
masak | :) | ||
I think only the spectests that pass are included, yes. | 07:19 | ||
but it is faster than master, too. | |||
Tene | I just meant, it didn't run enough tests. | ||
how do I run all of the tests to find failing tests? | 07:22 | ||
masak | maybe snatch the t/spectest.data from master? | 07:23 | |
Tene | oh, maybe... | ||
masak | scottp: nit: PIR is more like sugared Parrot assembler than Parrot bytecode. .pbc files are bytecode, though. | 07:25 | |
Tene | with a little tweak, looks like we can unfudge S02-names/identifier.t | 07:26 | |
Three RT references in there... if I commit a fix for the last one can someone close them? | 07:27 | ||
masak | not until ng becomes master :) | ||
Tene | oh | ||
laaaaaaaame | |||
masak | it's only fair. if I can submit ng tickets, others can't be allowed to fix things in ng and close tickets :) | 07:28 | |
s/can/can't/ | |||
Tene | but ng tickets would be so useful... | ||
masak | I don't make these kinds of decisions. I just work here. :) | 07:29 | |
JimmyZ hates RT systems. | |||
Tene | Um... i got a very creepy result from trying to fix "sub named 'my'" | ||
... nevermind. | |||
masak | hugme: hug JimmyZ | 07:30 | |
hugme hugs JimmyZ | |||
Tene | masak: you could send mail to [email@hidden.address] | ||
07:31
gfx joined
|
|||
masak | ooh. | 07:31 | |
Tene | then the tickets would be recorded in a magical unicorns ticket system called "my inbox" | ||
07:32
xomas left
|
|||
diakopter | TimToady: explain more plz your comment about rakudo vis a vis laziness/backtracking? | 07:32 | |
Tene | masak: more-seriously, I could really use some help directing my work on ng, so if you feel like helping, I'd love some email or messages on IRC about broken things in ng. :) | 07:33 | |
I sleep now. Goodnight, all. | |||
masak | Tene: good to know. I haven't been too active with ng in the past week, but that might change, if I know I can be useful by, for example, pointing at things and calling out that they're broken. :) | 07:34 | |
Tene: 'night | |||
Tene | Yes, that would be very helpful to me, at least. | ||
JimmyZ | rakudo needs a new bug track system. | 07:35 | |
masak | JimmyZ: no, I don't think it does. | ||
07:35
nihiliad left
|
|||
masak | JimmyZ: I've submitted hundreds of bugs to RT, and I think it rocks, more or less. | 07:35 | |
it beats Bugzilla and Trac in my eyes. | 07:36 | ||
07:39
scottp left
07:40
rgrau_ left,
rgrau_ joined
|
|||
masak | time for me to retire for the night as well. | 07:40 | |
moritz_ | good morning | ||
masak | :) | ||
moritz_ | and good night to masak :-) | ||
masak | see you later, #perl6. | ||
'night, moritz_ :) | |||
diakopter | nite | ||
07:40
masak left
|
|||
pugs_svn | r29255 | moritz++ | [t/spec] unfudge a passing test for rakudo | 07:48 | |
07:50
kaare joined
07:51
kaare is now known as Guest68078,
pnate2 joined
07:52
pnate left
07:54
envi^home joined
07:55
JimmyZ_ joined
08:02
kaare joined
|
|||
moritz_ | hugme: tweet rakudoperl Perl 6 advent calendar day 4: Testing perl6advent.wordpress.com/2009/12/0...4-testing/ | 08:02 | |
hugme hugs moritz_; tweet delivered | |||
08:02
kaare is now known as Guest54298
08:03
pnate2 left
08:04
ihrd joined,
Guest25440 left,
pnate2 joined
08:09
justatheory left
08:10
ihrd left
08:13
JimmyZ left
08:16
Guest68078 left
08:18
kangu joined
08:19
PacoLinux left
08:20
pnate joined
08:26
xomas_ joined
08:27
alexn_org joined
08:28
payload left
08:31
iblechbot joined
08:34
justatheory joined
08:35
pnate2 left,
Bzek joined
08:37
justatheory left
08:39
pnate2 joined
08:43
am0c left
08:49
pnate left
08:50
pnate joined
08:54
payload joined
09:00
pnate2 left
09:01
zloyrusskiy left
09:02
hcchien left
09:03
hcchien joined
09:05
pnate2 joined
09:10
gfx left
09:11
payload left
09:16
pnate left
09:20
hirschnase joined
09:23
alexn_org left
09:27
athaba left
09:28
Guest54298 left,
Guest54298 joined
09:32
JimmyZ_ left
09:46
envi^office left
09:58
pnate joined
10:08
payload joined
10:09
pnate2 left
10:13
NorwayGeek joined
10:19
NorwayGeek left
10:24
agentzh left
|
|||
moritz_ | does anybody get such errors while pulling from rakudo? error: no such remote ref refs/heads/range_to_setting | 10:28 | |
10:34
nbrown_ joined
10:42
xinming_ joined
10:43
zloyrusskiy joined
|
|||
jnthn | moritz_: I don't, I just got told I was already up to date. | 10:48 | |
frettled | jnthn: you usually are ;) | 10:49 | |
10:52
nbrown left
10:54
xinming left
11:13
iblechbot left
11:17
flip214 joined
11:18
am0c joined
|
|||
flip214 | Hello again ... | 11:18 | |
mathw | hello | ||
flip214 | sorry, no pressing questions this time. | ||
mathw | that's okay | ||
flip214 | Unless I can think of something really quick | ||
mathw | my brain doesn't work anyway | ||
flip214 | why's that? | ||
too much alcohol? Or not enough of it? | 11:19 | ||
mathw | neither | ||
yesterday I had five job interviews | |||
today I just got a quote on fixing my car | |||
flip214 | ah yes, I remember, you told about that | ||
mathw | and it's big | ||
flip214 | (the interviews) | ||
the car? | |||
;-) | |||
Ok, how are the interviews going? Anything that you'd like? | 11:20 | ||
mathw | Oh yes | ||
Most definitely like | |||
Want this job lots | |||
flip214 | Is there a "but"? | ||
mathw | Well, it involves moving cities | ||
But I can cope with that | |||
Just waiting to see if they offer it to me | 11:21 | ||
flip214 | Not good advertising that here, is it? Who knows who's reading this channel ... | ||
mathw | my current employer? Unlikely | 11:22 | |
flip214 | No, the next one | ||
mathw | So they find out that I'm enthusiastic | 11:23 | |
jnthn | brrr...'tis cold! | ||
flip214 | But now to something completely different ... | ||
jnthn has a talk to walk a couple of times a day now | |||
wtf | |||
s/talk/dog/ | 11:24 | ||
flip214 | s/talk/ = 'dog' I thought? | ||
Or something like that ... | |||
Never mind | |||
Does someone want to take bets whether Perl6 or IBM/SCO is done first? | 11:25 | ||
I'd prefer both, as soon as possible ... | 11:26 | ||
mathw | depends | ||
how many patches have you written today? :P | |||
moritz_ | s/talk/dog/ or s[talk] = 'dog' | ||
depends on wheter the delimiter is a braketing character | |||
flip214 | moritz: thanks for reminding | ||
mathw: O | 11:27 | ||
mathw: Sadly my real life (job, family) are a bit overwhelming | |||
but if there's still need in a few decades, when my children have children and keep themselves busy, just tell me | 11:28 | ||
maybe I'll find some time then | |||
11:29
rodi joined
|
|||
flip214 | I'd like to help ... but then there are some ideas floating in my head, which I'd like to start, too .. | 11:30 | |
Do you know someone who pays my bills and lets me "investigate" CS affairs? I promise to be at least 35 hours a week at the computer. | |||
moritz_ | do some reasearch for IBM, make a a real good invention... | 11:31 | |
then you'll become "IBM fellow", and are employed for life time | 11:32 | ||
and can work on whatever you want | |||
flip214 | how would I do "research for IBM"? Do something in private and sell it to them? | ||
Not much of a chance, I fear ... but thanks for the tip. | 11:33 | ||
moritz_ | no, apply there for a research job | 11:34 | |
they have labs on their own | |||
11:34
rodi left,
xomas_ left
11:35
jferrero joined
|
|||
jnthn | I visited one of those once. Looked like they were doing some quite cool stuff. | 11:35 | |
If I wanted a $day-job it's one place I'd probably consider applying. | 11:36 | ||
11:36
rodi joined
|
|||
flip214 | Well, I couldn't relocate, because of the family ... and AFAIK there're no research jobs in Austria. | 11:37 | |
moritz_ | jnthn: speaking of which... is your signature binding grant finished already? | ||
flip214 | jnthn: lucky that you don't seem to need one | ||
jnthn | moritz_: No | ||
moritz_ | jnthn: what's left? | 11:38 | |
jnthn | moritz_: The major bits left are multiple return values, some other cases of nested signatures and the capture syntax. | ||
sub foo(|$capt :(...)) { ... } | |||
moritz_: ng in theory should handle multiple returns out of the box but I also want to make my (signature) := foO() work too. | 11:39 | ||
11:42
meppl joined
|
|||
jnthn | flip214: Luckily, between consulting gigs that I can do mostly from home and grants, I manage OK. | 11:43 | |
11:46
payload left,
am0c left
|
|||
flip214 | good for you | 11:47 | |
but no wife and children, I expect? | 11:48 | ||
Well, maybe I should go to consulting, too | |||
But with some basic money needed each month it's not that easy | |||
jnthn | flip214: Yeah, girls seem...completely...uninterested in me. So no wife and kids. | 11:49 | |
flip214: Which, yes, does make it a LOT easier. | |||
flip214: at least if there's no money it's just me that goes hungry, not others. | |||
flip214: A lot of it, for me, has depended on having plenty of contacts and sources of work. That takes a while to build up though. | 11:50 | ||
11:51
envi^home left
|
|||
flip214 | Well, maybe I'd know enough people to hold me over water ... but having to race from one to the other, with all having the same year-end-deadlines build a bit of stress, I think | 11:51 | |
jnthn | flip214: Yes, there are days when I wonder if having a 9-5 wouldn't just be a whole lot easier and less stress. | 11:52 | |
I enjoy it most days though. | 11:53 | ||
11:54
envi^home joined
12:14
Transformer joined
12:16
Transformer left
12:22
payload joined
12:25
lest_away is now known as lestrrat,
ihrd joined,
ihrd left
12:30
colomon_ left
12:33
mariano__ joined
12:42
iblechbot joined
12:53
lisppaste3 joined
12:54
zaphar_ps left
12:58
Grrrr left
|
|||
takadonet | morning all | 13:10 | |
13:11
renormalist joined
13:12
renormalist left,
Grrrr joined
13:13
renormalist joined
13:16
SmokeMachine joined
|
|||
flip214 | morning | 13:17 | |
13:26
colomon joined
|
|||
takadonet | morning colomon | 13:28 | |
colomon | morning! | 13:29 | |
13:33
quantumEd joined
13:36
jferrero left
|
|||
moritz_ | blogs.perl.org/users/silent11/2009/...-2009.html <-- could somebody tell this guy or gal that the examples work with rakudo? | 13:36 | |
I tried, but it told me I entered the captcha wrongly | 13:37 | ||
yet don't even see a captcha | |||
takadonet | hehe | ||
moritz_ | and openid doesn't work either | 13:38 | |
13:38
zaslon joined
13:39
smashz joined
|
|||
zaslon | lolfrettledhazblogged! frettled++ 'Oslo.pm Past and Future': http: | 13:39 | |
13:40
Bzek left
|
|||
zaslon | lolperl6adventhazblogged! perl6advent++ 'Day 4: Testing': perl6advent.wordpress.com/2009/12/0...4-testing/ | 13:40 | |
smashz | hello | ||
frettled | carlin: yay! | ||
or something | |||
carlin | :( | 13:41 | |
13:41
zaslon left
|
|||
moritz_ | carlin++ | 13:42 | |
takadonet | moritz_: You can try to post a reply on twitter twitter.com/willwillis | 13:45 | |
mathw | hmm it looks like it's wanting a captcha and not actually displaying one | 13:46 | |
frettled | moritz_: I have the same problem, yes | ||
mathw | hmm | ||
frettled | mathw: yup. | ||
mathw | and the signin system is completely broken | 13:47 | |
not good | |||
frettled | yup | ||
13:47
zaslon joined
|
|||
mathw uses twitter and @ to deliver an absurdly brief bit of information about rakudo | 13:48 | ||
zaslon | lolfrettledhazblogged! frettled++ 'Oslo.pm Past and Future': howcaniexplainthis.blogspot.com/200...uture.html | ||
frettled | \o/ | ||
carlin++ | |||
colomon | oh noes, broken comments on blogs.perl.org ? | 13:49 | |
"Your comment submission failed for the following reasons: Text entered was wrong. Try again." My comment was wrong?! ;) | |||
mathw | I'm assuming it's lookin gat an invisible capture | 13:50 | |
captcha | |||
But the signin's broken too | |||
I Tried openid and wordpress.com, both said I entered an invalid openid | 13:51 | ||
13:51
jferrero joined
|
|||
mathw | which was odd | 13:51 | |
13:51
jferrero left
|
|||
carlin | frettled: just don't blog again until I've finished my HTTP::Client rewrite, 'kay? :-P | 13:52 | |
frettled | carlin: heh :D | ||
carlin: you have until Monday, probably ;) | |||
carlin | oh noes! | 13:53 | |
frettled | Unless I find that I want to blog on Sunday evening, muahaha. | 13:54 | |
carlin | I won't have even got around to procrastinating by Monday | ||
frettled | But I may postpone until Tuesday, because that makes it easy to have one weekly entry for the rest of December. | 13:55 | |
13:55
betterworld joined
13:56
jarek joined
13:59
jarek left,
ihrd1 joined
14:03
ihrd1 left
14:17
smashz left
14:19
zloyrusskiy left
14:21
beggars joined
14:26
smashz joined
14:39
flip214 left
14:46
colomon left
14:53
PacoLinux joined
14:55
payload left
14:57
colomon_ joined
15:00
perlygatekeeper1 left
15:02
xenoterracide left
|
|||
PerlJam | perl6.ru/qgzyxg0i7zq8gy7803va/ Wow | 15:10 | |
15:16
hcchien left
15:19
Wolfman2000 left
15:21
hcchien joined
15:25
KyleHa joined
|
|||
rodi | I am revisiting some old Perl 6 code, written for Pugs. Is it canonical to say "use v6" rather than "use v6-alpha" ? | 15:37 | |
moritz_ | yes, 'v6' is what we use these days | ||
15:39
xenoterracide__ joined
15:40
jan_ left
15:43
ruoso joined
|
|||
rodi | thanks, @moritz. | 15:44 | |
15:47
payload joined
15:51
Psyche^ joined
15:54
Patterner left,
Psyche^ is now known as Patterner
15:59
jferrero joined
16:00
pmurias joined
16:04
nihiliad joined,
colomon joined
16:05
colomon_ left
16:07
fridim_ joined
16:17
xenoterracide__ left
16:32
rgrau joined
16:34
kangu left
16:36
viklund joined
16:40
viklund left
16:44
jan_ joined
|
|||
TimToady | slight terminological problem, if we refer to each individual constant pair as an "enum", we can't really refer to the whole enumeration as an "enum", or people will get confused | 16:56 | |
not quite sure how to fix that... | 16:57 | ||
Tene | enum is short for enumeration. What's the name for the things that are enumerated? | ||
Enumeratees? | |||
16:57
mikehh left
|
|||
TimToady | I'm inclined to go the other way and say the big thing is "enumeration" and the bits are "enums" | 16:58 | |
under the 'small things get small names' metaphor | |||
but people will probably complain about a keyword "enumeration" where they're used to writing "enum" | 16:59 | ||
16:59
betterworld left,
colomon left
|
|||
Tene | you could go with enum/en | 16:59 | |
16:59
colomon joined
|
|||
TimToady | en doesn't do much for me | 17:00 | |
enamor Foo <a b c> | 17:02 | ||
as a pun on enumeration namer | |||
the keyword doesn't just create the EnumMap, but also introduces the names in to the symbol table | 17:03 | ||
moritz_ | so it's 'our' by default? | ||
17:03
mikehh joined
|
|||
moritz_ | std: my enum Foo <a b c> | 17:03 | |
p6eval | std 29255: ok 00:01 106m | ||
TimToady | constant declarators (of which enum is one) are "our" by default | 17:04 | |
at least currently, so that Foo::Bar notation works | 17:05 | ||
hmm, a constant pair is really a symbol, Tue symbolizes 2 | |||
so maybe leave enum as the keyword | |||
and use SymMap and such | |||
Sym for the individual constant pair | 17:06 | ||
since a symbol isn't actually a symbol without also implying knowledge of the thing it is symbolizing | 17:07 | ||
on the other hand, symbols often symbolize an abstraction, which aren't necessarily constant :/ | |||
17:07
mikehh left
|
|||
TimToady | maybe I'm just tying myself into semiotic knots though | 17:08 | |
maybe we should just call each of them a Name | 17:09 | ||
17:10
justatheory joined
|
|||
TimToady | seems a bit too generic though | 17:10 | |
17:11
cdarroch joined
|
|||
TimToady | Constant is a bit long, but that's more or less what the are | 17:15 | |
if we abbreviate that to const we'll confuse almost everyone in the world | 17:16 | ||
17:17
colomon_ joined,
colomon left,
colomon_ is now known as colomon
|
|||
TimToady | if we were going semiotic, we'd call them Signs, but "sign" is already overloaded; it might not be a bad overloading though | 17:21 | |
if they're constants, maybe we should just grab the typename K :D | 17:23 | ||
a bit hard to talk about them, unless K is pronounces 'constant' | 17:25 | ||
also, lots of interference with kelvin in physics | |||
KV maybe... | 17:26 | ||
.oo(kilovolts) | |||
ruoso feels that things are better since now the discussion is about minor semantic tweaks, instead of major conceptual changes... | |||
TimToady | feelings can be deceptive :) | ||
ruoso .oO( of course that might just be a valley in the senoid ) | |||
17:30
explorer__ joined
|
|||
moritz_ | rakudo: say +Any.^methods | 17:35 | |
p6eval | rakudo 7ef386: 118 | ||
17:36
jferrero left
|
|||
moritz_ | rakudo: class A { }; A.new.sin | 17:48 | |
p6eval | rakudo 7ef386: ( no output ) | 17:49 | |
cognominal | TimToady, also, etymologically, enumerations are about C<num>bers | 17:51 | |
17:56
snearch joined
|
|||
TimToady | cognominal: yes, I've decided to leave things as they are, but just talk about "enumeration" when I want to clearly talk about the outer type, not one of the inner symbols | 17:58 | |
moritz_ | I've got another wild idea | ||
the other day I proposed a role to get methods out of Any | 17:59 | ||
what if we throw them all out, and instead introduce coercive method call syntax? | |||
4.sqrt -> 2 "4".sqrt -> fail "4".+sqrt -> 2 | |||
likewise $thing.@join('|') automatically coerces to Positional | 18:00 | ||
TimToady | .+ already means something | ||
moritz_ | yes, but we might come up with a different syntax for that | ||
I don't think its currrent meaning is used often enough that it must be kept no matter what | 18:01 | ||
TimToady | that seems messier to me than the Any solution, which works inside the current scheme of things to define what some standard methods are | ||
moritz_ | you're probably right | 18:02 | |
TimToady | and the current scheme allows a type to override | ||
moritz_ | that would still be the case | ||
if .~foo desugars to .Stringy.foo | |||
anyway, it's likely to make the language much more noisy | 18:03 | ||
TimToady | I would, however, like to get some kind of coercion type notation that says, "I will accept Any but will coerce to Foo" | ||
moritz_ | like mysub($foo as Foo)? | ||
TimToady | as for returning too many methods, that's probably just a matter of putting a limiter on the introspector | 18:04 | |
moritz_ | I'm not worried about the introspection part | ||
TimToady | :local(:!any) :) | ||
moritz_ | two things worry me | ||
first that it's not always dwimmy | |||
if you define a new class, it has a sin() method, but it can't work | 18:05 | ||
because there's not sensible numification | |||
so it's essentially useless baggage until you give your class Numeric semantics | |||
TimToady | you mean a new numeric class? | ||
you'd presumably register with the Numeric coercion somehow | |||
moritz_ | I mean any class. | ||
"3.14".sin should work, right? | 18:06 | ||
that implies that .sin lives in Any | |||
TimToady | sure | ||
ja | |||
moritz_ | and that imples that class A { } will have a .sin method, that doesn't work | ||
TimToady | if you pass something of class A or derivative, it will work | ||
Any is a base class and gets overridden | 18:07 | ||
or I don't understand your Q yet | |||
moritz_ | perl6 -e 'class A { }; A.new.sin' | ||
Method 'Num' not found for invocant of class 'A' | |||
A has a method sin, but it's useless. | |||
That's my first concern about the current scheme of putting everything in Any | 18:08 | ||
my second concern is the principle of least surprise | |||
TimToady | I don't see how that's a problem | ||
the error message could be better... | 18:09 | ||
moritz_ | if a new perl 6 programmer writes a class, why should he expect his class to have 183 methods already? | ||
TimToady | .sin should probably have its coercive type as Numeric(Str) rather than Numeric(Any) | ||
because those methods are part of the language he's working in | 18:10 | ||
moritz_ | he? | ||
TimToady | but yes, I see your point | 18:11 | |
the builtin types probably want to derive from something under Any that holds the built-in methods | 18:12 | ||
and user classes default to Any | |||
moritz_ | yes, that's basically my proposal (though I thought of roles instead of classes) | 18:13 | |
it might also solve another problem | |||
that is accidental method calls on exception objects | |||
sqrt(-1) fail()s, and if Failure has all those methods that Any has now, sqrt(-1).sin() would probably just give 0, instead of bailing out | 18:14 | ||
however if it doesn't have a .sin method, and no postcircumfix:«[ ]» method etc. the chance that you accidentally call a valid method is very small | 18:15 | ||
18:16
colomon left
|
|||
TimToady | Failure needs to trap any unrecognized method and do more with it than just report it couldn't find the method | 18:16 | |
18:17
xenoterracide joined
|
|||
moritz_ | right | 18:17 | |
but to do so the method must be unrecognized first :-) | |||
TimToady | given that it handles *, it doesn't really matter whether it derives from something with excessive methods | ||
unless it relies on the failure to dispatch to hand control back later | |||
moritz_ | i don't understand that argument | 18:18 | |
TimToady | a dispatch to Failure never gets to any of Failure's ancestors | ||
moritz_ | clearly the handles * would only be triggered when calling a method that's not in the class already? | ||
oh | |||
I wasn't aware of that | |||
TimToady | neither was I till now :) | ||
but the nature of Failure is to complain if you try to use it as any kind of a real value, and that includes single dispatch | 18:19 | ||
IllvilJa | Just a quick thought from a passer by... if sqrt(-1) is attempted, return a complex number -i (however that is represented in Perl6). If the context nows about complex numbers, fine. If it does not, then the context issues a fail? | ||
Ok... sqrt(-1) should of course return +i, not -i... | 18:20 | ||
moritz_ | IllvilJa: we decided to go the other way round: sqrt(-1) always fails, sqrt(-1+0i) return i | ||
IllvilJa: in order not to confuse hacker who haven't heard of Complex numbers yet | |||
IllvilJa | That looks like an elegant solution. | 18:21 | |
Std: sqrt(-1+0*i) | |||
moritz_ | rakudo: say sqrt(-1+0i) | ||
p6eval | rakudo 7ef386: 0 + 1i | ||
moritz_ | rakudo: say sqrt(-1) | ||
p6eval | rakudo 7ef386: NaN | ||
IllvilJa | rakudo: say 2*4i | 18:22 | |
p6eval | rakudo 7ef386: 0 + 8i | ||
IllvilJa | Wow! I like that way of representing complex numbers! ++!! | 18:23 | |
diakopter | sorry if someone already mentioned this: github.com/fglock/Perlito use.perl.org/~fglock/journal/39971 | ||
moritz_ | TimToady: so, what's the next step? coming up with a good name for the class or role form which all the builtins derive? | ||
18:23
payload left
|
|||
moritz_ | diakopter++ | 18:24 | |
TimToady | well, I have to think about this wrt the coercive declarations I mentioned | ||
moritz_ | they seem to give you constant food for thought :-) | 18:25 | |
18:25
amackera left
|
|||
diakopter | sum1 should add blog.perlito.org/?feed=rss2 to planetsix | 18:25 | |
TimToady | it might be as simple as allowing "is open" on a class that can accept augmentation without complaining, and a type syntax that can install coercers into such a class | ||
diakopter | well, maybe | 18:26 | |
TimToady | but there's some kind of junctional flavor here too that I can't put my finger on, in the sense of capturing arguments that "don't fit" into the hierarchy and redispatching more specifically | 18:27 | |
18:27
mikehh joined
|
|||
TimToady | lemme think about that while I shower & | 18:30 | |
18:32
hercynium left
18:51
colomon joined
18:57
am0c joined
19:05
colomon_ joined,
colomon left,
colomon_ is now known as colomon
|
|||
colomon | ng: say "hello \{"; | 19:09 | |
p6eval | ng 545373: Unable to parse blockoid, couldn't find final '}' at line 1current instr.: 'perl6;Regex;Cursor;FAILGOAL' pc 1664 (src/stage0/Regex-s0.pir:907) | ||
colomon | rakudo: say "hello \{" | ||
p6eval | rakudo 7ef386: hello { | ||
diakopter | rakudo: "hello { say 3 }{ say 4 }" | 19:12 | |
p6eval | rakudo 7ef386: 34 | ||
diakopter | rakudo: "hello { say 3 }{}" | ||
colomon | ! | 19:13 | |
p6eval | rakudo 7ef386: 3 | ||
diakopter | ( very long duration, timeout) | ||
colomon | I guess it makes sense, but side effects in string generation is kind of scary.... | 19:14 | |
19:16
constant left
|
|||
diakopter | colomon: think of it as just an easier way to write "head " ~ expr ~ " tail" | 19:19 | |
colomon | diakopter: That doesn't bother me. It's when you're writing "head " ~ say $something_else ~ " tail" | ||
I mean, that's legal, but it's also kind of insane. | 19:20 | ||
diakopter | perl -e '"head ".(print "hello world\n")." tail"' | 19:21 | |
hello world | |||
19:23
jferrero joined,
colomon left
19:24
snearch left
|
|||
cognominal | rakudo: my Int $i = Mu; say $i.WHAT | 19:24 | |
p6eval | rakudo 7ef386: Object() | ||
lisppaste3 | colomon pasted "Another bus error in ng" at paste.lisp.org/display/91595 | ||
diakopter | pugs: our $a = 33; say "$a { $a = 44; "" }hihi $a hoho { $a = 55 } " | ||
p6eval | pugs: 33 hihi 44 hoho 55  | ||
diakopter | rakudo: our $a = 33; say "$a { $a = 44; "" }hihi $a hoho { $a = 55 } " | ||
p6eval | rakudo 7ef386: 33 hihi 44 hoho 55  | ||
cognominal | rakudo: my Int $i ; say $i.WHAT | 19:25 | |
p6eval | rakudo 7ef386: Int() | ||
cognominal | rakudo: my Int $i ; say $i.WHAT ; $i =1; say $i | ||
p6eval | rakudo 7ef386: Int()1 | ||
19:26
[particle] left,
snearch_ joined
|
|||
cognominal | rakudo: my Int $i = Mu; say $i.WHAT ; $i =1; say $i | 19:26 | |
p6eval | rakudo 7ef386: Object()1 | ||
cognominal | rakudo: my Int $i = Mu; say $i.WHAT ; $i =1; say $i; say $i.WHAT | ||
19:26
[particle] joined
|
|||
p6eval | rakudo 7ef386: Object()1Int() | 19:26 | |
cognominal | Should probably be "Mu()". Also what is the point to initialize an Int with Mu? | 19:27 | |
19:28
explorer__ left
19:34
alester joined
|
|||
TimToady | it should fail, since Mu !~~ Int | 19:35 | |
we've now defined my Int $i = Nil to be the correct way to explicitly reset to initial state | |||
19:36
alester left
|
|||
cognominal | thx | 19:37 | |
19:38
colomon joined
|
|||
pugs_svn | r29256 | lwall++ | [S12] rename Enum.name to Enum.key as suggested by david.green++ | 19:39 | |
r29256 | Distinguish "enumeration" from "enum" when discussing enumish types | |||
r29256 | clarify that the anon enum still evaluates the list at compile time | |||
colomon has Num's trig functions working in ng (he thinks), but doesn't know when he will have time to ng-ize the trig tests... | 19:41 | ||
.oO( At the moment, working in ng is 1/4 Cool!, 1/2 NYI, and 1/4 Bus errors.) |
19:42 | ||
TimToady | be thankful the Bus errors are implemented, at least! | 19:44 | |
though 1/4 is a rather low bus number... | 19:46 | ||
pmichaud | ...is there a specific time when the perl6advent postings are supposed to be posted? | 19:48 | |
(e.g., like 0000 UTC or the like?) | |||
19:49
jaldhar left
19:50
[particle]1 joined
|
|||
TimToady | they show up somewhen about there; moritz doesn't usualy tweet them until he gets up, though... | 19:51 | |
*usually | |||
pmichaud | okay. I may be a few hours delayed on today's post. | ||
TimToady | though it's already tomorrow in Australia | ||
pmichaud | well, I'm not too worried about that far into the future. :) | 19:52 | |
19:55
[particle]1 left
20:00
hercynium joined,
[particle] left
20:08
rodi left
20:18
constant joined,
envi^home left
20:20
mberends joined
20:23
colomon left
20:24
stephenlb joined
20:25
colomon joined
|
|||
cognominal | rakudo: my $x; (*, *, $x) = (1, 2, 3); say $x | 20:30 | |
p6eval | rakudo 7ef386: 3 | ||
cognominal | rakudo: my (*, *, $x) = (1, 2, 3); say $x | ||
p6eval | rakudo 7ef386: Malformed declaration at line 2, near "(*, *, $x)"in Main (file <unknown>, line <unknown>) | ||
cognominal | not sure if the later form should be supported | 20:31 | |
20:35
masak joined
|
|||
masak | good evening, #perl6. | 20:35 | |
colomon | o/ | ||
cognominal | rakudo: say *(42) == 42 | ||
p6eval | rakudo 7ef386: get_number() not implemented in class 'Sub'in Main (file <unknown>, line <unknown>) | ||
masak | o.O | ||
masak submits rakudobug | 20:36 | ||
cognominal | I am reading S02 and testing along | ||
masak | cool! | 20:37 | |
cognominal | you may be interested in my Int $i = Mu; say $i.WHAT ; $i =1; say $i; say $i.WHAT that should blow up according to TimToady. See the backlog | 20:38 | |
mberends | good morning, masak ;) | ||
20:38
ruoso left,
ShaneC joined
|
|||
masak | mberends: what you say, morning was hours ago. :) at least four or five. :P | 20:39 | |
it looks like the enum spec is coming together. this pleases masakbot. TimToady++ | 20:40 | ||
cognominal | rakudo: my @a = 1..10; say @a[*-1] | 20:41 | |
p6eval | rakudo 7ef386: 10 | ||
masak | ooh, pmichaud said 'halting problem' in the parrot-dev thread about GC. that's like the comp.sci. version of Godwin's Law. :) | 20:43 | |
colomon | Is that still supposed to work? | ||
masak | colomon: sure! | ||
why would it not? | 20:44 | ||
20:44
mariano__ left,
mariano__ joined
|
|||
colomon | I wasn't aware that Range did positional. | 20:44 | |
and I'm not clear on how it works otherwise. | |||
oh, wait, I see. | |||
my $a = 1..10 would be different, | 20:45 | ||
perhaps? | |||
masak | yes. | 20:46 | |
colomon | what happens when you try [*-1] on a lazy list? | ||
masak | it must unroll, I guess. | ||
unless it knows how to inspect its last range without unrolling it. | 20:47 | ||
colomon | just another reason to avoid [*-1] if you possibly can, I guess. :) | ||
masak | I use [*-1] quite frequently. | ||
semantically, it's a peeky pop. | |||
mberends | <rant topic="enum">hopefully our spec will avoid that extremely annoying meme that infects the Microsoft developers' branes, where they think "to enumerate" means "to produce a list". There are so many method names in their classes prefixed with "enum" and yet have nothing at all to do with associating numbers </rant> | 20:48 | |
colomon | I guess I do use the C++ equivalent of [*-1] pretty heavily. Just haven't run into much of a use for it in Perl 6 yet. | ||
masak | mberends: Java does that a little too, I think. | ||
mberends | it seems very infectious, beware! | 20:49 | |
masak | colomon: my tree spider uses it twice in 200 lines. just a data point. gist.github.com/247924 | 20:50 | |
colomon | masak: come to think of it, my Perl 6 has hardly used postfix:<[ ]> at all. I like being able to either deal with the entire list at once, or deal with each member regardless of its position. | 20:52 | |
masak | colomon: (postcircumfix.) | ||
colomon | masak: danke | 20:53 | |
masak | colomon: I guess the use of [*-1] comes quite naturall when you treat an array as a stack. | ||
20:58
hanekomu_ joined
|
|||
masak | ok, today's episode of "I'm curious about Japanese": twitter.com/zentooo/status/6330210263 -- is zentoo asking whether one will be able to write in Perl 6? | 20:59 | |
21:00
hanekomu_ left,
hanekomu_ joined,
Wolfman2000 joined
|
|||
masak | two things about Fortress, by the way: (1) they seem to have plenty experience with Unicode operators; might be worth borrowing insights from that. (2) formatting source code to TeX is way cool. anyone want to write a Perl 6 TeX formatter? | 21:04 | |
Wolfman2000 | PerlJam: I just signed up on nearlyfreespeech.net. So far, the account is free. | 21:05 | |
21:05
simcop2387 joined,
colomon left
21:06
colomon joined,
simcop2387_ joined
21:10
simcop2387 left,
simcop2387_ is now known as simcop2387
21:11
rgrau_ left,
rgrau_ joined
21:13
hanekom__ joined,
hanekomu_ left
|
|||
TimToady | using "enumerate" to mean "list" is the Latinate disease, the same one that infected COBOL when it used "perform" instead of "do" | 21:14 | |
21:15
takadonet left
|
|||
masak | maybe that's why COBOL has had such a long shelf-life, because it reads like the vocab of pointy-haired bosses? :) | 21:16 | |
mdxi | now i'm imagining cobol programs transliterated into latin, and i'm getting something that sounds a lot like Warhammer 40K flavor text :) | 21:19 | |
TimToady | masak: more like "It seems we now have the possibility to write in Perl 6" | ||
masak | \o/ | ||
it's the Perl 6 Advent message, seeping into the outside world! | 21:20 | ||
TimToady | obviously, COBOL was performant | ||
masak | not doant. | ||
TimToady whimpers | |||
21:23
SmokeMachine left
|
|||
masak | TimToady: when I look at the method signatures in the S32 podfiles, there's one thing I don't understand: the methods are all declared as if they were placed outside their respective classes (as opposed to how Rakudo's setting does it, for example). isn't declaring methods outside of their class... a form of MONKEY_PATCHING? should it be allowed by default? should S32 do it all over the place? | 21:24 | |
TimToady | I think it's just a notational convenience to avoid writing class blocks around them all | 21:26 | |
masak | so it's not supposed to work in practice like that? | ||
I'm asking because there's an RT bug that complains Rakudo allows this kind of declaration. :) | 21:27 | ||
but there's no real consensus as to whether it should, as far as I know. | |||
ah, here: rt.perl.org/rt3/Ticket/Display.html?id=65308 | 21:28 | ||
moritz_ | re | 21:29 | |
TimToady | a method declaration should fail outside of a class regardless of any qualifications to its invocant | 21:33 | |
masak | that's what I wanted to hear. thank you. :) | 21:34 | |
does the answer change if MONKEY_PATCHING is on? | |||
er, MONKEY_TYPING. | |||
moritz_ | MONKEY_PATCH_TYPING | ||
:-) | 21:35 | ||
TimToady | no, it fails because there's no metaclass to register with that accepts methods | ||
moritz_ | that's a good explanation | ||
masak | why not the metaclass of the invocant's type? | ||
TimToady | because that would be silly :) | 21:36 | |
masak | fair enough. :) | ||
Tene | That's a great point. We're never silly around here. | ||
Wolfman2000 | Tene: yeah right. :P | ||
Tene | I know I'm certainly not. | ||
masak | Wolfman2000: it occurs to me that Tene is using what's commonly known as 'being ironic'. :) | 21:37 | |
Tene | aka "being silly" | ||
masak | it's the silly version of Epimenides' Paradox. | 21:38 | |
TimToady | would it be ironic to ride on a Ferrous Wheel? | ||
masak groans | 21:39 | ||
21:39
colomon left
|
|||
masak | everybody: steel yourselves for the onslaught of metal jokes! | 21:39 | |
TimToady | heavy, dude! | ||
21:39
colomon joined
|
|||
masak | those jokes could easily turn plumb, I fear. | 21:40 | |
mberends | being scilly again? | 21:41 | |
TimToady | I'd make a joke about "those coppers got lead poisoning" but that wouldn't be funny right now... :/ | 21:42 | |
mberends | we don't have the mettle... | 21:43 | |
TimToady | nor the medal | ||
masak | I can only think of scrap metal jokes right now. | ||
mberends | they're going down like a lead balloon ( or zeppelin ) | 21:45 | |
TimToady | curses, foiled again! | 21:46 | |
21:46
Guest54298 left
|
|||
mberends | TinToady: foiled | 21:46 | |
TimToady | I beam! | 21:47 | |
mberends reflects on that | 21:49 | ||
masak | too many metal jokes and soon we'll exhibit fatigue... | ||
TimToady | too late! | ||
mberends cracks up | |||
masak | I'd prefer precious metal jokes to these base metal jokes, of course. | ||
mathw | Nothing yet has approached the gold standard | 21:50 | |
masak | getting symptoms of metallurgy here... | ||
mathw: right, these puns aren't worth a nickel. | 21:51 | ||
mathw: by the way, welcome back from your interviews. so now we all sit tight for the results to come back, is that it? | |||
mathw | pretty much, yes | ||
masak bites nails | 21:52 | ||
mathw | they might want another phone interview if they're having trouble deciding | ||
TimToady | nails!?! | ||
masak | 哈哈 | ||
moritz_ | somtimes you guys are hard to bear :-) | ||
TimToady | only sometimes? | 21:53 | |
masak | PREVED! \o/ | ||
moritz_ | only at puntime | ||
masak | every time is puntime. :) | ||
Tene | my only reaction is to feel a-salt-ed. | 21:59 | |
colomon resists the urge to make a new song "Every time is puntime" to the tune of "Every sperm is sacred." | |||
masak | colomon: funny, I resisted the urge to make an SVG clock with all the numbers replaced by the word 'pun'. | 22:00 | |
Wolfman2000 | colomon: I'm tempted to say do it | ||
Tene reminded of something inappropriate for this channel. | 22:01 | ||
pmichaud | ...are we previewing advent entries on the channel, or are they meant to be a surprise for everyone? | 22:03 | |
colomon | we've been previewing, but surprises are nice, too. | ||
Of course, if you save your draft... ;) | 22:04 | ||
pmichaud | I'd appreciate feedback then: | ||
perl6advent.wordpress.com/?p=85&preview=true | |||
Wolfman2000 | pmichaud: can't view it | 22:05 | |
masak | pmichaud: can you make the title begin with 'Day 5: '? | ||
colomon | There's a min operator? | ||
masak | colomon: yup. and a min function, and a min method. :) | ||
Wolfman2000 | masak: I can see that pmichaud has a post prepared for metaoperators, but I don't know how to actually VIEW it | 22:06 | |
masak | Wolfman2000: I logged in an viewed it in the list of posts. | ||
the URL pmichaud sent didn't work. | |||
Wolfman2000 | masak: I wish I understood that | ||
Wolfman2000 is an admin and yet can't figure out how to admin | |||
pmichaud | Added "Day 5" to the title. | 22:07 | |
masak | pmichaud: I'd write "inplace" as "in-place". | ||
Wolfman2000 | masak: ...how did you view the list of posts again? pmichaud's post is still in draft | 22:08 | |
masak | Wolfman2000: yes, it is. there's a "Posts" button on the left side of the dashboard. | ||
Wolfman2000 | masak: In posts, I can either choose Edit or Add New | ||
presently in Edit | |||
masak | pmichaud: other than that, neat-o post! pmichaud++ | ||
pmichaud | Wolfman2000: click "Dashboard", then click "Posts" | 22:09 | |
Wolfman2000 | pmichaud: I've done that. Then, I click on Drafts to see the three draft...titles | ||
22:10
KyleHa left
|
|||
Wolfman2000 | At this point, I can't seem to view your post pmichaud | 22:10 | |
pmichaud | Wolfman2000: hmm. I just clicked on "Posts" and was there. | ||
Wolfman2000 | pmichaud: when I click on Posts, I see my post by default. I can edit and view my post. | 22:11 | |
When I click on Drafts, I see three draft days. I can not view the contents of those drafts. At least, I don't see an easy way of doing so. | |||
pmichaud | Wolfman2000: okay, I'm guessing you don't have privileges to see others' posts or something then. (I'm a WordPress newbie, so I don't really know.) | ||
Wolfman2000 | pmichaud: I thought I did. I am able to access the wp-admin page. | 22:12 | |
pmichaud | you're not able to click on any of the draft titles? | ||
Wolfman2000 | I am not | ||
Tene | obtw, I'm going to need access to that site sometime before my post is scheduled. | 22:13 | |
masak | hm, it's interesting to read about how language change politics work on the other side of the fence: jessenoller.com/2009/12/04/pythons-...bout-this/ | ||
the fact that someone even feels the need to say "Python’s not dead people." feels comforting in some way. so it's not just the Perl community which goes around doing that. | 22:15 | ||
pmichaud | okay, scheduling my post for 00:01 | ||
Wolfman2000 | ...who owns the perl 6 advent blog again? | 22:16 | |
moritz_ | colomon does | ||
moritz_ -> bed | |||
22:17
cdarroch left
|
|||
pmichaud | hope I didn't step on colomon++'s day 7 post too much. Didn't realize he was doing hyperoperators | 22:17 | |
Tene | anyone currently awake an admin on p6advent and can add me? | ||
pmichaud | how would I know if I'm an admin? ;-) | ||
Tene | I... don't know. | ||
Look around for an "Add Tene to the blog" button? | |||
22:17
cdarroch joined
|
|||
pmichaud | aha, looks like I'm an admin | 22:18 | |
do you have an account? | 22:19 | ||
Wolfman2000 | pmichaud: If you're an admin, do you think you can give me the ability to read your draft please? | ||
Wolfman2000 is only an author apparently | |||
pmichaud | Wolfman2000: you appear to b..... right | ||
I'll do forgiveness > permission and make you an author. colomon can fix it if I'm doing the wrong thing :) | 22:20 | ||
Wolfman2000: you're now and administrator | |||
*an | |||
Wolfman2000 | pmichaud++: thanks. Now to preview your post. | ||
Tene | I don't know if I have an account... do I need one? | ||
pmichaud | Tene: yes | 22:21 | |
Tene: click the "Log in" link in perl6advent.wordpress.com | |||
Wolfman2000 | Warning: pmichaud is currently editing this post. <-- I appreciate the warning. I'm not planning on editing...just letting you know of what I see. | ||
pmichaud | I'm no longer editing | 22:22 | |
(just closed window) | |||
Tene: then "Get a free WordPress account" | |||
Tene | Ah, that's why I'm confused. Apparently my gf has a wp account, and left herself logged in on my laptop. | ||
Wolfman2000 | ...the only thing I'm concerned about...no talks of opening up the Metaoperators box | 22:23 | |
the first few days talked of opening up a gift if I recall correctly | 22:24 | ||
pmichaud | Day 4 didn't. | ||
days 2 and 3 did | |||
Wolfman2000 | I was day 3 | 22:25 | |
pmichaud | I can add a note about the box. | ||
Wolfman2000 | it's your choice | ||
Tene | Apparently I do have an account... it's working on sending me email to re-set a password. I'll bug you again once I get this figured out. | ||
IllvilJa | (On topic regarding advent calendars, but off topic regarding this IRC channel: www.boston.com/bigpicture/2009/12/h...ent_1.html .) | 22:26 | |
Wolfman2000 | IllvilJa: we're not that strict on being on topic | ||
pmichaud | Wolfman2000: how about now? | ||
IllvilJa | Wolfman2000: for which I am thankful ;-). | ||
22:27
pnate2 joined
|
|||
Wolfman2000 | pmichaud: no issues here | 22:28 | |
pmichaud | Wolfman2000: better, though? | ||
Wolfman2000 | fine by me | ||
mberends | pmichaud: could you grant me preview access as well? mberends @ wordpress? | 22:30 | |
Tene | go email! | 22:31 | |
gooooooooooooooooo email! | |||
22:32
hercynium left
22:37
pnate left
|
|||
pmichaud wonders if "editor" access is sufficient to preview posts | 22:37 | ||
Wolfman2000 | try it, and let me know when it's done | 22:38 | |
pmichaud | Wolfman2000: you're now "editor" role | ||
mberends: wordpress wants the email addr you used when registering with wordpress | 22:39 | ||
Wolfman2000 | pmichaud++: Editor role is the one you wanted | ||
pmichaud | Wolfman2000: thanks! | ||
mberends | pmichaud: it was gravatar at the domain autoexec.demon.nl | 22:41 | |
Tene | pmichaud: I'm changing my pw now... you can add [email@hidden.address] | ||
wp username: tenebrackets | |||
pmichaud | tene: added | 22:42 | |
mberends: added | 22:43 | ||
mberends | pmichaud: it works, thanks :) | 22:44 | |
pmichaud | okay, time to take my wife to dinner -- bbiaw | 22:46 | |
colomon | pmichaud: actually, I think having you open up the meta operator idea will give me more space to get into the fun details of the hyper operators. | 22:47 | |
pmichaud | colomon: okay, good. | ||
22:47
payload joined
|
|||
pmichaud | I also didn't mention that someday the hypers can be multithreaded :) | 22:47 | |
okay, gone for a while | |||
colomon | afk, Guy Fieri Live show. :) | 22:49 | |
22:57
pnate joined
22:58
explorer__ joined
22:59
hanekom__ left,
nihiliad left
|
|||
zaslon | lolmoritzhazblogged! moritz++ 'Doubt and Confidence': perlgeek.de/blog-en/misc/doubt-and-...dence.html | 23:00 | |
23:04
jferrero left
|
|||
mberends | moritz_: s/extend/extent/ | 23:08 | |
23:09
pnate2 left
23:15
IllvilJa left
23:16
iblechbot left
23:30
snearch_ left
23:32
IllvilJa joined
23:39
colomon left
23:58
brrant left
|