»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg p6eval perl6: ... | irclog: irc.perl6.org/ | UTF-8 is our friend! Set by sorear on 4 February 2011. |
|||
flussence | rakudo: sub a { ... }; say a.perl | 00:00 | |
p6eval | rakudo cad076: OUTPUT«undef» | ||
flussence | those shouldn't be different, right? | ||
ash_ | rakudo: Exception.perl.say | ||
p6eval | rakudo cad076: OUTPUT«Exception» | ||
TimToady | rakudo: say a { ... }; say a.WHAT | 00:01 | |
p6eval | rakudo cad076: OUTPUT«Could not find sub &a in main program body at line 22:/tmp/dgmBeSUQjv» | ||
TimToady | rakudo: sub a { ... }; say a.WHAT | ||
ash_ | src/builtins/Exception.pir#93 has .return ('undef') | ||
p6eval | rakudo cad076: OUTPUT«Failure()» | ||
ash_ | that might be it... | ||
maybe? | |||
maybe its a pir level exception | |||
TimToady | koobee | ||
masak | src/builtins/Exception.pir, line 93. | 00:02 | |
flussence | yeah, builtins/Exception.p-... beat me to it :) | ||
ash_ | thats one of the only places i see it in the source as a string | ||
is that right? or should that return say... "Exception" or a Mu? | 00:03 | ||
masak | yeah, probably. | ||
TimToady | or Nil | ||
masak | now that there's a bit more traffic on the channel, I'd like to repeat my offer of some Yapsi LHF: irclog.perlgeek.de/perl6/2011-02-08#i_3268755 | 00:04 | |
00:04
lamstyle joined
|
|||
TimToady | rakudo: say (1+2i).fmt("%7.3f") | 00:04 | |
p6eval | rakudo cad076: OUTPUT«Not enough arguments supplied for the given format string in 'Cool::sprintf' at line 2732:CORE.setting in 'sprintf' at line 2766:CORE.setting in 'Cool::fmt' at line 2554:CORE.setting in main program body at line 22:/tmp/0G1BeFRg4R» | ||
TimToady | there's some LHF I think | ||
masak submits rakudobug | 00:05 | ||
ash_ | is that even possible? | 00:06 | |
masak | sure. | ||
ash_ | to print a complex number as a 7.3f? | ||
masak | should Complex be Cool? why? | ||
TimToady | the point is that .fmt tends to distribute formats over multiple values | ||
PerlJam | I guess that means both the real and imaginary components are 7.3f ? | ||
00:07
masak left
|
|||
TimToady | so it should turn it into .fmt('%7.3f+%7.3fi') or some such | 00:07 | |
rakudo: say (1,2,3).fmt("%7.3f") | 00:08 | ||
p6eval | rakudo cad076: OUTPUT« 1.000 2.000 3.000» | ||
ash_ | is there a 'i' for formats? | ||
for complex values | |||
00:08
masak joined
|
|||
TimToady | no, that's just a literal there | 00:08 | |
ash_ | maybe i am thinking about it wrong, but f would coerce into a real number i'd expect... | 00:09 | |
masak | ash_: .fmt is defined on Array, Hash, Pair... | ||
00:10
shi left
|
|||
masak | ash_: it dwims for structural types. could do the same for Complex. | 00:10 | |
TimToady | rakudo: my $c = 1+2i; printf("%7.3f+%7.3fi", $c.re, $c.im); | ||
p6eval | rakudo cad076: OUTPUT« 1.000+ 2.000i» | ||
flussence | .fmt('%d') will work if the imaginary part == 0, just checked | ||
TimToady | little formatting problem with that | ||
masak | actually, I'll retract my rakudobug. | 00:11 | |
I'd like this to be spec'd first. | |||
TimToady | :P | ||
PerlJam | too bad you can't send an email to specbug :) | ||
00:11
cdarroch left
|
|||
TimToady | rakudo: my $c = 1+2i; printf("%7.3f+%-7.3fi", $c.re, $c.im); | 00:12 | |
p6eval | rakudo cad076: OUTPUT« 1.000+2.000 i» | ||
TimToady | heh | ||
00:12
masak left
|
|||
TimToady | rakudo: my $c = 1+2i; printf("%7.3f+%.3fi", $c.re, $c.im); | 00:12 | |
p6eval | rakudo cad076: OUTPUT« 1.000+2.000i» | ||
TimToady | not sure that makes sense though | 00:13 | |
is there any prior art for complex printf formats? | |||
00:15
masak joined
|
|||
ash_ | none in C99... #checking elsewhere | 00:15 | |
PerlJam | Google didn't turn up anything other than formatting the real and imaginary parts separately | ||
TimToady | rakudo: say (1,2).fmt("%7.3f+%7.3fi") | 00:18 | |
p6eval | rakudo cad076: OUTPUT«Not enough arguments supplied for the given format string in 'Cool::sprintf' at line 2732:CORE.setting in 'sprintf' at line 2766:CORE.setting in 'Cool::fmt' at line 2554:CORE.setting in <anon> at line 2803:CORE.setting in 'Any::join' at line 1 in 'List::fmt' at | ||
..line 280… | |||
TimToady | rakudo: say (1,2).fmt("%7.3f+","%7.3fi") | ||
p6eval | rakudo cad076: OUTPUT« 1.000+%7.3fi 2.000+» | 00:19 | |
ash_ | ruby will let you just do %s which just calls to_s, so... they look like "(1+1i)" | ||
so... far... nope prior art i can find | |||
TimToady | well, sure, but there's no justification :) | ||
rakudo: say (1+2i).fmt("%s") | 00:20 | ||
p6eval | rakudo cad076: OUTPUT«1 + 2i» | ||
TimToady | ooh, spaces | ||
masak | spaces++ | 00:21 | |
TimToady | rakudo: say ~(1+2i).^methods | ||
p6eval | rakudo cad076: OUTPUT«new reals isNaN Real Bool Complex Str perl abs exp ln sqrt roots polar sin asin cos acos tan atan sec asec cosec acosec cotan acotan sinh asinh cosh acosh tanh atanh sech asech cosech acosech cotanh acotanh ACCEPTS Numeric Int Rat Num succ pred log log10 to-radians | ||
..from-radians sig… | |||
TimToady | rakudo: say ~(1+2i).^methods(:local) | ||
p6eval | rakudo cad076: OUTPUT«new reals isNaN Real Bool Complex Str perl abs exp ln sqrt roots polar sin asin cos acos tan atan sec asec cosec acosec cotan acotan sinh asinh cosh acosh tanh atanh sech asech cosech acosech cotanh acotanh ACCEPTS Numeric Int Rat Num succ pred log log10 to-radians | 00:22 | |
..from-radians sig… | |||
TimToady | is there a method that pulls out .re and .im as a list | ||
00:22
leprevost left,
rgrau left
|
|||
flussence | .reals | 00:23 | |
00:23
leprevost joined
|
|||
PerlJam | that's so misnamed | 00:23 | |
TimToady | say (1+2i).reals.fmt("%7.3f") | ||
masak | what PerlJam said. | 00:24 | |
TimToady | rakudo: say (1+2i).reals.fmt("%7.3f") | ||
p6eval | rakudo cad076: OUTPUT« 1.000 2.000» | ||
masak considers getting a #perl6 badge "API naming curmudgeon" | |||
wtf, .reals exists?! | |||
TimToady | it should obviously be named .reim | ||
masak submits rakudobug | |||
PerlJam | masak: yeah, I thought he was joking too | ||
masak++ | 00:25 | ||
masak | whoever named that function, come talk with me at the end of the day. :) | ||
PerlJam | TimToady: .re+im :) | ||
flussence | I'm of the opinion that Rat and Complex should use the same name for this list thing, but * | ||
TimToady | rakudo: say (1+2i).nude | ||
p6eval | rakudo cad076: OUTPUT«Method 'nude' not found for invocant of class 'Complex' in main program body at line 22:/tmp/zJoJMNE7FJ» | ||
masak | flussence: only if you can beat both .nude and .reim in general cuteness :) | 00:26 | |
PerlJam | .nude kind of works for them all (you're having a peek underneath their classy clothes to see them naked) | 00:27 | |
TimToady | but what if you have a complex rat? | ||
or a rat with a complex? | |||
masak | PerlJam: I wouldn't like having .nude on Complex... | ||
flussence | .List or .Array would technically fit, but I can imagine such things confusing a lot of users. | 00:28 | |
masak | that'd be as if *we* hadn't gotten the pun. | ||
flussence: no please no | |||
flussence | not a serious suggestion :) | ||
PerlJam | I tend to think "components" when I'm looking at the innards of a Complex (or Rat) | ||
TimToady | "Can opener is required to open this can." | ||
masak | flussence: that's the same kind of thinko as arbritary rules for scalarifying lists. | ||
00:29
brill joined
|
|||
TimToady whistles | 00:29 | ||
masak | :D | ||
maybe there's a more general problem that calls for a solution? | |||
something like "list all the public attributes"? | |||
PerlJam | $complex.list works for me :) | ||
@($complex) would be the same too I think | 00:30 | ||
TimToady | $complex.naughty-bits | ||
wolverian | .guts | ||
masak | PerlJam: my "you think it's cute now" lamp is lit on Complex.list | ||
PerlJam | wolverian: people might have difficulty with Rat.guts | 00:31 | |
flussence | there's .^attributes for the general case, that's not very easy to use for this though | 00:33 | |
masak | and those people would be perfectly ok with Rat.nude? :) | ||
TimToady | we already have naked mole rats | ||
masak | flussence: also, .^attributes makes no distinction between private and public attrs. | 00:34 | |
PerlJam | .reals makes me with for we could mix modifiers like this: .fmt for .reals given $complex; # :) | ||
masak | 'for .reals' :P | ||
PerlJam | s/with/wish/ | ||
flussence | why can't we have ^attributes(:public|:private|:all) then, like ^methods does? :( | ||
PerlJam | actually ... s/with for/wish/ | ||
masak | PerlJam: you can, if you put parens around the first for loop. | 00:35 | |
ash_ | masak: is that going to change ever? .^attributes i mean, just wondering, not that its a bad thing i guess just curious | ||
TimToady | rakudo: say (1+2i).map({.re,.im}).fmt("%7.3f") | ||
PerlJam | yeah, but parens spoil it just a little | ||
p6eval | rakudo cad076: OUTPUT« 1.000 2.000» | ||
masak | flussence: that's probably a good idea. | ||
flussence | I know you can filter them with a map, but :thingies is nicer to look at | ||
masak | yeah. | ||
guess it's jnthn's call. | |||
one'd have to be careful not to discriminate "public" attributes that are implemented as private attributes with an explicit accessor. | 00:36 | ||
flussence | S12:2261 looks relevant to that | 00:42 | |
(that method list there looks unnecessarily complicated to me) | 00:45 | ||
00:49
molaf left
00:51
vmspb left
|
|||
masak gets back to looking at what's wrong with .trans | 00:51 | ||
PerlJam | rakudo: 1-2i | 00:53 | |
p6eval | rakudo cad076: ( no output ) | ||
PerlJam | rakudo: say 1-2i | ||
p6eval | rakudo cad076: OUTPUT«1 + -2i» | ||
PerlJam | anyone care if I make that output 1 - 2i ? | ||
or, does anyone have any objections I should say | 00:54 | ||
masak | I was sitting here wondering if I should bring it up... :) | ||
so, +1 from me | |||
coldhead | the terser form saves bandwidth and soothes mathematicians | 00:55 | |
masak | rakudo: say "!$_!" for 1.trans((1..26) => (14..26,1..13)), 2.trans((1..26) => (14..26,1..13)) | 00:56 | |
p6eval | rakudo cad076: OUTPUT«No candidates found to invoke for method 'increment_index' on object of type 'LSM'; available candidates have signatures::(Mu : Regex $s;; *%_):(Mu : Str $s;; *%_) in 'Cool::next_substitution' at line 2466:CORE.setting in 'Cool::trans' at line 2512:CORE.setting in | ||
..main pro… | |||
masak | oh, right. | ||
masak pushes his commit | |||
00:56
ash_ left
00:58
brill left
|
|||
masak | as soon as the above commit propagates to p6eval, I'll be able to show that the output of the above is "!14!\n!15!\n" (as expected), whereas if I do it as (1, 2)>>.trans(...), it comes out as "!14!\n!!\n". | 01:00 | |
er, s/above // | |||
01:01
benabik_ joined,
benabik_ left
|
|||
dalek | kudo: 184bf7f | masak++ | src/core/Cool-str.pm: [core/Cool-str] s/Str/Cool/ inside .trans Courtesy of Håkan Kjellerstrand. |
01:01 | |
01:02
benabik_ joined
01:03
molaf joined
01:05
ash_ joined,
felliott joined
01:06
felliott left
|
|||
masak | hm, this would be handled by !dispatch_dispatcher_parallel in src/glue/dispatch.pir ... | 01:07 | |
it looks like perfectly innocent PIR code. | |||
"I notice that I am confused." | |||
01:08
dukeleto left,
dukeleto joined
01:09
aesop joined
|
|||
masak | doing the calls one after the other gives the desired result. doing the calls one after the other using the postfix_prefix_metaoperator Texas thingy doesn't give the desired result. there's nothing obviously wrong with the code that handles the dispatch. | 01:09 | |
01:09
dukeleto left
|
|||
masak broods | 01:09 | ||
01:09
dukeleto joined
|
|||
masak | rakudo: say "!$_!" for ("a", "b")>>.trans(("a", "b") => ("A", "B")) | 01:11 | |
p6eval | rakudo cad076: OUTPUT«!A!!b!» | ||
masak | rakudo: say "!$_!" for ("a", "b")>>.trans(["a", "b"] => ["A", "B"]) | ||
p6eval | rakudo cad076: OUTPUT«!A!!B!» | ||
masak | that's probably a clue. | ||
masak re-reads S05 | |||
01:12
brill joined
01:13
benabik_ left
|
|||
masak | TimToady: S05:4138 -- why would I want to sort a bunch of Pairs, if these are sent to an LTM anyway? | 01:13 | |
feels like a very unrealistic example. | |||
PerlJam | great. A *simple* change to rakudo and now my build gives a segfault. | ||
masak | oh wait. there is cause for .sort -- "In the case of two identical sequences the first in order wins." | 01:15 | |
TimToady | but %mapping can't produce that | 01:16 | |
masak | oh, right. | ||
TimToady | unless %mapping is bound to something not very hashy | ||
feel free to fix | |||
masak fixes | |||
01:17
BinGOs joined,
edenc joined
|
|||
dalek | ecs: 44aa7e1 | masak++ | S05-regex.pod: [S05] removed redundant .sort Sorting a bunch of pairs going into an LTM that disregards order is kinda silly. |
01:17 | |
masak | next on the agenda... | 01:18 | |
what should happen in the above case, with ("a", "b") instead of ["a", "b"]? | |||
S05 explicitly requests "Array objects", but it just seems that people will do this and expect the same result with Seq, or whatever the type is for ("a", "b"). | 01:19 | ||
rakudo: say ("a", "b").WHAT | |||
p6eval | rakudo cad076: OUTPUT«Parcel()» | ||
masak | Parcel. | ||
ETOOMANYTYPESPRETENDINGTOBELIST | |||
ash_ | i agree masak, there are a bunch of things that seem to be lists but not, i find it confusing at times to be honest | 01:20 | |
masak | confusing? yeah! | ||
flip side is, I guess, that if we accept a Parcel, then we have to have a plan for tackling named things. | 01:21 | ||
("a", :c, "b") | |||
Tene finally reads about (?PARNO) and (?&NAME) in perlre | |||
Tene really wants to use perl 6 grammars at work, but is still stuck on 5.8.4 on many hosts | 01:22 | ||
in the process of upgrading, but it's slow... | |||
ash_ | is there a perl5 module that approximates grammars? | 01:23 | |
perlbrew? | |||
masak | ash_: try search.cpan.org/~dconway/Regexp-Gra...rammars.pm | 01:24 | |
Tene | ash_: Better for me to spend my effort actually upgrading our infrastructure. | ||
masak | although 5.12 partially provides what Regexp::Grammars did for older Perls, IIUC. | ||
rakudo: say "!$_!" for 1.trans((1..26) => (14..26,1..13)), 2.trans((1..26) => (14..26,1..13)) | 01:25 | ||
p6eval | rakudo cad076: OUTPUT«No candidates found to invoke for method 'increment_index' on object of type 'LSM'; available candidates have signatures::(Mu : Regex $s;; *%_):(Mu : Str $s;; *%_) in 'Cool::next_substitution' at line 2466:CORE.setting in 'Cool::trans' at line 2512:CORE.setting in | ||
..main pro… | |||
masak | ETOOSOON | ||
ah, well. | 01:26 | ||
'night, #perl6. | |||
PerlJam | good night masak | ||
ash_ | night | ||
01:26
masak left
01:34
asarch joined
01:36
envi joined
01:43
eternaleye left
01:44
orafu joined
01:46
eternaleye joined,
jimbob joined
01:58
jimbob left
02:00
charsbr__ left,
sECuRE left
02:02
ryan_ joined
02:04
noganex left
02:05
felliott joined
02:06
noganex joined
|
|||
dalek | ecs: bf8cb5a | larry++ | S05-regex.pod: spec set ops and parens for character classes This is in support of TR18 1.3 requirements. |
02:07 | |
02:07
pochi left
|
|||
ryan_ | is perl6 doing anything with google summer of code? | 02:07 | |
02:07
kjeldahl joined,
kjeldahl_ left
|
|||
TimToady | dukeleto++ is organizing that | 02:09 | |
02:11
charsbr__ joined
02:16
leprevost left
02:18
asarch left
02:22
pochi joined
02:26
am0c joined
02:33
whiteknight left
02:34
ash_ left
02:43
rhr left
02:45
rhr joined
02:46
stkowski left
|
|||
ryan_ | Thanks TimToady | 02:47 | |
02:48
ymasory_ joined
02:53
ymasory_ left
02:59
lukas___ left
03:13
ryan_ left
03:14
eternaleye left
03:15
eternaleye joined
03:16
arlinius joined
03:42
simcop2387 left
03:48
simcop2387 joined
03:52
satyavvd joined
03:56
colomon joined
04:16
eternaleye left,
eternaleye joined
04:21
am0c left,
envi left,
edenc left,
drbean left,
shortcircuit left,
sftp left,
wooden left,
pothos left,
uniejo left,
Eevee left,
flatwhatson left,
VXZ left,
tty234 left,
benabik left,
pnu left,
Tene left,
satyavvd left,
charsbr__ left,
_ilbot left,
kjeldahlw left,
pyrimidine left,
ofir left,
barika left,
cotto_work left,
BinGOs left,
cosimo left,
wiseguyxp left,
coldhead left,
skangas left,
thepler left,
ponbiki left,
Tedd1 left,
Sarten-X left
04:22
Vlavv_ left,
justatheory left,
[Coke] left,
mkramer left,
ruoso left,
takadonet left,
huf left,
varna left,
felliott left,
dukeleto left,
aesop left,
mtk left,
_jaldhar left,
Su-Shee left,
aindilis left,
cafesofie left,
PacoLinux left,
ymasory left,
s1n left,
sjohnson left,
Lorn left,
Hackbinary left,
patch left,
mdxi left,
rhr left,
kjeldahl left,
nadim_ left,
literal left,
hudnix left,
jonnie left,
gottreu left,
robinsmidsrod left,
ashleydev left,
cognominal left,
Gothmog_ left,
jferrero left,
solarion left,
felipe left
04:24
Su-Shee joined
04:25
Su-Shee is now known as 17SAAWXCD,
satyavvd joined,
rhr joined,
am0c joined,
charsbr__ joined,
kjeldahl joined,
envi joined,
edenc joined,
BinGOs joined,
dukeleto joined,
aesop joined,
cosimo joined,
drbean joined,
flatwhatson joined,
wiseguyxp joined,
Sarten-X joined,
coldhead joined,
Vlavv_ joined,
ashleydev joined,
VXZ joined,
nadim_ joined,
_ilbot joined,
justatheory joined,
skangas joined,
mtk joined,
_jaldhar joined,
Gothmog_ joined,
Su-Shee joined,
kjeldahlw joined,
aindilis joined,
ymasory joined,
pyrimidine joined,
cafesofie joined,
shortcircuit joined,
thepler joined,
PacoLinux joined,
[Coke] joined,
literal joined,
sftp joined,
hudnix joined,
wooden joined,
ofir joined,
jferrero joined,
Hackbinary joined,
jonnie joined,
solarion joined,
tty234 joined,
barika joined,
mkramer joined,
pothos joined,
ponbiki joined,
s1n joined,
ruoso joined,
Tedd1 joined,
uniejo joined,
benabik joined,
pnu joined,
takadonet joined,
sjohnson joined,
huf joined,
gottreu joined,
cotto_work joined,
Tene joined,
Lorn joined,
Eevee joined,
PZt joined,
ascent_ joined,
LoRe joined,
snarkyboojum joined,
hugme joined,
lopaway joined,
starcoder2 joined,
llabthgie joined,
TimToady joined,
necrodearia joined,
tomaw joined,
ddima joined,
nrr joined,
Grrrr joined,
cschimm1 joined,
gabiruh joined,
chitragupt joined,
sorear joined,
yves joined,
revdiablo joined,
peters_mops joined,
perigrin joined,
krakan_ joined,
jpr5 joined,
nsh- joined,
patch joined,
varna joined,
larsen joined,
Khisanth joined,
jnthn joined,
calvino.freenode.net sets mode: +v hugme,
mathw joined,
betterworld joined,
frooh joined,
stepnem joined,
Bucciarati joined,
mj41 joined,
mdxi joined,
robinsmidsrod joined
04:28
BinGOs left,
cosimo left,
wiseguyxp left,
coldhead left,
skangas left,
thepler left,
ponbiki left,
Tedd1 left,
kjeldahl left,
kjeldahlw left,
kjeldahlw joined,
kjeldahl joined,
Su-Shee left
|
|||
sorear | good * #perl6 | 04:28 | |
04:28
ymasory_ joined
04:29
hudnix left,
hudnix joined,
cognominal joined,
pmichaud_ joined,
BinGOs joined,
cosimo joined,
wiseguyxp joined,
coldhead joined,
skangas joined,
thepler joined,
ponbiki joined,
Tedd1 joined
04:30
kaare__ joined,
kaare_ left
|
|||
Tene | SOREAR | 04:31 | |
Yes, good *. | |||
sorear | phenny: tell masak I said github issue numbers were non-monotonic once. I haven't brought it up since then because it turned out to be wrong. | 04:34 | |
phenny | sorear: I'll pass that on when masak is around. | ||
sorear | TimToady: niecza has a slightly different iterator implementation from Rakudo which is much faster. Think I should push for it to be specced instead? :) | 04:35 | |
Tene | sorear: I do. | 04:37 | |
04:37
agentzh joined
|
|||
TimToady | fast is good | 04:43 | |
at least until it's bad | |||
there's always fast and wrong :) | 04:44 | ||
sorear | Tene: ? | 04:45 | |
"SOREAR" | |||
Tene | sorear: Just a vague greeting. | 04:46 | |
sorear | "fast and slightly wrong" may become "fast and right" | 04:48 | |
once there's more consensus on what cheats are actually needed, the spec can be loosened | |||
probably noone would have thought to include nondeterministic rounding if C were designed top-down, but it turned out to be needed | 04:49 | ||
04:51
stifynsemons joined
04:52
drbean left,
stifynsemons left
04:53
stifynsemons joined
|
|||
dalek | ecs: a99b93d | larry++ | S05-regex.pod: more level 1 Unicode conformance verbiage |
04:55 | |
sorear | so, I'm generally happy to cut corners if I think there's an essential benefit to it | 05:01 | |
05:07
ymasory_ left
05:11
felipe joined
|
|||
sorear | TimToady: so you regard { $<foo> = 2 } as a cheat? | 05:17 | |
TimToady | yeah | 05:18 | |
sorear | What do you think of Niecza's $<foo> = {2} block binding syntax? | ||
TimToady | it can probably de-cheat at need more handily than the assignment within a block | 05:20 | |
sorear | cannot parse "de-cheat at" | ||
does S05:1605 describe a third operator precedence grammar? | 05:21 | ||
TimToady | that binding can be implemented on immutable cursors more easily, if it needs to be | ||
since we have control of the internal cursor propagation at that point | |||
sorear | niecza has mostly-immutable cursors | ||
I changed niecza's STD.pm6 to use $<foo> = {2} syntax | |||
05:22
arlinius left
|
|||
TimToady | STD's are immutable most of the time too | 05:22 | |
sorear | although it's not quite completely compatible - no good way to set <sig> etc | ||
niecza's are completely immutable except for &make | |||
the &make mechanism could in principle be extended to $<foo> = 2 | 05:23 | ||
TimToady | we can use something other than assignment within a block | ||
sorear | I mean $<foo> := 2 | ||
TimToady | $¢ = $¢.addname('foo',42) | ||
then the new cursor doesn't have to be the same as the old one | 05:24 | ||
or it can cheat if it likes, and return itself | |||
but that can be an internal policy | |||
sorear | What are the semantics of assigning to $¢? | ||
TimToady | ref to Cursor | 05:25 | |
in P5 terms | |||
basically construct a new cursor out of the old one | |||
could implement some internal COW semantics | 05:26 | ||
sorear | I'm thinking the reasonable way to do this is to make $¢ be bound to something with set magic | ||
TimToady | or maybe we have enough static info to decide in advance | ||
don't know what you mean by "set magic" | 05:27 | ||
you do have to be careful to revert the bindings if you revert to an earlier cursor | |||
strictly immutable cursors never have to be concerned about that | 05:28 | ||
05:28
mtk left
|
|||
TimToady | STD cheats mostly only in stretches it knows can't backtrack | 05:28 | |
sorear | TimToady: I mean set magic in the Perl 5 sense | 05:31 | |
variables that run special code when assigned to | |||
TimToady | I don't think tying the cursors is going to speed anything up :/ | 05:32 | |
05:36
mtk joined
|
|||
sorear | TimToady: What sort of precedence grammar is created ca. S05:1605? | 05:39 | |
05:41
arlinius joined
|
|||
TimToady | I think it should either be flat, or follow the same precedence as the correspondingly named operators in S03 | 05:43 | |
sorear | TimToady: can you explain the new semantics of ? in terms of %*BINDINGS and $*PLURALITY? | ||
sorear looks forward to implementing the new regex stuff | 05:44 | ||
TimToady | I think the key is at viv:4238 | 05:48 | |
it shouldn't set PLURALITY to 2 on a simple ? | 05:49 | ||
sorear | 4238 is a comment here | ||
TimToady | hmm, in RE_quantified atom, walk() | ||
first local there | |||
_walk, actually | 05:50 | ||
line sez: local $::PLURALITY = 2; | |||
that assume any quantifier forces plurality | 05:51 | ||
*assumes | |||
sorear | Under what conditions should a read return Nil? | ||
As opposed to Any | |||
TimToady | as long as it comes out undefined somehow, I guess I'm not too picky | 05:52 | |
but Any tends to mean more like "uninitialized" while Nil tends to mean more like "missing" | 05:53 | ||
the difference is that Any interpolates in a list as Any, while Nil turns into () | 05:54 | ||
and if you print out "Nil" it looks emptier to people :) | 05:55 | ||
sorear | TimToady: Does Nil come in interpolating and non-interpolating flavors like [] / @([]) ? | 06:00 | |
TimToady | Nil is more like () than like [], so I suspect not | 06:05 | |
06:05
kaare__ is now known as kaare_
|
|||
szabgab | building rakudo failed on linux :( | 06:06 | |
starting again | |||
parrot failed to build: pastebin.com/nSrjEnNN | 06:12 | ||
dukeleto | o/ | 06:19 | |
szabgab | hmm, running --gen-parrot and then make realclean several times seemed to help cleaning it up and nowthe parrot generation worked | 06:21 | |
06:23
cjk101010 joined
06:30
arlinius left
|
|||
szabgab | oh good, I have running perl 6 again on my computer, now I can go back doing something else :) | 06:31 | |
06:31
woosley joined
06:54
arlinius joined
|
|||
sorear out | 06:54 | ||
06:57
Mowah joined
07:00
cafesofie left,
eternaleye left,
cafesofie joined
07:03
stifynsemons left
07:12
mayuresh joined,
mayuresh left,
hugme left
07:13
pmichaud_ left,
pmichaud joined
07:14
tadzik joined,
hatseflats joined
07:16
eternaleye joined
07:28
cosimo left
|
|||
snarkyboojum | I enjoy reading these sorear/TimToady QA sessions :) | 07:28 | |
07:29
justatheory left
07:45
agentzh left
07:47
Chirag joined
|
|||
Chirag | Hello Everyone | 07:47 | |
07:47
agentzh joined
|
|||
Chirag | Perl 6!hmmm | 07:48 | |
TimToady | howdy | ||
07:48
eternaleye left
07:49
vutekija joined
07:52
texasman23 joined
|
|||
texasman23 | hi | 07:52 | |
3 | 07:54 | ||
07:54
texasman23 left,
satyavvd left
08:01
satyavvd joined,
satyavvd left
08:02
wiseguyxp left
08:04
eternaleye joined,
satyavvd_ joined
08:06
17SAAWXCD is now known as Su-Shee
08:10
eternaleye left,
eternaleye joined
08:11
wiseguyxp joined
08:13
Chirag left
08:14
shi joined
08:16
texasman23 joined
|
|||
texasman23 | hi everyone | 08:17 | |
moritz_ | good morning | ||
texasman23 | where you all from | ||
08:17
HarryS joined
|
|||
texasman23 | its 1am here | 08:18 | |
moritz_ | most of us are from North America, Europe and Asia | ||
though the occasional Australian does sneak in :-) | |||
UTC+1 here | |||
texasman23 | im from usa | ||
TimToady | pmichaud is from texas, but he's probably asleep | 08:19 | |
moritz_ | szabgab: when you get "This Parrot cannot read bytecode files with version ...", you should rm -rf parrot_install and cd parrot; git clean -xdf | ||
texasman23 | where's everyone? this chat looks dead | 08:20 | |
tadzik | it's 9 AM in here | ||
moritz_ | tadzik: not dead at all... look at irclog.perlgeek.de/perl6/today to get an idea for the activity level here | ||
sorry, meant texasman23 | |||
moritz_ needs to go to $work | 08:21 | ||
texasman23 | well there is 234 users and looks like we are the only ones talking here | ||
08:22
texasman23 left
|
|||
dukeleto sometimes talks in his sleep | 08:25 | ||
moritz_: any chance we can get a backtrace for Rakudo coredump on the generational_gc branch? | 08:27 | ||
08:29
Chillance joined
|
|||
jnthn | morning o/ | 08:33 | |
Tene | dukeleto: bacek says he has a secret mystery patch for rakudo at home | 08:35 | |
jnthn | dukeleto: iiuc, it's probably pointless to do so unless bacek++'s patch is applied. | ||
Tene | moritz_: it's polite, when telling people to git clean -xdf, to give them a warning that it will delete any files they may have been keeping in rakudo's root. | ||
I've bit myself that way a few times, when leaving a short test or experiment in rakudo's root dir. | 08:36 | ||
and I've found others to be far less dutiful at reading man pages than I am | |||
08:38
wiseguyxp left
|
|||
moritz_ | Tene: you're right; though I want to point out that I recommended it for a parrot/ that was checked out with --gen-parrot, where the chances of own files are much smaller | 08:50 | |
dukeleto | git clean and git reset are the only git commands will delete uncommitted files. Good to know. | 08:52 | |
Tene | moritz_: you also want to clean the rakudo repo. the "bytecode files with version ..." are at least sometimes rakudo's .pbc | 08:54 | |
'make clean' should be sufficient there, though | 08:55 | ||
moritz_ | Tene: yes, szabgab++ already did that | 08:57 | |
if parrot just printed the name of the offending file, it would be much easier to diagnose | |||
Tene | What, you mean I'm supposed to read the *context* before spewing advice? That's SO much WORK... | 09:00 | |
:) | 09:01 | ||
That should be a very simple patch, actually... | |||
moritz_ | I've opened a parrot ticket for that, let me find it for you... | 09:02 | |
Tene: trac.parrot.org/parrot/ticket/1833 | |||
moritz_ changes the title to include the need for the file name | 09:03 | ||
09:12
lolo_91 joined
09:13
cls_bsd joined
|
|||
bacek | ~~ | 09:18 | |
jnthn, initial patch for rakudo nopasted to #parrot. It's a start but not enough. | |||
jnthn | bacek: Have you got a doc somewhere of where the write barriers have to be put? | 09:19 | |
I guess we're going to have to do a bunch of this in the 6model core too :) | |||
bacek | jnthn, nope. But basic idea is - if you are changing PMC guts outside of VTABLE marked with :write than you have to put it. | 09:20 | |
09:20
daxim joined
|
|||
bacek | For 6model I'll take a look. | 09:20 | |
jnthn | bacek: By PMC guts you mean, things that the PMC holds a reference too? | 09:22 | |
bacek | jnthn, yes. | ||
moritz_ | (still segfaults with the patch) | ||
bacek | jnthn, take a loot at patch. It will give you an idea. | ||
jnthn | OK, so to take, e.g. | ||
named_to_pos_cache = pmc_new(interp, enum_class_Hash); | |||
+ PARROT_GC_WRITE_BARRIER(interp, llsig); | |||
SETATTR_P6LowLevelSig_named_to_pos_cache(interp, llsig, named_to_pos_cache); | |||
Then I have to put in the write barrier just before I SETATTR? | 09:23 | ||
bacek | moritz_, I know. Compiling Attributes.nqp? | ||
moritz_ | compiling src/Perl6/Grammar.pm | ||
jnthn | Are the SETATTR macros special? | ||
bacek | jnthn, nope. I just put WB close to point where guts changed. | 09:24 | |
--- a/src/pmc/class.pmc | |||
+++ b/src/pmc/class.pmc | |||
@@ -543,6 +543,7 @@ make_class_name(PARROT_INTERP, ARGIN(PMC *SELF)) | |||
if (!PMC_IS_NULL(names)) | |||
/* remove the HLL namespace name */ | |||
VTABLE_shift_string(interp, names); | |||
+ PARROT_GC_WRITE_BARRIER(interp, SELF); | |||
_class->fullname = Parrot_str_join(interp, CONST_STRING(interp, | |||
return _class->fullname; | |||
} | |||
This is another example. | |||
09:25
lolo_91 left
|
|||
moritz_ | so, whenever heap memory is changed? | 09:25 | |
jnthn | bacek: It needs to come *before* the change is made though? Or that doesn't matter? | ||
bacek | jnthn, doesn't matter. But after possible GC. E.g. allocate new PMC. | ||
moritz_, whenever after GC can be triggered. | 09:26 | ||
moritz_ | I don't know what can trigger a GC run | 09:29 | |
bacek | moritz_, any allocation of pmc/string. | ||
pmc_new, str_join, etc | |||
moritz_ | does the C API declare which functions allocate new PMCs or strings? | 09:34 | |
bacek | moritz_, hmm. Unlikely. | 09:35 | |
09:42
coldhead left
09:43
coldhead joined
09:45
shi left
09:48
wtw joined
09:49
shi joined
09:54
Alias_ joined
09:57
drbean joined
|
|||
jnthn | bacek: OK, thanks. I'll take a look at it and see how 6model works out on it. | 10:08 | |
10:12
masak joined
|
|||
masak | hi, zebras. | 10:12 | |
phenny | masak: 04:34Z <sorear> tell masak I said github issue numbers were non-monotonic once. I haven't brought it up since then because it turned out to be wrong. | ||
masak | ok. | ||
jnthn | yayitsmasak! | ||
masak | \o/ | ||
rakudo: say "!$_!" for 1.trans((1..26) => (14..26,1..13)), 2.trans((1..26) => (14..26,1..13)) | 10:17 | ||
p6eval | rakudo 184bf7: OUTPUT«!14!!15!» | ||
masak | rakudo: say "!$_!" for (1, 2)>>.trans((1..26) => (14..26,1..13)) | ||
p6eval | rakudo 184bf7: OUTPUT«!14!!!» | 10:18 | |
masak submits rakudobug | 10:19 | ||
10:24
dakkar joined
|
|||
masak | rakudo: say "!$_!" for (1, 2)>>.trans([1..26] => [14..26,1..13]) | 10:27 | |
p6eval | rakudo 184bf7: OUTPUT«!14!!15!» | 10:28 | |
masak | could this be -- *gasp* -- an iterator-related bug? | ||
jnthn | duh duh DUUUHHH! | 10:29 | |
masak does a "melodramatic squirrel" look | 10:30 | ||
10:38
agentzh left
10:45
Trashlord left
10:55
wolfram_ joined
|
|||
wolfram_ | TimToady: I do use complex. Would have been quite a mess to get an FFT running without. $twd is purely imaginary. | 10:59 | |
phenny | wolfram_: 08 Feb 23:43Z <TimToady> ask wolfram_ /me is kinda wondering why you used evens and odds instead of the complex numbers that Perl 6 has built in... | ||
wolfram_ | That makes (^@odd).map(* * $twd)».exp a sequence of evenly spaced values on the unit circle in the complex number plane. | 11:00 | |
The even and odd are due to the way the Cooley–Tukey FFT algorithm works (butterfly graphs) | 11:01 | ||
moritz_ | wolfram_: you can get the evenly spaced values on the unit circle also by using (1+0i).roots($number) | 11:02 | |
rakudo: say ~(1+0i).roots(4) | |||
p6eval | rakudo 184bf7: OUTPUT«1 + 0i 6.12323399573677e-17 + 1i -1 + 1.22464679914735e-16i -1.83697019872103e-16 + -1i» | ||
wolfram_ | You separate a sum into it's even and odd components and discover that once you factor out a complex value, you are left with 2 smaller FFTs to calculate. | 11:03 | |
moritz_ | rakudo: say (1+0i).roots(4).join(' ') | ||
p6eval | rakudo 184bf7: OUTPUT«1 + 0i 6.12323399573677e-17 + 1i -1 + 1.22464679914735e-16i -1.83697019872103e-16 + -1i» | ||
wolfram_ | Also remember that the input sequence of the FFT may well be comlex numbers already. Either because you do an ifft using the fft or you have a complex time domain series (-> analytic signal, Hilbert transform) | 11:04 | |
masak | wolfram_++ # butterfly graph | 11:07 | |
wolfram_ | moritz_: I'll have a look if that can be used. Thanks. | ||
moritz_ | rakudo: say (1+0i).roots(4)>>.polar.perl | 11:09 | |
p6eval | rakudo 184bf7: OUTPUT«((1, 0), (1, 1.5707963267949), (1, 3.14159265358979), (1, -1.5707963267949))» | ||
moritz_ | rakudo: say (1+0i).roots(4)>>.polar>>.[1].perl | ||
p6eval | rakudo 184bf7: OUTPUT«(undef, undef, undef, undef, undef, undef, undef, undef)» | ||
moritz_ | urks | ||
coldhead | that looks much harder to graph | ||
moritz_ | rakudo: say (1+0i).roots(4)>>.polar.[1, 3, 5, 7].perl | ||
p6eval | rakudo 184bf7: OUTPUT«(0, 1.5707963267949, 3.14159265358979, -1.5707963267949)» | 11:10 | |
moritz_ | rakudo: say ((1+0i).roots(4)>>.polar.[1, 3, 5, 7] X* (180 / pi)).perl | ||
p6eval | rakudo 184bf7: OUTPUT«(0, 90, 180, -90)» | ||
wolfram_ | Why did .[1] not work? | 11:11 | |
moritz_ | rakudo: say ((1+0i).roots(8)>>.polar.[1, 3 ... 15] X* (180 / pi)).perl | ||
p6eval | rakudo 184bf7: OUTPUT«(0, 45, 90, 135, 180, -135, -90, -45)» | ||
moritz_ | wolfram_: because >> flattens | ||
wolfram_ | Ah, just looked at [1] and [1, 3, 5, 7]. Didn't see other changes. | 11:12 | |
moritz_ | anyway, I admire compactly written algorithms that are still readable :-) | 11:14 | |
wolfram_ | What's the opposite of .polar? i.e. polar to rectangular | 11:15 | |
flussence | .unpolar | 11:16 | |
wolfram_ | Thanks | 11:17 | |
flussence | or .cis, according to S32/Numeric | ||
wolfram_ | .cis ? That's either german music (cis = c sharp) or chemistry (cis and trans) to me. | 11:18 | |
11:21
jarfhy left
|
|||
masak | 'cis' might here be an abbreviation for 'cos + i * sin'. | 11:22 | |
if you ask me, having both .unpolar and .cis feels a little unnecessary. | |||
moritz_ | but it's very unintuitive if you are used to exp(I arg) :-) | 11:23 | |
wolfram_ | Just also looked at S32/Numeric. Cis is 1.unpolar, so here we have another way to get values on the complex unit circle. | 11:24 | |
11:26
wolfram__ joined
|
|||
masak | & | 11:26 | |
11:28
wolfram_ left,
wolfram__ left
11:29
wolfram_ joined
|
|||
tadzik | why german music? Cis is international | 11:29 | |
wolfram_ | moritz_: but maybe cis can be implemented to be efficient that complex exp | 11:30 | |
tadzik: thought it was c-sharp, c-flat in english at least | 11:31 | ||
s/efficient that/more efficient than/ | 11:32 | ||
colomon | Yes, Cis is definitely not used in music in America. | 11:34 | |
wolfram_ | Maybe it's cis everywhere else in the world. Just like aluminium :-) | 11:36 | |
colomon | I'm never gotten the impression it's used anywhere there are English speakers. | 11:37 | |
tadzik | hmm, weird | 11:39 | |
wolfram_ | Fortunately americans don't use demi-semi-quavers | ||
tadzik | so you don't use bemolle either? | 11:40 | |
colomon | I don't even know what it is. | ||
tadzik | it's the Flat | ||
colomon | (And that's with 28 years of playing classic music under my belt.) | ||
tadzik | F♭ | ||
daxim | b-moll moll is "minor", dur is "major" | ||
colomon | I knew moll for minor, but that only ever crops up in the names of pieces of music printed overseas, in my experience. :) | 11:41 | |
11:42
satyavvd_ left
|
|||
daxim | do not worry, once I become emperor of the world, I will standardise on the appropriate terms | 11:42 | |
tadzik | and remove timezones | ||
wolfram_ | And demisemiquavers are here: en.wikipedia.org/wiki/Thirty-second_note | ||
11:43
Trashlord joined
|
|||
tadzik | phenny: "trzydzestkadwójka"? | 11:43 | |
phenny | tadzik: Language guessing failed, so try suggesting one! | ||
tadzik | phenny: "trzydziestkadwójka"? | ||
phenny | tadzik: Language guessing failed, so try suggesting one! | ||
tadzik | neh | ||
11:43
zykes- joined
|
|||
daxim | gesundheit! | 11:43 | |
tadzik | phenny: "trzydziestka dwójka"? | ||
phenny | tadzik: "thirty two" (pl to en, translate.google.com) | ||
tadzik | close | 11:44 | |
11:53
coldhead left
12:03
kjeldahlw left
12:04
am0c left
|
|||
tadzik | wklej.org/id/472774/ -- what kind of syntax is that? It's nqp, from a parrot-dev mail. What are those calls doing in the class body, declaring attributes, methods? | 12:04 | |
jnthn | tadzik: Something awful :) | 12:08 | |
tadzik: The way HLL::Compiler works up to npq-rx ends up trying to store attributes in a type object. | 12:09 | ||
tadzik: It works out better in new nqp :) | |||
12:10
kjeldahlw joined
|
|||
tadzik | as everything :) | 12:10 | |
12:16
pmurias joined
|
|||
dalek | ecza: adbc41e | pmurias++ | cl-backend/backend.lisp: [cl-backends] modules set the xref, minor refactoring |
12:18 | |
ecza: ac81267 | pmurias++ | / (2 files): [cl-backend] |
|||
12:22
mayuresh joined,
mayuresh left
12:28
wolfram_ left
|
|||
szabgab | In the meantime I submitted a Perl 6 talk to LinuxTag Berlin, we will see if that gets accepted and then I might need update myself a bit | 12:30 | |
people start asking question ... | |||
12:35
bluescreen joined
12:38
fhelmberger joined
12:52
stifynsemons joined
12:53
stifynsemons left
12:57
tzhs joined
12:59
ab5tract joined,
mberends left
|
|||
takadonet | morning all | 13:01 | |
13:01
mberends joined
13:06
mberends left
|
|||
masak | takadonet: \o | 13:11 | |
tadzik | where's hugme? :( | ||
pmurias | what does the hugme bot do? | 13:14 | |
tadzik | hugs. And gives commmit bits to repos | 13:15 | |
13:15
mtk left
13:17
MayDaniel joined
13:19
mberends joined
13:23
mtk joined
13:27
mberends left
13:28
mberends joined
13:32
felliott joined
13:38
MayDaniel left
13:41
tzhs left
13:51
ab5tract left,
pmurias left
13:52
Lorn left,
ab5tract joined
|
|||
[Coke] | rakudo: (1..10).classify(*%%3).perl.say | 13:55 | |
p6eval | rakudo 184bf7: OUTPUT«("Bool::False" => [1, 2, 4, 5, 7, 8, 10], "Bool::True" => [3, 6, 9])» | ||
[Coke] | why don't we need to put *%%3 in a block there? | ||
masak | because the * sugars in its own block. | ||
* %% 3 corresponds to { $_ %% 3 } | |||
[Coke] | sweet. | 13:56 | |
masak | very. | ||
[Coke] | and why are the booleans quoted? is it because hashes are still string-only keys? | ||
masak | aye. | ||
[Coke] | danke. | ||
masak | and even in the future, when we have other kinds of hashes, string-only will still be the default. | 13:57 | |
13:57
mberends left
13:59
kaare_ left
|
|||
PerlJam | greets #perl6 | 14:02 | |
masak | hola PerlJam | ||
14:02
uvtc joined
|
|||
uvtc | Hi. What do zebras have to do with Perl 6? | 14:04 | |
PerlJam | uvtc: everything! | ||
uvtc | hehe. | ||
I don't get the joke. First thought was that maybe it had something to do with "horse of a different color". | 14:05 | ||
masak | like when you're doing a bootstrap, some things are there simply because they're there. | ||
that's the explanation with the zebras. | |||
grep the IR clogs if you're really interested, but that's basically it. | 14:06 | ||
uvtc | Ok, I will grep the infrared logs. | ||
jnthn | Some things inperll6 are just random. It's not always black and white. | ||
;) | |||
uvtc | Ah. | 14:07 | |
masak | trust jnthn to turn an answer into a pun ;) | ||
PerlJam | trust #perl6 to pun everything | ||
masak | "I think this situation isn't as zebra as you make it sound." | 14:08 | |
14:08
drbean left
|
|||
PerlJam | this is one of the few places where there's just enough ambiguity to be interesting and not enough to be confusing (at least once you understand that puns are rampant here) | 14:09 | |
14:10
awoodland joined
|
|||
masak | puns...? people are being explicitly ambiguous over here...? | 14:11 | |
why, this explains a _lot_... :) | |||
14:12
felliott left
|
|||
PerlJam | only when its clearer to be ambiguous. | 14:12 | |
masak | Welcome to #perl6. We're unambiguous here... to a first approximation. | 14:13 | |
14:13
plobsing left
14:17
felliott joined
14:21
wiseguyxp joined,
uvtc left
14:26
felliott left
|
|||
Su-Shee | hrmpf. I would need hugme now.. | 14:30 | |
PerlJam hugs Su-Shee as a proxy | 14:31 | ||
14:31
kaare_ joined
|
|||
Su-Shee sighs happily. much better. ;) | 14:31 | ||
sjn hugs Su-Shee by using the new hugging proxy, PerlJam | |||
14:31
bluescreen left
|
|||
PerlJam | heh | 14:31 | |
Su-Shee | are we implementing HUG CHAINS? :) | 14:32 | |
PerlJam | Get a few more people invovled and we can start a hug pile | ||
masak | oof | ||
Su-Shee | hug chain smiley: (o)->(o)->(o)->(o) | ||
masak | a hug pile was how my mobile camera stopped working :P | 14:33 | |
flussence | maybe we need a hug-tracking database while hugme's offline... | 14:34 | |
masak | "needshugs" | ||
"This ticket has been hugged properly. Resolving." | |||
sjn | what's a shug? | ||
PerlJam | "please place your hug request with #perl6 and we'll get a hug to you as soon as possible" | ||
flussence shrugs | 14:35 | ||
masak | sjn: the Shug is a distant relative to the Yeti. | ||
sjn: extremely reclusive, to the point where *nobody* has seen it. | |||
sjn | masak: cool, why do you need several of them? :) | ||
masak | they make really soft carpets. | ||
14:35
wiseguyxp left
|
|||
masak | usually they leave them outside the doors of unsuspecting villagers in the middle of the night. :P | 14:36 | |
14:39
stifynsemons joined
|
|||
masak | hm, 'shug' sounds like a project name looking for a project :) | 14:44 | |
jnthn | .oO( Austin Powers: The spy who shug me ) |
14:45 | |
So clearly it's the Perl 6 mojolicious port. ;) | |||
_sri | shagadelic | 14:46 | |
14:46
ab5tract left
14:50
stifynsemons left
|
|||
dalek | kudo: 03380cd | perlpilot++ | src/core/Complex.pm: better format complex numbers |
14:50 | |
masak .oO( The Shug Who Made me a Rug ) | 14:55 | ||
14:56
Vlavv_ left
14:57
wallberg joined
|
|||
masak | wallberg! \o/ | 14:57 | |
14:58
cjk101010 left
15:04
shi left
|
|||
[Coke] | PerlJam: I wonder why you did that as 2 lines. | 15:07 | |
szabgab | hmm, there should be a competition between Dancer and Mojolicious , the first one that has a Perl 6implementation can claim the name shug | ||
15:07
abraxxa joined
|
|||
masak | :) | 15:07 | |
PerlJam | [Coke]: because that's what flowed from my head first. If you want to make it one line, feel free :) | ||
_sri | does that mean non-blocking io is implemented now? | ||
[Coke] | PerlJam: not especially. Just wondering. ;) | ||
masak | _sri: does what mean that? and implemented where? | 15:08 | |
_sri | re szabgab | ||
PerlJam | _sri: does that mean you're volunteering to do it if it isn't? | ||
:-) | |||
szabgab | if you want a shug you need to shave a yak | ||
masak | _sri: I'm not aware of anyone wanting non-blocking IO as dearly as you right now. | 15:09 | |
15:09
Vlavv_ joined
|
|||
masak | _sri: it *used* to be a goal of Parrot's, I think. | 15:09 | |
szabgab | _sri: and I don't understand your concern, both Dancer and Mojo would have the same limitations | 15:10 | |
_sri | i'm not going to attempt a port without non-blocking io, no point | 15:11 | |
masak | guess you'll just have to charm someone within Rakudo/Parrot to implement it, then. | ||
_sri | tried that like two years ago | ||
wallberg | hi all | ||
_sri | tbh i've lost hope | 15:12 | |
i don't believe in perl6 anymore | |||
masak | you're entitled to that opinion. | ||
szabgab | _sri: I am confused now | ||
did you have visitors on #mojolicious saying they don't belive in Mojolicious any more? | 15:13 | ||
sorear | good * #perl6 | ||
_sri | szabgab: you brought the topic up | ||
PerlJam | _sri: if you had some Perl 6 code that used non-blocking IO, that would be a strong incentive for someone to implement it I think. | ||
15:14
ab5tract joined
|
|||
PerlJam | _sri: also, they'd have something to test against. | 15:14 | |
15:23
pmurias joined
15:29
justatheory joined
|
|||
pmichaud | good morning, #perl6 | 15:29 | |
Today is now our fifth snow day of the year. :-/ | |||
(fifth day of school closings due to snow) | |||
sjn | pmichaud: there's only one good word for that, and it's "tiddelibom" :) | 15:30 | |
</obscure norwegian humour> | |||
PerlJam | sjn: not that obscure. (I've heard of it before and I live in south Texas :) | 15:31 | |
sjn | o_O | ||
arnsholt | sjn: It could be that Thorbjørn Egner might have stolen it. From an Englishman, for example =) | 15:32 | |
sjn | arnsholt: could be :D | ||
15:32
MayDaniel joined
|
|||
sjn tries to imagine how an englishman would pronounce that word | 15:32 | ||
PerlJam | or it could be that the Internet had made the world just a little smaller ;) | 15:33 | |
15:33
vutekija left
|
|||
pmichaud looks forward to riding "Maelstrom" in the Norway pavilion at Epcot this weekend | 15:34 | ||
szabgab | pmichaud: hi, was there any progress on overtaking the Texas Linux Fest by Perl skaters? | 15:38 | |
pmichaud | szabgab: I haven't seen much movement on that, no. I'm sending in my talk proposal tomorrow | ||
colomon | pmichaud: If you think there's any chance you might go to see the Canada 360 movie, I've got a favor to ask of you. :) | ||
pmichaud | Maybe I'll ping the APM and DFW.pm folks again and say "hey, get moving!" | ||
I know at least one other DFW.pm regular is planning to attend Linux fest | 15:39 | ||
pmurias | sorear: class Foo {...} has an entry in the stash without an xref? is that correct? | ||
pmichaud | colomon: seeing Canada 360 is likely 50/50. We'll go if we need a break from walking.... so, what's the favor? | ||
szabgab | I need to kick some * there so they will move their * | ||
sorear | pmurias: yes, it's correct | ||
pmurias: the entry is responsible for the namespace Foo:: | 15:40 | ||
15:40
justatheory left
|
|||
colomon | pmichaud: My memory (from 1996 or so) is that there is a scene of a bunch of musicians playing with a fiddler in Atlantic Canada in the movie. I'm wondering if it is this guy: www.youtube.com/watch?v=SS8Xllf7Nyk | 15:42 | |
pmichaud: I didn't know who he was last time I saw the film there, so it didn't mean anything to me. But he was definitely filmed in Circlevision by Disney at some point. And if it is him, I probably know some of the other musicians personally. :) | 15:43 | ||
15:43
mtk left
|
|||
colomon | pmichaud: I was just hoping that you could keep an eye out for the scene. | 15:43 | |
15:43
[particle] left
|
|||
colomon | pmichaud: and let me know if I'm imagining things or not. | 15:43 | |
pmichaud | colomon: looks like WDW updated the movie in 2007 | 15:44 | |
colomon | pmichaud: oh, interesting. | ||
PerlJam | Blah! It's rainy here today and it'll be cold later :( | 15:45 | |
pmichaud | Blah! It's cold here now and it'll be even colder later. :( | ||
PerlJam | yeah, but snow is better than rain :) | ||
15:46
wooden left
15:47
ash_ joined,
wooden joined
15:50
mtk joined,
[particle] joined
|
|||
colomon | pmichaud: anyway, if you go to O Canada, keep an eye out for fiddlers and let me know if there are still any in the movie -- particularly if one is an old guy with a beret. Danke. :) | 15:52 | |
15:52
wtw left
|
|||
pmichaud | will do. Searching for "Emile Benoit" and "O Canada" with google doesn't come up with any hits, though. | 15:52 | |
so I'm guessing either (1) no, or (2) completely uncredited | |||
15:53
kjeldahlw left
15:54
plobsing joined
|
|||
colomon | pmichaud: we actually contacted the Disney archivist with the question a few years ago (pre-2007) and he couldn't determine one way or the other, weirdly enough. So certainly uncredited if there, I'd say. | 15:55 | |
pmichaud | My brother works at WDW; I suspect he could find out easily enough. | 15:56 | |
he could certainly make it over to the Canada pavilion and check for me. He might even have access to the pre-2007 film. | 15:57 | ||
15:58
Sarten-X left
|
|||
colomon | pmichaud: oooo.... sounds like an awful lot of work for a fairly trivial detail, though. :) | 15:58 | |
pmichaud | oh, he's there all of the time. I bet he'd find it fun and interesting. | ||
16:00
takadonet left,
jferrero left
16:01
ruoso left,
ruoso joined
|
|||
colomon | pmichaud: Well, I certainly wouldn't object to your asking him, but please make clear it's a lark, and he shouldn't bother unless he does find it -Ofun. | 16:02 | |
pmichaud | here's a picture of my brother at work: | 16:03 | |
15:55 <colomon> pmichaud: we actually contacted the Disney archivist with the question a few years ago (pre-2007) and he couldn't determine one way or the other, weirdly enough. So certainly uncredited if there, I'd say. | |||
15:56 <pmichaud> My brother works at WDW; I suspect he could find out easily enough. | |||
oooops | |||
pmichaud.com/sandbox/mickey-lucas.jpg # my brother is on the right | |||
colomon | that is one awesome picture! | ||
16:04
Sarten-X joined
|
|||
pmichaud | yes, he loves his job. :-) | 16:05 | |
16:05
aesop left
|
|||
sbp | I hope Mickey wins | 16:05 | |
pmichaud | in the official (retouched) version of that photo, Mickey has the green light saber and Lucas has the red one. So..... | 16:06 | |
sbp | hmm :-) | 16:07 | |
16:09
ab5tract left
|
|||
colomon | pmichaud: that explains a lot. ;) | 16:09 | |
16:09
vutekija joined
16:11
felliott joined
16:14
Patterner left
16:16
Psyche^ joined,
Psyche^ is now known as Patterner
16:19
aesop joined
16:21
woosley left
16:22
risou joined
16:23
simcop2387 left
16:27
simcop2387 joined
16:29
pmurias left,
orafu left
16:30
hugme joined,
ChanServ sets mode: +v hugme
16:32
orafu joined,
kst` joined
16:36
alester joined,
simcop2387 left
16:37
simcop2387 joined
16:42
bah_ joined
|
|||
bah_ | hey guys .. hope you guys are having a great day (err .. night) ... | 16:43 | |
tadzik | still day | 16:44 | |
bah_ | i just had a doubt that has been bugging me | ||
tadzik | notmuch, I'm perhaps the most badluck guy today. But thanks | ||
hugme: hug me | |||
hugme hugs tadzik | |||
16:44
Layla_91 joined
|
|||
pmichaud | ..."bugged doubt"? | 16:44 | |
masak | bah_: let's hear your doubt. | ||
bah_ | is it possible to pass a chunk of text to say a function .... and what we get in return is the name of the grammar that it implements ? | 16:45 | |
tadzik | that implements what? | 16:46 | |
ah, parsing that function? | |||
bah, string | |||
bah_ | lets say i i call " 1 2 + 3 *".get_grammar and i get Postfix in return | 16:47 | |
16:47
envi left
|
|||
bah_ | its kind of like grammar detection of the an arbitrary dsl | 16:48 | |
forgive my typos ... tiny keyboard :) | |||
arnsholt | That's not exactly simple to do | 16:49 | |
pmichaud | bah_: are you assuming there's a set of predefined grammars somewhere that would be selected from? | ||
bah_ | hmm .. yes | ||
pmichaud | then it's pretty easy :) | 16:50 | |
16:50
Layla_91 left
|
|||
bah_ | oh .. thats awesome | 16:50 | |
pmichaud | my @matches = " 1 2 + 3 * " ~~ $_ for @list_of_predefined_grammars; | ||
er | |||
yeah | |||
something like that | |||
maybe grep | |||
my @matches = @list_of_predefined_grammars.grep( { $string ~~ $_ } ) | 16:51 | ||
bah_ | can it be done for a larger piece of string , which can possibly have multiple grammars in it ? | 16:52 | |
pmichaud | depends on the grammar definitions, I'd think | ||
bah_ | coz i was thinking how lisp macros are comfortable with calling and using other lisp macros ... and whether the same logic can be applied to perl6 grammars | 16:53 | |
@matches = " 1 2 + 3 * " ~~ $_ for @list_of_predefined_grammars; if (@matches.size == 1) { $[0].eval} | 16:54 | ||
i'll defintely polish my doubt further and come back to you pmichaud ... thanks for your time ... :) | 16:57 | ||
btw when can we expect rakudo.supernova to release ? | 16:58 | ||
masak | bah_: you'll want 'grep' there, not 'for'. | ||
bah_: since you want to do a single list assignment, not several. | |||
bah_ | sure .. i'll keep that in mind | ||
masak | bah_: re Supernova -- what would you like it to be that Star isn't? | 16:59 | |
bah_ | yes | ||
masak | because right now, it feels like we don't exactly know that. | ||
it wasn't a yes/no question, it was a 'what' question :) | |||
bah_ | basically the next awesome version of rakudo .. its going to be a supernova right ? | 17:00 | |
pmichaud | we haven't named it yet, no. | ||
but given that Perl 6 and Rakudo are "disruptive technologies", part of execution means that we often don't know the obvious "next step" in development | 17:01 | ||
bah_ | i understand | ||
pmichaud | anyway, I suspect the next release series will focus on one or more of (a) modules, (b) multiplatform, or (c) speed | ||
masak | bah_: so far, there's been a new awesome Rakudo Star release each month. from now on, they'll be coming every third month. | 17:02 | |
pmichaud | we might also have a domain-specific release series, but we're not entirely clear about that. In some sense I'd be very interested in seeing a documentation/publishing/text-handling focused distribution | 17:03 | |
17:03
icwiener joined
|
|||
pmichaud | I don't think we're quite at a performance level where focusing on the web makes sense... but document processing could be very beneficial. As a bonus, it might help us with our own documentation and publication efforts :-) | 17:03 | |
masak works harder on his Pandoc clone | 17:05 | ||
pmichaud | afk | 17:08 | |
17:09
Eevee left
17:12
gottreu left
|
|||
tadzik | masak: niecza-powered | 17:12 | |
? | |||
17:13
wallberg left
17:14
jferrero joined
17:24
felliott left
|
|||
dalek | ecs: 4ec52e3 | larry++ | S05-regex.pod: got & and | backwards; note precedence is "normal" |
17:24 | |
17:25
felliott joined
17:27
ryan_ joined
|
|||
masak | tadzik: yes. | 17:28 | |
17:31
ash_ left
17:33
shi joined
17:37
Eevee joined
|
|||
[Coke] | Why is it .uniq and not .unique? | 17:42 | |
(I know, unix did it that way). Should it be updated to be more verbose? | |||
17:42
vmspb joined
|
|||
Eevee | because terminal q is awesome. | 17:43 | |
flussence | uniq is more unique | ||
TimToady | it's uniqer | 17:44 | |
flussence | I dunno, there's lots of abbreviated method names, maybe this is more consistent like this | ||
17:44
MayDaniel left
|
|||
TimToady | and it makes yet another four-letter word in the vocabulary | 17:44 | |
masak | right. 'uniq' seems to be about the right amount of huff. | 17:45 | |
[Coke] | I am very amused by the google ads server for the comb wordpress article (inc: professional lice removal!) | 17:46 | |
17:46
risou_ joined
|
|||
masak | :D | 17:46 | |
17:47
justatheory joined
17:48
risou left
17:49
zenog joined
|
|||
arnsholt | GitHub makes it easier for me to nab code from Rakudo. Yay, one supposes. ^_^ | 17:51 | |
17:52
cdarroch joined,
cdarroch left,
cdarroch joined
17:55
shi left
17:56
takadonet joined
17:59
shi joined
18:01
Lorn joined
|
|||
[Coke] | giving proper attribution and respecting licensing! | 18:02 | |
arnsholt | Of course | 18:05 | |
Even though it should be available via Parrot =/ | 18:09 | ||
[Coke] | what is you need from parrot that isn't there? | ||
arnsholt | Can't find it at least | ||
I'm trying to update my HLL to build and checkout Parrot from git rather than SVN | 18:10 | ||
moritz_ | speed! | ||
arnsholt | I asked in #parrot, but didn't get any replies | ||
[Coke] | Are you having trouble with the git commands? | 18:11 | |
moritz_ | arnsholt: I think "steal from Rakudo" is a good answer :-) | ||
[Coke] | mmm. certainly rakudo already has that working. | ||
arnsholt | No, git isn't a problem. It's getting Configure.pl and friends to do it right | 18:12 | |
tools/dev/create_language.pl generates a Configure.pl that's part-way there | |||
18:13
dakkar left
|
|||
arnsholt | It uses git, but it still assumes that the revision in build/PARROT_REVISION is numeric | 18:13 | |
Which seems to be messing things up | |||
[Coke] | Ok. there's no one right way to do that (and I think parrot encourages you to use an installed version, anyway), so I can see that not being in parrot. | ||
... that's definitely worth opening a bug for. | |||
trac.parrot.org/ | 18:14 | ||
arnsholt | Right. I'll do that | ||
[Coke] | arnsholt++ | 18:15 | |
arnsholt | An installed Parrot has caused trouble with Rakudo in that past I think | 18:16 | |
Is that no longer the case? | |||
[Coke] | rakudo requires an installed parrot. | ||
it just installs it into a local subdir if you don't have one yet. | |||
benabik | arnsholt: I tend to build and install them separately. I've had no problems, although I always rebuild rakudo every time I rebuilt parrot. | 18:17 | |
arnsholt | Right. Maybe I'll try doing that instead | ||
18:20
molaf left
18:21
plobsing left
18:28
impious joined
18:30
shachaf left
18:31
risou_ left
18:34
shachaf joined
18:36
jferrero left
18:37
Sarten-X left
18:44
Sarten-X joined
18:53
janosik joined
18:55
jarek-s joined,
jarek-s left
18:59
orafu left,
janosik left
19:01
orafu joined
19:04
icwiener left
19:05
icwiener joined
19:06
plobsing joined
|
|||
masak | arnsholt: you have an HLL? | 19:12 | |
masak gets curious | |||
dukeleto | arnsholt: yes, the create_language.pl and mk_language_shell.pl scripts don't yet know about the Git New World | ||
19:13
MayDaniel joined
19:16
aindilis left,
stkowski joined,
aindilis` joined
19:22
rgrau joined
|
|||
arnsholt | dukeleto: Yeah, I sorta noticed | 19:25 | |
19:25
vutekija left
|
|||
arnsholt | create_language.pl sort of does, though. It runs git commands, but not correctly it seems | 19:25 | |
masak: Yeah, a Prolog | 19:26 | ||
Contributions are most welcome =) | |||
tadzik | wow, Prolog | ||
PerlJam | I was thinking something more like "yuck prolog" | ||
:) | |||
tadzik | never used it | ||
arnsholt | Prolog is awesome | 19:27 | |
tadzik | I imagine it as a black box shouting "YES" "NO" repeadately | ||
PerlJam | I haven't used it in years, but I'm willing to bet it hasn't changed since I last saw it :) | ||
arnsholt | If a bit special-purpose | ||
tadzik | ...did I spell it right? | ||
sbp | repeatedly | ||
tadzik | thanks sbp | ||
sbp | yw | ||
19:27
dual left
|
|||
PerlJam | tadzik: prolog is really a special purpose pattern matching engine. | 19:28 | |
allbery_b | prolog is interesting, but should never be used for anything but its core relation-db competency. otherwise... it reminded me of hacking sendmail.cf before EASE | ||
arnsholt | The killer feature in Prolog is backtracking | 19:29 | |
Gives you so many useful things for free | |||
allbery_b | (in both cases I could do it, but oy. otoh at this point I've mostly forgotten the details of Prolog) | ||
19:30
dual joined
|
|||
arnsholt | There's a theorem prover called leanCoP, whose core prover logic requires a whopping 555 bytes | 19:30 | |
Which is possible because all the required non-determinism is built into Prolog, of course | 19:31 | ||
19:31
abraxxa left
|
|||
PerlJam | arnsholt: so ... why prolog exactly? Just 'cause, or do you want to hook it up to something else via parrot? | 19:34 | |
arnsholt | See also james-iry.blogspot.com/2009/05/brie...rong.html: "Alain Colmerauer designs the logic language Prolog. His goal is to create a language with the intelligence of a two year old. He proves he has reached his goal by showing a Prolog session that says "No." to every query." | ||
tadzik | :D | ||
arnsholt | My prime motivation is pretty much, just 'cause =) | ||
masak | arnsholt: nice! | ||
tadzik | That reminded me of my nephew, who said "Me!" on every question | 19:35 | |
arnsholt | At some point I'd like to try hook it up to Perl 6 slangs as well | ||
tadzik | then Dad asked him "who's cleaning the plates today?" Suprisingly, Mikołaj said "Daddy" | ||
masak | arnsholt: yay! | ||
tadzik | . o O ( use Prolog 'will this run?'; ) | 19:36 | |
arnsholt | =D | ||
PerlJam | Was it Ovid who did the Perl 5 prolog module(s)? | 19:37 | |
in anycase, you have a perl 5 implementation to crib from :) | |||
arnsholt | Yeah AI::Prolog is Ovid's work. I've looked at his code for inspiration | 19:38 | |
But the main catalyst was a (Common) Lisp book, actually | |||
benabik | tadzik: Based on the above quote, I'd expect the answer to be 'No.', even if it did work. :-D | ||
tadzik | ;) | ||
arnsholt | It had an implementation of non-deterministic search using continuations | 19:39 | |
tadzik | it should die if tests do not exist | ||
arnsholt | I promptly remembered that Parrot has native continuations and decided to try to implement Prolog on Parrot | ||
dukeleto | arnsholt: does this prolog on parrot have a repo somewhere? | 19:41 | |
arnsholt | github.com/arnsholt/parrotlog | 19:42 | |
It's been a while since I worked on it, but I'm trying to get back to it | 19:43 | ||
PerlJam | arnsholt: can I suggest a name change? "parlog" :) | ||
tadzik | parrotlog is like Parrot Log | ||
19:44
aindilis` left
|
|||
masak | "Conlog" :) | 19:44 | |
arnsholt | Yeah, I'm not too happy with the name | ||
masak: *groan* | 19:45 | ||
Took me a second to get, even ^^ | |||
tadzik | it still takes _me_ a second :) | ||
oh! :) | 19:46 | ||
PerlJam | amateurlog was too long | ||
arnsholt | Good suggestions all | 19:49 | |
Maybe I'll change the name =) | |||
19:51
daxim left
19:52
impious left
|
|||
dalek | ecs: 81058c1 | larry++ | S05-regex.pod: define extensible boundary syntax The Unicode folks seem to want an extensible boundary syntax with \b, but we've abandoned \b for boundary, so it's now <|x> for various values of x. (And <!|x> is the negation, so no need for <|X>.) <?wb> is now <|w>. |
19:52 | |
TimToady | basically <|x> is a zero-width match like <?foo> but x lives in its own namespace of boundary names, not in normal rulename space | 19:55 | |
masak | nod. | 19:58 | |
20:00
fhelmberger left
|
|||
colomon | for some reason, <|x> (above) scared me, but <|w> seems comforting and reassuring... | 20:01 | |
20:02
justatheory left
|
|||
moritz_ | so <|s> would be a boundary between \s and \S? | 20:03 | |
maybe I should actually read the diff | |||
colomon | It doesn't actually say in the diff, that I can see, but it seems that would make sense. | 20:07 | |
TimToady | there's no general rule like that, but we could define <|s> to mean that | 20:13 | |
but we'll have to see what other boundaries the unicrazies come up with and try not to conflict... | 20:14 | ||
dalek | ecs: 1a7a9d9 | larry++ | S0 (2 files): defined case folding by unicode support level |
20:15 | |
20:16
MayDaniel left
|
|||
dalek | ecs: 8e01231 | larry++ | S05-regex.pod: explicitly note support for <:name(/pattern/)> |
20:22 | |
20:31
bah_ left
20:39
masak left
20:41
masak joined
20:42
benabik left
|
|||
masak | sorear: niecza's Makefile expects there to be something called gmcs on my computer. what is it, and where can I find it? I don't see it in the list of dependencies. | 20:50 | |
dalek | ecs: 7e20743 | larry++ | S05-regex.pod: allow LTMish characters in character classes |
20:51 | |
moritz_ | masak: sudo aptitude install mono-gmcs | ||
masak | just arrived at the same thing :) | 20:52 | |
moritz_ | fwiw, regarding .reals methods | ||
the idea is that many mathematical constructs can be translated to a number of reals | |||
for example Complex, vectors, matrices etc. | |||
so the presence of .reals allows lexicographic ordering of those | |||
masak | yes, I see the rationale. I just don't like the name, and the rationale doesn't help for me. | 20:53 | |
ok, now niecza builds. | |||
20:53
vmspb left
20:54
plobsing left
|
|||
moritz_ | masak: my point is that even if we should have a .reim method, .reals should still exists | 20:55 | |
so I kinda disagree with RT #83720 | 20:56 | ||
masak | right. and preferably be called something else. | ||
PerlJam | moritz_: should there be a .rats too? | ||
moritz_: what about an .ints ? | |||
moritz_ | PerlJam: Int ~~ Real and Rat ~~ Real, so "no" | ||
masak: why should it be called something else? | 20:57 | ||
masak | moritz_: also, I don't necessarily see the generality you do here. what about vectors/matrices with complex numbers. | ||
s/\.$/?/ | |||
PerlJam | moritz_: why whould it be named according to its representation? | ||
moritz_ | masak: all of those have useful(-ish) represenations as lists of real numbers | ||
masak | er. | ||
20:57
coldhead joined
|
|||
masak | calling it .reals seems like tying it down unnecessarily. | 20:57 | |
and I don't imagine I'm saying that just being difficult or abstraction-astronautic. | 20:58 | ||
moritz_ | PerlJam: because the structure of the return value is the reason for having the method | ||
masak: what would you call it? | |||
arnsholt | Abstraction-astronautic? | ||
masak | arnsholt: caring about abstractions for their own sake | 20:59 | |
PerlJam | moritz_: that seems to answer more to the reason it's a plural than why it's got "real" in the name | ||
masak | moritz_: ok, first off: here's why .reals is really bad. | ||
arnsholt | Oh, of course =) | ||
masak | moritz_: there's an *attribute* on Complex called .re, short for "real" | ||
moritz_: having a method called .reals encroaches on that mental space, and confuses things by being plural. | |||
[Coke] | I thought .reals was a nod to "not ints" | 21:00 | |
which doesn't make it any better. | |||
masak | moritz_: it's as if an Employee class with a $.boss attribute unexpectedly had a method .bosses | ||
[Coke] | something like ".flatten" seems a better choice. | ||
PerlJam | [Coke]: or perhaps .components | ||
or .comps | |||
or .list | |||
or .flat | |||
etc. | 21:01 | ||
21:01
plobsing joined
|
|||
PerlJam | (though I'm not enamoured of anything with "flat" in its name right now) | 21:01 | |
masak | I don't see why Complex should make being viewed as a pair of numbers particularly easy. the real use of Complex is having it as one unit. | ||
moritz_ | because you want them .sort-able? | 21:02 | |
21:03
kaare_ left
|
|||
PerlJam | moritz_: I don't see it. Am I being myopic. | 21:03 | |
? | |||
masak | they can be .sort-able without sharing their components like that. | ||
[Coke] | If you want to sort it, seems like you'd define a sort on the attributes. | ||
masak | we've talked about sorting Complex numbers before on the channel. there's just no standard way to do it. | 21:04 | |
21:04
y3llow_ joined
|
|||
masak | comparing them, really. | 21:04 | |
21:04
pothos_ joined
|
|||
dalek | ok: 4e2ec42 | masak++ | src/images/title.svg: put the dots in my name on the right 'a' |
21:05 | |
TimToady | .values, perhaps | ||
PerlJam | 1+50i is clearly bigger than 50+i because it's got more imagination :) | ||
masak | TimToady: that's the first one I don't hate. | ||
PerlJam | TimToady: what masak said | ||
(apparently he and I are on the exact same wavelength wrt this subject) | 21:06 | ||
masak | moritz_: above commit fixes title.svg -- what needs to be done to generate title.pdf? | ||
note that .values would work for vectors and matrices as well, if one were so inclined. | |||
21:06
pothos left,
y3llow left,
pothos_ is now known as pothos
21:07
y3llow_ is now known as y3llow
|
|||
TimToady | there's always .explode :) | 21:07 | |
PerlJam | Though it will eventually lead to something like @complex.values>>.values at some point. | ||
masak | TimToady: .explode sounds more like a command than a query to me :P | 21:08 | |
PerlJam | It's almost likea Capture. "give me a listy view of your components" | ||
21:09
justatheory joined
|
|||
TimToady | well, if there's a list-based constructor for these, then obviously the deconstructor should be called .old :) | 21:12 | |
PerlJam | heh | ||
dalek | ok: 1ba76c9 | masak++ | src/operators.pod: [operators] lifted variable out of loop It doesn't change with each iteration, so it might as well be defined outside of the loop. Commit courtesy of Håkan Kjellerstrand. |
21:13 | |
PerlJam | that might work in the same way that "leg" works. | ||
moritz_ back from baby duty... .values breaks the assumption that an item behaves like a single-item list and vice versa | 21:14 | ||
PerlJam | I mean from the user's perspective | ||
moritz_ | masak: you need to manually generate title.pdf, iirc | ||
masak: feel free to improve the makefile | |||
masak | just wanting to know how to generate it. not wanting to solve the general problem right now. | 21:16 | |
moritz_ | masak: with, like, inkscape or so | ||
see Makefile for inspiration about which options to use | 21:17 | ||
there's already one svg -> pdf conversion in the build process | |||
PerlJam | Why should .reals be so huffmanized too? | ||
masak | subs-n-sigs.pod talks about "The first chapter" and "the second chapter", but these are currently chapters 2 and 3, respectively. is it a mistake that "Preface" is chapter 1, or should the chapter references be adjusted? | 21:19 | |
moritz_: there's no mention of inkscape in the Makefile. | 21:20 | ||
hold on, there's a lib/Makefile... | 21:21 | ||
PerlJam | masak: perhaps those should be references to the appropriate chapter so that even if we move them around it'll still be the right thing. | ||
masak | yes, they should be LaTeX refs. | 21:22 | |
\label and \ref seems to be enough for that. | |||
masak fixes | 21:23 | ||
21:23
pmurias joined
|
|||
masak | moritz_: I can generate a .pdf with inkscape from the command line, but the font sizes are all wrong. possibly the typefaces as well. | 21:25 | |
moritz_ | masak: I'll take a look | ||
masak | thank you. | ||
inkscape --without-gui --export-pdf=src/images/title.pdf src/images/title.svg | 21:26 | ||
that worked for me. | |||
oh wait. can't add LaTeX cross-references, because the source code isn't LaTeX, it's PseudoPod... | 21:27 | ||
clearly, I've been away from the book for too long :) | |||
ok, making the simple change for now. | |||
dalek | ok: 2c54a9e | masak++ | src/subs-n-sigs.pod: [subs-n-sigs] fixed chapter numbers This is only a short-term fix; we'd really like real references here, like in LaTeX. |
21:29 | |
masak | heh. speaking of which, | 21:31 | |
subs-n-sigs.pod:451 uses L<pair_forms> | |||
but it comes out as 'pair_forms' in the PDF. | |||
and that line was last touched in July (by chromatic). | 21:32 | ||
does that mean Pseudopod has a way to work with LaTeX references, but it doesn't work? | |||
moritz_ | masak: much of the markup that chromatic touched didn't work | 21:33 | |
masak | ok. | ||
moritz_ | and has been fixed by pronik++ or me | ||
masak | so what should I/we do about it? | ||
moritz_ | (int he latex emitter, mostly) | ||
masak | moritz_++ pronik++ | ||
moritz_ | masak: find out how it's supposed to work, and make it work | ||
21:34
am0c joined
|
|||
masak | ok. that sounds like a small project, and I want to get through this list | 21:34 | |
I'll try not to drop it, though. | |||
I want to get back to editing the book. | |||
PerlJam | IIRC chromatic has his own Pod::PseudoPod syntax that he used for Modern Perl. Perhaps he thinks in terms of that and perhaps we can borrow whatever he used. | ||
moritz_ | masak++ | ||
I think Z<chapter_anchor> is one part | 21:36 | ||
and then L<chapter_anchor> | |||
Z<pair_forms> bekomes \label{pair_forms}, which looks correct to me | 21:37 | ||
masak | the L<> should then become \ref | 21:38 | |
moritz_ | what does \ref expand to? chapter number? | ||
gfldex | std: grammar Foo { my $just_a_var = 0; &die.wrap({callsame}); }; Foo.parse('abc'); | ||
p6eval | std 625303c: OUTPUT«ok 00:01 126m» | ||
gfldex | rakudo: grammar Foo { my $just_a_var = 0; &die.wrap({callsame}); }; Foo.parse('abc'); | ||
p6eval | rakudo 03380c: OUTPUT«Method 'wrap' not found for invocant of class 'Sub' in main program body at line 22:/tmp/Cd3g2p1Wvq» | ||
masak | moritz_: something like "Chapter $n" | ||
gfldex | should rakudo be able to wrap a buildin within a grammar? | 21:39 | |
PerlJam | "Chapter $n: <title of chapter>" would be better | ||
masak | gfldex: the change wouldn't be lexical just because you do it inside a grammar. | 21:40 | |
gfldex | i don't want it to be lexical | ||
masak | PerlJam: I don't know the extent to which LaTeX can be changed there. | ||
PerlJam: wouldn't be surprised if it were configurable. | |||
moritz_ | I'm pretty sure it is | ||
first make it run, then make it pretty :-) | 21:41 | ||
PerlJam | aye | ||
masak | gfldex: anyway, it's probably that &die is a Parrot thingie that bites you. | ||
gfldex | i don't feel very save with wrapping die either :) | 21:42 | |
21:43
Mowah left
21:48
shi left,
shi joined
21:51
jevin left
|
|||
masak | rakudo: sub foo { say "42" }; &foo.wrap({ say "Ladies and gentlemen, the answer to the question about Life, the Universe, and Everything:"; callsame }); foo | 21:54 | |
p6eval | rakudo 03380c: OUTPUT«Ladies and gentlemen, the answer to the question about Life, the Universe, and Everything:42» | ||
masak | rakudo: &die.wrap({ say "Ladies and gentlemen, the answer to the question about Life, the Universe, and Everything:"; callsame }); die "oops" | 21:55 | |
p6eval | rakudo 03380c: OUTPUT«Method 'wrap' not found for invocant of class 'Sub' in main program body at line 22:/tmp/K6Toy8bosi» | ||
masak | yep, it must be that &die is "special" somehow. | ||
ELOOPNOTSTRANGEENOUGHYET | |||
21:56
plobsing left
|
|||
moritz_ | die() is defined at PIR level | 21:58 | |
masak | right. | ||
rakudo: sub foo {}; say &foo.WHAT | |||
p6eval | rakudo 03380c: OUTPUT«Sub()» | ||
masak | rakudo: say &die.WHAT | ||
p6eval | rakudo 03380c: OUTPUT«Code()» | ||
masak | ah. | ||
it's almost more confusing that the error is that .wrap isn't found in Sub, when .wrap is normally called on Sub objects. | 21:59 | ||
Tene | masak: That error is generated by introspecting the type of the die function, whose type happens to be named "Sub" | 22:01 | |
This is different from Perl 6's Sub class. | |||
it's a parrot sub | |||
oslt | |||
masak | yes. I know. | 22:03 | |
sometimes we're lucky enough that the name of the Parrot type differs... then the errors are less confusing :) | 22:04 | ||
22:04
plobsing joined
22:10
ymasory_ joined
22:15
shi left,
shi joined
22:25
szabgab joined
22:29
alester left,
leprevost joined
22:30
am0c left,
sjohnson left
22:33
justatheory left
22:36
ymasory_ left
22:37
s1n left
|
|||
dalek | d: 2b1d764 | larry++ | STD.pm6: parse new boundary and character class syntax |
22:39 | |
22:43
am0c joined
22:44
sjohnson joined
23:00
cosimo joined
|
|||
masak | rakudo: multi f([]) {}; multi f(@a is copy) { say @a.pop; f @a }; f [<rocks! recursion>] | 23:00 | |
p6eval | rakudo 03380c: OUTPUT«No applicable candidates found to dispatch to for 'f'. Available candidates are::(Positional ()):(@a) in main program body at line 22:/tmp/IvdSKUo9hJ» | ||
masak | aww :( | 23:01 | |
arnsholt | You get to submit a rakudobug, though, don't you? =) | 23:02 | |
masak | not until I'm convinced it's an error. | ||
arnsholt | Considered a best practice, aibleev | ||
Oh, and regarding your discussion on LaTeX previously, remember that \ref can point to lots of stuff, not only chapters | 23:05 | ||
But things like sections, tables and figures | |||
23:06
cosimo left,
cosimo joined
23:08
rgrau left
23:09
rgrau joined
|
|||
dalek | d: 8246478 | larry++ | STD.pm6: forgot to add quoted chars to char classes |
23:18 | |
masak | arnsholt: right, but as I recall, LaTeX mostly DTRT in turning the \ref into a description of whatever the \label is attached to. | 23:20 | |
arnsholt | Not by default. The default is just to output the correct numbers. So if the label is for table 2.3 it'll just output 2.3 | 23:22 | |
I think there are packages that provide that kind of functionality though | 23:23 | ||
masak | oh, ok. | ||
well, that makes sense, I guess. | |||
the default being minimal and locale-independent, I mean. | |||
23:23
felliott left
23:24
pmurias left,
plobsing left
|
|||
arnsholt | I think the main problem is that you use \label for everything | 23:24 | |
Or maybe not, now that I think more... | 23:25 | ||
masak | it has to distinguish types, or the numbering wouldn't work. :) | ||
arnsholt | Yeah, there's always that =) | ||
23:26
s1n joined
|
|||
arnsholt | I think my TeXnical expertise is simply too limited to say why it doesn't work like that | 23:26 | |
23:26
bacek left
23:28
plobsing joined
23:29
felliott joined
23:30
justatheory joined
23:33
felliott left
23:37
s1n left
23:42
_jaldhar left,
_jaldhar joined
23:43
plobsing left
23:44
Chillance left
23:48
icwiener left
23:49
drbean joined
23:51
rgrau left
23:54
felliott joined,
am0c left
23:56
rgrau joined
|
|||
masak | 'night, #perl6 | 23:57 | |
23:58
eternaleye left
|
|||
sbp | 'night masak | 23:58 | |
23:59
eternaleye joined
|