»ö« 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:01 Chillance left 00:08 yinyin joined 00:15 araujo joined 00:25 daniel-s joined 00:26 daniel-s left 00:41 masonkramer joined 00:47 Util joined 00:50 am0c joined 00:56 kst joined 01:12 skangas joined 01:15 donri left 01:27 woosley joined 01:57 PhatEddy left 02:33 noganex left, noganex joined, tokuhirom left 02:34 tokuhirom joined 02:43 masonkramer left 02:51 yinyin left, noganex_ joined, [particle] left 02:52 [particle] joined 02:54 noganex left 02:59 satyavvd joined, Khisanth left 03:05 molaf joined 03:12 molaf left 03:17 molaf joined, roen joined 03:18 noganex_ left 03:19 noganex joined 03:22 mtk left 03:25 jaldhar left 03:26 jaldhar joined 03:27 Su-Shee left 03:28 Su-Shee joined, molaf left
sorear good * #perl6 03:30
oh, nothing happened since I left
03:33 mtk joined 03:46 envi_laptop joined 03:48 yinyin joined
Util Hai, sorear 03:55
sorear hello tylercurtis. belated welcome back to the community
hello Util. 03:56
tylercurtis sorear: hello and thank you, though I don't think it should be considered belated given that I haven't really started working on Perl 6 again yet. 03:57
sorear rakudo: say (1 => 2).Str; say (1 => 2).Stringy
p6eval rakudo 048573: OUTPUT«1 2␤Method 'Stringy' not found for invocant of class 'Pair'␤ in main program body at line 22:/tmp/Xd7ciadjCY␤»
Util New RC solution (to a draft task): rosettacode.org/wiki/Straddling_che...ard#Perl_6 03:59
04:03 skangas left 04:07 skangas joined 04:10 yinyin left 04:28 ymasory left
dalek ecza: c757e63 | sorear++ | / (2 files):
.Stringy as a mostly-synonym for .Str
04:40
ecza: 39dde58 | sorear++ | lib/ (5 files):
Reimplement Bool as an enum
04:42 wamba joined 05:03 wamba left 05:10 LordBrain joined 05:14 yinyin joined 05:18 thou left 05:22 yinyin left 05:23 birdwindupbird joined 05:27 mikehh left 05:38 kaare_ joined 05:40 yinyin joined 05:41 cooper__ joined 05:44 cooper__ is now known as cooper 05:47 yves joined 05:49 yinyin left 05:53 wtw joined 05:59 wamba joined 06:05 yinyin joined 06:10 noganex_ joined 06:13 noganex left
dalek kudo/nom: eeeb5cf | moritz++ | src/CORE.setting/Num.pm:
more Num methods
06:23
moritz good morning 06:26
06:29 sftp joined 06:30 nymacro joined 06:32 cooper|ipad joined 06:33 fhelmberger joined 06:35 yinyin left 06:38 Tedd1 joined 06:43 silug joined
dalek ar: 81c1fdc | szabgab++ | win32/rakudo. (2 files):
add files needed to build the Windows Installer of Rakudo Star
06:44
06:47 wamba left 06:49 noganex_ left
sorear good morning moritz 06:50
06:52 Mowah joined 06:59 cooper|ipad left
ingy seen ash 07:00
aloha ash was last seen in #perl6 24 days 23 hours ago joining the channel.
07:03 yinyin joined, noganex joined 07:05 koban joined 07:13 yinyin left
sorear -> sleep 07:15
07:17 yinyin joined 07:22 amkrankruleuen left 07:23 amkrankruleuen joined 07:25 mj41 joined 07:35 jtpalmer joined 07:44 amkrankruleuen left 07:47 amkrankruleuen joined
dalek kudo: 484a253 | mberends++ | tools/test_summary.pl:
[tools/test_summary.pl] improve handling of 'git log' output from certain git versions
07:51
07:52 miso2217 joined 07:54 amkrankruleuen left 07:56 amkrankruleuen joined 08:07 noganex_ joined 08:10 noganex left 08:11 muixirt joined
muixirt good morning 08:12
08:12 domidumont joined
tadzik good morning 08:13
mberends goede morgen 08:14
muixirt hi tadzik , I wonder where rakudo development is heading right now
moritz muixirt: 6guts.wordpress.com/2011/06/06/the-...-marathon/ tries to answer that 08:15
muixirt yes the nom branch :-) 08:16
i dont understand a thing
08:16 am0c left, amkrankruleuen left
moritz it'll be much faster and better, but it's a lot of work 08:17
more understandable? :-)
mberends muixirt: the preceding postings on the 6guts blog are the most comprehensive description so far of the whole 6model design 08:18
muixirt i'm more interested in getting away from parrot, i thought 6model was a step in the direction of other VMs (at least to open up that possibility) 08:20
mberends muixirt: other runtimes is part of the 6model roadmap...
08:22 Tedd1 left, amkrankruleuen joined
dalek kudo/nom: 9b86b65 | moritz++ | src/CORE.setting/Num.pm:
more Num methods that translate directly to PIR
08:23
muixirt moritz: faster? why?
tadzik it's already hell faster, in the things it does :) 08:24
08:24 Tedd1 joined
moritz muixirt: because it uses its own primitives that are tailored for Perl 6 use 08:24
08:24 Moukeddar joined
moritz muixirt: wheras parrot provides some generic primitives, that need to be wrapped to provide the semantics we want 08:24
muixirt and that is independent of the target platform? 08:25
moritz those primitives can easily(-ish) be implemented on other platforms
08:25 dakkar joined 08:26 yinyin left 08:29 am0c joined, daxim joined
muixirt whew: there is nqp, nqp-rx, parrot-nqp 08:30
github.com/perl6/nqp is the current one, right? 08:31
moritz right
muixirt «whereas we expect NQP to eventually run on other virtual machine backends» Anyone with a rough estimate when this happens? 08:36
mberends muixirt: the CLR (.Net) is likely to land first, because jnthn++ is developing most of that. It will be at least a couple of months. The JVM backend is stalled, a blocker was removed recently but since then no time has been invested in it (tuit shortage). 08:39
most of the work is not tricky, it's mainly laborious slogging through many slightly different cases, lots of thorough cross checking of code sanity, and patient testing. Volunteers are welcome! 08:45
moritz phenny: tell jnthn about gist.github.com/1011914 - my attempt to implement Int.succ, maybe multi dispatch isn't quite that reliable? 08:47
phenny moritz: I'll pass that on when jnthn is around.
08:59 roen left 09:01 orafu left 09:07 sftp left
dalek kudo/nom: 8772963 | moritz++ | src/binder/multidispatch.c:
add newline to error message
09:10
09:11 MayDaniel joined 09:12 [particle]1 joined 09:14 [particle] left 09:21 am0c left
yath hm, reading the perl 6 book: 'if $s ~~ m/ « (\w+) \W+ $0 » /' -- what is the meaning of the «»s there? 09:22
moritz word boundaries 09:26
are they not explained there? 09:27
yath ah, some paragraphs below. thanks
(i'm looking at 2011.01.a4.pdf ftm, maybe that has changed :) 09:28
moritz well, that's the mode of the book: start with a working example, and then build up the knowledge to understand it
yath yeah, wasn't meant as an offense :)
moritz hopes he didn't sound offended 09:29
yath but still one silly question... 09:31
if $/ is an array, why doesn't it have a @ sigil?
moritz it's not just an array 09:32
it's a scalar, and array and a hash
yath ah
okay :) 09:33
09:36 timbunce joined 09:37 amkrankruleuen left 09:38 amkrankruleuen joined 09:39 MayDaniel left 09:43 icwiener joined 10:06 jfried joined 10:07 jfried left 10:13 woosley left 10:26 tokuhirom left 10:30 jfried joined 10:31 noganex_ left 10:32 noganex joined 10:35 JimmyZ joined
JimmyZ good ealry evening, #perl6 10:38
*early
10:42 jfried left 10:56 PhatEddy joined
jnthn moritz: gist.github.com/1011914 contains the error; where is the succ implementation? 10:58
phenny jnthn: 08:47Z <moritz> tell jnthn about gist.github.com/1011914 - my attempt to implement Int.succ, maybe multi dispatch isn't quite that reliable?
11:04 pernatiy left 11:09 nymacro left 11:11 mtk left 11:15 jfried joined 11:19 amkrankruleuen left 11:20 mtk joined
moritz jnthn: scroll down 11:21
11:22 woosley joined
jnthn moritz: ooh, sorry :) 11:24
moritz: I thought succ was parameterless?
oh
ENOTENOUGHCOLON :)
+ multi method succ(Int:D) { self + 1 }
+ multi method succ(Int:U) { 1 }
Those aren't declaring the invocant type, they're declaring parameters :)
moritz oh
thanks
jnthn need succ(Int:D:)
phew, my multi-dispatcher isn't so busted :) 11:25
11:25 amkrankruleuen joined
moritz do you think the approach is sane? 11:25
for getting my Int $x; $x++ working, that is 11:26
perl6: my Str $x; $x++; say $x
p6eval pugs: OUTPUT«1␤»
..niecza v6-79-g39dde58: OUTPUT«WTF␤»
..rakudo 484a25: OUTPUT«Type check failed for assignment␤ Container type: Str␤ Got: Int␤ in '&infix:<=>' at line 1␤ in main program body at line 7674:CORE.setting␤»
colomon :D and :U work in nom?
jnthn colomon: yes
moritz sorear++
jnthn moritz: It seems sane.
moritz perl6: my Int $x; $x++; say $x
jnthn lol...niecza win :) 11:27
p6eval pugs, rakudo 484a25, niecza v6-79-g39dde58: OUTPUT«1␤»
colomon ha!
jnthn moritz: I guess it'll get things right for the auto-viv.
PhatEddy rakudo: class A {has @.a; has @.b := @.a}
p6eval rakudo 484a25: OUTPUT«Null PMC access in find_method('a')␤ in main program body at line 2:/tmp/ccU71I3yRk␤» 11:28
PhatEddy Was trying to rename a deprecated attribute when hit this.
jnthn PhatEddy: Don't think you can use binding there.
PhatEddy: nom probably already gives a better error. 11:29
dalek kudo/nom: fa5da99 | moritz++ | src/CORE.setting/Int.pm:
implement Int.succ, jnthn++
11:30
moritz perl6: say ''.succ
p6eval pugs: OUTPUT«*** No such method in class Str: "&succ"␤ at /tmp/GmvYQs2_pY line 1, column 5 - line 2, column 1␤»
..niecza v6-79-g39dde58: OUTPUT«WTF␤»
..rakudo 484a25: OUTPUT«␤»
11:32 dukeleto left, dukeleto joined 11:33 PerlJam joined 11:35 Moukeddar left
dalek kudo/nom: 25cd9f7 | moritz++ | src/CORE.setting/Num.pm:
implement Num.succ
11:35
11:37 woosley left 11:38 domidumont left
jnthn github.com/rakudo/rakudo/commit/25cd9f7f4b 11:38
oops
PhatEddy Not allowing binding there makes some sense to me and can use accessor method as workaround. Thx. 11:39
11:39 kboga joined
jnthn PhatEddy: You can use = 11:39
PhatEddy: But it's not really assignment 11:40
The thing on the right gets turned into an anonymous method.
That gets called for you at build time
moritz just change it everywhere in the source. We're still in early-ish development and are allowed to break stuff :-)
PhatEddy rakudo: class A {has @.a is rw = (12, 13); has @.b = @.a }; my $a = A.new; $a.b.push(20); say $a.a 11:43
p6eval rakudo 484a25: OUTPUT«1213␤»
PhatEddy jnthn: is that what you meant ?
11:43 domidumont joined 11:52 satyavvd left
jnthn PhatEddy: Yeah, but I see now that you really want to bind them. 11:56
jnthn gets back to $dayjob...will be around again later :) 11:57
12:01 molaf joined 12:05 wknight8111 joined 12:31 LordBrain left 12:33 Mowah left 12:35 satyavvd joined 12:38 satyavvd_ joined 12:39 satyavvd left 12:42 smash joined
smash hello everyone 12:42
moritz \o smash 12:43
12:52 satyavvd joined, satyavvd_ left 12:53 satyavvd left 12:54 jaldhar left 12:56 jaldhar joined 12:58 PZt joined 13:05 icwiener left 13:08 icwiener joined, pernatiy joined 13:13 [particle]1 is now known as [particle] 13:19 PhatEddy left
dalek kudo/nom: 6c01923 | moritz++ | src/CORE.setting/Cool.pm:
implement .index and .rindex methods

