»ö« 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:00
ab5tract left
00:13
molaf joined
00:16
pernatiy left
00:17
abercrombie left
00:22
pernatiy joined
00:24
cexsum left
00:30
abercrombie joined
00:31
tokuhirom joined
00:36
flussence left
00:38
flussence joined
00:47
whiteknight joined
00:50
uasi joined
00:52
tokuhirom left
00:59
abercrombie left
01:00
uasi left
01:14
uasi joined
01:15
daniel-s left
01:16
daniel-s joined
01:28
whiteknight left
01:33
abercrombie joined
01:41
cexsum joined
01:57
pjcj left,
woosley joined
|
|||
lue | what the heck is @@w supposed to mean? I remember reading not too long ago something about @@ and slices, but I don't know anything beyond that. | 02:13 | |
02:15
jaldhar joined
02:17
REPLeffect left
02:20
pjcj joined
02:31
REPLeffect joined
02:42
drbean left
02:51
am0c joined
03:01
dark_x joined
|
|||
dalek | : 1df6eb2 | lue++ | examples/functional/ (7 files): [examples] fixed most of examples/functional to work with rakudo/nom The entirety of the fixes include making sure functions returned Bool values when they said they would, flattening where it would otherwise cause infinite recursion, and avoiding redeclaration of variables (how that managed to happen is beyond me). Only monads.pl was untouched, due to an NYI error about typed arrays. |
03:04 | |
03:04
cexsum left
03:23
Su-Shee_ joined
03:25
Su-Shee left
03:28
agentzh joined
03:34
betterworld joined
03:37
jrockway joined
03:41
wolfman2000 left
03:42
natureboy joined
03:43
swarles joined
|
|||
natureboy | hi swarles :] | 03:44 | |
swarles | hey =] | 03:48 | |
sorear | hello and welcome, natureboy and swarles. | 03:57 | |
natureboy | hello, thanks | 03:58 | |
mberends | \o | 03:59 | |
TimToady | »ö« | 04:01 | |
sorear | lue: @@x sounds like something from the Dark Age of Pugs, perhaps 2003 | 04:02 | |
04:03
drbean joined
|
|||
TimToady | was a little later than that | 04:03 | |
swarles | hello o/ | ||
TimToady | perl6: say "Howdy doody!" | 04:04 | |
p6eval | pugs, rakudo 2bac6a, niecza v9-7-g252c6a5: OUTPUT«Howdy doody!» | ||
mberends | ▷☋◁ | 04:05 | |
TimToady | a frog with fins? | ||
mberends | Iron Butterfly | 04:06 | |
TimToady | looks kinda like a bat | ||
sorear | .u ☋ | 04:07 | |
phenny | U+260B DESCENDING NODE (☋) | ||
sorear | bleh | 04:09 | |
.net's async IO model is very un-POSIX-like | |||
they have Select but it's sockets only | |||
other kinds of file descriptors use a stateful request/callback system | 04:10 | ||
natureboy: swarles: anything we can help you with? | 04:11 | ||
04:11
araujo left
|
|||
swarles | Nope I'm just here to watch/listern :) | 04:11 | |
listen* | |||
TimToady | ⊱ö⊰ | ||
⊱⍥⊰ | 04:12 | ||
sorear has little idea what kind of interface to present to Perl 6 | |||
natureboy | not really, but thanks sorear | 04:13 | |
TimToady | ⊱⚉⊰ | 04:15 | |
decomputing & | |||
natureboy | is that supposed to look like "Camelia" ? | ||
TimToady | vaguely | 04:16 | |
mberends | Campelia | ||
04:17
jrockway left
|
|||
mberends | sorear: structuring async I/O around callbacks would be useful, to unify with other NCI events (eg GUI input) | 04:18 | |
04:20
birdwindupbird joined
|
|||
lue severely detests Google's refusal to search symbols essential to any programmer's diet. | 04:29 | ||
04:30
natureboy left
|
|||
sorear | mberends: I think I'm going to shift my month focus to general CLR integration and let someone else worry about API design. | 04:32 | |
I don't like API design. | |||
mberends | lue: you should look beyond Google, even if only to resist the creation of another kind of monopoly | ||
sorear | you should detest Google for other reasons. | ||
mberends | sorear: I'll gladly participate in API bikeshedding, but would like to work mainly with example use cases. | 04:33 | |
lue | I got NoScript to stop Google from the stupid "guess what you want as you're typing" when they brought it to the SSL version. [It severely slows down my connection and makes Google think I'm using a bot to do mass searches!] | 04:34 | |
lue investigates other search engines | |||
04:35
jrockway joined
04:38
jevin left
04:39
ccc_ left
04:40
jevin joined
|
|||
mberends | sorear: I'm very happy that you'll work on CLR integration instead. If you you devise something that goes beyond Zavolaj's NativeCall, it will create many application opportunities for Niecza and throw out a challenge for Rakudo to catch up. Therefore I hope you can make it as VM agnostic as possible. | 04:43 | |
lue: I'm not sure 'wormhole' is the best choice of word, could you help me with some possible improvements? github.com/sorear/niecza/blob/mast...mpiler.pod | 04:47 | ||
lue looks | 04:50 | ||
mberends | that sentence reads better with "Perl 6 virtual world" and "executable real world" as well | 04:54 | |
lue | instead of wormhole, maybe passageway? [also, I noticed this: "How is the Niecza compiler babby formed?" Are you sure it's babby? ] | 04:55 | |
04:55
Exodist joined
|
|||
mberends | lue: yes, I'm sure. I was hoping for something more cosmic, to spice up the text. 'bridge' is too mundane, 'stargate' too exotic. | 04:57 | |
lue | .oO(gateway perhaps?) |
04:58 | |
mberends | yes, better. how about portal? | 04:59 | |
sorear | rabbit-hole. | ||
mberends | yes, quite nice | 05:00 | |
lue | I like rabbit-hole, reminds me of Alice in Wonderland (where CLR is real life, and P6 is Wonderland, according to your analogy) | 05:01 | |
mberends | no, implies similar worlds too much, like wormhole | ||
oh, the looking-glass! | |||
sorear | it's not really like a boundary between P6 and real life | ||
and as I said yesterday, rawscall has nothing to do with system calls | 05:02 | ||
the "s" stands for "static" | |||
"rawcall" calls instance methods, "rawscall" calls class methods | |||
mberends | oh, I missed that totally | 05:03 | |
sorear | CLR makes the distinction | ||
mberends | I'd kinda mapped VM to system | ||
05:04
sftp left
|
|||
mberends | ok, that will get a rewrite. I'm really attracted to 'looking-glass', I think it triggers appropriate thoughts. | 05:05 | |
sorear | DownCall/UpCall is kind of like a wormhole, it's a portal through time | 05:06 | |
it allows code compiled using last month's Niecza to call code compiled using the current Niecza, and vice versa (for eval) | |||
05:06
sftp joined
|
|||
mberends | I assumed that was only during the bootstrap compile, and that in the next iteration of recompile the versions of caller and callee would be in sync. | 05:08 | |
sorear | mberends: it would be possible to do it that way, and the release binaries are set up that way | 05:09 | |
mberends | I like the time travel viewpoint of the bootstrap, that might be worth mentioning more explicitly. | ||
sorear | mberends: but for development I only want to build niecza once, which means that "self-compiled" is a bad idea | ||
in ghc/gcc parlance builds from source are always stage1s | 05:10 | ||
mberends | aye, I hacked on Small-C many years ago and had the same self-hosting stability risks | ||
sorear | ... "Small-C"? haven't heard of that in ages. | 05:11 | |
mberends | by James Hendrix, an excellent learning tool | 05:12 | |
sorear | most of the "stability" problems went away when niecza started running roast | ||
I don't fear that I'm rebooting with a broken niecza | |||
mberends | yes, testing++ | 05:13 | |
05:14
dukeleto left
|
|||
sorear | mberends: hrm, I wonder then if CLR interop should be more like Zavolaj or Blizkost | 05:20 | |
mberends | sorear: so far I've preferred Zavolaj because it's more explicitly declarative | 05:21 | |
TimToady | literal but non-portable interfaces are okay for building portability layers on top of | ||
mberends | sorear: Zavolaj is independent on what lies beyond, for example hooking up PostgreSQL was a breeeze. | 05:23 | |
*of, *breeze even | 05:26 | ||
sorear | mberends: preferred Zavolaj over...? | ||
mberends | sorear: Blizkost, the other option you mentioned for 'interop like' | 05:27 | |
05:28
araujo joined,
araujo left,
araujo joined
|
|||
sorear | mberends: yeah just wondering where you would have the option to use both | 05:29 | |
and goodnight. | |||
mberends | 'night | ||
05:31
dark_x left
05:36
wamba joined
05:48
wtw joined
|
|||
mberends | phenny, tell sorear we have the option to use Zavolaj or Blizkost generally when a Perl 5 module abstracts a native library, for example a PostgreSQL or MySQL client. I preferred independence from the effect a Perl 5 layer might have on what is available to the Perl 6 code. In short, call direct. The question for the Niecza interop design is whether you can _always_ interrogate native code to tell you its methods and parameters, or not. I don't think | 05:51 | |
you can. | |||
phenny | mberends: I'll pass that on when sorear is around. | ||
06:02
wamba left
|
|||
mberends | phenny, tell sorear otoh, CLR is easier to deal with than native code because CLR has Reflection. Calling from Niecza to native code involves jumping through two hoops, CLR and FFI. We don't want the solution to look like Perl 5 XS. | 06:03 | |
phenny | mberends: I'll pass that on when sorear is around. | ||
lue | oh! I was reading up more on the capture sigil (¢) ooc, and found an irc log discussion mentioning ¢'s supposed alternative (@%) used to be @@. So, does that mean @@ is just ¢ ? | 06:06 | |
06:08
perlhack joined
|
|||
perlhack | 用中文 像大家问好 | 06:08 | |
各位辛苦了 | |||
:-) | |||
06:10
Su-Shee_ is now known as Su-Shee
06:16
molaf left
06:17
koban` joined,
koban` left
|
|||
tadzik | good mornings | 06:28 | |
man, HPatMoR chapters are coming out at insane pace | 06:30 | ||
06:34
jerome_ joined
06:58
cexsum joined
07:05
cognominal_ left
07:06
cognominal joined
|
|||
tadzik | rakudo: class A { has $!b; submethod BUILD { say $!b } }; A.new(b => 5) # correct? istr it worked | 07:15 | |
p6eval | rakudo 2bac6a: OUTPUT«Mu()» | ||
pmichaud | I think the new standard is that private attributes aren't automatically initialized that way. | 07:23 | |
(nom implements the new version, ng had the old one) | 07:24 | ||
07:25
wamba joined
|
|||
pmichaud | S12:882 | 07:25 | |
07:26
daxim joined
07:28
perlhack_ joined
|
|||
tadzik | rakudo: class A { has $.b; submethod BUILD { say $.b } }; A.new(b => 5) # correct? istr it worked | 07:28 | |
p6eval | rakudo 2bac6a: OUTPUT«Mu()» | ||
tadzik | doesn't seem so, unless I miss something | ||
07:28
TimToady left
|
|||
pmichaud | I think "rakudo: | 07:28 | |
07:28
TimToady joined
|
|||
pmichaud | I think "rakudo:" now refers to nom. | 07:29 | |
tadzik | yes, that's what I'm hoping for | ||
07:29
perlhack left
|
|||
pmichaud | ng: class A { has $.b; submethod BUILD { say $.b } }; A.new(b => 5) # correct? istr it worked | 07:29 | |
b: class A { has $.b; submethod BUILD { say $.b } }; A.new(b => 5) # correct? istr it worked | |||
p6eval | b a55346: OUTPUT«Any()» | ||
tadzik | b needs callsame for that, I believe | ||
b: class A { has $.b; submethod BUILD { callsame; say $.b } }; A.new(b => 5) # correct? istr it worked | |||
p6eval | b a55346: OUTPUT«5» | 07:30 | |
pmichaud | b: class A { has $!b; submethod BUILD { say $!b } }; A.new(b => 5) # correct? istr it worked | ||
p6eval | b a55346: OUTPUT«Any()» | ||
07:30
wamba left
|
|||
tadzik | that doesn't help nom though | 07:30 | |
pmichaud | well, in nom's case you're overriding BUILD, so you don't get the default BUILD | ||
tadzik | rakudo: class A { has $.b; submethod BUILD { callsame; say $.b } }; A.new(b => 5) | 07:31 | |
p6eval | rakudo 2bac6a: OUTPUT«Mu()» | ||
tadzik | no, something else's broken | ||
pmichaud | rakudo: class A { has $.b; submethod BUILD($!b) { say $.b } }; A.new(b => 5) | 07:33 | |
p6eval | rakudo 2bac6a: OUTPUT«Not enough positional parameters passed; got 1 but expected 2 in submethod BUILD at /tmp/WM9GqkKeFO:1 in method BUILDALL at src/gen/CORE.setting:483 in method bless at src/gen/CORE.setting:473 in method new at src/gen/CORE.setting:458 in <anon> at /tmp/WM… | ||
pmichaud | rakudo: class A { has $.b; submethod BUILD(:$!b) { say $.b } }; A.new(b => 5) | 07:34 | |
p6eval | rakudo 2bac6a: OUTPUT«5» | ||
pmichaud | hmmmmmmmmmm | ||
07:36
wamba joined
|
|||
tadzik | I don't like it, again :) | 07:41 | |
07:41
wamba left
|
|||
tadzik | I believe BUILD { say $!b } used to Just Work in nom some time ago | 07:42 | |
07:46
mj41 joined
|
|||
moritz | \o | 07:56 | |
07:56
perlhack_ left
|
|||
tadzik | o\ | 07:56 | |
moritz | doesn't that need to be BUILD(:$!b) { say $!b } ? | ||
tadzik | I hope not. I don't like easy things hard to do | 07:57 | |
I think I'm missing a being | |||
07:57
perlhack joined
|
|||
perlhack | hi | 07:57 | |
tadzik | hi perlhack | ||
08:01
wamba joined
|
|||
perlhack | hello tadzik,i am ready to get off duty.i wish you have fun. | 08:02 | |
08:03
daxim left
|
|||
woosley | what is BUILD used for? just like BUILD in Moose? | 08:05 | |
08:06
perlhack left
|
|||
tadzik | woosley: I hope it to be, but it seems that it's a different magic | 08:06 | |
08:09
daxim joined
|
|||
woosley | tadzik: so what is the magic here? | 08:09 | |
tadzik | woosley: it doesn't work as expected :) The attributes aren't neceserilly set in your BUILD, you may have to do that yourself. I mean, those passed to the .new | 08:10 | |
08:11
donri joined
08:14
swarles left
08:17
am0c left,
swarles joined
08:19
apejens left,
apejens joined
08:23
dakkar joined,
bbkr_ joined
08:24
am0c joined
08:27
senobmeht joined
08:30
apejens left,
apejens joined
|
|||
mberends | phenny, tell pmichaud the next timing accuracy improvement in Test.pm will be to move $time_before and $time_after assignments out from proclaim() to ok(), is*(), diag() etc, because some of those do lots of work before calling proclaim(). There should be negligible performance impact, but I'd like your opinion before proceeding. Also, there will probably be a few sub-microsecond times soon. We could record nanoseconds instead of microseconds (I pref | 08:33 | |
phenny | mberends: I'll pass that on when pmichaud is around. | ||
mberends | er integers), even though clocks do not have nanosecond resolution (yet). | ||
08:33
wamba left
08:36
y3llow_ joined
08:37
mberends left
08:38
y3llow left,
y3llow_ is now known as y3llow
08:39
pnu joined
|
|||
eiro | hello all | 08:41 | |
tadzik | hello eiro | 08:42 | |
eiro | i'm trying to use the comments of arguments for doc (pastebin.com/cYwvCGxj) | ||
it sends me the message: ===SORRY!=== | 08:43 | ||
Whitespace character is not allowed as a delimiter at line 4, near " one of CR" | |||
08:43
mberends joined
|
|||
eiro | hello tadzik. i was trying to write my first IA for the farm game. | 08:43 | |
AI | 08:44 | ||
actually it's more like IS (artificial stupidity) | 08:45 | ||
moritz | well, natural stupidity we have more than enough :-) | 08:47 | |
tadzik | eiro: docs for signatures are NYI | 08:49 | |
I may poke that soon, since someone actually needs this :) | |||
lue | docs for signatures? What's that? [Or rather, which spec would tell me about it, if it's too long to explain here] | 08:51 | |
eiro | moritz, i can't just plug my brain to parrot :) | 08:54 | |
tadzik, NYI ? | |||
moritz | NYI = Not Yet Implemented | 08:55 | |
eiro | arg :) | ||
ok thanks | |||
moritz | lue: S26 allows attaching doc strings to just about anything | ||
lue | ohh, now that I know we're talking about doc strings, I can figure out exactly what docs for signatures are. | 08:57 | |
.oO(could you attach doc strings to doc strings?) |
09:00 | ||
mberends | lue: :) don't go there... | 09:01 | |
tadzik | why, yes you can :) | 09:02 | |
lue | .oO(#=this is a doc string explaining method foo of class xyzzy. Its purpose is to tell you the purpose of foo) |
||
tadzik | rakudo: gist.github.com/1185757 | 09:03 | |
p6eval | rakudo 2bac6a: OUTPUT«Array.new("doc #= double doc")» | ||
tadzik | documented documentation :) | ||
lue | oooh, I didn't know p6eval took files | 09:05 | |
tadzik lives | 09:06 | ||
lue | I won't for much longer if I don't go to bed. Good night everyone o/ | 09:08 | |
09:10
orafu left
09:11
orafu joined
09:18
envi joined
09:29
im2ee joined
|
|||
im2ee | Could I find somewhere modules which are build in Perl6? | 09:33 | |
Like IO::Socket ? :) | |||
mberends | im2ee: IO::Socket in built in to Rakudo itself. Modules are here: modules.perl6.org/ | 09:34 | |
im2ee | I know modules.perl6.org. So, there is no site about modules which are build in to Rakudo? :) | 09:35 | |
mberends | im2ee: avoid confusion, what is built into Rakudo is not *modules*. The complete set of Synopses describes what *should* be built in perlcabal.org/syn/ and this is the progress so far: perl6.org/compilers/features | 09:38 | |
im2ee | mberends, ok. Thank You! :) | 09:39 | |
09:40
birdwindupbird left,
rhr left,
eiro left,
benabik left,
Helios left,
risou_awy left,
tewk left,
Exodist left,
fhelmberger left,
nine left,
lumi_ left,
LoRe_ left,
jasonmay left
|
|||
mberends | im2ee: IO::Socket is specified in perlcabal.org/syn/S32/IO.html | 09:40 | |
im2ee | Great. :) | ||
09:42
birdwindupbird joined
|
|||
mberends | im2ee: examples of IO:Socket are github.com/cosimo/perl6-lwp-simple and github.com/mberends/http-server-simple | 09:42 | |
09:42
Exodist joined,
rhr joined,
eiro joined,
benabik joined,
Helios joined,
risou_awy joined,
tewk joined,
fhelmberger joined,
nine joined,
lumi_ joined,
LoRe_ joined,
jasonmay joined
09:43
donri left,
donri joined
|
|||
im2ee | mberends, thanks again. :) | 09:43 | |
mberends | have lots of fun! :) | ||
finally, a 6model/c raw list implementation is free of memory leaks according to valgrind. Next up, a bigger test suite :) | 09:48 | ||
im2ee | Hmm, some more questions. :) | 09:50 | |
What about threading in Perl6? :) | |||
Using fork, or some modules? | |||
And... does exist something like DO (from p5)? | 09:51 | ||
: | |||
:) | |||
09:52
woosley left
|
|||
mberends | im2ee: not much implemented yet, your can use run('command') or qx(command). I think Niecza has some threading support but not Rakudo. I did create this example using Zavolaj: github.com/jnthn/zavolaj/blob/mast...ix-fork.p6 | 09:54 | |
09:54
domidumont joined
|
|||
mberends | im2ee: oops, qx/command/ | 09:57 | |
im2ee | hmmm.. No problem in total. :) | ||
I'll be glad to help You with Perl6. :) | |||
mberends | great! when can you start? | ||
im2ee | But ... now I must get to know perl6 better. :) | 09:58 | |
I use Perl5 for 1 y (maybe 2), now I'll learn P6. :) | |||
Hmm, I know C too. | 09:59 | ||
mberends | oh good, then you may be able to get involved with Parrot as well. | ||
im2ee | Hm, don't now exactly when - but I would as soon as possible :) | 10:00 | |
10:00
mux joined
|
|||
im2ee | Where I can find informations about what is to do? :) | 10:00 | |
mberends, You wrote Zavolaj? | 10:01 | ||
mberends | im2ee: I am contributor. jnthn++ is the author. | 10:02 | |
im2ee | Ok. :) | 10:03 | |
mberends, Where I can find informations about what is to do? :) | 10:04 | ||
mberends | im2ee: first make sure that you can use Perl 6, (Rakudo, Niecza or both). The try to create your own module to share with the community. Then try to add a Perl 6 language test to github.com/perl6/roast. | 10:05 | |
10:06
mux left,
mux joined
|
|||
im2ee | Hmm, is there maybe a site where I can find information abouts who is working on what? | 10:06 | |
10:07
cexsum left
|
|||
im2ee | I won't to work on something over which one is working now :) | 10:07 | |
mberends | im2ee: not really. I recommend searching the logs of this channel at irclog.perlgeek.de/perl6/ | 10:08 | |
what would you *like* to work on? maybe I can remember who is interested in similar things. | 10:09 | ||
moritz | im2ee: people generally publish their work early and often | 10:12 | |
im2ee: so if something isn't on modules.perl6.org, you can be confident nobody has invested too much time in it | |||
im2ee | Hm, maybe for start on something like IRC bot module, etc. | 10:15 | |
You know - Im now professional, I hope You it'll be changed ! :) | 10:16 | ||
And I hope You understand, that I'm not professional. :) | |||
Right? :) | |||
Hi moritz :) | |||
moritz is not professional either :-) | |||
im2ee | :) | ||
mberends | there are already several people playing with IRC clients, I cannot remember names but that irc log search will find them. | ||
10:16
wk joined
|
|||
im2ee | Hmm, but there is IRC Bot framework, right ? :) | 10:17 | |
moritz | right, by TiMBuS++ | ||
im2ee | Net::IRC::Bot | ||
Ok. So .. hm, something else :) | |||
mberends | other people often ask for modules to build web applications. There are some incomplete frameworks, they need more love. | 10:18 | |
TiMBuS | yay im getting attention | ||
mberends | :) | ||
moritz | TiMBuS: not you, just your module :-) | ||
mberends | lol | ||
TiMBuS | im2ee, feel free to contribute to make my module suck less | ||
i never added module unloading support! the whole reason i made it modular | 10:19 | ||
thats a good palce to start | |||
moritz | for example you could write a simple bot, and see if you miss any functionality from the framework | ||
or find unintuitive, or so | |||
mberends | but please don't point a buggy bot at this lovely channel ;) | 10:20 | |
TiMBuS | i miss the part where, the bot disconnects if it times out. because i have no async IO or threads >:[ | ||
mberends, the last bot someone sent here was a barrel of laughs | |||
mberends | oh yeah | 10:21 | |
im2ee | TiMBuS, I don't thing that Your module sucks. :) | ||
TiMBuS | joke please | ||
im2ee | think* | ||
TiMBuS | thanks im2ee! but you can still probably make it better | ||
im2ee | TiMBuS, makeing irc module will be good lesson for me. :) | 10:23 | |
Hmm, does my English suck? | |||
mberends | nope | 10:24 | |
TiMBuS | mines worse | ||
10:25
saaki joined
|
|||
im2ee | mberends, thanks. :) | 10:25 | |
TiMBuS, where are You from? :) | |||
mberends | im2ee: :) | 10:26 | |
10:26
ccc_ joined
|
|||
TiMBuS | australia. | 10:26 | |
im2ee | I must say something. This is the most friendly community that I have ever known. :) | 10:27 | |
mberends | im2ee: thank you | 10:28 | |
im2ee | No, I thank You. :) | ||
So. :) | |||
I'll learning P6 today. :) | 10:29 | ||
mberends | im2ee: one small thing, English people write 'you' with a small 'y' | ||
im2ee | Ok. :) | ||
mberends | im2ee: have you installed Rakudo or Niecza yet? It seems a logical first step. | 10:30 | |
10:30
showi left
|
|||
im2ee | I have Rakudo 07.2011 | 10:30 | |
mberends | good. Then also install Panda, as described on the Modules page. | 10:31 | |
10:31
cexsum joined,
saaki left
|
|||
im2ee | i have Panda too. :) | 10:31 | |
and i installed some modules :) | |||
mberends | impressive :) | ||
im2ee | :) | 10:32 | |
So. I'm on the good way. :) | |||
a instead of the :) | |||
or? :) | |||
nevermind :) | |||
mberends | I guess a, but nevermind | 10:33 | |
10:33
saaki joined
10:35
wk left
|
|||
im2ee | Now, I'll write some code which will help me learn the language. | 10:35 | |
daxim | im2e++ for practicality | 10:49 | |
mberends | im2ee++ even | ||
im2ee | :) | 10:50 | |
10:53
wamba joined
10:56
wamba left
11:01
sftp_ joined
11:02
mtk left
11:05
sftp left,
awoodland joined
|
|||
im2ee | $sock.say("JOIN $chan\r") for @channels -> $chan; | 11:06 | |
what is wrong? :) | |||
Trashlord | uh | 11:12 | |
for my $chan @channels; | |||
or | 11:13 | ||
for my $chan (@channels); | |||
flussence | maybe $sock.say("JOIN $^chan\r" for @channels); | 11:14 | |
im2ee | Works, thanks. :) | 11:15 | |
write method on IO::Socket::INET is better, isn't it? | 11:19 | ||
11:22
espadrine joined
11:23
frettled joined
|
|||
flussence | .write would be better than mixing an explicit \r and implicit \n... | 11:23 | |
im2ee | flussence, thanks :) | 11:24 | |
flussence | (having a working &wrap would be better, just make $sock.say do the right thing...) | ||
pmichaud | good morning, #perl6 | 11:57 | |
phenny | pmichaud: 08:33Z <mberends> tell pmichaud the next timing accuracy improvement in Test.pm will be to move $time_before and $time_after assignments out from proclaim() to ok(), is*(), diag() etc, because some of those do lots of work before calling proclaim(). There should be negligible performance impact, but I'd like your opinion before proceeding. Also, there will probably be a few sub-microsecond times soon. We could record nanoseconds instead of micr | ||
pmichaud | mberends: I'll go with your judgement on this one. | 12:00 | |
mberends | pmichaud: ok, we'll give it a try. Results so far are encouraging :) I'm curious how Niecza measures up. | 12:02 | |
the delay in is_deeply() is probably huge, and nondeterministic | 12:04 | ||
bbkr_ | rakudo: "aa" ~~ /(a)($0)/; $1.say # bug? | 12:17 | |
p6eval | rakudo 2bac6a: OUTPUT«» | ||
moritz | yes | 12:19 | |
rakudo: "aa" ~~ /(a)($0)/; $0.say | |||
p6eval | rakudo 2bac6a: OUTPUT«a» | ||
bbkr_ reported | 12:20 | ||
moritz | bbkr_++ | ||
12:36
espadrine left
12:39
awoodland left
12:40
awoodland joined
|
|||
tadzik | im2ee: good to see you around :) | 12:42 | |
PerlJam | good * #perl6 | 12:45 | |
12:46
mtk joined
12:48
odoacre left
12:49
JimmyZ joined
12:54
jferrero left
12:56
MayDaniel joined
|
|||
im2ee | tadzik, good to see you too. :) | 12:57 | |
mls | morning perl6! | 13:00 | |
If you're interested whay perl6 does when it compiles the setting: www4.informatik.uni-erlangen.de/~ml...ing.out.gz | 13:01 | ||
It's in kcachegrind input format | 13:02 | ||
I've patched parrot's runloop to collect call statistics | 13:05 | ||
bbkr_ | rakudo: sub foo ( /abc/ ) { 1 }; foo( Regex ); # bug with method delegation? | ||
p6eval | rakudo 2bac6a: OUTPUT«===SORRY!===Cannot use a value type constraints whose value is unknown at compile time at line 1, near ") { 1 }; f"» | ||
bbkr_ | std: sub foo ( /abc/ ) { 1 }; # i don't know what kind of monster is it, but STD allows such declaration, therefore foo(Regex) should delegate | 13:07 | |
p6eval | std e3c970e: OUTPUT«ok 00:01 123m» | ||
flussence | mls++ | ||
moritz | bbkr_: I think it's a limitation in rakudo's current handling of constraints and literals | 13:08 | |
flussence | (seems like the grammar is the slowest part...) | ||
PerlJam | using grammar is always faster than parsing grammar ;) | 13:09 | |
moritz | mls++ | 13:10 | |
lineof is the function that takes the most time | 13:11 | ||
13:12
daxim left
|
|||
mls | it is? | 13:12 | |
I don't see it | 13:13 | ||
moritz | mls: that's what your report says when I sort by the 'self' column in kcachegrind | ||
flussence | it's the longest per-call, it only gets called 18k times though | 13:14 | |
mls | it takes the most ops, but you can switch to 'cycles' | ||
flussence | oh, *now* it makes more sense... | 13:15 | |
moritz | mls: do you know what <cycle 7> as a routine name means? | ||
flussence | (.new looked strangely lightweight before) | ||
mls | turn off cycle detection | ||
moritz | ah | 13:16 | |
mls | you get a cycle when you do recursion | ||
moritz | so post_children takes up a lot of time | 13:17 | |
ah, it shows the cycles in in the right window | |||
moritz finally learns how to kcachegrind :-) | 13:18 | ||
PerlJam | attr gets called a lot | 13:19 | |
mls: can you patch rakudo to do the same thing but for perl 6 subs/methods? :) | 13:20 | ||
flussence | protoregex appears to be where a lot of the slowness in parsing originates | 13:21 | |
im2ee | What means Z? (e.g. in @@( <a b> Z <c d> )) And where can I use this? :) | ||
moritz | im2ee: it's the "zip" operator | ||
13:22
swarles left
|
|||
flussence | rakudo: say ('a'..'f' Z 1..6).perl | 13:22 | |
moritz | rakudo: say (<a b c> Z 1, 2, 3).perl | ||
p6eval | rakudo 2bac6a: OUTPUT«(("a", 1), ("b", 2), ("c", 3), ("d", 4), ("e", 5), ("f", 6)).list» | ||
rakudo 2bac6a: OUTPUT«(("a", 1), ("b", 2), ("c", 3)).list» | |||
13:22
wk joined
|
|||
im2ee | Great! Thanks :) | 13:24 | |
flussence | .oO( there's also the XZXZXZX operator, but we don't talk about that one here... ) |
13:26 | |
arnsholt | But no XYZZY? =) | 13:30 | |
PerlJam | we've got Z X R and S I believe so far. Dunno what Y would be. | 13:33 | |
oh, and E too | 13:35 | ||
flussence | E? | 13:36 | |
flussence only knows the first three | |||
PerlJam | S03:2152 | ||
flussence | aha | ||
im2ee | I know only Z :) hah | 13:37 | |
Everything is waiting for me. | |||
13:38
cexsum left
|
|||
moritz | robey.lag.net/2011/04/30/dissolving...terns.html # seems the Builder pattern could be replaced entirely with named arguments | 13:45 | |
tadzik | my physics is waiting for me, heh | 13:50 | |
moritz wishes tadzik best of luck | 13:51 | ||
tadzik | thanks. For now, I need some best of motivation :) | ||
moritz | rakudo: say (my @motivation).elems | 13:52 | |
p6eval | rakudo 2bac6a: OUTPUT«0» | ||
moritz | seems motivation is out. Try sense of duty instead. | ||
tadzik | hmm, will think about it | 13:54 | |
rakudo: say "charmander".chars | 13:55 | ||
p6eval | rakudo 2bac6a: OUTPUT«10» | ||
tadzik | I liked "nom:", it was short | ||
flussence | rakudo: sub prefix:<+~>(Str $s) { $s.chars }; say +~'abcdef'; | 13:56 | |
p6eval | rakudo 2bac6a: OUTPUT«0» | ||
flussence | rakudo: sub prefix:<+~>(Str $s) { $s.chars }; say +~ 'abcdef'; | ||
p6eval | rakudo 2bac6a: OUTPUT«0» | ||
flussence | hm | ||
rakudo: sub prefix:<+>(Str $s) { $s.chars }; say +'abcdef'; | 13:57 | ||
p6eval | rakudo 2bac6a: OUTPUT«6» | ||
flussence | .oO(if only there was a unicode symbol for "number of chars" I could use there...) |
13:58 | |
13:58
bluescreen10 joined
|
|||
flussence | std: sub prefix:<+>(&infix<~>:($a, $b)) { } # I wonder... | 13:59 | |
p6eval | std e3c970e: OUTPUT«===SORRY!===Unable to parse signature at /tmp/ZI_A6jK7jN line 1:------> sub prefix:<+>⏏(&infix<~>:($a, $b)) { } # I wonder...Couldn't find final ')'; gave up at /tmp/ZI_A6jK7jN line 1:------> sub prefix:<+>(&infix⏏[… | ||
flussence | nope, too crazy of an idea :) | 14:00 | |
std: sub prefix:<+>(&infix:<~>:($a, $b)) { } | |||
p6eval |