»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg p6eval perl6: ... | irclog: irc.perl6.org/ | UTF-8 is our friend! Set by sorear on 4 February 2011. |
|||
00:22
spider-mario left
00:35
erkan joined,
erkan left
00:39
erkan joined,
erkan left,
erkan joined
00:44
erkan left
01:00
cognominal joined
01:03
Entonian joined,
cognominal__ left
01:04
Entonian left
01:10
imarcusthis joined
01:16
scott_ joined
01:17
scott_ is now known as Guest71860
|
|||
[Coke] also pizzas. | 01:21 | ||
colomon is now confused and hungry... | 01:22 | ||
01:24
tokuhiro_ left,
vlixes left
|
|||
[Coke] saw pizza in backscroll. | 01:27 | ||
[Coke] is several hours away from his normal base of operations, pizzing. | |||
diakopter | mm pizza | 01:49 | |
01:59
gardnan joined
|
|||
rjbs | You know what's good? Pizza with corn on it. | 02:26 | |
02:28
am0c joined
|
|||
sjohnson | diakopter: :) | 02:37 | |
02:45
gardnan left
02:52
aloha joined
04:12
harmil1 joined
04:30
cognominal_ joined
04:33
telex joined
04:34
cognominal left
04:47
Khisanth joined
05:04
Khisanth left
05:06
leprevost left
05:07
jaldhar joined
05:22
Khisanth joined
05:27
birdwindupbird joined
|
|||
moritz | \o | 05:32 | |
sorear | o/ | ||
05:36
nsh joined
05:39
GlitchMr joined
05:51
cognominal joined,
cognominal_ left
|
|||
dalek | osystem: 254dfe4 | (Gabor Szabo)++ | META.list: add Pod::Parser |
05:57 | |
05:59
fhelmberger joined,
thou joined
06:00
fhelmberger left
06:04
kaleem joined
06:09
fridim_ left
06:25
fhelmberger joined
06:57
stephenlb left
07:01
liuchong joined
07:03
adu joined
07:16
aloha left
07:17
aloha joined,
cognominal left
07:19
stephenlb joined,
cognominal joined
07:26
adu left
07:38
brrt joined
|
|||
masak | morning, #perl6 | 07:57 | |
moritz | \o masak | 07:58 | |
sorear | o/ masak | 08:00 | |
masak | well that was a short backscroll. | 08:02 | |
moritz | indeed | 08:03 | |
masak | carlin: thanks for finding a typo. I corrected it. carlin++ | 08:04 | |
moritz | btw now live: webcast.web.cern.ch/webcast/play_higgs.html | 08:06 | |
timotimo | thank you, moritz | ||
moritz | though I don't understand very much of it | ||
08:07
ivan`` left,
sunnavy left
|
|||
masak | whoa whoa too much text on slide! | 08:09 | |
I conclude that the one who made the slides is a researcher :P | 08:10 | ||
moritz | too much of everything on the previous slides | ||
masak: yes, there's a certain kind of researcher who thinks that every relevant information must be on the slide :/ | |||
08:10
libertyp1ime joined,
ashleydev joined,
krunen joined,
hugme joined,
DarthGandalf joined,
ivan`` joined,
sunnavy joined,
Yappocall joined,
zamolxes joined,
adams.freenode.net sets mode: +v hugme
08:11
libertyp1ime left,
ivan`` left
|
|||
moritz | hugme: hug slidemakers | 08:11 | |
hugme hugs slidemakers | |||
08:11
ivan`` joined,
libertyprime joined
08:13
ashleydev left,
krunen left,
hugme left,
DarthGandalf left,
sunnavy left,
Yappocall left,
zamolxes left
08:15
ashleydev joined,
krunen joined,
hugme joined,
DarthGandalf joined,
sunnavy joined,
Yappocall joined,
zamolxes joined,
adams.freenode.net sets mode: +v hugme,
dakkar joined
|
|||
moritz | tl;dnv: 2.bp.blogspot.com/-pYgVcAkBcJM/T_Pz....37+AM.png Higgs boson at 125 GeV with 5 sigma significance | 08:16 | |
08:17
kresike joined
|
|||
kresike | hello all you happy perl6 people | 08:17 | |
moritz | \o kresike | 08:20 | |
kresike | hello moritz o/ | ||
sorear | o/ kresike | ||
kresike | moritz, nice effort on the documentation, I like it | 08:21 | |
hello sorear o/ | |||
sorear | moritz: have you heard anything from ATLAS yet? | 08:22 | |
moritz | sorear: you mean besides "Higgs boson at 125 GeV with 5 sigma significance"? :-) | ||
timotimo | CERN: has enough money to smash particles at each other at 125 GeV, can't afford an HD livestream of the "big announcement" | 08:24 | |
sorear | moritz: I mean anything at all | ||
moritz: i've seen the CMS announcement. | |||
timotimo: 8000 GeV :) | 08:25 | ||
timotimo | sorear: if they can afford 8000 GeV, they surely can also afford 125, which would still be much more money than you would need to do HD livestreaming | ||
:p | |||
masak | 5 σ! that's good enough for me! :) | 08:26 | |
moritz | sorear: nothing besides the annoucement. I'm not really into high-energy physics, I just listen to the gossip | ||
sorear | there are two largely independant physics groups using the LHC and searching for the Higgs | 08:27 | |
if both ATLAS and CMS find Higgses with the same properties, it's probably not human error | |||
08:27
xinming joined
|
|||
moritz | and if the tevatron can confirm, I'll really believe it :-) | 08:28 | |
sorear | the slide you linked has a 'CMS' watermark in the corner | ||
moritz | right | ||
sorear | moritz: the tevatron has been shut down for good | 08:29 | |
masak | 'the tevatron'. clearly I've been watching too much Transformers at this point. | ||
moritz | sorear: seems I'm really behind on the gossip... isn't there another high energy collider in the US? | ||
sorear | I don't think so atm | 08:30 | |
ah, RHIC is still working | 08:31 | ||
masak | moritz: what is 'the excess' that she keeps talking about? | 08:35 | |
sorear | shall I? | ||
moritz | please | ||
moritz has no idea either | |||
masak | oh, they realized something. | ||
masak is completely lost :) | |||
sorear | the excess is the interesting part of the signal | ||
masak | I suspected as much. | 08:36 | |
sorear | they calculate the noise level, and subtract it off | ||
masak | oh! makes sense. | ||
sorear | noise here is called "background" | ||
masak | aye. | 08:37 | |
"compatibility between what we observe and what we expect from the Standard Model" -- natural science is TDD ;) | |||
sorear | you want to count Higgs events, but the Higgs doesn't last long enough to be detected, and there are non-Higgs events that give the same readout on the detector | ||
masak | aye. | 08:38 | |
sorear | either because the products are the same, or because the detectors have limited discerning power | ||
masak | I've understood that the Higgs is very hard to detect. which is why it's taken until now. | ||
moritz | in modern colliders, nothing is ever detected directly, just their decay lines | ||
masak | right. | ||
what's on the y axis? "Local p0"? | 08:39 | ||
arnsholt | apod.nasa.gov/apod/ap120501.html described the process fairly well for me | ||
sorear | masak: hard to detect and hard to produce | ||
08:40
thou left
|
|||
sorear | the most common decay mode for a Higgs is quarks, and proton collisons produce a huge mess of quarks anyway | 08:40 | |
Fermilab wants to build a muon collider to get cleaner results | |||
moritz | oh, atlas' higgs has 1GeV more mass than CMS' higgs :-) | 08:41 | |
masak | I think the slides are *meant* to look like crap. it's giving the signal "We're researchers, Captain, not designers!" | ||
I mean, srsly, is that Comic Sans? | |||
sorear | masak: I think it's just local p-value | 08:42 | |
masak | ok. | ||
kresike | researchers like Comic Sans :) | ||
masak | and the color scheme is... remarkable. | ||
timotimo | "thanks nature" :D | ||
sorear | masak: p-values, speaking very imprecisely, are the probability of getting that result or stronger by chance | ||
masak | timotimo: and not the paper, either :) | 08:43 | |
sorear: yes. I dimly recall from Statistics 101. | |||
sorear: that explains the negative log scale, then. | |||
massive applause. | |||
who's the guy who's crying? | 08:44 | ||
sorear | relevant to the muon collider, amazing thing I dug up last month: arxiv.org/abs/physics/9908017 | ||
moritz | erm, wtf? | ||
sorear | (a 4 TeV muon collider produces beams of ~1 TeV neutrinos. High energy neutrinos are, it turns out, not harmless.) | 08:45 | |
moritz | I thought neutrinos had so low low cross section that they all went through you :/ | ||
masak | "(but which one...?)" :) | ||
sorear | moritz: The cross sections increase with energy | 08:46 | |
moritz | stupid relativity! | 08:47 | |
masak | :P | ||
I have never seen that enthusiastic applause on a physics lecture. | |||
sorear | I don't know if I'm at all on the right track here, but I conceptualize it something like this: neutrino interactions are suppressed because they require an 80 GeV virtual W. If the neutrino has 800 GeV of energy to start with, there's not suppression | 08:48 | |
diakopter | in soviet russia, bosons detect you | ||
sorear | the funny thing is that, given how much of the problem is noise rejection, we've probably been detecting Higgses since the 90s but just not noticed it... | 08:50 | |
moritz | did the previous collider in the LHC tunnel go up to 125GeV? | 08:51 | |
(I'd think so...) | |||
masak | what are the consequences of this discovery, from a model perspective? | 08:52 | |
sorear | yes, LEP went up to 209 GeV | ||
masak | "The Standard Model is fine, we like it even more now"? | ||
timotimo | do i understand correctly that they don't have to get higher up in their energies to study the higgs boson more completely? | ||
moritz | masak: I don't think that's the conclusion | ||
timotimo | (i mean, most of their work now will be analysing the data recorded until now) | ||
sorear | masak: you may have noticed in that slide that they detected the Higgs even harder (5.0) than the standard model predicted (4.7) | 08:53 | |
moritz | masak: afaict (and I might very well be wrong here), the mass mechanism is largly orthogonal to the rest of the model | ||
sorear | masak: the higgs that they've found seems to decay into photons slightly more often than it should. "stay tuned" | ||
timotimo | it's amazing they went this far without destroying earth in the process! | ||
colomon doesn't quite understand why, but CERN is one of my $customers. | 08:54 | ||
sorear | timotimo: they record only a tiny tiny fraction of the data they generate | ||
moritz | masak: so there have been "standard model" + "non-higgs mass model" constructs which can now die peacefully | ||
masak | oh, that's exciting news, then. | ||
timotimo | did i understand it incorrectly that they have not yet analysed a lot of it? | ||
sorear | the front end detectors put out something like 1 PB/s | 08:55 | |
moritz | which needs to be filtered pretty much immediately | ||
sorear | there's a lot of data left to analyze, but there's far more they had to drop immediately | ||
moritz | because nobody can even store that much data | ||
timotimo | yeah, no data cable is thick enough to get that data out | ||
sorear | and the drop rules depend on what they are looking for | 08:56 | |
timotimo | ah, of course. so they might have been overlooking lots of other things | ||
sorear | so, there's probably a lot of interesting meta-analysis stuff that can be done with the existing data | ||
but it's probably not correct to say that they could do without future collisions | |||
also, we're still without a viable dark matter candidate | 08:57 | ||
moritz wonders if some PHD student will go through the old LEP data and find the Higgs in it, now that they know what to look for | |||
sorear | hmm. en.wikipedia.org/wiki/LEP#An_unfin...iggs_boson | 08:59 | |
timotimo | next thing on the stream is a press conference, yes? | 09:01 | |
masak | I now suspect the crying man (who is now talking) is Higgs. | 09:04 | |
timotimo | no mention of earth-swallowing black holes yet? :\ | 09:07 | |
sorear | I imagine that stopped being funny a while ago. | ||
timotimo | maybe during the press conference someone will finally touch on this very important topic | ||
oh. apologies then | |||
sorear | sleep& | 09:08 | |
timotimo | would it be funny to register hasthehiggsbosonbeenfoundyet.com/ and putting "Yes!" on the page? | ||
moritz | it would | ||
hasthelhcdestroyedtheearthyet.com/ exists already :-) | 09:09 | ||
masak | WOW! "We found woking on the model very interesting and gratifying, but we didn't expect it to have anything to do with physical reality." I like this guy! | ||
timotimo | hmm, i'd have to ask my admin to pull up another virtual host and everything. seems a bit too bothersome for not too much amusement value | 09:10 | |
moritz | hey, new business idea: a service for one-click registration, setup and hosting of one-word domains | 09:11 | |
kresike | I wonder what the "most elusive particle" will be 20 years from now :) | 09:12 | |
moritz | you open an account once, and then just enter domain name, content (here "yes"), and click 'make it so' | ||
timotimo | feel free, moritz, there may be money in that. usually customers will want a simple image, too, rather than just a word | ||
they even made a higgs song! wow | 09:13 | ||
moritz | timotimo: but then I'd have to bother with domain registration :-) | ||
timotimo | yup, you would | ||
not worth the trouble, you should rather spend your time doing cool perl6 related things :) | |||
moritz | well, I could do it in Perl 6 :-) | 09:14 | |
masak | the higgs song felt wildly out of place :) | ||
timotimo | www.havewefoundthehiggsyet.com/ - indeed already taken | ||
masak | moritz++ # business idea in Perl 6 | ||
moritz | otoh it might conflict (though only a tiny bit) with the business of my future employer | ||
anyway, I'll ponder it :-) | 09:15 | ||
masak | you could always broach it with the employer. | 09:17 | |
moritz | I'll surely will | 09:18 | |
09:20
scott_ joined,
Guest71860 left,
scott_ is now known as Guest34193
|
|||
timotimo | nooooo, she forgot to push the button again | 09:25 | |
we can hear her typitytype | |||
masak | "I think [the Higgs is] very relevant to you, because if it did not exist, you would not exist. [To another physicist:] Do you agree?" -- "Yes, absolutely." | 09:29 | |
I sniff the anthropic principle in the air ;) | |||
bonsaikitten | masak: it's a sign that god exists! ;) | 09:30 | |
timotimo | is that where you say ... ah, yes | ||
09:34
stephenlb left
|
|||
moritz | github.com/moritz/perlgeek.de/blob...-p6doc.txt # any feedback before I blog it? | 09:38 | |
colomon | line 29 ends with an out-of-place semicolon | 09:40 | |
moritz++ | 09:41 | ||
moritz | colomon: thanks, fixing | 09:42 | |
masak | moritz++ | 09:43 | |
timotimo | coopetition, i like that word | ||
masak | moritz: I believe you are doing very much the right things with this project. web visibility, nice URLs, simple organization, a focus on accessibility, community buy-in. | 09:44 | |
r: END { say "I run after die!" }; die "arrgh!" | 09:45 | ||
p6eval | rakudo 3bc91c: OUTPUT«arrgh! in block <anon> at /tmp/ppX4pkTgv2:1I run after die!» | ||
masak | yay | 09:46 | |
jnthn | moritz: posts looks good | ||
moritz | masak: one of my plans is a follow-up post with really, really easy examples of how to help | ||
like, several example patches that add a one-line to three-line example | 09:47 | ||
and then tell them "and now we need an example for List.join, $other_routines. Your turn!" | |||
masak | sounds like it just might work. | 09:49 | |
moritz | IME that's the only way to get a siginificant amount of contributors | 09:50 | |
(being very, very specific) | |||
that's a lesson I've learned from the contribution challenges | |||
and it's much work :-) | |||
masak | aye. | ||
09:52
mucker joined
|
|||
moritz | in preparation for the Oslo hackathon, sjn++ and others asked us to ponder some questions, including: why the ambitious goals for Perl 6? | 09:56 | |
the example of python 3 (brought again to my attention by teddziuba.com/post/26426290981/pyth...ng-problem ) makes me glad we have such ambitious goals | |||
python 3 breaks backward compatiblity, took a long time... and doesn't have too many compelling selling points | 09:57 | ||
09:57
erkan joined,
liuchong left
09:58
sisar joined
10:04
daxim joined
|
|||
bonsaikitten | moritz: it's slower, and I have to port libraries to make things work, and why not continue using 2.7 which just works now at no cost? | 10:05 | |
moritz | bonsaikitten: that's my point really | ||
bonsaikitten: with p6, we can point at quite a number of decent improvements over perl 5 | |||
bonsaikitten | moritz: perl6 is at least different enough (not just perl 5.18 with broken compat) and has some really new ideas | 10:06 | |
tadzik | hello #perl6 | ||
masak | tadzik! \o/ | ||
tadzik | \o/ | 10:08 | |
masak | why *would* you migrate working code to Python 3? just because it's a bigger version number? | 10:10 | |
I think that's where the real problem sits. it's a perception problem around version numbers. | |||
bonsaikitten | masak: because I then have to port lots of "foreign" code which might be unfixable, spend tons of time on integration testing and get a performance penalty | 10:11 | |
what's not to like about that :) | |||
moritz | perlgeek.de/blog-en/perl-6/2012-doc...p6doc.html # I blug, but many of you have seen the same text already in the preview | ||
bonsaikitten | that's why all the big things like Django, Turbogears, Plone, ... are still stuck in py2 for the next years | ||
arnsholt | I just found en.wikipedia.org/wiki/ZYpp (via fabien.potencier.org/article/64/php...you-think) | 10:12 | |
masak | bonsaikitten: oh wow, it took me a second or two to process that that was sarcasm. :) | ||
this channel is making me too soft ;) | |||
arnsholt | Sounds like an intriguing way to do package managment, even though SAT solving for it does make me think of sparrows and cannons | ||
bonsaikitten | masak: you must still be asleep ;) | ||
masak | yeah. | ||
masak goes hunting for lunch & | 10:13 | ||
bonsaikitten | arnsholt: most problems in package management don't map to SAT as far as I can tell | ||
masak | arnsholt: sparrows and cannons? is that like "swatting flies with nuclear weapons"? | ||
bonsaikitten | "Yes, PHP has a better dependency manager than any other languages." that is especially wrong :) | 10:14 | |
masak | I think using SAT in package management is *cool*. | ||
masak gone, really & | |||
daxim | libzypp and libsolv also have perl bindings | 10:15 | |
the recent php rants and blog responses raised an interesting point: a language can easily eat a lot of php's lunch by compiling to php | 10:17 | ||
imagine that | 10:18 | ||
brrt | compiling to php | ||
that would be... | |||
no | |||
god no | |||
daxim cackles | 10:19 | ||
yes, certaily. do think it through | |||
10:19
Psyche^ joined
|
|||
brrt | oh by the way | 10:21 | |
mod_parrot will be one day as easy | 10:22 | ||
and run all damn languages | |||
including php | |||
until people forget it was even there | |||
10:23
whiteknight joined,
Psyche^ is now known as Patterner,
whiteknight is now known as Guest42653
|
|||
daxim | I don't buy anymore in the "one day [in the future]" rhetoric | 10:24 | |
I evaluate the code that exists and I can use | 10:25 | ||
GlitchMr | doc.perl6.org/type/Str | 10:26 | |
What is "Stringy"? | |||
Timbus | overcooked beans | ||
GlitchMr | I guess that "Stringy" is a role? | ||
jnthn | doc.perl6.org/type/Stringy ...oh, not yet :) | ||
Stringy is a role done by all things that are string-like. | |||
GlitchMr | But we have Numeric role. So I guess it's just lack of documentation for Stringy. | 10:27 | |
10:27
Guest34193 left
|
|||
dalek | c: 86fee1d | jnthn++ | lib/Stringy.pod: Add a minimal doc for Stringy. |
10:29 | |
10:32
kaare_ joined
10:33
spider-mario joined
|
|||
brrt | ... is there a perl metacharacter for all non-printable characters? | 10:34 | |
GlitchMr | Whitespace and control characters? | ||
jnthn | In a regex, <print> matches all printables, iirc. So in theory, <!print> | ||
10:35
seldon joined
|
|||
brrt | whitespace is printable | 10:36 | |
(in my specific application) | |||
dalek | c: bbff3e2 | GlitchMr++ | lib/Callable.pod: Minimal doc for Callable too |
10:48 | |
flussence | std: /<!print>/; | 10:53 | |
p6eval | std fd2647b: OUTPUT«ok 00:00 41m» | ||
flussence | std: /<control>/; | ||
p6eval | std fd2647b: OUTPUT«ok 00:00 41m» | ||
flussence | std: /<foo>/; | ||
p6eval | std fd2647b: OUTPUT«ok 00:00 41m» | ||
flussence | hm. | ||
r: /<!print>/ | |||
p6eval | rakudo 3bc91c: ( no output ) | ||
flussence | r: /<foo>/ | 10:54 | |
p6eval | rakudo 3bc91c: ( no output ) | ||
flussence | r: 'a' ~~ /<foo>/ | ||
p6eval | rakudo 3bc91c: OUTPUT«No such method 'foo' for invocant of type 'Cursor' in regex <anon> at /tmp/BRnwfO0_Si:1 in method ACCEPTS at src/gen/CORE.setting:9791 in block <anon> at /tmp/BRnwfO0_Si:1» | ||
flussence | r: 'a' ~~ /<!print>/ | ||
p6eval | rakudo 3bc91c: OUTPUT«Cursor<-1868022110>Can not get non-existent attribute '$!pos' on class 'Cursor' in regex <anon> at /tmp/Iru_o1kAQt:1 in method ACCEPTS at src/gen/CORE.setting:9791 in block <anon> at /tmp/Iru_o1kAQt:1» | ||
flussence | r: 'a' ~~ /<control>/ | ||
p6eval | rakudo 3bc91c: OUTPUT«No such method 'control' for invocant of type 'Cursor' in regex <anon> at /tmp/O2_dPnD1SQ:1 in method ACCEPTS at src/gen/CORE.setting:9791 in block <anon> at /tmp/O2_dPnD1SQ:1» | ||
flussence | ah, there we go. !print only | ||
r: 'abc f j' ~~ /^ <print+space>+ $/ | 10:55 | ||
p6eval | rakudo 3bc91c: OUTPUT«===SORRY!===regex assertion not terminated by angle bracket at line 2, near "+space>+ $"» | ||
flussence | r: 'abc f j' ~~ /^ <print&space>+ $/ | ||
p6eval | rakudo 3bc91c: OUTPUT«===SORRY!===regex assertion not terminated by angle bracket at line 2, near "&space>+ $"» | ||
flussence | r: 'abc f j' ~~ /^ [ <print> | <space> ]+ $/ | 10:56 | |
p6eval | rakudo 3bc91c: OUTPUT«Cursor<-125322636>Can not get non-existent attribute '$!pos' on class 'Cursor' in regex <anon> at /tmp/FPpA582mjh:1 in method ACCEPTS at src/gen/CORE.setting:9791 in block <anon> at /tmp/FPpA582mjh:1» | ||
flussence | is 3bc91c broken there or am I doing something non-obviously stupid? | ||
10:57
Guest42653 left
|
|||
jnthn | Oh...I wonder if <print> is NYI and so it's then trying to call Mu.print, which of course is not a Cursor... | 10:58 | |
flussence | r: 'abc f j' ~~ /^ [ <graph> | <space> ]+ $/ | 11:00 | |
p6eval | rakudo 3bc91c: OUTPUT«No such method 'graph' for invocant of type 'Cursor' in regex <anon> at /tmp/21zORc0AND:1 in method ACCEPTS at src/gen/CORE.setting:9791 in block <anon> at /tmp/21zORc0AND:1» | ||
flussence | r: 'abc f j' ~~ /^ [ <alnum> | <space> ]+ $/ | ||
p6eval | rakudo 3bc91c: ( no output ) | ||
flussence | r: 'abc f j' ~~ /^ <!cntrl>+ $/ | ||
uh oh | 11:01 | ||
p6eval | rakudo 3bc91c: OUTPUT«(timeout)» | ||
GlitchMr | perl6: 1 andthen Mu andthen 2 | ||
p6eval | rakudo 3bc91c: OUTPUT«===SORRY!===Confusedat /tmp/acMQdHxaMq:1» | ||
..niecza v19-7-g5e25209: ( no output ) | |||
dalek | atures: 116af37 | GlitchMr++ | features.json: Logic cascade is supported in Niecza |
11:03 | |
GlitchMr | Of course, for Git changing one character is changing two lines | 11:06 | |
moritz | <!cntrl> is a zero-width match | 11:07 | |
and that's also why it loops infinitely | |||
r: say "a\c[1]b" ~~ /\w <.cntrl> \w/ | |||
p6eval | rakudo 3bc91c: OUTPUT«q[ab]» | ||
moritz | r: say "a\c[1]b" ~~ /\w <-cntrl> \w/ | ||
p6eval | rakudo 3bc91c: OUTPUT«#<failed match>» | ||
moritz | - is the correct negation for character classes if you want it to remain a character class (ie match one character) | 11:08 | |
GlitchMr | perl6: 'abc' ~~ /<!cntrl>/ | 11:09 | |
p6eval | rakudo 3bc91c, niecza v19-7-g5e25209: ( no output ) | ||
GlitchMr | perl6: print ('abc' ~~ /<!cntrl>+/).perl | 11:10 | |
moritz | 13:07 < moritz> and that's also why it loops infinitely | ||
p6eval | rakudo 3bc91c, niecza v19-7-g5e25209: OUTPUT«(timeout)» | ||
moritz | our regex engines don't have protection yet against quantifying zero-width matches | ||
11:15
lumi__ joined
|
|||
jnthn | moritz: oh! | 11:20 | |
d'oh :) | |||
11:21
JimmyZ joined
|
|||
hoelzro | can one do pipes in rakudo yet? | 11:23 | |
moritz | hoelzro: what kind of pipes are you looking for? UNIX pipes? object pipes? something else? | 11:27 | |
tin whistle pipes? | |||
:-) | |||
hoelzro | moritz: IPC pipes | 11:28 | |
I want to write a Perl5 program that does some heavy lifting/lower level stuff, but a Perl6 program to process the data and respond | 11:29 | ||
moritz | then only in the form of shell commands :( | ||
though parrot implements pipe opening, so it shouldn't be too hard to do | |||
11:30
mucker left
|
|||
moritz | (though we are missing other IPC stuff like signal handling) | 11:30 | |
hoelzro | hmm | ||
that's fine | |||
arnsholt | If you're feeling adventurous, you could probably do it with Zavolaj =) | ||
hoelzro | I'm just trying to write an XMPP bot in Perl6 with the minimum amount of effort up front | ||
eventually I wouldn't mind writing an XML parser, an event loop, and an XMPP client library =P | 11:31 | ||
tadzik | wow, courageous one you are :) | ||
flussence | you could always have the perl5 program open a two-way pipe to the perl6 one, and use stdin/out from perl6 | 11:32 | |
dalek | q: 9985497 | moritz++ | answers.md: explain difference between token, rule and regex |
||
hoelzro | flussence: interesting idea; I'd rather the whole pipe thing be transparent, though | ||
So I can have an XMPPBot::Connection object | |||
moritz | flussence: that's possible, but rather hard to do without getting into a deadlock | ||
11:32
JimmyZ left,
JimmyZ_ joined,
JimmyZ_ is now known as JimmyZ
|
|||
hoelzro | and replace it with a real object when an actual library is ready | 11:32 | |
Timbus | is a socket pair not possible? | 11:33 | |
arnsholt | If you're happy with the P5 script being at thge top level, you might be able to do it by explicitly forking, replacing STDIN/STDOUT with filehandles of your choosing and then finally exec(2)ing your P6 program | ||
hoelzro | Timbus: that would be acceptable | 11:34 | |
arnsholt | Sort of what flussence suggested | ||
hoelzro | arnsholt: I'd prefer the P6 program to be the top | ||
JimmyZ | n: say 4 [&infix:<+>] 6 | 11:36 | |
p6eval | niecza v19-7-g5e25209: OUTPUT«10» | ||
Timbus | seems like a lot of effort instead of just.. mkfifo | ||
moritz | n: say [[&infix:<+>]] 4, 6 | 11:37 | |
p6eval | niecza v19-7-g5e25209: OUTPUT«10» | ||
moritz | JimmyZ: one can always go another level nastier :-) | ||
JimmyZ | :) | 11:38 | |
n: say [[[[[&infix:<+>]]]]] 4, 6 | 11:39 | ||
p6eval | niecza v19-7-g5e25209: OUTPUT«10» | ||
JimmyZ | so you can use many [] | ||
moritz | n: say [R[[R[[&infix:<+>]]]]] 4, 6 | 11:40 | |
p6eval | niecza v19-7-g5e25209: OUTPUT«10» | ||
Timbus | n: say <== 4, 6 ==> [&infix:<+>] | ||
p6eval | niecza v19-7-g5e25209: OUTPUT«===SORRY!===Bogus term at /tmp/kfxTLfbuVy line 1 (EOF):------> say <== 4, 6 ==> [&infix:<+>]⏏<EOL>Parse failed» | ||
flussence | n: say [R[[R[[&infix:<+>]]]]] (4 XZX 6) # bwahaha | ||
p6eval | niecza v19-7-g5e25209: OUTPUT«10» | ||
Timbus | lol | ||
masak | I wonder why people think nesting operators is evil, but nesting function calls is perfectly normal ;) | 11:42 | |
JimmyZ | r: say [[[[[+]]]]] 4, 6 | 11:43 | |
p6eval | rakudo 3bc91c: OUTPUT«10» | ||
moritz | masak: nesting operators is much more like higher-order programming | ||
jnthn even explains meta-operators as "just higher order programming" to certain audiences. | 11:44 | ||
seldon | There may be a mental connection to three-star programmers, I suppose. | 11:46 | |
moritz | what is a three-star programmer? | 11:47 | |
seldon | One that uses pointers to pointers to pointers. | 11:48 | |
int ***p; // <-- that sort of thing. | |||
moritz rarely touches languages with explicit pointers these days | |||
dalek | q: 49e139e | moritz++ | answers.md: explain &fail and &die also change HTML attributes to double quote, because the generated file is actually XHML |
11:49 | |
jnthn | .oO( Great, now I'll never be able to see "Hotel **** Thingyhof" as anything other than a C declaration... ) |
||
moritz | jnthn: better than thinking of it as swear words :-) | 11:50 | |
seldon | Great, now I'll never be able to read C code again. | ||
11:50
cognominal left
|
|||
GlitchMr | But, couldn't you in Perl 5 do $$${\\\42}? | 11:51 | |
moritz | but then I'd be a three-backslash programmer :-) | ||
11:52
cognominal joined
|
|||
seldon | Hmm...if there were trigils, you could do $#@bastard or so. | 11:52 | |
GlitchMr | Or $$$(\\\42) in Perl 6. | ||
moritz | GlitchMr: no | ||
GlitchMr | perl6: print ($$$(\\\42)).perl | ||
p6eval | niecza v19-7-g5e25209: OUTPUT«42» | ||
..rakudo 3bc91c: OUTPUT«===SORRY!===Non-declarative sigil is missing its nameat /tmp/ZWwgpwJ0tx:1» | |||
GlitchMr | perl6: print ($$$(\\\\42)).perl | ||
p6eval | niecza v19-7-g5e25209: OUTPUT«\(42)» | 11:53 | |
..rakudo 3bc91c: OUTPUT«===SORRY!===Non-declarative sigil is missing its nameat /tmp/0doq1rgQbN:1» | |||
moritz | $ and \ as prefixes aren't complementary actions | ||
GlitchMr | Is it Niecza bug? | ||
moritz | I'm not sure | ||
but \ creates a Capture | |||
and $ itemizes something | |||
masak | right. they are not opposites. | ||
GlitchMr | So, Niecza is wrong or Rakudo is wrong? | ||
moritz | I don't think itemizing a one-element Capture should unCapture it | 11:54 | |
GlitchMr | But rakudo error sounds like a syntax error... | ||
moritz | it is | ||
and is likely also wrong | |||
GlitchMr | perl6: print ($($($(\\\\42)))).perl | ||
p6eval | rakudo 3bc91c: OUTPUT«Capture.new( list => (Capture.new( list => (Capture.new( list => (Capture.new( list => (42,).list, hash => EnumMap.new()),).list, hash => EnumMap.new()),).list, hash => EnumMap.new()),).list, hash => EnumMap.new())» | ||
..niecza v19-7-g5e25209: OUTPUT«\(42)» | |||
moritz | std: $$$( 1) | ||
p6eval | std fd2647b: OUTPUT«ok 00:00 41m» | ||
GlitchMr | perl6: print ($($($(\\\42)))).perl | ||
p6eval | rakudo 3bc91c: OUTPUT«Capture.new( list => (Capture.new( list => (Capture.new( list => (42,).list, hash => EnumMap.new()),).list, hash => EnumMap.new()),).list, hash => EnumMap.new())» | ||
..niecza v19-7-g5e25209: OUTPUT«42» | |||
moritz | r: $$$( 1) | ||
p6eval | rakudo 3bc91c: OUTPUT«===SORRY!===Non-declarative sigil is missing its nameat /tmp/9nmRlOjOH2:1» | ||
moritz | so yes, rakudobug | ||
GlitchMr | tablets.perl6.org/appendix-e-exciti...comparison | 11:56 | |
$a = defined $b ? $b : $c; $a = $b // $c; | |||
I don't like this Perl 5 example. | |||
In Perl 5 you also can do $b // $c | 11:57 | ||
moritz | in 5.10 and higher, yes | ||
GlitchMr | Perl 5.10 is old enough today | ||
It doesn't have support. | |||
moritz | well, I know | 11:58 | |
GlitchMr | tablets.perl6.org/appendix-e-exciti...ubroutines | 12:03 | |
my $a? | |||
(also I usually type it as my ($a, $b, @rest) = @_, but this is style thing) | 12:04 | ||
Both ways are correct | |||
arnsholt | Yeah, I do that too. But for $self parameters I use shift | 12:05 | |
dalek | blets: daf756f | moritz++ | docs/appendix-e-exciting.txt: fix p6ism in Perl 5 code |
||
12:06
cognominal left,
cognominal joined
|
|||
GlitchMr | It was working before, but I guess it's connected to array slices | 12:06 | |
masak | lichtkind: the last example in tablets.perl6.org/appendix-e-exciti...-for-loops is wrong. zip() iterates up to the length of the shortest array, not the length of @a | ||
moritz | I'm a bit more worried that tablets.perl6.org/appendix-e-exciti...ubroutines doesn't use what Perl 6 folks call "named parameters" | 12:07 | |
GlitchMr | @product = @factor1 >>*<< @factor2; | ||
I guess that Unicode »*« operator could be used in this case | 12:08 | ||
arnsholt | Also, the Perl 5 code has the wrong sigils in that same example | ||
moritz | GlitchMr: the fix it | ||
erm | |||
meant arnsholt :) | |||
arnsholt | Oh. Didn't know I could | 12:09 | |
arnsholt goes looking for the edit button | |||
moritz | it's a git repo | ||
perl6/tablets | |||
dalek | blets: 406cb56 | moritz++ | docs/appendix-e-exciting.txt: rename a section it does not use named parameters in the sense that Perl 6 programmers use that term |
||
arnsholt | Ah, right | ||
moritz | $product[$] = $factor1[$] * $factor2[$_]; # those lonely $_ also don't look well | 12:10 | |
arnsholt | 'Cept, I don't have write privileges to that repo | ||
dalek | blets: e9fc63f | GlitchMr++ | docs/appendix-e-exciting.txt: Use »*« instead of >>*<< |
||
blets: 2ce9aef | GlitchMr++ | docs/appendix-e-exciting.txt: Use $_ variable instead of $] variable and syntax error. |
|||
moritz | ah, GlitchMr++ is faster than me | ||
arnsholt: I can fix that, just a sec | 12:11 | ||
arnsholt | Cheers! | ||
Long live the conversational implicature ^_^ | |||
moritz | arnsholt: erm, you should have | ||
GlitchMr | I already have fixed it when you have mentioned it | 12:12 | |
moritz | arnsholt: you're in the 'perl6' team, and it grants access to 'tablets | ||
arnsholt | Huh | ||
GlitchMr | perl6/tablets | ||
arnsholt | Oh! | ||
arnsholt slaps forehead | |||
My Github session had expired | 12:13 | ||
dalek | blets: c3575dc | GlitchMr++ | docs/tablet-4-operators.txt: Add Unicode hyperops to already existing ASCII hyperops |
12:15 | |
GlitchMr | But actually, whole tablet-4-operators.txt needs descriptions of operators | ||
For now it's list of operators | 12:16 | ||
moritz | I went to look at the tablets for stuff that I could steal for p6doc | ||
and was disappointed that there wasn't much worthy of copying | |||
GlitchMr | Also, is generating doc.perl6.org automatic | 12:17 | |
moritz | it's not yet cronjobbed | 12:18 | |
dalek | c: 266ceff | moritz++ | lib/operators.pod: start operators.pod precedence and associativity tables are taken verbatim from S03 |
||
GlitchMr | Also, I think that doc.perl6.org should have some kind of layout. | 12:19 | |
moritz | it has some kind of layout :-) | ||
though improvements to it are always welcome | |||
dalek | blets: 730ee66 | (Carl Mäsak)++ | docs/appendix-e-exciting.txt: [docs/appendix-e-exciting.txt] correcter Perl 5 version of zip() |
||
GlitchMr | Also, I would like to add link to Perl6 documentation to perl6.org, but... | 12:23 | |
perl6.org/documentation/ | |||
moritz | btw the old doc.perl6.org content is still available under u4x.perl6.org/ | ||
GlitchMr | That "Official Perl 6 documentation" is a problem. It leads to The Synopsis. | ||
moritz | GlitchMr: just rename it | ||
flussence | "Official Perl 6 Specification" sounds correcter | ||
moritz | you can call the links "Perl 6 specification" and "doc.perl6.org" or "p6doc" or so | 12:24 | |
GlitchMr | ok :) | ||
dalek | href="https://perl6.org:">perl6.org: 47148c0 | GlitchMr++ | source/ (2 files): Add Perl 6 documentation links |
12:28 | |
GlitchMr | Can't use an undefined value as an ARRAY reference at /usr/local/validator/httpd/cgi-bin/check line 569. | 12:29 | |
For help, please send mail to the webmaster ([no address given]), giving this error message and the time and date of the error. | |||
ok | |||
That was random | |||
I wanted to check validity of Perl 6 pages | |||
flussence | don't ever look at the validator's source code. it's horrifying :) | 12:30 | |
hoelzro | does Rakudo support sockets (yet)? | ||
jnthn | Yes | ||
Various modules on modules.perl6.org use Rakudo's socket support. | |||
dalek | href="https://perl6.org:">perl6.org: c96eeb6 | GlitchMr++ | source/documentation/index.html: Fix HTML error |
12:31 | |
hoelzro | ah, I see. IO::Socket | 12:32 | |
jnthn: thanks! | |||
12:36
JimmyZ_ joined
12:39
JimmyZ left,
JimmyZ_ is now known as JimmyZ
|
|||
timotimo | "Arrays may also be defined with a mixture of fixed and autoextending dimensions. For example, there are always 12 months in a year and 24 hours in a day, but the number of days in the month can vary: | 12:46 | |
that's not strictly true :) | |||
moritz | yes, we know :-) | ||
dalek | c: 017256e | moritz++ | lib/glossary.pod: steal glossary.pod from u4x added some small fixes and p6podification |
||
masak | \o/ | 12:50 | |
12:52
whiteknight joined,
whiteknight is now known as Guest78231
12:54
cognominal left
12:56
cognominal joined
13:03
PacoAir joined
|
|||
dalek | c: 08634a2 | moritz++ | htmlify.pl: [htmlify] do not dissect language documents I have no short-ish term plans for doing anything with subsections of these documents. Speeds up processing a bit |
13:04 | |
seldon | Is Str's ords method for public consumptions? I found it through introspection and it's perfect for my little bf interpreter, but I don't see it in the spec. | 13:05 | |
moritz | then we need to spec it | ||
seldon | Dunno. It feels a little out of place tbh, but it's a good way to get single chars without spamming new temporary objects. | 13:07 | |
moritz | I think chrs is specced (which is the exact opposite) | 13:08 | |
so we should have ords too | |||
dalek | c: 75fb570 | moritz++ | lib/Str.pod: [Str] ord and ords |
13:09 | |
moritz | n: say 'abc.'.ords | ||
p6eval | niecza v19-7-g5e25209: OUTPUT«97 98 99 46» | ||
moritz | rn: say 'abc.'.ords | ||
p6eval | rakudo 3bc91c, niecza v19-7-g5e25209: OUTPUT«97 98 99 46» | ||
moritz | oh, and we have tests for it | 13:10 | |
seldon: it's in S29, where it's thoroughly misplaced | |||
masak | frankly I think .chrs and .ords are a bit unnecessary when we have >>.chr and .comb>>.ord | 13:11 | |
not even "it's not orthogonal, it's diagonal" motivates it for me. YMMV. | |||
moritz | >>.chr.join | 13:12 | |
and it's not quite the same, because >> descends into sub-structures | |||
timotimo | strs can have sub-structures? | 13:13 | |
jnthn | huh, isn't .ords a method on a string? | ||
'foo'>>.ord won't work | 13:14 | ||
It'd have to be 'foo'.comb>>.ord | |||
13:14
mucker joined
|
|||
moritz | jnthn: .comb>>.ord is what masak++ wrote | 13:14 | |
13:14
Gesh joined
|
|||
masak | jnthn: yeah, keep up! :P | 13:15 | |
jnthn | How dare you tell me to keep up! :P | ||
moritz | timotimo: chrs is a method in List, which can have sub-structures | ||
masak | jnthn: I'm sorry you feel offended. :P | ||
timotimo | oh, didn't realize | ||
r: ("foo", "bar", "baz").chrs | |||
p6eval | rakudo 3bc91c: OUTPUT«No such method 'chrs' for invocant of type 'Parcel' in block <anon> at /tmp/wUE6UzPw2Q:1» | ||
timotimo | r: say ("foo", "bar", "baz").list.chrs | ||
p6eval | rakudo 3bc91c: OUTPUT«Cannot convert string to number: base-10 number must begin with valid digits or '.' in '⏏foo' (indicated by ⏏) in method Int at src/gen/CORE.setting:9538 in method Int at src/gen/CORE.setting:3483 in method chr at src/gen/CORE.setting:1951 in method dispatc… | ||
masak | no, that's not what I wrote either. | 13:16 | |
timotimo | uh, of course | ||
moritz | timotimo: list of integers | ||
timotimo | i just realized chrs is the other way around | ||
13:17
smash joined
|
|||
smash | hello everyone | 13:17 | |
moritz | smash! | 13:18 | |
GlitchMr | perl6: print 42,; | ||
p6eval | rakudo 3bc91c, niecza v19-7-g5e25209: OUTPUT«42» | ||
GlitchMr | perl6: print 42,,; | ||
p6eval | rakudo 3bc91c: OUTPUT«===SORRY!===Preceding context expects a term, but found infix , insteadat /tmp/cvBAtFrqZk:1» | ||
..niecza v19-7-g5e25209: OUTPUT«===SORRY!===Preceding context expects a term, but found infix , instead at /tmp/yx_l6bGDM5 line 1:------> print 42,⏏,;Parse failed» | |||
timotimo | oh, btw, could you tell me what to look for to understand how "semicolon lists" work or what they're used for? | 13:19 | |
most stuff i found in the synopses was about parameters not to be dispatched over and such | |||
and of course lists of statements to evaluate | |||
moritz | r: say <1 2 3> Z <a b c> Z <d e f> | ||
p6eval | rakudo 3bc91c: OUTPUT«1 a d 2 b e 3 c f» | ||
moritz | suppose you want to write a function that works the same way | 13:20 | |
you somehow need to take care that the structure of the input list doesn't flatten out | |||
semicolon lists are a (the?) way to do it | |||
r: say zip(<1 2 3>; <a b c>; <d e f>) | 13:21 | ||
p6eval | rakudo 3bc91c: OUTPUT«1 a d 2 b e 3 c f» | ||
moritz | r: say zip(<1 2 3> <a b c> <d e f>) | ||
p6eval | rakudo 3bc91c: OUTPUT«===SORRY!===CHECK FAILED:Undefined routine '&c' called (line 1)Undefined routine '&b' called (line 1)Undefined routine '&a' called (line 1)» | ||
moritz | r: say zip(<1 2 3>, <a b c>, <d e f>) | ||
p6eval | rakudo 3bc91c: OUTPUT«1 a d 2 b e 3 c f» | ||
moritz | hm, seems it works without | ||
maybe we can throw 'em out? :-) | |||
13:23
cognominal_ joined
|
|||
masak | smash! \o/ | 13:24 | |
colomon | rn: ay zip(<1 2 3>; <a b c>; <d e f>) | ||
p6eval | niecza v19-7-g5e25209: OUTPUT«===SORRY!===Slicel lists are NYI at /tmp/rfC6LsGfSy line 1 (EOF):------> ay zip(<1 2 3>; <a b c>; <d e f>)⏏<EOL>Undeclared routines: 'ay' used at line 1 'zip' used at line 1Unhandled exception: Check failed a… | 13:25 | |
..rakudo 3bc91c: OUTPUT«===SORRY!===CHECK FAILED:Undefined routine '&ay' called (line 1)» | |||
colomon | rn: say zip(<1 2 3>; <a b c>; <d e f>) | ||
p6eval | rakudo 3bc91c: OUTPUT«1 a d 2 b e 3 c f» | ||
..niecza v19-7-g5e25209: OUTPUT«===SORRY!===Slicel lists are NYI at /tmp/ktccwRJMhe line 1 (EOF):------> say zip(<1 2 3>; <a b c>; <d e f>)⏏<EOL>Undeclared routine: 'zip' used at line 1Unhandled exception: Check failed at /home/p6eval/niecza… | |||
colomon | doh! | ||
13:26
cognominal left
|
|||
daxim | sedition.com/a/3285 perl6 people are happy people. HAPPY TO ANSWER | 13:36 | |
moritz | \o/ | ||
I'd say it's even a progress to see perl6 included in such a statistic | 13:37 | ||
.oO( perl6 is more important than SQL ) |
|||
colomon | there are unanswered perl 6 questions on stackoverflow? | 13:39 | |
daxim | not anymore | ||
colomon | ha! | 13:40 | |
GlitchMr | Now, I wonder what is that one unanswered question | 13:42 | |
ok, found it: stackoverflow.com/questions/3317298...-in-rakudo | 13:43 | ||
daxim | that has one answer. | ||
GlitchMr | Except not accepted (I don't know why) | ||
13:44
tokuhiro_ joined
|
|||
GlitchMr | But well, only person who asked it can accept this answer | 13:44 | |
so well | |||
13:45
adu joined
|
|||
GlitchMr | Oh, I remember. Unanswered means that no answer is accepted and no answer has more than 0 points. | 13:45 | |
I have upvoted that answer and it isn't on unanswered tab on StackOverflow. | |||
13:46
cognominal__ joined
13:49
cognominal_ left
|
|||
moritz | nr: grammar A { has $.x = 5; method TOP { { say $.x } } }; say A.new.parse('') | 13:53 | |
p6eval | niecza v19-7-g5e25209: OUTPUT«Unhandled exception: Representation P6cursor does not support attributes at /tmp/7uvezsizUv line 0 (x @ 1)  at /tmp/7uvezsizUv line 1 (A.TOP @ 7)  at /home/p6eval/niecza/lib/CORE.setting line 2883 (Grammar.parse @ 5)  at /tmp/7uvezsizUv line 1 (main… | ||
..rakudo 3bc91c: OUTPUT«Any()No such method 'MATCH' for invocant of type 'Bool' in method parse at src/gen/CORE.setting:9778 in block <anon> at /tmp/1h6U_muL31:1» | |||
moritz | r: grammar A { has $.x = 5; method TOP { { say $!x } } }; say A.new.parse('') | ||
p6eval | rakudo 3bc91c: OUTPUT«Any()No such method 'MATCH' for invocant of type 'Bool' in method parse at src/gen/CORE.setting:9778 in block <anon> at /tmp/hlZy63m_sm:1» | ||
moritz | I think there are two bugs in here | ||
the first is that the grammar doesn't see the attribute | 13:54 | ||
and the second is that it tried to call Bool.MATCH. I think {} blocks are meant *only* for side effects, and their return values should be unused | |||
Lard++ on p6u | |||
colomon | n: grammar A { has $.x = 5; method TOP { { say $!x } } }; say A.new.parse('') | 13:58 | |
p6eval | niecza v19-7-g5e25209: OUTPUT«Unhandled exception: Representation P6cursor does not support attributes at /tmp/iHSRDm6Eh9 line 1 (A.TOP @ 7)  at /home/p6eval/niecza/lib/CORE.setting line 2883 (Grammar.parse @ 5)  at /tmp/iHSRDm6Eh9 line 1 (mainline @ 6)  at /home/p6eval/niecza/l… | ||
moritz | n: grammar A { has $.x = 5; method TOP { { say 'lol' } } }; A.new.parse('') | 13:59 | |
p6eval | niecza v19-7-g5e25209: OUTPUT«lolUnhandled exception: Unable to resolve method to in type Bool at /home/p6eval/niecza/lib/CORE.setting line 2882 (ANON @ 4)  at /home/p6eval/niecza/lib/CORE.setting line 1026 (Block.ACCEPTS @ 4)  at <unknown> line 0 (KERNEL grep @ 2)  at /home/p6… | ||
moritz | rn: grammar A { has $.x = 5; method TOP { { say 'lol' } .? } }; A.new.parse('') | ||
p6eval | niecza v19-7-g5e25209: OUTPUT«===SORRY!===Strange text after block (missing comma, semicolon, comment marker?) at /tmp/zc38u6wp7u line 1:------> has $.x = 5; method TOP { { say 'lol' }⏏ .? } }; A.new.parse('')Parse failed» | ||
..rakudo 3bc91c: OUTPUT«===SORRY!===Unable to parse blockoid, couldn't find final '}' at line 2, near "{ say 'lol"» | |||
moritz | OH | ||
I should write 'token TOP' | |||
not 'method TOP' | |||
timotimo | is there a similar short version of my LongTypeName @foo = (LongTypeName.new(:a<1>), LongTypeName.new(:b<2>)), like i could do my LongTypeName $foo =. new(:a<1>)? | ||
moritz | not really | 14:00 | |
but you can write .new(:a<1>), .new(:a<2>) given LongTypeName | 14:01 | ||
timotimo | oh, that's cute | ||
GlitchMr | paste.uk.to/e04406a8 | ||
So, you cannot parse Perl 6 too? | |||
timotimo | how about mapping the parameter lists to LongTypeName.new with hyper ops? somewhat like LongTypeName <<.new<< (\(:a<1>), \(:b<2>)) | 14:02 | |
moritz | of course you can't :-) | ||
GlitchMr | Actually, I think I should've used .pick, but * (Whatever) | ||
tadzik | err, what | ||
colomon | GlitchMr: was just going to say .pick to you. :) | ||
GlitchMr | I've done Perl 5 code, not Perl 6 | 14:03 | |
moritz | timotimo: (:a<1>, :a<2>).map: { LongTypeName.new(|$_) } | ||
GlitchMr | (well, ok, in Perl 5 ['-', '+'][2.rand.Int] would be syntax error) | ||
14:03
kaleem left
|
|||
tadzik | std: sub infix:[['-', '+'][2.rand.Int]] ($a, $b) { } | 14:03 | |
p6eval | std fd2647b: OUTPUT«Possible attempt to separate words with commas at (eval 243) line 18.Possible attempt to separate words with commas at (eval 243) line 30.Cannot create infix:sym[['-', '+'][2.rand.Int]]: syntax error at (eval 243) line 18, near "2.rand"syntax error at (eval 243) l… | ||
GlitchMr | What words? | 14:04 | |
moritz | std: qw/-, +/ | ||
p6eval | std fd2647b: OUTPUT«ok 00:00 40m» | ||
moritz | GlitchMr: probably a bogus warning from the codegen | ||
erm, from the generated code | |||
GlitchMr | std: sub infix:[qw/- +/[2.rand.Int]] ($a, $b) { } | ||
p6eval | std fd2647b: OUTPUT«Cannot create infix:sym[qw/- +/[2.rand.Int]]: Search pattern not terminated at (eval 243) line 30.FAILED 00:00 41m» | ||
GlitchMr | Ok, happy? | ||
Probably no | 14:05 | ||
moritz | infix:[<+ ->.pick] | ||
GlitchMr | std: sub infix:[<+ ->.pick] ($a, $b) { } | ||
p6eval | std fd2647b: OUTPUT«Useless use of a constant (+) in void context at (eval 248) line 18.Useless use of a constant (+) in void context at (eval 248) line 30.Cannot create infix:sym[<+ ->.pick]: Bareword "pick" not allowed while "strict subs" in use at (eval 248) line 30.Bareword "pick… | ||
GlitchMr | Bareword? | ||
moritz | yep, the codegen doesn't like it | ||
GlitchMr | Is it Perl 5 or Perl 6? | 14:06 | |
moritz | GlitchMr: std generates perl 5 from Perl 6 code | ||
GlitchMr | oh, ok | ||
moritz | GlitchMr: so when the codegen is imperfect, perl 5 warnings and errors leak through | ||
flussence | r: sub infix:<±>($a, $b) { return $a-$b.abs .. $a+$b.abs }; say 12 ~~ 15±5 | 14:07 | |
p6eval | rakudo 3bc91c: OUTPUT«True» | ||
GlitchMr | ok | ||
flussence | r: sub infix:<±>($a, $b) { return $a-$b.abs .. $a+$b.abs }; say 22/7 ~~ pi ± 0.1 | 14:08 | |
p6eval | rakudo 3bc91c: OUTPUT«True» | ||
flussence | :D | ||
14:08
GlitchMr42 joined
14:09
GlitchMr left,
GlitchMr42 is now known as GlitchMr
|
|||
GlitchMr | perl6: r: sub infix:<±>($a, $b) { return $a-$b.abs .. $a+$b.abs }; say 12.5 ~~ 15±5 | 14:09 | |
p6eval | niecza v19-7-g5e25209: OUTPUT«True» | ||
GlitchMr | broken | ||
p6eval | ..rakudo 3bc91c: OUTPUT«===SORRY!===Confusedat /tmp/rLmPX8ZWPL:1» | ||
GlitchMr | perl6: sub infix:<±>($a, $b) { return $a-$b.abs .. $a+$b.abs }; say 12.5 ~~ 15±5 | ||
p6eval | rakudo 3bc91c, niecza v19-7-g5e25209: OUTPUT«True» | ||
GlitchMr | or not | ||
colomon | you said perl6: r: on the first | 14:10 | |
n: r: sub infix:<±>($a, $b) { return $a-$b.abs .. $a+$b.abs }; say 12.5 ~~ 15±5 | |||
p6eval | niecza v19-7-g5e25209: OUTPUT«True» | ||
GlitchMr | Oh, right, I forgot that ranges aren't Perl 5 ranges | ||
I know | |||
Accidentally | |||
colomon | r: r: sub infix:<±>($a, $b) { return $a-$b.abs .. $a+$b.abs }; say 12.5 ~~ 15±5 | ||
p6eval | rakudo 3bc91c: OUTPUT«===SORRY!===Confusedat /tmp/nmZqldBc5a:1» | ||
tadzik | hmm, szabgab seems to be writing Pod parser from scratch | ||
colomon | std: r: sub infix:<±>($a, $b) { return $a-$b.abs .. $a+$b.abs }; say 12.5 ~~ 15±5 | 14:11 | |
p6eval | std fd2647b: OUTPUT«ok 00:00 44m» | ||
GlitchMr | But if you cannot parse Perl, can you parse Pod in Perl 6? | ||
flussence | tadzik: I saw that, but from the capitalisation I assumed it was for perl5 POD | ||
tadzik | it's not | ||
GlitchMr: I managed to do it | |||
GlitchMr | ok, parsing Pod without executing code | 14:12 | |
tadzik | no, but the reasons are different | 14:13 | |
GlitchMr | But I guess that most POD parsers will simply think that grammar wasn't modified. | 14:14 | |
kresike | bye all | 14:19 | |
14:19
kresike left
|
|||
tadzik | bye kresike | 14:19 | |
dalek | c: eda5ad0 | (Klaus Brüssel)++ | lib/operators.pod: Fix some typos |
14:33 | |
c: f30a2b0 | GlitchMr++ | lib/operators.pod: Merge pull request #1 from muixirt/master Fixed some typos |
|||
c: 13cc82a | GlitchMr++ | lib/Callable.pod: Fix case sensitivity |
14:39 | ||
14:47
cognominal__ left
14:49
cognominal joined
14:52
cognominal left
|
|||
GlitchMr | Is it just me or Array isn't Positional? | 14:53 | |
perlcabal.org/syn/S32/Containers.html | |||
jnthn | Array inherits from List, and List is Positional. | 14:54 | |
14:54
cognominal joined
|
|||
jnthn | r: say Array ~~ Positional | 14:54 | |
p6eval | rakudo 3bc91c: OUTPUT«True» | ||
GlitchMr | Except, | 14:55 | |
role List does Container {...} | |||
role Container {...} | |||
14:55
tyatpi joined
|
|||
GlitchMr | There is nothing about Positional in inheritance chain | 14:55 | |
timotimo | r: say Container ~~ Positional | ||
GlitchMr | I guess that List should have does Positional too | ||
p6eval | rakudo 3bc91c: OUTPUT«===SORRY!===CHECK FAILED:Undefined routine '&Container' called (line 1)» | ||
timotimo | hm | ||
GlitchMr | Should I change this to role List does Container does Positional {...} | 14:56 | |
jnthn | role List?! | ||
We have it as a class in all the implementations, afaik. :) | |||
r: say Array.^mro | 14:57 | ||
p6eval | rakudo 3bc91c: OUTPUT«Array() List() Iterable() Cool() Any() Mu()» | ||
jnthn | r: say List ~~ Positional | ||
p6eval | rakudo 3bc91c: OUTPUT«True» | ||
jnthn | r: say Iterable ~~ Positional | ||
p6eval | rakudo 3bc91c: OUTPUT«False» | ||
GlitchMr | So, class List | ||
jnthn | OK, so it is List that does Positional. | ||
GlitchMr | And Container | ||
14:58
tokuhiro_ left
|
|||
moritz | no | 14:58 | |
there's no Container role or class | |||
jnthn | Sounds like a fossil to me. | 14:59 | |
GlitchMr | r: Positional | 15:00 | |
p6eval | rakudo 3bc91c: ( no output ) | ||
dalek | ecs: 0ebf6ac | moritz++ | S (2 files): get rid of Container fossil |
15:02 | |
c: 0cea25f | GlitchMr++ | lib/Positional.pod: Positional role |
15:05 | ||
pmichaud | good morning, #perl6 | 15:12 | |
diakopter | ahoy pm | ||
jnthn | morning, Pm | 15:13 | |
moritz | good am, pm | 15:22 | |
diakopter | um. good thing I just stopped myself from commuting to work. | 15:27 | |
jnthn | Red day? :) | 15:29 | |
15:29
fhelmberger left
|
|||
jnthn | er...national holiday, I mean... :) | 15:29 | |
Oh, of course, it's 4th July. :) | |||
jnthn hadn't even noticed. | |||
moritz listens to "4th of July" by Amy MacDonald | 15:30 | ||
diakopter | actually. I might be able to get something done at the office today without noise from nearby cubedwellers. luckily the office is only 1 mile away. I wonder if the air conditioning will be turned on today. | 15:31 | |
moritz | r: say 'pm' lt 'pir' | 15:34 | |
p6eval | rakudo 3bc91c: OUTPUT«False» | ||
moritz | :/ | ||
pmichaud | wow, lots of backscroll this morning | 15:40 | |
I want to get more notifications about commits to perl6/doc, perl6/tablet, .... | |||
(e.g., email notifications) | |||
either that or an RDF feed | |||
moritz | pmichaud: I'm pretty sure you can add those; you have admin privs on both repos | 15:41 | |
pmichaud | moritz: yeah; I'm just trying to figure out the best way to do it | ||
I'm not sure we want to be creating one-mailing-list-per-repo | |||
moritz | pmichaud: well, if it's only you, you can just use one of your own email addresses | 15:42 | |
pmichaud: so far nobody else has actively voiced interest | |||
pmichaud | yeah, I could do that. | 15:43 | |
let's see if I can get a rss feed or something | |||
actually, let me review the commits first :) | |||
moritz++ # blog post on p6doc | |||
moritz++ # link to python 3's marketing problem article | 15:44 | ||
I agree, ambitious goals are what make P6 worthwhile. | 15:45 | ||
15:48
simcop2387 joined
|
|||
masak | I agree too. | 15:49 | |
Perl 5 is the low risk/low payoff branch of Perl language development. Perl 6 is the high risk/high payoff branch. | 15:50 | ||
adu | masak: it doesn't have to be that way | 15:58 | |
15:59
am0c left
|
|||
adu | if llvm-perl6 comes to the rescue | 15:59 | |
moritz | and that would be what? | 16:00 | |
high risk, low payoff? | |||
16:00
alc joined
|
|||
masak | :P | 16:01 | |
adu: I completely don't get your point, sorry. | |||
16:05
JimmyZ left
|
|||
daxim | unicode tr 10 == awesome. mail.pm.org/pipermail/moscow-pm/201...13072.html | 16:06 | |
16:06
thelazydeveloper joined
16:10
dakkar left
|
|||
masak | rn: gist.github.com/3048087 | 16:11 | |
16:11
cognominal_ joined
|
|||
p6eval | niecza v19-7-g5e25209: OUTPUT«===SORRY!===Lexical EUR is not a package at /tmp/sLj4e_y5Em line 3:------> multi rate(EUR⏏) { 1.252 }A type must be provided at /tmp/sLj4e_y5Em line 3:------> multi rate(EUR⏏) { 1.252 }Lexical … | 16:11 | |
..rakudo 3bc91c: OUTPUT«1000 EUR is 1252 USD» | |||
masak | \o/ | ||
that... is ever so slightly cool and scary ;) | |||
masak hugs Perl 6 | |||
adu | masak: you shouldn't have to choose, you should be able to have low risk and high payoff :) | ||
pmichaud | I suspect that p5 folks would characterize it as low risk/high payoff. (And I'd agree with them in many respects.) | 16:12 | |
masak | adu: if it was possible to have low risk and high payoff, people would have already done it. www.scottaaronson.com/blog/?p=418 | ||
adu | masak: they have, it's called Wall Street | ||
masak | pmichaud: well, it's a relative thing. we wouldn't be bothering with Perl 6 if the expected payoff wasn't higher than not doing it and focusing only on Perl 5. | 16:13 | |
16:13
cognominal left
|
|||
pmichaud | masak: +1 | 16:13 | |
16:14
sergot joined
|
|||
sergot | hi o/ ! ! | 16:14 | |
masak | sergocie! \o/ | ||
sergot | masaku \o/ | ||
masak | :D | ||
sergot | I'm back after a few days without internet. :) | 16:15 | |
diakopter | adu: are you saying risk is not positively correlatd with reward on Wall Street? | ||
masak | welcome back, sergot! | ||
adu | diakopter: most definitely | ||
diakopter | adu: where do you get this idea? | 16:16 | |
masak | lordfarn++ # p6u | 16:17 | |
adu | diakopter: on the microcosm, CDS, MBS, and other derivatives were designed to decrease risk and increase payoff, and on the macrocosm, large companies like Goldman Sachs and JPMorgan Chase are some of the riskiest operations on the planet, and when they fail, they get trillions in bailouts from the Federal Reserve of New York | 16:18 | |
masak | everyone wants to decrease risk and increase payoff. that's a given. | 16:19 | |
Wall Street are just corrupt enough to be able to. | |||
diakopter | adu: your statement says nothing about positive correlation of risk and reward | 16:20 | |
pmichaud | diakopter: I think adu's point is that negative risks aren't correlated with negative reward -- certainly not to the same degree that positive risk is correlated with positive reward | 16:21 | |
16:21
MayDaniel joined
|
|||
masak | "Too Big To Fail" | 16:21 | |
16:21
brrt left
|
|||
adu | = "systemically significant" | 16:21 | |
pmichaud | so, if there's a positive correlation between risk and reward, there's at least some point where the correlation is no longer a positive one | 16:22 | |
hoelzro | hey guys, I'm planning on building an XMPP bot in Perl6 | 16:23 | |
but I'm going to use a helper process written in Perl5 until I write an XMPP client library in Perl6 =) | |||
so I need to pass connection information to the client; does Rakudo have a temporary file mechanism? | 16:24 | ||
diakopter | pmichaud: what are negative risks? | ||
pmichaud | diakopter: negative risk: "if I accept this financial risk, there's a chance the firm might fail" | 16:25 | |
diakopter | how is that distinguished from non-negative risk | ||
pmichaud | diakopter: okay, I conflated the terms, yes. | 16:26 | |
clearly, though, there's an inflection point where "increased risk" does not always translate to "increased reward" | 16:27 | ||
need lunch here | 16:28 | ||
adu | reward = abs(risk) | ||
diakopter | I don't understand adu's point at all. First, I totally disagree that those entities are highly risky, for the very reason adu mentions. | ||
masak | hoelzro: Rakudo doesn't have a built-in temporary file mechanism, no. | 16:29 | |
hoelzro | =( | ||
masak | hoelzro: what do you need? maybe we can build it quickly. | ||
hoelzro | just something like File::Temp | ||
masak | (I've heard the source is open and publicly changeable!) | ||
pmichaud | hoelzro: if it's not part of the spec (and I suspect it isn't), then it's relegated to a module (that perhaps needs writing) | ||
hoelzro | =) | ||
masak | it's not part of the spec. | ||
hoelzro | pmichaud, masak: I'd be happy to write a module | ||
masak | but even if it were, S16 is still insane and should not be heeded. | ||
hoelzro | to follow up on that... | ||
adu | diakopter: the problem with bailouts is that they reward bad behaviour, which encourages it… in a way that dilutes everybody else's purchasing power, which is bad | ||
pmichaud | hoelzro: then writing a module is the way to go :) | 16:30 | |
hoelzro | how do I bind a C library to Rakudo? | ||
masak | hoelzro: please write a module. and if you get stuck, we'll help. | ||
hoelzro | yay! help! | ||
mhasch | quick perl6 question: a dash can be a part of an identifier, right? | ||
masak | binding C: that's generally zavolaj's job. | ||
mhasch: yes-ish. | |||
pmichaud | mhasch: before an alpha char, yes. | ||
masak | mhasch: if you put it between two alphabetics. | ||
pmichaud | (before, not between) | ||
masak | r: my $b-2; | ||
p6eval | rakudo 3bc91c: OUTPUT«use of uninitialized variable $b of type Any in numeric context in block <anon> at /tmp/W4kuOZjooY:1» | 16:31 | |
hoelzro | zavolaj? | ||
masak | pmichaud: between. | ||
pmichaud | r: my $b2-xyz = 3; | ||
p6eval | rakudo 3bc91c: ( no output ) | ||
mhasch | aha. Any idea what this is supposed to accomplish? | ||
pmichaud | masak: before | ||
masak | hoelzro: github.com/jnthn/zavolaj | ||
diakopter | adu: where did I imply I didn't think there wasn't a "problem" with bailouts? | ||
*was | |||
masak | pmichaud: oh! right. :/ sorry. | ||
masak sometimes mixes up "right" and "left" -- not so often "before" and "after"... :) | |||
pmichaud | r: my $b2-xyz = 'hello'; say $b2-xyz; | ||
p6eval | rakudo 3bc91c: OUTPUT«hello» | ||
adu | diakopter: "disagree that those entities are highly risky"? | 16:32 | |
masak | surely those entities became vastly less risky by being bailed out... :) | ||
diakopter | that's what I'm saying. | ||
pmichaud | note that there's "risk to the firm" and "risk to society", which aren't the same. | ||
mhasch | r: $x=4; say $x - pi; say $x-pi | 16:33 | |
p6eval | rakudo 3bc91c: OUTPUT«===SORRY!===Variable $x is not declaredat /tmp/Rvy6WMhGlI:1» | ||
diakopter | the fact they can be expected to receive bailouts makes them less risky than they otherwise would be. | ||
adu | what I'm saying is that even with bailouts, the risk to the rest of the world is still there | ||
mhasch | r: my $x=4; say $x - pi; say $x-pi | ||
p6eval | rakudo 3bc91c: OUTPUT«===SORRY!===Variable $x-pi is not declaredat /tmp/jg1_Uj2KZ4:1» | ||
diakopter | adu: risk of *what*? | ||
adu | diakopter: hyperinflation | ||
diakopter | but that has nothing to do with your original point. | 16:34 | |
birdwindupbird | jj | ||
adu | diakopter: I thought that was covered by "systemically significant" | ||
masak | birdwindupbird: ww? :) | 16:35 | |
16:35
fridim_ joined
|
|||
pmichaud | From a societal perspective, there's a reward to be had in allowing firms to take on riskier investments. However, there comes a point where the risks increase so much that the reward (to society) is no longer positively correlated. (How's that?) | 16:35 | |
diakopter | these concepts of risk and reward to society are meaningless, because no *transaction* is taking place. or are you saying these big entities' very continued existence is somehow a transaction? | 16:37 | |
adu | sergot: are you on the east coast? | ||
masak | aren't lots of transactions taking place. | ||
adu: east coast... of Poland? :) | |||
pmichaud | certainly a transaction is taking place -- the big entities are continually making lots of transactions. From a societal perspective, the transactions have a very real effect; the question is to what degree does society allow the transactions to occurs. | 16:38 | |
adu | masak: of the land of Wall Street | ||
diakopter | masak: I'm saying risk and reward can only be measured on individual transactions. | ||
pmichaud | Society's choice of what transactions to allow and which to deny are called "regulations" | ||
masak | adu: sergot is from .pl | ||
sergot | adu: I'm from Poland, as masak said. :) | ||
masak | diakopter: I don't buy that right off. | ||
pmichaud | in that sense, a "regulation" is a transaction between society and the business entities | 16:39 | |
and such regulation (transaction) carries a degree of risk and reward | |||
masak | diakopter: it would seem to me that at least some groups transactions can be treated as one big transaction in some sense. | ||
groups of* | |||
diakopter | this discussion is silly, because now it seems you're talking about things other than investments. | ||
masak | we're talking about risks and rewards. | 16:40 | |
pmichaud | clearly society makes investments in business areas (such as Wall Street) :-) | ||
masak | I started up comparing Perl 5 and Perl 6. that had nothing to do with investments, except in things besides money. | ||
diakopter | in the realm of Wall Street, risks and rewards are discussed in terms of investments. | ||
adu's original point was about Wall Street. | |||
masak | right, but the discussion was already wider than that. | 16:41 | |
adu | diakopter: I've never considered myself an economist, so I'm sure I'm using at least one or two words wrong, but I'm also not content to leave something like hyperinflation to chance, so I try and learn as much as possible to better myself | ||
pmichaud | diakopter: perhaps Wall Street from a societal perspective, though; not necessarily the view from inside Wall Street | ||
hoelzro | hmm | ||
pmichaud | just like (to come full circle), there's a difference in perception (and measurement) of risk/reward between Perl 6 language developers and the wider programming community | ||
diakopter | how was adu's original point not about investment transactions made on Wall Street? | 16:42 | |
hoelzro | I would expect IO::Socket::INET.new(:listen, :localhost<127.0.0.1>) to bind to an arbitrary port on my machine | ||
and I would expect that to be returned by $server.localport | |||
should I throw that in? | |||
adu | diakopter: the rest of society all makes transations, either directly or indirectly with Goldman Sachs. | ||
diakopter | what are you talking about? individual investments? | 16:43 | |
pmichaud departs from the risk/reward discussion, as the reward of remaining in the channel is no longer worth the risk of starvation from not having lunch. | |||
adu | no, I'm talking about going to the ATM and getting $40 | ||
diakopter | Wall Street risk/reward has nothing to do with that. that's not an investment. | ||
adu | diakopter: my definition of investment is more general i guess | 16:44 | |
to me, time, trust, dependancy, commitment, money, can all be investments | 16:45 | ||
16:45
cognominal_ left
|
|||
diakopter | an ATM transaction cannot possibly be an investment. there is zero risk. | 16:45 | |
16:45
cognominal_ joined
|
|||
diakopter | well, more accurately, zero reward. | 16:46 | |
there are zero-risk investments. | |||
adu | diakopter: there is risk, especially if Goldman Sachs fails, which might freeze all investments being made by YourLocalBank, Inc. which might cuase them to shut down for fear of a run | ||
diakopter | you don't trust FDIC? | 16:47 | |
adu | diakopter: I do, it would cover about 20% of all bank deposits | ||
diakopter | how did we jump from one large bank failing (which you already said won't happen anyway due to bailouts) causing local bank to fail... to the entire economy shutting down? | 16:48 | |
adu | I think the topic now is trying to see if we both use the same terms, if they mean the same things, and arguing about something | 16:49 | |
diakopter: because that what happens in every hyperinflation | |||
bailout = inflation | 16:50 | ||
lots of bailouts = hyperinflation | |||
masak | are we talking about this because I posted gist.github.com/3048087 earlier? :) | 16:52 | |
no-one commented on that gist, by the way. I think it's a neat little bit of code. | |||
adu | I did, right now | 16:53 | |
masak | hm, or I could do those subs as postfixes... | 16:54 | |
r: gist.github.com/3048087 | |||
diakopter | in the world of investments, risk is positively correlated with reward, always, contrary to what adu said. | ||
p6eval | rakudo 3bc91c: OUTPUT«1000 EUR is 1252 USD» | ||
masak | yes, that works too, and looks a bit nicer :) | 16:55 | |
diakopter: that doesn't sound like an absolute law as much as a kind of equilibrium. | |||
diakopter | if there was an inflection point in the correlation, NO ONE would invest in the financial instruments that had equal risk but less return, and therefore those instruments would not exist. | 16:57 | |
this is classical finance theory. | 16:58 | ||
dalek | Heuristic branch merge: pushed 16 commits to panda/pod-installing by moritz | ||
16:59
Guest78231 left
|
|||
moritz | tadzik: ^^ still failing tests in the pod-installing branch. And I don't know how to run the tests in isolation, I always get some precompilation related error :/ | 16:59 | |
diakopter | (and if those instruments on the upper part of the inflection hump didn't exist, the inflection point wouldn't exist) | ||
masak | diakopter: agreed. | 17:01 | |
diakopter: but it all presupposes a static, global, always known/knowable view on risks and rewards. like a full-information game. | |||
without it, that argument holds less and less. | |||
diakopter | no, it still works if each investor has his own measurement of risk on every instrument | 17:02 | |
masak has to think about this, then | |||
diakopter | (because the individual perspective is all that matters) | 17:03 | |
I shouldn't have said "would not exist" above. I should have said "would not be relevant" | 17:04 | ||
the individual will always choose that which seems to have the highest reward/risk ratio to himself. | 17:05 | ||
people have very different measurements of risk on the same instruments | 17:06 | ||
masak | r: gist.github.com/3048087 | ||
p6eval | rakudo 3bc91c: OUTPUT«1000 EUR is 1252 USD» | ||
diakopter | why does niecza not like it? | 17:07 | |
masak | good question. | ||
n: gist.github.com/3048087 | |||
17:07
sporous joined
|
|||
p6eval | niecza v19-7-g5e25209: OUTPUT«===SORRY!===Lexical EUR is not a package at /tmp/fWh93_LQMe line 3:------> multi rate(EUR⏏) { 1.252 }A type must be provided at /tmp/fWh93_LQMe line 3:------> multi rate(EUR⏏) { 1.252 }Lexical … | 17:07 | |
masak | clearly that should work. | ||
Niecza has enums. | |||
moritz | n: multi f(2) { } | ||
p6eval | niecza v19-7-g5e25209: OUTPUT«Potential difficulties: &f is declared but not used at /tmp/K2NPMaIjBA line 1:------> multi f⏏(2) { }» | ||
masak | n: enum Currency <EUR USD>; multi rate($ where { $_ === EUR }) { 1.252 }; say rate(EUR) | 17:11 | |
p6eval | niecza v19-7-g5e25209: OUTPUT«1.252» | ||
masak | heh, "commented on" I meant here on the channel, but on the gist itself is fine too, people ;) | 17:12 | |
17:12
fridim_ left
17:13
cognominal__ joined,
cognominal_ left
17:15
xinming_ joined
|
|||
diakopter | masak: I should explain more. let's say you're an investor, and all you know about are municipal bonds and AAPL, and you "correctly" (by consensus) view AAPL stock as having potentially higher return than the bonds, but for some reason you "wrongly" (by consensus) evaluate the bonds as being riskier than the stock, you will definitely invest in Apple. However, most investors are unable to quantify exactly their measures of risk and reward; they just kno | 17:18 | |
so, applied to Perl 5/6.. | 17:19 | ||
17:19
xinming left
|
|||
diakopter | (from above) ..... now some relative relationships. So, among the investments that are positively correlated in risk/reward (the only sane ones to invest in), it's very tricky/hard to choose which investment has the higher/highest | 17:19 | |
masak | diakopter: you got cut off at 'they just kno' | ||
diakopter | ... reward/risk ratio. | 17:20 | |
sorry that message was spread across 3 | |||
masak | I pieced them together :) | 17:21 | |
adu | diakopter: are you a risk analyst? | 17:22 | |
diakopter | since it is hard to quantify the relationships, each investor has to place all potential investments on a risk/reward curve | ||
no | |||
this is just basic investment theory, what I learned in business school, where my degree was in finance. | 17:23 | ||
masak | diakopter: do investors actually phrase risk in actual numbers? what's the unit of "risk"? what makes the ratio reward/risk a useful one? | 17:26 | |
diakopter | that's what I mean by unable to quantify exactly and just knowing some relative relationships. In financial markest, the unit of risk is the interest rate. | 17:27 | |
in non-finance people's heads, it's very cloudy | |||
17:28
birdwindupbird left
|
|||
masak | I'll bet. wouldn't you *want* to make it very non-cloudy, to better be able to determine over time where you overestimate/underestimate risk? | 17:29 | |
diakopter | that's what financial advisors supposedly try to do. | 17:30 | |
people pay big money to advisors for help like that | |||
seldon | Haha. | ||
diakopter | especially to places like Goldman or JPM | ||
seldon | And it makes them have a vested interest in keeping the whole thing complicated. | 17:31 | |
diakopter | maybe | ||
masak | it is complicated. | 17:32 | |
seldon | Well, in some cases it is made complicated. A lot of papers have been engineered before the financial crisis that no one has a prayer of pricing reliably -- you can monte carlo the stuff, but you essentially get "it's worth somewhere between 30 and 200 with 25% confidence." | 17:34 | |
Although those have become somewhat less popular since then. | 17:36 | ||
masak | "Don't assume conspiracy where genuine complexity adequately explains the phenomenon." | 17:37 | |
seldon | It wasn't a conspiracy. More of a fad, really. | ||
diakopter | well. I shouldn't say every investor chooses the highest reward/risk ratio. Investors also have limits or ranges of risk they are willing to take on. | 17:38 | |
17:38
mucker left
|
|||
diakopter | tinyurl.com/86kaosu The efficient frontier. Up to his acceptable risk limit, the investor's optimal portfolio lies somewhere on the upper portion of the curve. | 17:42 | |
possible portfolios (combinations of investments) lie inside or along the curve | 17:43 | ||
note most of the graphs only bother to show the upper half | 17:44 | ||
portfolios also include portfolios of single investments, so the curve applies to comparing individual investments as well. | 17:45 | ||
17:51
mjflick joined
|
|||
diakopter | masak: sorry to drag this out even more, but I need to correct myself. There are many units of risk. Variability of return is basically the primary one. | 17:52 | |
which can be measured by stddev | |||
seldon | stddev here meaning black/scholes sigma*sqrt(T)? | 17:53 | |
masak calls that "variance", but maybe there are many names | |||
seldon | variance is stddev ** 2. | 17:54 | |
masak | oh! | ||
diakopter | seldon: lots of measures. | ||
masak | right, so I was thinking of "deviation" | ||
diakopter | en.wikipedia.org/wiki/Standard_deviation#Finance | ||
seldon | diakopter: I ask because the graphs all map against the riskfree rate, so black/scholes suggests itself. It would make sense if we're talking about stock investments and such. | 17:56 | |
diakopter | but like I said, there are billions of measurements of variability | ||
seldon: are you talking about valuing call options? I just meant generic standard deviation. | 17:59 | ||
dalek | kudo/nom: 61a3add | pmichaud++ | tools/build/Makefile.in: Update Makefile to not abort if copying docs/announce fails. Hopefully fixes RT #113984. |
18:00 | |
seldon | Not just options, although that's of course where black/scholes and its derivatives are mostly used. If you want to evaluate the risk of a stock portfolio, you'd argue from the same assumpions, wouldn't you? | ||
dalek | atures: 7a680b1 | GlitchMr++ | features.json: sprintf("%mf", i) doesn't work |
||
seldon | price risk, anyway. | 18:01 | |
18:01
GlitchMr left
|
|||
flussence | r: say sprintf('%1$s %2$s', 'right', 'left'); | 18:01 | |
p6eval | rakudo 3bc91c: OUTPUT«'$' is not valid in sprintf format sequence '%1$' in sub sprintf at src/gen/CORE.setting:2067 in block <anon> at /tmp/63i8qNIgdp:1» | ||
masak | whee, I segfaulted rakudo! | 18:02 | |
seldon | Oh, I haven't managed that yet, and I've been torturing it all day. | ||
jnthn wonders how | 18:03 | ||
diakopter | seldon: I don't know. I don't remember enough from a degree 10 years ago that I haven't used at all. I just remember the basics. | 18:04 | |
I do remember *learning about* it, though, just not *it* | 18:05 | ||
the types of risk are foggy, even. | |||
dalek | c: 89edaee | pmichaud++ | lib/Str.pod: Add NYI note for 'm' modifier in sprintf, fix typo in example. |
18:06 | |
colomon | rn: sprintf("%mf", i) | ||
p6eval | niecza v19-7-g5e25209: OUTPUT«Unhandled exception: invalid format specifier at /home/p6eval/niecza/lib/CORE.setting line 1277 (sprintf @ 4)  at /tmp/S1c68_GU4p line 1 (mainline @ 3)  at /home/p6eval/niecza/lib/CORE.setting line 3918 (ANON @ 3)  at /home/p6eval/niecza/lib/CORE.se… | ||
..rakudo 3bc91c: OUTPUT«'m' is not valid in sprintf format sequence '%m' in sub sprintf at src/gen/CORE.setting:2067 in block <anon> at /tmp/VHnhKB0lVv:1» | |||
pmichaud | feels weird that 'm' would be a modifier and not its own conversion format, though. | 18:08 | |
masak | aye. | ||
colomon | it's supposed to be a Complex modifier? | ||
masak | but maybe it is to say how the real/imag parts should be formatted... | ||
pmichaud | I suppose it's okay if we treat 'f' as meaning "not Integer" | ||
masak | like a metaop. | 18:09 | |
pmichaud | ...but then one can argue, why do we need the 'm'? | ||
diakopter | going back to masak's and adu's original statements about Perl, it seems all adu was initially saying was that he agreed with masak that currently Perl 6 is the high risk/high payoff branch, but that llvm-perl6 might be less risky than current paths. | 18:10 | |
pmichaud | does the 'm' perhaps mean "coerce to complex"? | 18:11 | |
diakopter | by "it doesn't have to be that way if llvm-perl6 comes to the rescue" | ||
masak | diakopter: aye. | ||
adu | diakopter: I think that's what I was saying | ||
pmichaud | is there a llvm-perl6? | 18:12 | |
diakopter | adu: it would depend a lot on who's doing it | ||
if an llvm n00b ... very risky | |||
18:13
seldon left
|
|||
sorear | gppd * #perl6 | 18:14 | |
pmichaud | hellp, sprear! | ||
masak | quick, get the spear out of pmichaud! o.O | 18:15 | |
pmichaud | I'm just guessing that sprear's 0x6f key is mapping tp 0x70 instead. | 18:16 | |
masak | or he's typing in the dark on a qwerty keyboard. | ||
pmichaud | pph, that's a ppssibility. | ||
colomon | pmichaud: it looks to me like m is intended to say "the next numeric directive refers to a complex number". So you can say %md, %mX, etc. | ||
pmichaud | ...does %md even make sense? What does it do? | 18:17 | |
flussence | truncate both parts to int? | 18:18 | |
daxim | best april fools: when your cow orker's computer is unattended, swap out the n/m caps on the physical keyboard, and *also* reconfigure the OS to swap n/m (a one-liner in X) | ||
pmichaud | "The m modifier works with d,u,o,x,F,E,G,X,E and G format directives, and the directive applies to both the real and imaginary parts of the complex number. | ||
colomon | rn: say sprintf("%d", 1.434) | ||
p6eval | rakudo 61a3ad, niecza v19-7-g5e25209: OUTPUT«1» | ||
pmichaud | daxin: that soumds awfully evil. | ||
colomon | so "%md", 1.343 + 5.2i should print something like 1+5i | 18:19 | |
masak | aye. | ||
colomon | I don't see anything that gives the exact format for printing complex numbers, mind you. | ||
and "%mX", 4 + 10i should print 4+Ai | 18:20 | ||
masak | this feels like the kind of feature that if we unspec it now, no-one in the whole world will be sad. | ||
pmichaud | would would "%md", 0 produce? | ||
sorear | 0+0i | ||
flussence | masak: the more I use printf, the less of a fan I become | ||
colomon | seems like it should be an error. or 0+0i | ||
masak | flussence: yeah. | 18:21 | |
pmichaud | if 0+0i, that makes me feel like it should be its own directive instead of a modifier. | ||
flussence | r: say (3+4i).fmt('%d %d') | ||
p6eval | rakudo 61a3ad: OUTPUT«You can only coerce a Complex to Real if the imaginary part is zero in method Int at src/gen/CORE.setting:9538 in method Int at src/gen/CORE.setting:8065 in any <anon> at src/gen/BOOTSTRAP.pm:96 in method fmt at src/gen/CORE.setting:1911 in block <anon> a… | ||
pmichaud | same as %d means "print as int" and %f means "print using decimal point" | ||
then %m is "print as complex" | |||
flussence | that line used to work :/ | ||
18:21
seldon joined
|
|||
sorear | pmichaud: what if I want to print a complex with forced exponential notation? | 18:22 | |
%me | |||
jnthn: ping | 18:23 | ||
pmichaud | or it becomes another directive to replace %m, in the same way that %e and %g replace %f | ||
colomon | it seems like %me, %mf, %mg, %mE, and %mG all make sense | ||
pmichaud | it's very irregular, then. | 18:24 | |
colomon | on the other hand, I'd happily drop %mx and %mX | ||
oh, and %mo | |||
pmichaud | so, what would be the output of '%mf', 0 ? | 18:25 | |
sorear | 0+0i | ||
colomon | that's certainly the obvious answer | ||
rn: say 0i | |||
p6eval | rakudo 61a3ad, niecza v19-7-g5e25209: OUTPUT«0+0i» | ||
pmichaud | that's just weird to me. modifiers should change the format, not cast. | ||
but it's not enough of a point for me to press any further. | 18:26 | ||
I agree with masak++; I'd be just fine if it dropped altogether. | |||
flussence | r: my &f = { "{$_.re.Int}+{$_.im.Int}i" }; say f(3.5+4.7i) | ||
p6eval | rakudo 61a3ad: OUTPUT«3+4i» | ||
sorear | pmichaud: I take it you are not a fan of %qd in C | ||
18:27
pupoque joined
|
|||
colomon | does anyone have insight as to why it's "m"? was it just one of the few remaining unused characgers? | 18:27 | |
pmichaud | r: say (3+4i).reals.fmt("%d %d") # for flussence++ | ||
p6eval | rakudo 61a3ad: OUTPUT«Null PMC access in get_integer() in method fmt at src/gen/CORE.setting:1911 in method fmt at src/gen/CORE.setting:5277 in method fmt at src/gen/CORE.setting:4690 in block <anon> at /tmp/8zVyycHgi2:1» | ||
pmichaud | hmmm. | ||
pmichaud nudges masak++ | |||
flussence | ooh, I haven't seen a NPMCA in a while. | ||
jnthn | sorear: pong | 18:28 | |
pmichaud | r: say (3+4i).reals.sprintf("%d %d") # for flussence++ | ||
p6eval | rakudo 61a3ad: OUTPUT«3 4» | ||
jnthn | pmichaud: I think that one may be filed, fwiw. | ||
pmichaud | r: say (3+4i).reals.sprintf("%d+%di") # for flussence++ | ||
p6eval | rakudo 61a3ad: OUTPUT«3 4» | ||
pmichaud | oh | ||
sorear | colomon: I feel like I've seen 'm'=complex before, maybe in a C++ mangling spec | ||
pmichaud | yeah | ||
jnthn | pmichaud: If we go over the end of the args RPA to sprintf op, it gets a null PMC | ||
pmichaud | that's just weird. | ||
jnthn | pmichaud: Because Parrot indexes into it and the indexing beyond the end just returns a null PMC | 18:29 | |
pmichaud | sorear: (fan of %qd) if by "not a fan of %qd" you mean "never encountered it before", then yes. :-) | ||
jnthn: makes sense. | |||
colomon | seems like the sprintf directives all do casting, no? I mean, if you send an Int to %f, that's not an error, is it? | 18:31 | |
rn: sprintf("%f", 3) | 18:32 | ||
p6eval | rakudo 61a3ad, niecza v19-7-g5e25209: ( no output ) | ||
colomon | rn: say sprintf("%f", 3) | ||
p6eval | rakudo 61a3ad: OUTPUT«3.000000» | ||
..niecza v19-7-g5e25209: OUTPUT«??» | |||
colomon | rn: say sprintf("%f", 3.1) | ||
p6eval | rakudo 61a3ad: OUTPUT«3.100000» | ||
..niecza v19-7-g5e25209: OUTPUT«??» | |||
colomon | whoops | ||
masak submits pmichaud++'s NPMCA rakudobug | |||
colomon | sorear, FloatFixedDecimal isn't actually implemented in niecza. :) | ||
sorear: I think I understand Printf.cs well enough to fix it. | 18:33 | ||
colomon could use something practical and doable to drastic him from the insanity that is my $work at the moment. | 18:34 | ||
pmichaud | what the heck does "%ld" mean in a Perl 6 context anyway? | 18:35 | |
colomon | cast to a int64, if I'm reading the spec right | 18:36 | |
seems kind of daft | |||
pmichaud | I think the spec was muchly copied from the p5 spec without too much thinking of "what makes sense in this context" | 18:37 | |
fwiw | |||
18:38
nsh left
|
|||
colomon | would it make sense to silently ignore those directives as a form of backward compatibility? or just get rid of them altogether? | 18:38 | |
pmichaud | I think we should ask ourselves: (1) if we were creating a p6 sprintf, what would we want it to look like | 18:39 | |
and as part of that, (2) what should sprintf do (if anything) for complex numbers? What about Rats? | 18:40 | ||
at this stage, I think I'd be a big fan of limiting sprintf to only support the things from p5 that make sense, and not try to extend it too far into the p6 realm (e.g., for complex) before we have a more unified approach or understanding. | 18:41 | ||
this follows masak++'s suggestion of "if we unspec it now, no one would mind" | 18:42 | ||
just adding in 'm' modifiers ('r' modifier for rats? what about other types?) just strikes me as layering more ad-hoc solutions on top. | |||
colomon | rats shouldn't be a modifier | 18:43 | |
a %r format would make sense | |||
masak | "make sense"? | 18:44 | |
what about my custom Rats on a group I just made up and defined in my user code? | 18:45 | ||
it has 256 elements which are all Unicode characters :) | |||
19:00
ChanServ sets mode: +v ilogger2
|
|||
colomon | wow. sprintf.t is so weak that niecza passes it without fudging. | 19:03 | |
seldon | You know of course the feature requests that are going to come. For the %r specifier an option to have N instead of N/1 if the denominator is 1, and one to have 3 1/2 instead of 7/2, that sort of thing. Complex in rational or float notation -- there's a big can of worms to open here. | 19:04 | |
colomon | seldon: sure, but just because people might ask for goofy stuff shouldn't stop us from handling the simple stuff in a handy way. | 19:06 | |
19:07
UncleFester6 joined
|
|||
seldon | True, but there is a danger of ending up with an unholy mess. | 19:09 | |
That should be kept in mind, I think. | |||
pmichaud | here's my argument for why sprintf is poorly factored as-is | 19:13 | |
how would I output a floating point number in base-16 (hexadecimal)? | 19:14 | ||
using '%x' doesn't work, because the 'x' also means 'coerce to int' | 19:15 | ||
seldon | I think C99 has a facility for that. Hold on. | ||
pmichaud | that's what leads me to believe that the final characters specify the coercion to be performed, not just the format of the output. | ||
flussence | I'm starting to think C sprintf belongs in the same place that *other* perl5 formatting thing does; on the other side of a "use"... | ||
adu | seldon: I think it's %G | 19:16 | |
pmichaud | flussence: we can still have a C-style sprintf in core; too many people will expect it to be there. | ||
but we should limit it to the C-style things, and have a better "fmt" (or analogue) that is more p6-aware, and regularized. | 19:17 | ||
adu | seldon: or maybe it's %A | ||
19:17
BlueT_ joined
|
|||
seldon | %a or %A, yes. | 19:17 | |
Looks funny. | |||
adu | 0x1.2p3 | ||
seldon | 1.234 becomes 0x9.df3b645a1cac083p-3 | 19:18 | |
19:18
moukeddar joined
|
|||
pmichaud | similarly, if I use any of '%e', '%f', they mean "coerce to num". | 19:19 | |
19:19
moukeddar left
|
|||
pmichaud | (as well as specifying an output format) | 19:19 | |
seldon | The coercion is an implementation detail. It would make sense to coerce to num if you're going to build a decimal representation, but if you find another way, go nuts. | 19:20 | |
pmichaud | in the case of '%x', it's not just an implementation detail, though. | ||
masak | "Error while creating backtrace: No such method 'backtrace' for invocant of type 'Any'" -- wow, fun. never had that one before. :) | ||
seldon | %x would truncate. How it does that...well, coercing to Int is probably the only sane way there, granted. | 19:21 | |
moritz | masak: are you on newest rakudo? | 19:27 | |
masak: and on the REPL? | |||
masak | yes. no. | 19:29 | |
moritz | masak: then please golf it down for me | ||
masak | I remember what I did, so I could try and reproduce/golf it later. | ||
right now I'm writing stuff, though. | |||
I'll also try and reproduce the segfault from earlier. | |||
moritz | ok | 19:30 | |
debugging the backtrace printer is sometimes a big pain | |||
masak | aye. | 19:37 | |
it's very "yo dawg" | |||
"invoke() not implemented in class 'Callable'" -- now *that's* a new one! | 19:41 | ||
19:41
Khisanth joined
|
|||
colomon | rn: say sprintf('%d %1$x %1$o', 12) | 19:41 | |
p6eval | niecza v19-7-g5e25209: OUTPUT«12 c 14» | ||
..rakudo 61a3ad: OUTPUT«'$' is not valid in sprintf format sequence '%1$' in sub sprintf at src/gen/CORE.setting:2067 in block <anon> at /tmp/ipyKt4LvVr:1» | |||
masak | rn: sub foo(&x?) { &x() }; foo | ||
p6eval | niecza v19-7-g5e25209: OUTPUT«Unhandled exception: Nominal type check failed in binding '&x' in 'foo'; got Any, needed Callable at /tmp/GxBFPfbRAg line 0 (foo @ 1)  at /tmp/GxBFPfbRAg line 1 (mainline @ 4)  at /home/p6eval/niecza/lib/CORE.setting line 3918 (ANON @ 3)  at /home/p… | ||
..rakudo 61a3ad: OUTPUT«invoke() not implemented in class 'Callable' in sub foo at /tmp/Ph_EoJ5cjF:1 in block <anon> at /tmp/Ph_EoJ5cjF:1» | |||
masak submits rakudobug | |||
niecza's looks wrong too, but earlier. | 19:42 | ||
colomon | rn: sub foo(&x?) { &x() if &x.defined }; foo | 19:43 | |
p6eval | rakudo 61a3ad: ( no output ) | ||
..niecza v19-7-g5e25209: OUTPUT«Unhandled exception: Nominal type check failed in binding '&x' in 'foo'; got Any, needed Callable at /tmp/vaOzcAcihf line 0 (foo @ 1)  at /tmp/vaOzcAcihf line 1 (mainline @ 4)  at /home/p6eval/niecza/lib/CORE.setting line 3918 (ANON @ 3)  at /home/p… | |||
colomon | masak: why is that a rakudobug? (seems clearly to be a nieczabug) | 19:44 | |
dalek | c: 9bab792 | (Klaus Brüssel)++ | README: Update master |
||
masak | colomon: I just found the error message utterly unhelpful. | ||
colomon: Callable exists to be invoked. | |||
colomon | masak: ah | ||
19:45
sftp joined
|
|||
masak | I suspect it's a Parrot leak-through. | 19:45 | |
if it were up to me, I'd have `&x?` mean `&x = {;}`. | 19:46 | ||
that's my fix in the code that triggered the error. | |||
colomon | masak: seems like that stops you from doing the standard trick of &x if specified, default behavior otherwise | 19:47 | |
ie you're throwing away perfectly good information | |||
masak | hm, yes. | ||
also, empty block isn't always right; depends on the arguments passed. | |||
I'm fine with the error message being a better one :) | 19:48 | ||
colomon | yes, agreed on the error message | ||
19:49
birdwindupbird joined
|
|||
masak | my commits for today's blog post are in, for those of you who are curious: github.com/masak/crypt/commits/master | 19:49 | |
today was more involved than I suspected. but a bit of nice design work took place. | 19:50 | ||
dalek | ecs: f891058 | pmichaud++ | S32-setting-library/Str.pod: [S32]: Remove 'm' (complex) modifier from sprintf, in hopes of a what about formatting Rats?). The idea here is to take a minimalist approach to 'sprintf' -- supplying the conversions that people are familiar with from other languages and libraries, but be cautious about layering on new "ad-hoc"-ish options until we have a better plan for handling them all. This is addressed further in github.com/perl6/specs/issues/13 . |
||
masak | modest progress is visible from the outside. if you download the latest version, it now allows walking east :) | ||
colomon | east is a good direction | ||
masak | don't I know it. :) | 19:51 | |
I'd like to introduce a concept such as "sushi code". | |||
making changes in this code base feels very clean and separated. | |||
each commit is just a bunch of paragraphs. hardly any unwanted interaction between things. | 19:52 | ||
pmichaud | ...sounds fishy, though. | ||
seldon | How does that relate to sushi? | ||
dalek | c: 8a782c5 | pmichaud++ | lib/Str.pod: Remove 'm' modifier from sprintf for now, per github.com/perl6/specs/commit/f891058937 . |
||
masak | seldon: it relates to "spagghetti code", where things are scattered and tangled. | ||
seldon: here things are separated and not connected to each other so much. | |||
seldon | As opposed to lasagna and ravioli code, yes. But sushi? | 19:53 | |
masak | I'm open for suggestions for a better term. | ||
masak likes sushi, though :) | |||
jnthn | eww, sushi | ||
seldon | I have nothing against sushi, but afaik the common metaphor here is ravioli. | ||
jnthn | r: sub foo(&x?) { x() }; foo() | 19:54 | |
p6eval | rakudo 61a3ad: OUTPUT«invoke() not implemented in class 'Callable' in sub foo at /tmp/KcJAXsrV5f:1 in block <anon> at /tmp/KcJAXsrV5f:1» | ||
dalek | atures: 8472332 | pmichaud++ | features.json: Update sprintf (there is no (longer a) '%m' conversion in the synopses.) |
||
jnthn | masak: Not sure this is a bug, though maybe an LTA error. | ||
colomon | rn: sprintf('%4f', 1.0) | ||
p6eval | rakudo 61a3ad, niecza v19-7-g5e25209: ( no output ) | ||
colomon | rn: say sprintf('%4f', 1.0) | ||
p6eval | rakudo 61a3ad: OUTPUT«1.000000» | ||
..niecza v19-7-g5e25209: OUTPUT«??» | |||
jnthn | masak: It's initializing &x to Callable. | ||
seldon | I'd also point out that sushi is a bit sticky. | 19:55 | |
masak | jnthn: yes. | ||
colomon | rn: say sprintf('%.4f', 1.0) | 19:56 | |
masak | jnthn: I submat it on the grounds the error was LTA. | ||
p6eval | niecza v19-7-g5e25209: OUTPUT«??» | ||
..rakudo 61a3ad: OUTPUT«1.0000» | |||
jnthn | masak: ah, OK | ||
masak: What error do you want? | |||
masak | jnthn: "Tried to invoke a Callable type object on $line, $file" | ||
or $file:$line or whatever out standard is for that. | 19:57 | ||
dalek | p/toqast: f29b6fd | jnthn++ | src/QAST/Operations.nqp: Implement nqp::chain, which a lot of things rely on. |
||
masak | jnthn++ # QAST | 19:58 | |
dalek | kudo/toqast: 977ed5e | jnthn++ | src/QPerl6/Actions.pm: Fix EXPR action method to set name properly. |
19:59 | |
kudo/toqast: dd583d7 | jnthn++ | src/QPerl6/World.pm: Fix constants code-gen for QAST changes. |
|||
19:59
cognominal__ joined
|
|||
jnthn | That's 5 out of 10 test files in t/00-parrot passing again | 19:59 | |
masak | yay | 20:01 | |
dalek | kudo/nom: ea8b97e | ronaldxs++ | tools/build/Makefile.in: The last patch almost worked but not quite. The old copy of the announce directory copy wrongly expanded as below: /bin/cp README CREDITS LICENSE docs/*/announce /home/ron/rakudo/install/share/doc/rakudo/announce and got a stat error on docs/*/announce and failed. One might also remove the nearby announce lines but if the announcements are wanted my patch will put them there without crashing. In the rakudo build this crash does relatively little harm since it is near the end of the install. In rakudo star the crash stops the process before module builds. |
||
kudo/nom: 810e61e | pmichaud++ | tools/build/Makefile.in: Merge pull request #73 from ronaldxs/patch-1 The last patch almost worked but not quite. The old copy of the announc... |
|||
20:02
constantined joined
|
|||
spider-mario | it seems to me that VERSION in NQP’s 2012.06 tarball is out of date | 20:03 | |
pmichaud | spider-mario: it is, thus there was a 2012.06.1 release | ||
spider-mario | oh, thanks | ||
sorry | |||
20:03
constantined left
20:09
vmspb joined
20:15
moukeddar joined,
moukeddar left
20:17
icwiener joined
|
|||
spider-mario | .u 🙌 | 20:24 | |
phenny | U+1F64C (No name found) | ||
20:26
bruges joined
|
|||
masak | lol, I blogged! \o/ strangelyconsistent.org/blog/july-4...directions | 20:32 | |
isn't it nice to have me back on a daily schedule? :P | |||
jnthn | Staying on top of Planet Six legitimately! o.O | 20:33 | |
pmichaud | masak++ | ||
dalek | kudo/toqast: 416c31c | jnthn++ | src/QPerl6/Actions.pm: Update various bits of infix:<,> call handling. |
||
kudo/toqast: e1bf5db | jnthn++ | src/QPerl6/Actions.pm: Fix [...], to get 08-var-array.t passing again. |
|||
kudo/toqast: b9a659a | jnthn++ | src/QPerl6/Actions.pm: First crack at fixing Q:PIR; somehow doesn't quite work out. |
|||
jnthn | Ah, I think I see why it doesn't quite work out now... | ||
dalek | p/toqast: ef4c748 | jnthn++ | src/QAST/VM.nqp: Think initialization fail in QAST::VM. Now Q:PIR actually works. |
20:39 | |
colomon | rn: say sprintf('%6f', 1.0) | 20:44 | |
p6eval | rakudo 810e61: OUTPUT«1.000000» | ||
..niecza v19-7-g5e25209: OUTPUT«??» | |||
masak | ?? | 20:45 | |
colomon | masak: bug, which I'm working on fixing. | ||
but 1.000000 is wrong as well, no? I would think the answer should be 1.0000 | |||
1.000000 would be %.6f, not %6f | 20:46 | ||
colomon admits he is always pretty rusty at sprintf formatting. | |||
r: say sprintf("%5.2f", 3.1415) | 20:47 | ||
p6eval | rakudo 810e61: OUTPUT« 3.14» | ||
colomon | that's right, though... | ||
(at least, according to wikipedia's take on the C standard) | 20:48 | ||
seldon | colomon: %f produces 1.000000 in C. "If the precision is missing, it is taken as 6", compare ISO/IEC 9899:1999 7.19.6.1 (8) | 20:49 | |
colomon | seldon: ah | ||
rn: say sprintf('%3f', 1.0) | 20:50 | ||
p6eval | rakudo 810e61: OUTPUT«1.000000» | ||
..niecza v19-7-g5e25209: OUTPUT«??» | |||
dalek | c: e2c9531 | (Gabor Szabo)++ | bin/p6doc: say more words how to use |
||
c: 42a36e3 | (Gabor Szabo)++ | .gitignore: gitignore vim swap files |
|||
colomon | seldon++ | 20:52 | |
r: say sprintf('%3.1f', 1.0) | |||
p6eval | rakudo 810e61: OUTPUT«1.0» | ||
colomon | r: say sprintf('%5.2g', 3.1415) | 21:03 | |
p6eval | rakudo 810e61: OUTPUT« 3.1» | ||
masak | I renew my offer to have people find bugs in the adventure game. just download github.com/masak/crypt and do `bin/crypt`. no external modules required. | 21:08 | |
find crazy stuff. the winner gets a book. | 21:09 | ||
21:10
vmspb left
|
|||
dalek | c: 0c8a072 | (Gabor Szabo)++ | bin/p6doc: $*EXECUTABLE_NAME instead of hard coded perl6 |
21:14 | |
seldon | I'll do that if you take a look at my bf interpreter and tell me where I made silly beginner's mistakes. codepad.org/nPBi7KP6 | ||
pmichaud | I need to start discussion(s) on handling stability across releases for rakudo and rakudo star. Where would such discussions best be held? irc? blog posts? file in repo(s)? | ||
masak | szabgab++ | ||
p6c? | 21:15 | ||
pmichaud | yes, p6c is a possibility also. | ||
masak | actually, blog posts sounds like a nice combo of 'permanent' and 'reaches out'. | ||
pmichaud | I could start it in p6c, with file(s) in repo(s) to keep track of decisions made. | ||
masak | waye. | 21:16 | |
er, *aye | |||
pmichaud | well, I'm not wanting to reach out too far; I fear the bikesheds. | ||
and scope creep. | |||
21:16
bruges left
|
|||
masak | do you know already what you want from the discussions, or will you/we discover that as we go along? | 21:17 | |
pmichaud | I have some use cases that need resolving, yes. | ||
masak | in the latter case, it'll be hard to keep bikeshedding and scope creep away. | ||
pmichaud | for example, dealing with the leading whitespaces in regexes | ||
masak | maybe best to state up-front why you are inviting to a discussion then. | ||
sorry if this is completely obvious to you. | 21:18 | ||
pmichaud | no, please state "obvious" things for now. | ||
21:18
birdwindupbird left
|
|||
masak | :) | 21:18 | |
seldon | masak: I walked east in the beginning and now I can go nowhere and don't know where I am. | ||
pmichaud | another one is dealing with the transition of the ?-quantifier | ||
21:19
bruges joined
|
|||
masak | seldon: that sounds like "expected behavior" for now. | 21:19 | |
seldon: sorry about the crappy user experience ;) | |||
seldon | So how do I find out what I'm supposed to do? | ||
masak | seldon: well, you could play the old game to get an idea of what I'm building. | ||
seldon: 'git checkout 2011' | |||
(might not work with a newer Rakudo) | 21:20 | ||
seldon | Virtual call $.name may not be used on partially constructed objects. | ||
Indeed it does not. | |||
masak | heh. | ||
Beijing is known to work with it. | 21:21 | ||
dalek | p: 5ba0df8 | pmichaud++ | src/pmc/qrpa.pmc: Fix missing ssize initialization in QRPA.clone (jnthn++). |
||
masak | seldon: github.com/downloads/rakudo/rakudo....07.tar.gz | ||
pmichaud | (...not star?) | 21:22 | |
masak | takes longer to install, and only need the compiler to run crypt :) | ||
pmichaud | +1 then | ||
21:29
lolka_91 joined
|
|||
lolka_91 | hi, quick questions not related to perl :p i have a video on youtube :) it is nice but large :( so i want to download it to one of my remote servers then copy it later. is there a way to pull it from youtube?! wget did not work for me :( | 21:30 | |
masak | lolka_91 == Layla91? | ||
lolka_91 | masak: there are no other crazy lolaz in the world its me :D | 21:31 | |
masak | \o/ | ||
lolka_91 | ^_^ | ||
masak | then it's fine that you're off-topic ;) | ||
jnthn | Just a 4 of lolkat :D | ||
er, just a *t* | |||
...I can type :) | |||
masak | ;) | ||
lolka_91: maybe www.bestvideodownloader.com/ will help? | 21:33 | ||
or saveyoutube.com/ | |||
colomon is having to fight off a strong inclination to do a major refactor on Niecza's sprintf code.... | |||
lolka_91 | masak: but the remove server is a centos 5 server with no gui :( | ||
masak | ah. | 21:34 | |
lolka_91 | i miss the 20MB/s speed days :( am here with a 0.5MB/s :'( | ||
masak | lolka_91: saveyoutube.com/ might still work in lynx or links. | ||
jnthn | lolka_91: YouTube support the HTML 5 video stuff | 21:35 | |
lolka_91: That may give you something that you can wget | |||
www.youtube.com/html5/ | |||
0.5MB/s is very :'( | 21:36 | ||
lolka_91 | jnthn: its crazy! :( but its ok looking at the price i need to save money :) | 21:37 | |
masak hugs lolka_91 | 21:38 | ||
lolka_91 | masak: no need for hugs am a proud girl :P but you can lend me some money to finish college :P just kidding :D | 21:39 | |
masak | hah! | ||
proud but brazen. | 21:40 | ||
phenny: en eo "brazen"? | 21:41 | ||
phenny | masak: "kupran" (en to eo, translate.google.com) | ||
masak | oh that was just bound to happen :) | ||
lolka_91 | masak: hmm i am not very good in english i will need to translate it :s | ||
masak | lolka_91: it's a nice word meaning "shameless". :) | 21:42 | |
phenny translates it into "made out of copper" (and puts it into the accusative) :P | |||
lolka_91 | masak: shameless! :| mmm.. maybe :p | 21:43 | |
masak | :) | ||
here in Sweden, that's almost a compliment. | 21:44 | ||
phenny: "Mi estas svedo, mi ne havas honton!"? | |||
phenny | masak: "I am Swedish, I have no shame !" (eo to en, translate.google.com) | ||
lolka_91 | mmm.. if it means strong in russia girls are usually strong and not easy to approach :) | 21:45 | |
Woo found this: code.google.com/p/get-flash-videos/...geExamples | |||
masak notices the tagmemic proximity between the concepts "brazen" and "polish" :P | 21:46 | ||
sergot | phenny: en pl "brazen"? | ||
phenny | sergot: "nachalny" (en to pl, translate.google.com) | ||
jnthn | lolka_91: Yes, but after surviving the initial scariness, they are kind really. Or so has been my experience. :-) | ||
masak | phenny: pl en "nachalny"? | ||
phenny | masak: "brazen" (pl to en, translate.google.com) | ||
sergot | :) | ||
masak | seems GT got the right translation in this case. | 21:47 | |
lolka_91 | jnthn: i miss russia :( | ||
masak | a synonym is "insolent". | ||
lolka_91 | i must go byee :P | ||
masak | o/ | ||
phenny: en pl "insolent"? | |||
phenny | masak: "bezczelny" (en to pl, translate.google.com) | ||
jnthn | lolka_91: take care, bye o/ | ||
sergot | masak: read this! :) | ||
bye bye o/ | |||
masak | o/ | ||
21:48
lolka_91 left
|
|||
sergot | masak: Are you interested in learning Polish? :) | 21:48 | |
masak | sergot: of course! :) | ||
I mean, who wouldn't be? | |||
masak .oO( if I polish my Polish, I can speak more brazenly ) | |||
sergot | Hm, is Polish hard to learn? :) | 21:49 | |
masak | nah. | ||
;) | |||
sergot | :) | ||
masak | you have a few extra letters, but it's really easy to pronounce, and fairly regular. | ||
aspects are always... fun. but I kinda dig the case system. | |||
very retro, very Latin. | |||
sergot | masak: great. :) | 21:50 | |
Jak się czujesz masaku? :) | 21:51 | ||
masak | Czuję się świetnie! ;) | ||
sergot | Cieszę się. :) | ||
masak | dang. :) | 21:52 | |
masak kicks GT | |||
seldon | masak: Okay, I got the old one to work, but it doesn't really help with the new. You should implement the help command :P | ||
masak | seldon: I should. | ||
seldon: I can get it in before tomorrow's post. | |||
seldon: there's also two old posts to | 21:53 | ||
go with the old game: strangelyconsistent.org/blog/june-2...dventure-i strangelyconsistent.org/blog/june-3...venture-ii | |||
if you're interested. | |||
seldon++ # running the game | |||
seldon | I'm in the cave now. | 21:54 | |
masak | heh :) | ||
not bad. | |||
I'm going to sleep now. | 21:55 | ||
'night, #perl6 | |||
sergot | o/ masak | ||
seldon waves | |||
21:56
spider-mario joined
|
|||
seldon | But now I have to figure out how to bind the rope to the helmet. | 21:58 | |
tadzik | "0.5 MB/s is very :'(" | 21:59 | |
guys, seriously | 22:00 | ||
sjohnson | ( ° ー°) | ||
tadzik | yeah, my thoughts exactly | 22:01 | |
I remember downloading mp3's at 3 KB/s and that was fine. And I'm not old or what | 22:02 | ||
sjohnson is remined of Winplay2 or whatever it was called. | |||
jnthn | Just 'cus I remember doesn't mean it was a happy memory :) | ||
tadzik | well | ||
sjohnson | WinPlay3, that was it. | ||
tadzik | it _was_ a happy mempry | ||
as in "yay, internet!" | |||
jnthn | Well, yes :) | ||
But when you knew how fast internets could be...then had the 3 KB/s back home... :) | |||
tadzik | Internet! \o/ | 22:06 | |
colomon just realized niecza's sprintf makes no real effort to handle big Ints or FatRats.... | 22:07 | ||
nr: say sprintf("%d", 5859203483450935893859438539034242343204923049) | |||
] | |||
p6eval | niecza v19-7-g5e25209: OUTPUT«-2147483648» | ||
..rakudo 810e61: OUTPUT«1733142185» | |||
colomon | nor does rakudo's, apparently | 22:08 | |
gack | |||
pmichaud | my first modem was 300bps :-) | ||
flussence | rakudo's one just passes through to parrot's printf, IIRC | ||
pmichaud | yes, currently rakudo just passes stuff to parrot. | ||
colomon never owned a modem slower than 1200bps, but he did play with someone else's 300bps... | 22:09 | ||
sergot | good night! o/ | ||
pmichaud | I'm guessing we'll likely re-implement sprintf in nqp. | ||
22:12
stepnem joined
22:35
fridim_ joined
|
|||
tadzik | ...and he didn't say what are his exam results? | 22:36 | |
22:50
Entonian joined
22:54
fridim_ left
22:55
Entonian left
23:09
spider-mario left
23:11
simcop2387 joined
23:31
tyatpi joined
|
|||
sorear | colomon: I encourage you to do a major refactor on springf | 23:34 | |
23:39
cognominal joined
23:41
cognominal__ left
23:45
icwiener left
|