The default values seem to not work yet, but I trust that jnthn++ will fix that in time
13:37
13:48 hercynium joined, Ali_h_ joined 13:52 Ali_h left 13:55 sftp joined
colomon jnthn: nom build still fails for me, btw 14:00
14:04 noganex left
mberends colomon: it also failed for me, but if you 'cd nqp' and get that as far as 'make install' to work, you can cd back put to nom and try building that with --parrot-config=nqp/install/bin/parrot_config 14:08
colomon mberends: okay, I'm trying to build nqp now... 14:10
mberends hope it works, it did for me (on Debian)
moritz --gen-nqp works fine for me on debian without the need to do anything else 14:13
mberends: what's your failure mode?
14:13 Ali_h_ is now known as Ali_h, noganex joined 14:15 MayDaniel joined, woosley joined, Mowah joined 14:18 perplexa joined 14:21 wtw left
colomon nqp build of parrot fails for me with the PCRE problem, despite using --gen-parrot-option=--without-pcre to configure nqp. 14:28
moritz is anybody in parrot lang working on the pcre problem? 14:30
14:32 kboga left
moritz s/lang/land/ 14:32
mberends moritz: it was about a week ago, I'll make a fresh clone and see how it behaves. Maybe later, though, because 14:36
mberends --> amsterdam.pm.org
moritz colomon: nqp's Configure.pl doesn't understand --gen-parrot-option 14:37
colomon moritz: Is there an alternative? 14:38
14:38 donri joined
moritz colomon: I think you need to call rakudo's configure as perl Configure.pl --gen-parrot --gen-parrot-option=--without-pcre --gen-nqp 14:39
colomon: because currently rakudo builds parrot, and then tells nqp to use that parrot
colomon moritz: the whole point here is that when I do that, nqp build fails (in a different way)
moritz colomon: what's the failure mode? 14:40
colomon moritz: gist.github.com/1010296 14:41
14:44 mberends left 14:46 mkramer left
jdv79 jnthn: thanks for the blog update! 14:48
moritz colomon: big wtf. What's the output of git describe --tags in your copy of nom?
14:48 mtk left
moritz in my copy, build/gen_nqp.pl has these lines: 14:48
print "\nConfiguring NQP ...\n";
my @config_command = ($^X, 'Configure.pl', "--with-parrot=../parrot_install/bin/parrot");
print "@config_command\n"; 14:49
I don't see how that could possibly lead to running Configure.pl with --parrot-config=...
my only explanation is a stale checkout 14:50
dalek kudo/nom: 4509709 | moritz++ | build/gen_nqp.pl:
[build] fix typo in gen_nqp.pl
14:52 koban left 14:53 mtk joined 14:55 am0c joined 15:00 leprevost joined
dalek kudo/nom: 151d38f | moritz++ | build/gen_nqp.pl:
[build] simplify gen_nqp.pl
15:00
15:06 Lorn joined
colomon moritz: Yesterday I got that error repeatedly, with fresh checkouts each time. 15:25
15:30 ymasory joined 15:34 pyrimidine is now known as notscott 15:35 kboga joined 15:36 notscott is now known as pyrimidine 15:37 bs338 joined 15:38 Mowah left 15:41 muixirt left
moritz colomon: so what's the output of git describe ? 15:48
colomon: and could you please pull and try again?
pmichaud good morning, #perl6 15:50
seems like Int.succ(Int:U:) should be inherited from Any. 15:54
rakudo: say "65".chr 15:56
p6eval rakudo 484a25: OUTPUT«A␤»
pmichaud rakudo: say Any.succ; 15:58
p6eval rakudo 484a25: OUTPUT«Method 'succ' not found for invocant of class ''␤ in main program body at line 22:/tmp/xcBmPlxZ69␤»
pmichaud hmmmmm
16:00 woosley left 16:02 thou joined
colomon moritz: what build would you like me to try? nom with --gen-parrot --gen-parrot-option=--without-pcre --gen-nqp? 16:02
pmichaud colomon: can't get nom to build?
colomon pmichaud: nope 16:03
pmichaud what's the failure symptoms?
colomon hasn't built for me since yesterday
pmichaud I've written a new build system for nom... but I'm not happy with it yet so I'm thinking of starting over on it 16:04
colomon pmichaud: it seems like what I'm seeing may be a conflict between the --without-pcre option and nqp-nom, but nqp's build dies with a weird error message: gist.github.com/1010296 16:05
16:05 kolibrie left, kolibrie joined, am0c left
pmichaud it's no longer --parrot-config 16:06
it's now --with-parrot
(right there in the error message :)
16:06 pernatiy left
pmichaud Rakudo's Configure.pl is calling NQP's Configure.pl with the wrong option. 16:07
colomon ah
16:08 domidumont left 16:22 slavik joined 16:23 jfried left 16:24 mj41 left
TimToady seems to me that, for the foreseeable future, the default should be to build our own parrot, esp if there isn't a recent one elsewhere on the system 16:28
phenny TimToady: 06 Jun 16:56Z <sorear> tell TimToady S12-enum/basic.t:89 is dubious. Shouldn't that be a call to the enum (as a coercer?)
pmichaud that's essentially what we do
the challenge is in keeping the revisions straight
TimToady is just tired of typing --gen-parrot
pmichaud I can make --gen-parrot the default if no --with-parrot is supplied. 16:29
(and no parrot is found)
TimToady no recent parrot, maybe
pmichaud what exactly do we mean by "no recent parrot"?
in some sense, though, I'm not a fan of automatically downloading something without having an explicit request
TimToady that's the way the future is going, though 16:30
pmichaud i.e., someone might not be happy if "perl Configure.pl" started downloading a parrot repo that he/she didn't want.
there's always the config.status file
also, I can have Configure.pl assume "--gen-parrot" if there's already a parrot repo locally
TimToady "Now downloading...interrupt if that's not what you want"
pmichaud so then you just need --gen-parrot on the first invocation
in the new build system, it looks like one will be able to do just --gen-parrot, since that implies --gen-nqp 16:31
ggoebel just wanted to delurk long enough to express admiration for everyone's work and progress in rakudo, niecza, STD, etc. 16:32
TimToady I also keep wondering if more of this should be driven from the make and less from the configure
pmichaud ggoebel: thanks!
flussence_ +1
pmichaud the revision checks are hard to drive from the make
16:32 Mowah joined
pmichaud I did think about that this morning, though. 16:32
finding the correct executables is also hard from within make... it really wants a step above that. 16:33
the new Configure.pl is greatly simplified over what nom has now, yes.
(lots of refactoring)
TimToady yes, I've noticed the need to prefind executables once or twice in the past :) 16:34
pmichaud :-)
16:34 slavik left
TimToady maybe someday the whole thing can be a Perl 6 program compiled down to machine code so you just download a single executable to bootstrap installation 16:36
pmichaud that will be nice :)
but when that day comes, we almost certainly won't be using Parrot. :) 16:37
sjn has started scheming in evil ways again
TimToady using Scheme to bootstrap is also problematic :P 16:38
sjn anyone here other than masak and jnthn that plan on going to NPW in Malmö?
pmichaud not I, alas.
sjn TimToady: no worries, my schemems are much more problematic than that. :)
schemes*
TimToady schemems ought to mean something 16:39
pmichaud checks airfares
sjn intends to make trouble with the #perl6book
if all goes well (no guarantees, I have no clue in what I'm doing anyway), expect lots of stupid questions about syntax and how to teach Perl 6 :) 16:40
pmichaud wow, only $844 roundtrip!
sjn pmichaud: is that cheap? o_O 16:41
16:42 xinming left
pmichaud it's not the cheapest fair I've seen, but it's not expensive considering the departure date is less than two weeks away 16:42
*fare
two weeks ago I had to book a fare for my father to travel from Corpus Christi to Nebraska -- it was $840 round trip. 16:43
16:43 xinming joined
pmichaud (that's definitely expensive for the distance being flown.) 16:44
16:44 daxim left
sjn mm 16:44
16:47 JimmyZ left, slavik joined 17:00 birdwindupbird left 17:01 Chillance joined 17:06 dakkar left 17:09 mj41 joined, slavik left, Mowah left 17:11 Moukeddar joined 17:13 kaare_ left
jnthn evening, #perl6 17:13
sjn o/ 17:14
Moukeddar \o
jnthn sjn! :) 17:16
sjn: NPW is...nearish :)
17:16 birdwindupbird joined
sjn jnthn: I KNOW! 17:16
jnthn is starting to get scared :) 17:17
jnthn never organized a workshop before ;)]
Thankfully I have masak++ to help \o/
And now we pretty much have a schedule. :)
sjn important bits: coffee in the morning, some way to get lunch, time to chat and one or two social events. :) 17:18
jnthn :) 17:19
17:20 fhelmberger_ joined 17:21 fhelmberger left 17:28 noganex_ joined 17:32 noganex left 17:44 Moukeddar_ joined 17:46 Moukeddar left
jnthn #phasers in 58? 17:52
*68
colomon jnthn++
jnthn gets some dinner before #phasers. bbiab. 18:00
18:01 Moukeddar_ left 18:06 fhelmberger_ left
sorear good * #perl6 18:07
18:08 masak joined
masak hi, #perl6! 18:08
phenny masak: 06 Jun 22:15Z <sorear> tell masak Your blog is spamming planet perl6 with duplicated posts
18:10 tomzie joined
masak sorear: I had a VM crash and had to resuscitate my last few posts. I didn't expect RSS fallout from it, but I'm not surprised in retrospect. :/ will try to think about it next time. 18:11
18:12 dual joined 18:13 envi_laptop left
masak grrr, I hate it when people's feeds go crazy. and now I'm having my own feed do the same thing. sorry about that, everyone. :( 18:15
18:15 pernatiy joined
masak jnthn++ # 6guts.wordpress.com/2011/06/06/the-...-marathon/ 18:16
18:17 Moukeddar joined
masak Moukeddar: hi! did you ever get Rakudo up and running? 18:19
18:20 mberends joined
Moukeddar masak, yes , i downloaded it in the cafe , but i'll install it tonight in my home machine 18:20
RAPL :)
masak Moukeddar: cool. 18:21
Moukeddar i was reading "Coder to Developer" and he stated that the one should learn a new language every year 18:22
to try different paradigms and mind ets
sets*
18:22 lumi joined
Moukeddar to avoid the bulb paradox :) 18:23
masak I fully support that goal.
Moukeddar i sure feel pretty confident about getting involved in projects :) 18:24
masak niecza: sub foo($p) { state $x = $p; say $x }; foo(5); foo(42); foo("OH HAI") 18:27
p6eval niecza v6-79-g39dde58: OUTPUT«5␤5␤5␤»
masak \o/
sorear++
18:27 Moukeddar_ joined
masak niecza: sub foo($p) { state $x = $p; say $x }; foo(5); my &bar = &foo.clone; bar(42) 18:27
p6eval niecza v6-79-g39dde58: OUTPUT«5␤Unhandled exception: Unable to resolve method clone in class Sub␤ at /tmp/um31oHNOCG line 1 (MAIN mainline @ 2) ␤ at /home/p6eval/niecza/lib/CORE.setting line 1651 (CORE C753_ANON @ 2) ␤ at /home/p6eval/niecza/lib/CORE.setting line 1652 (CORE module-CORE @ 57) ␤
..at /home/p6ev…
masak oh :) 18:28
Moukeddar_ and many thanks go to you masak
masak glad to help :)
Moukeddar_: you can pay it forward by finding 10 new bugs in Rakudo :P 18:29
(if you want)
Moukeddar_ if i'm qualified :)
masak, it isn't hard to move from perl5 to perl6 , right? 18:30
18:31 Moukeddar left
masak Moukeddar_: it wasn't for me. but maybe that's because I didn't really know Perl 5 that well when I started with Perl 6 :) 18:31
Moukeddar_ you started directly with perl6? 18:32
masak no, it was like this.
I learned about Perl from a friend around 2003-2004. 18:33
and there was lots of info on the web about Perl 6, but there was no implementation to try.
(turns out there was one on Parrot, but I didn't know that)
so I waited, and used Perl 5 a bit. and then Pugs happened.
18:35 noganex_ left 18:36 noganex joined
Moukeddar_ that was quick 18:37
the thing is i've found a nice perl5 training
masak Perl 5 will not disappear anytime soon. it's like English -- you can never learn too much of it :) 18:38
Su-Shee it's also very easy to move from perl 5 to perl 6 if you knew/know perl 5.
Moukeddar_ alright then
masak there will be shibboleths, of course. but we're pretty good at steering people right here on the channel.
Moukeddar_ btw Padre editor is amazing and free 18:39
masak \o/
Moukeddar_ is ther anything like IronPerl ?
Perl on the CLR :p
masak does nqp count? :) 18:40
18:40 birdwindupbird left
masak .oO( not quite... ) 18:40
Moukeddar_ idk
what is it?
masak it's a minimal-ish implementation of Perl 6 usable for implementing the rest of Perl 6. :) 18:41
it doesn't really run on the CLR yet, but I bet it will, soon.
and then, maybe, Rakudo too.
Moukeddar_ interesting :) 18:42
masak yes -- I'm looking forward to the rest of 2011 :) 18:43
if we manage to get Rakudo running on the JVM, too, maybe we could put Perl 6 on the Android platform ;)
colomon masak: there's some sort of Mono for Android already. I haven't researched it very far yet, though.... 18:44
Moukeddar_ it's called mondroid or something
not free
perl on the JVM , it won't be very hard 18:45
Su-Shee mono for android not free? that doesn't really make sense..
Moukeddar_ yep , check it out
not free
Util masak: Doesn't Niecza-6 count as Perl 6 on CLR? 18:46
Su-Shee tsk. unbelievable. 18:47
Util Moukeddar_: Did you settle on one of those videos you were asking about, or did you find some other form of training?
Moukeddar_ i did settle on one 18:48
18:48 noganex left
Moukeddar_ i've found monodroid in some russian forum 18:49
masak Util: oh, of course! silly me.
Moukeddar_ those guys took care of it
18:50 noganex joined, sftp left 18:58 Moukeddar_ left 19:00 Mowah joined 19:06 jaldhar left 19:10 lumi left
colomon Moukeddar's right, Mono for Android is a paid service. Not sure how I missed that in the past, and I'd swear I've heard of a free competitor, but I can't find it today. 19:11
Only $99 for a student, though, might be worth it just to be able to say you're running p6 on your phone!
19:11 lumi joined
colomon actually, sorear++ is a student, no? ;) 19:13
19:17 mj41 left 19:20 MayDaniel left
colomon so wishes he were writing this test code in Perl 6 instead of C++... 19:27
on the bright side, it appears even my first stupid test found a bug in my code. 19:30
masak been there, done that ;)
19:30 alias298 joined, alias298 left
masak sometimes, even *thinking* about testing brings out bugs in the code. 19:30
19:33 timbunce left 19:34 timbunce joined 19:39 bluescreen10 joined
colomon bug in question was a rather stupid infinite loop, so it would have showed up very quickly when I tried to actually use the code.... :) 19:40
19:41 alejm joined 19:46 alejm left 19:53 orphu joined 20:03 Mowah left 20:06 molaf left 20:07 rhr left 20:11 lumi left 20:12 lumi joined 20:14 ymasory left 20:16 mberends left
masak rakudo: say "oh", " la" x (2..5).roll, "!" 20:22
p6eval rakudo 484a25: OUTPUT«oh la la!␤»
masak \o/
colomon rakudo: say "oh", " la" x (2..5).roll, "!" 20:26
p6eval rakudo 484a25: OUTPUT«oh la la!␤»
tadzik it's still this ranom?
:)
szabgab++ # blag toast 20:27
I didn't see the screencast, but wouldn't a PSGI example be nice? Inheriting Server::Simple is quite a lot of work 20:28
20:29 wknight8111 left 20:32 MayDaniel joined 20:34 timbunce_ joined 20:35 alester joined 20:36 sftp joined, timbunce left, timbunce_ is now known as timbunce
szabgab tadzik: first I need to understand the whole PSGI thingy :) 20:37
tadzik :) 20:41
szabgab: look how my minidancer works: github.com/tadzik/Bailador/blob/ma...dor.pm#L24 20:42
20:57 lichtkind joined 20:58 MayDaniel left 21:02 lumi left 21:03 lumi joined 21:06 cooper left, cooper joined
masak std: my $foo; my $bar; $foo . $bar 21:08
p6eval std c843201: OUTPUT«===SORRY!===␤Unsupported use of . to concatenate strings; in Perl 6 please use ~ at /tmp/F0lAyApPr7 line 1:␤------> my $foo; my $bar; $foo . ⏏$bar␤Parse failed␤FAILED 00:01 114m␤»
masak rakudo: my $foo; my $bar; $foo . $bar; say "alive"
p6eval rakudo 484a25: OUTPUT«===SORRY!===␤Confused at line 22, near "$foo . $ba"␤»
masak LTA :)
jnthn Patchies welcome :) 21:09
lichtkind cheers pirates
masak submits rakudobuggie :)
lichtkind: ahoj, mate! 21:10
jnthn ahoj, lichtkind :) 21:11
lichtkind o/ 21:12
sorear o/ jnthn, masak
jnthn hi sorear
sorear jnthn: what kind of thing is MyClass.CREATE supposed to return? 21:13
an object with (in Rakudo terms) all attributes set to NULLPMC? 21:14
jnthn sorear: an object
sorear: They won't necesarily be null
lichtkind glad to see you all guys
jnthn sorear: But they won't necesarily be meaningful
sorear: Any default attribute closures certainly won't have been run.
lichtkind jnthn: you remember what we talked about in pisa?
jnthn sorear: It's repr-dependent really 21:15
lichtkind: Erm...I'm sure we talked about more than one thing in Pisa. :)
tadzik lager, ale... 21:16
jnthn tadzik: Yeah, that's probably why I can't remember the particular thing lichtkind has in mind :P
lichtkind hahah
jnthn sorear: method CREATE($repr = 'P6opaque') { <primitive to create an object with $repr representation> } 21:17
sorear: I'd rather that we didn't make too many promises about the state of that object, besides "you'd better bless it before you try to use it". 21:18
(which calls BUILDALL and so forth) 21:19
masak \o sorear 21:20
sorear jnthn: I sometimes wonder if bless is actually supposed to work in any way like the Perl 5 primitive 21:23
jnthn sorear: I...er... 21:24
sorear well, CREATE already creates a typed object, no?
jnthn sorear: Don't really see its place in Perl 6 any more besides calling CREATE and then calling BUILDALL
sorear Foo.CREATE ~~ Foo ?
jnthn sorear: Right
sorear: bless mostly feels like "thingy that calls CREATE if it needs to and then calls BUILDALL"
sorear: We may be able to get rid of it. 21:25
sorear OK
jnthn It feels like a 5ish hangover.
Or we kill CREATE
But hm
sorear worse, it's a 5ish name fossil
jnthn I dunno
I know that currently, new -> bless -> CREATE -> BUILDALL -> BUILD * num_parents is a lot of invocations to create an object. :/
sorear p5's bless does one and only one thing. p6's bless does not do that thing.
jnthn And having bless in there being close to a no-op is something we can't really afford. 21:26
I don't see why .new can't call CREATE and pass the candidate and all the args on to BUILDALL or something.
sorear: I was gonna look at all that stuff (it's top of nommap), but I've adjusted my priorities. 21:28
Since I realized it's hard to do all of that lot with arrays and hashes. ;)
sorear what do arrays and hashes have to do with it?
jnthn sorear: method new(*@whences, *%args) { self.bless(*, |@whences, |%args) } 21:29
OK, we could really pass the capture on I guess... :)
sorear jnthn: do you beleive in speccy whence at all? 21:30
jnthn But at some point you've gotta dig through the hash to pull out the things to initialize.
speccy whence has one big issue
Foo{ ... } is OK
It desugaring to Foo but WHENCE { ... } has gotta be bogus
It implies that you want to store the closure somewhere
But you're mixing into a type object, which gives you...another type object...and type objects can't have state by definition. 21:31
I'm not sure where the closure lives.
Maybe could have a WHENCE slot in the s-table. 21:32
Plenty of other LOUD things end up in there... :)
But that implies WHENCE clones the s-table as well as the type object, which I'm not completely at ease with. 21:33
Though I guess a shallow clone is OK
oh, no, it's not
Not with my current factoring.
oh, actually
hmm...it may be OK
oh heck knows :)
21:33 awoodland joined
jnthn I'll have to think on it more, and my thinker is currently lost in the world of parametric poly. :) 21:34
(Adding a WHENCE slot to ObjectCommonalities is also out...huge memory waste...) 21:36
fwiw, we stored WHENCE in a Parrot property. But I consider that cheating :) 21:37
21:41 bluescreen10 left
sorear jnthn: niecza stores WHENCE in a slot on the variable object 21:43
jnthn sorear: "variable object"? 21:44
P6any?
sorear no
jnthn Or your scalar-ish thing?
sorear I think you call them containers now?
yeah, right, Scalar
jnthn ah, OK
sorear sorry
jnthn hmmmm
21:44 frobnitz joined
jnthn It's OK, we're a bit off name standardization on those yet :) 21:45
21:45 Psyche^ joined
jnthn sorear: In LolCat{ caption => 'omgwtfperl6' } where's the scalar container? Do you create one just to have a place to but the WHENCE? 21:46
*put
sorear jnthn: yes
jnthn sorear: OK.
21:46 Patterner left, Psyche^ is now known as Patterner
sorear in niecza, Perl 6 code *never* sees a non-containerized scalar value 21:46
jnthn Ah, OK
I think the notion of "something that wraps around the type object" may be helpful 21:47
sorear this is one of the very first design decisions I made; it may be reevaluated at some point
jnthn Whether it's factored as the scalar or as some other thinguymmy
sorear "Hmm, if I have a Scalar object, how will I make .VAR work?"
"Scalar->Scalar->X, then. FETCH will only take off one layer of Scalar" 21:48
21:48 timbunce left
jnthn heh, yeah, in Rakudo we're at a single-level unwrap model now 21:48
I'd figured I could do .VAR just like that :)
masak blog post! strangelyconsistent.org/blog/june-7...rithmetics 21:54
jnthn arith met who?
masak I never got the thing about not liking maths. for me, programming and maths were two interests that fueled each other. 21:55
TimToady ss/s is// 21:58
masak thanks.
fixing.
sorear for me, being the only one who liked maths was something that fueled my "having little to no respect for the rest of humanity" phase 21:59
I still don't really get it
masak sorear: they wouldn't tell me how to multiply large numbers, so I had to invent a method... :) 22:00
wasn't perfect, but I got by.
Eevee masak: I think I had that same insight
TimToady "one of use miscounted" 22:02
masak thanks. fixing. :)
TimToady++ # reporting typos 22:03
TimToady I have OCD. (or was tht OCR...)
*that
masak :P 22:04
szabgab I guess the meaning of \n is platform dependent in perl 6, right? Is there asomething that will always give \x0D\x0A ?
sorear jnthn: in niecza, WHENCE closures take 1 argument, which is the container, they don't return a value, and they exist to do something to make the container real
szabgab: \x0D\x0A
will work
\cM\cJ might be clearer?
szabgab sorear: both are ugly 22:05
sorear jnthn: like Any{ %hash{$k} := $_ } # although this exact syntax is NYI
szabgab as I just got a comment to the blog post I had
that contained \x0D\x0A\x0D\x0A
masak szabgab: that's perfectly legible to me, and, I believe, to most people who have done network programming. 22:06
sorear jnthn: there is an operator which takes 1. the initial value, 2. the type constraint, 3. the WHENCE closure, and returns a new rw Scalar that autovivifies when written to or bound
szabgab and as I understand - though I might be mistaken - that this is what is required on the "network'
sorear szabgab: \015\012
masak szabgab: but if that's not enough, there's always descriptive variable names :)
sorear wait
needs to be \o in Perl6, doesn'tit
TimToady perl6: say "\c[13,10]".perl 22:07
sorear jnthn: I am 1. not sure how to attach three mandatory pieces of information to a two-arg syntax 2. not sure what new() should be doing with this
p6eval pugs, rakudo 484a25: OUTPUT«"\r\n"␤»
..niecza v6-79-g39dde58: OUTPUT«===SORRY!===␤␤Action method radint not yet implemented at /tmp/K3H6pPYViN line 1:␤------> say "\c[13⏏,10]".perl␤␤Action method charname not yet implemented at /tmp/K3H6pPYViN line 1:␤------> say
.."\c[13⏏,10]".perl␤␤Action metho…
szabgab masak: it was clear to me as well but after seeing the comment from someone I think I can understand the complaint
sorear ...radint? really?
masak szabgab: sure. me too. 22:08
szabgab TimToady: would that be the same if run it on Windows?
masak szabgab: there's always the long unicode descriptions of the characters :)
szabgab it is 1 am , I am too tired to argue :)
22:11 hercynium left
lichtkind szabgab: ping 22:11
szabgab lichtkind: I am still here, but not for long
sorear TimToady: ping 22:14
szabgab 1/wg 12 22:15
22:19 awoodland left 22:24 kboga left
masak 'night, pretty pastel butterflies. 22:28
22:28 masak left
sorear TimToady: unping 22:30
szabgab: spiffy. I need to get IO::Socket::INET working on niecza, I see
22:34 hudnix left 22:36 leprevost left
sorear jnthn? 22:40
jnthn sorear: I'm about, but need to go sleep soon...early start. :( 22:42
sorear jnthn: did you read any of what I wrote above about how SomeClass.new(Foo{bar}) seems to be patent nonsense? 22:43
jnthn sorear: Yes, I read it.
sorear: Sorry, I shoulda more explicitly said "I need to look at it more to know what to think" 22:44
sorear: I have made something like that syntax work before
But maybe not in the general case.
sorear I would also like to know how you plan to do $*CALLER::FOO 22:45
jnthn sorear: Well, $*CALLER::FOO is not so problematic.
sorear I haven't found a factoring of packaged variables that allows that sort of thing
jnthn sorear: I'm more bothered by permutations.
$*CALLER::OUTER::CALLER::OUTER::CALLER::FOO # omgz...
sorear niecza supports psueodopackages, as long as they are packages
$GLOBAL::x, $OUR::x, $PROCESS::x, are all fine 22:46
jnthn Well, they're not all that pseudo :)
Well, I guess they are
sorear once you start getting into things like MY::, I don't have an answer
jnthn :)
Well, if a lexpad and a stash present the same hashish interface, I guess it could "just work". 22:47
sorear No
because lexpads are cloned
$OUR::x looks up a hash slot at compile time
$CALLER::x... can't 22:48
jnthn Is $OUR::x spec'd as looking it up at compile time, or is that an optimization?
$GLOBAL::x probably has to be runtime at least 22:49
sorear it's an important p5ism that I don't have a good reason to lose
lichtkind good night 22:50
22:51 lumi left 22:52 lumi joined, lichtkind left
jnthn urgh, tiredness 22:54
sleep &
22:55 alester left, cooper is now known as k, k is now known as cooper 23:04 whiteknight joined 23:08 rhr joined 23:22 thou left 23:34 dual_ joined 23:36 dual left, dual_ is now known as dual 23:38 kid51 joined 23:41 dual left 23:42 dual joined 23:49 icwiener left