»ö« 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:02 havenn left 00:12 gfldex left 00:14 gfldex joined 00:22 tokuhirom left 00:24 tokuhirom joined 00:27 thou left 00:31 sisar joined 00:48 benabik joined 01:06 isBEKaml left 01:10 aindilis left 01:11 aindilis joined 01:12 prammer joined 01:15 scott__ joined 01:41 leprevost_ joined 01:42 leprevost left 01:46 alc joined 02:03 whiteknight left 02:09 alc left
sorear n: say "\c[PILE OF POO]" 02:14
p6eval niecza v15-4-g1f35f89: OUTPUT«💩␤»
sorear n: printf '%x', ord "\c[PILE OF POO]"
p6eval niecza v15-4-g1f35f89: OUTPUT«1»
colomon ?
sorear yeah, that is weird
benabik n: printf '%x', ord '»' 02:15
sorear sjn was trying to use .u for that earlier...
p6eval niecza v15-4-g1f35f89: OUTPUT«1»
sorear n: printf '%x', 55
colomon n: say ord 'A'
p6eval niecza v15-4-g1f35f89: OUTPUT«1»
niecza v15-4-g1f35f89: OUTPUT«65␤»
colomon sorry
printf bug, then?
02:17 leprevost_ left, leprevost joined
sorear I guess 02:20
colomon n: say sprintf('%x', 1000) 02:21
p6eval niecza v15-4-g1f35f89: OUTPUT«3e8␤»
colomon n: say sprintf('%x', 10)
p6eval niecza v15-4-g1f35f89: OUTPUT«a␤»
02:22 tokuhirom left, tokuhirom joined
colomon n: printf('%x', 10) 02:22
p6eval niecza v15-4-g1f35f89: OUTPUT«1»
02:23 alc joined 02:24 wolfman2000 joined
colomon n: print sprintf('%x', 10) 02:25
p6eval niecza v15-4-g1f35f89: OUTPUT«a»
colomon n: print sprintf '%x', 10
p6eval niecza v15-4-g1f35f89: OUTPUT«a»
02:27 tokuhirom left
sorear What's the difference between Seq, List, and Array, and why do we need more than one? 02:27
colomon As I understood it originally, List was immutable. 02:30
no idea why there's a Seq
au ...and is a role, apparently 02:31
as in Seq does Iterable does List (based on a cursory re-reading of S02)
er, sorry, Iterator does List. Seq does Iterable.
so yeah, Seq and Array mostly differ by mutability of elements. 02:32
sorear Niecza has gotten on fine-ish without a Seq at all 02:33
colomon and Seq is what I thought List was.
au <aol/>
sorear the important difference is $listy.push(5); $listy[*-1]++ 02:34
02:34 sisar left
sorear if it passes, niecza calls it Array, otherwise niecza calls it List 02:34
s/<<is>>/in niecza is/
colomon sorear: au++ is right, I think -- what niecza calls List, S02 calls Seq 02:35
List is a role
sorear I've decided that laziness and multidimensionality are incompatible, and I want to add a new Matrix(name?) class for multi-dimensional or otherwise shapeful, non-lazy objects 02:36
au the relevant change for Seq assuming what List was is apparently github.com/perl6/specs/commit/736a...9a2a42c53a 02:37
(2009-01-23)
colomon I wonder if Seq versus List is something pmichaud was/is intending to address with his iterator work. 02:38
au Matrix is like a nice name, esp if Array::Shaped sounds too verbose 02:39
colomon +1
sorear ShapedArray was my first thought, but then I realized it sounded too much like a subtype of Array 02:40
I don't think I've seen PairSeq before...
colomon huh. why would PairSeq merit a name, instead of just being a Seq of Pairs? 02:42
au because Seq of Pairs would not do Associative 02:44
but PairSeq would ?
03:09 orafu left, orafu joined
[Coke] perl6_ops.c: In function ‘Parrot_perl6_invoke_catchhandler_p_pc’: 03:10
perl6_ops.c:7224:9: error: too many arguments to function ‘rewind_to_ctx’
perl6_ops.c:132:13: note: declared here
(that's why the spec run failed)
(function: run_leave_phasers)
phenny: tell jnthn, moritz to look in the log just before here. 03:11
phenny [Coke]: I'll pass that on when jnthn is around.
[Coke] (so, given that, won't bother rerunning today.) 03:18
03:25 leprevost left, shinobicl___ joined 03:35 envi_ left 03:40 marmalade left
shinobicl___ hi 03:44
what's wrong with this code?
nom: class D is Date { has Int $.x is rw; method new(:$year!, :$month!, :$day!, :$x!) { say "values: $year, $month, $day, $x"; return callwith(year=>$year, month=>$month, day=>$day).bless(*, $x); }; method perl { say "D.new($.year, $.month, $.day, $.x)"; }; }; my $var = D.new(year=>2012, month=>12, day=>2, x=>99); say $var.perl;
p6eval rakudo 3c5838: OUTPUT«values: 2012, 12, 2, 99␤use of uninitialized value of type Int in string context␤use of uninitialized value of type Int in string context␤D.new(, 1, 1, )␤True␤»
03:47 alc left
sorear shinobicl___: Is anything wrong with it? 03:52
japhb shinobicl___, you seem to be trying to use two different conceptual ways to write an explicit method new() 03:53
Did you mean:
nom: class D is Date { has Int $.x is rw; method new(:$year!, :$month!, :$day!, :$x!) { say "values: $year, $month, $day, $x"; self.bless(*, :$year, :$month, :$day, :$x); }; method perl { say "D.new($.year, $.month, $.day, $.x)"; }; }; my $var = D.new(year=>2012, month=>12, day=>2, x=>99); say $var.perl;
p6eval rakudo 3c5838: OUTPUT«values: 2012, 12, 2, 99␤D.new(2012, 12, 2, 99)␤True␤»
japhb ?
shinobicl___ i tried to "glue" x to the value returned from callwith 03:55
nom: class D is Date { has Int $.x is rw; method new(:$year!, :$month!, :$day!, :$x!) { say "values: $year, $month, $day, $x"; self.bless(*, :$year, :$month, :$day, :$x); }; method perl { say "D.new($.year, $.month, $.day, $.x)"; }; }; my $var = D.new(year=>2012, month=>12, day=>2, x=>99); say $var.perl; say $var.daycount; my $var2 = Date.new(year=>2012, month=>12, day=>2); say $var2.daycount; 03:57
p6eval rakudo 3c5838: OUTPUT«values: 2012, 12, 2, 99␤D.new(2012, 12, 2, 99)␤True␤Int()␤56263␤»
shinobicl___ the result of $var.daycount is why i think i need to use callwith to return a Date object. To that i want to attach a new member. 04:03
[Coke] ISTR delegation working better here. 04:09
japhb Ah, I see the problem.
[Coke] perl6 gives you a nice way to say "I have a Date member, please delegate all date calls to it"
japhb class Date in src/core/Temporal.pm has its own explicit method new(). 04:10
sorear (which niecza STILL doesn't implement, jeez)
shinobicl___ Several new methods, IIRC 04:11
new() i meant
[Coke] : are you saying that i should add a Date member to D instead of deriving from Date? 04:13
skids [Coke]: While "handles" is a solution, the "is T" scenario with value types really needs to be elaborated on specwise.
shinobicl___ maybe i'm just using "bless" in the wrong way? 04:27
nom: class D is Date { has Int $.x is rw; method new(:$year!, :$month!, :$day!, :$x!) { say "values: $year, $month, $day, $x"; return callwith(year=>$year, month=>$month, day=>$day).bless(*, $x); }; method perl { say "D.new($.year, $.month, $.day, $.x)"; }; }; my $var = D.new(year=>2012, month=>12, day=>2, x=>99); say $var.perl;
p6eval rakudo 3c5838: OUTPUT«values: 2012, 12, 2, 99␤use of uninitialized value of type Int in string context␤use of uninitialized value of type Int in string context␤D.new(, 1, 1, )␤True␤»
timotimo wouldn't you need to use $.x instead of $x? 04:28
sorry, of course not before you've blessed 04:29
dalek gs.hs: 0285f84 | au++ | Pugs/src/Pugs/Prim.hs:
* WIP: Type methods for Int/Num/Rat from coke++
gs.hs: cb4d7e9 | au++ | Pugs/src/Pugs/Prim.hs:
* Line up return types of Int/Rat/Num and declare op0 fallbacks.
ast: 301db81 | coke++ | fudge:
respect .spec_config
04:30
ast: 93b57c2 | coke++ | S (16 files):
pugs un/fudge
[Coke] benabik: fixed all the spectest failures in pugs that have cropped up. 04:34
benabik Coke++
[Coke] except perhaps:
S17-async/contend.pugs 4 - the race condition strikes
(which didn't fail earlier)
pugs is now passing 7324 tests. 04:35
au++ for fixing my WIP. 04:39
skids nom: class D is Date { has Int $.x is rw; method new(:$year!, :$month!, :$day!, :$x!) { say "values: $year, $month, $day, $x"; self.bless(*, :$year, :$month, :$day, :daycount(self.daycount-from-ymd($year,$month,$day)), :$x); }; method perl { "D.new($.year, $.month, $.day, $.x)"; }; }; my $var = D.new(year=>2012, month=>12, day=>2, x=>99); say $var.perl; say $var.daycount; my $var2 = Date.new(year=>2012, month=>12, day=>2); say $var2.daycou
nt;
p6eval rakudo 3c5838: OUTPUT«values: 2012, 12, 2, 99␤D.new(2012, 12, 2, 99)␤56263␤Method 'daycou' not found for invocant of class 'Date'␤ in block <anon> at /tmp/wanMo9DpZi:1␤␤»
skids grr. 04:40
nom: class D is Date { has Int $.x is rw; method new(:$year!, :$month!, :$day!, :$x!) { say "values: $year, $month, $day, $x"; self.bless(*, :$year, :$month, :$day, :daycount(self.daycount-from-ymd($year,$month,$day)), :$x); }; method perl { "D.new($.year, $.month, $.day, $.x)"; }; }; my $var = D.new(year=>2012, month=>12, day=>2, x=>99); say $var.daycount; my $var2 = Date.new(year=>2012, month=>12, day=>2); say $var2.daycount; 04:41
p6eval rakudo 3c5838: OUTPUT«values: 2012, 12, 2, 99␤56263␤56263␤»
skids shinobicl___: ^^ workaround 04:42
04:42 bonsaikitten is now known as DrEeevil
shinobicl___ yes... a step in the right direction... but the thing is... am i right wanting to do this? i mean... 'blessing' a new member to an object? 04:43
maybe i'm wanting to do something that is not expected to be possible in the first place 04:44
skids I think you are right in feeling you should be able to easily add an attribute to a class, unless the class author has good reasons to want you not to.
Which should not be the case with the Temporal stuff. 04:45
04:45 alc joined
skids This is even more frustrating, BTW, when you are wanting to just make variants of basic types with extra methods. 04:45
Because then you get into the whole "but that's just a box for a value type" thing. 04:46
skids notes that .check-date also needs to be called before .daycount-from-ymd. 04:53
I think, shinobicl___, this would be a very good example for a "best practices" discussion on p6l, looking at where this could/should be fixed on the Temporal.pm end to, as a base class, provide more generic subclassing facilities. 04:58
shinobicl___ so, i can't bless a new value because the way Temporal.pm is written? I didn't see anything in the Date class that could indicate that. 05:00
skids Well, for one, you cannot pass initializers for that attribute through Date.new in order to reuse Date.new's code, because it doesn't have a slurpy, and since it does "things" that means you have to copy "things" to your initializer, which is a violation of DRY. 05:02
shinobicl___ That's why callwith exists, right? So i could use the original new from the Date class 05:04
skids That and other things, yes. But if that new is going to then call your subclass's .bless, it should allow you to pass through extra parameters. 05:06
time for sleep. 05:15
05:20 thou joined 05:30 birdwindupbird joined
shinobicl___ good night, #perl6 05:30
05:30 shinobicl___ left 05:31 wolfman2000 left 05:33 kaleem joined 06:34 NamelessTee joined 07:03 snearch joined 07:04 am0c joined 07:09 snearch left 07:12 skids left 07:18 cognominal_ left 07:19 cognominal joined 07:21 huf left 07:27 wtw joined 07:31 skids joined, _jaldhar left
moritz \o 07:37
last day of German Perl Workshop today 07:38
timotimo hey moritz 07:41
as a german, maybe you can be of better assistance in telling me how to pronounce niecza
tadzik morning.good
being Polish I think I can help you with that
it's like - nyetscha 07:42
timotimo oh, so a little bit like nietzsche?
tadzik not really
the "e" is not like an english "e"
timotimo oh, the beginning is like "niet", which is, dunno, russish for no?
tadzik yes
moritz we pronounce the i and e separately in niecza, but not in nietzsche
tadzik and then cza like in cha-cha-cha
timotimo right. so in german it would be spelled maybe "njetscha"? 07:43
moritz yes, roughly
timotimo that's very pronouncable, but a bit non-obvious
tadzik it was obvious to me :) 07:44
08:07 GlitchMr joined
mikec morning 08:11
sorear morning mikec. welcome if appropriate.
I was noticing earlier that masak's GPW slides were all in English
then it occured to me that it's GPW, not DPW :)
does anyone here know anything about the intended semantics of my @foo[**] ? 08:12
hello GlitchMr 08:13
mikec thanks :) i've been welcomed once, but now i feel doubly welcome 08:15
08:22 NamelessTee left 08:30 ruoso left 08:31 ruoso joined
sorear -> sleep 08:39
08:39 sporous left 08:47 mj41 joined
dalek kudo/nom: bb09ec6 | jonathan++ | src/core/Block.pm:
NEXT phasers run in reverse order.
08:47
kudo/nom: 7e2b6e6 | jonathan++ | src/Perl6/Actions.pm:
Implement 'also' syntax.
kudo/nom: 870f800 | jonathan++ | src/ops/perl6.ops:
Convey result of a block to the leave phaser runner, so it can consider whether to run KEEP and UNDO blocks.
kudo/nom: c77b6f8 | jonathan++ | src/ops/perl6.ops:
Quick but test-passing implementation of KEEP and UNDO. Based on mls++ patch, with some changes from me.
kudo/nom: 288fdb2 | jonathan++ | t/spectest.data:
Run S04-phasers/keep-undo.t.
kudo/nom: df250d8 | jonathan++ | docs/ChangeLog:
Add some ChangeLog entries.
jnthn morning o/
phenny jnthn: 03:11Z <[Coke]> tell jnthn moritz to look in the log just before here.
jnthn 870f800 fixes the build on platforms with C compilers that report things that they always really should. :-) 08:48
08:49 sporous joined
jnthn sorear: fwiw, we have no Seq in Rakudo and I don't think we miss it. I suspect Pm may have meant for it to vanish in the current model. 09:03
09:04 sftp left
masak o/ 09:05
09:06 sftp joined
tadzik wonders if he should make a recording of him saying "niecza" and putting it on the net somewhere 09:06
masak tadzik: make a short song, with the word repeated in lots of tones of voice. 09:07
jlaire dreams of a world where everbody knows ipa
tadzik „I like playing with Rakudo, but singing with Nieczaaaa”
masak :P 09:08
moritz +1
masak tadzik++ is referring to www.youtube.com/watch?v=5Ju8Wxmrk3s :) 09:09
DrEeevil tadzik: and maybe let a german try, then it sounds like "nix da" ;) (nothing there)
09:09 mj41 left, GlitchMr is now known as GlitchMrr
tadzik heh 09:10
great, my laptop battery is now capable of compiling rakudo only once
then it's <50%
09:10 GlitchMrr is now known as GlitchMr
moritz recommends power supply 09:10
tadzik yeah, it's quite remote unfortunately 09:11
apejens it's almost like a battery, just lasting longer
tadzik it's difficult to carry around too
moritz tadzik: you should get p2p power from jnthn or masak :-)
apejens I'll admit the long cable can be annoying :p
09:11 GlitchMr is now known as GlitchMrr 09:12 GlitchMrr is now known as GlitchMr
dalek kudo/macros3: e6f26fc | masak++ | src/Perl6/Actions.pm:
lookups of undeclared & vars turn into Nil
09:12
tadzik :)
huh, CORE.setting is going for 15 minutes
moritz yeah, it's again quite slow :( 09:13
moritz suspects a regression
tadzik I must've screwed something up
moritz or maybe it was some of the phasers
tadzik I now wonder if I'll manage to compile Rakudo even once :)
possibly
moritz my setting compilation now also takes 9 minutes 09:14
it used to finish in 3..4 after bs
jnthn Hmm.
tadzik I'll stop tormenting my laptop then :)
09:14 GlitchMr left
jnthn Needs profiling, I suspect. 09:14
09:15 thou left
jnthn Otherwise we're just guessing. 09:15
09:15 snearch joined
moritz or bisecting 09:15
jnthn True 09:16
moritz which patch fixed the build?
jnthn 870f800 shoulda done it 09:17
moritz ok 09:18
09:24 mj41 joined
jnthn Time to try and clear up name handling, it seems... 09:28
moritz 0dbe16a4 (LEAVE/KEEP/UNDO should run in opposite order.) is already slow 09:29
> 9 minutes
jnthn Maybe try 4e02c2719 09:31
masak here we go. 09:34
dalek kudo/nom: e29b2f1 | masak++ | / (7 files):
implemented quasi quotes and macros

This works:
  - Macro declarations
  - Calling a macro (using `macro()` and `macro` and operators)
  - Quasi quotes
  - Variable lookup from within the quasi quote
This doesn't, yet:
  - Variable lookup from within a macro parameter
09:35 sftp_ joined
masak let me know if you encounter any issues beyond what's noted not to work above. 09:35
09:35 sftp left
masak note: {{{$a}}} syntax isn't implemented yet. but that's next up. 09:35
jnthn \o/ 09:39
masak++
moritz masak++
masak: you have the honor to patch the feature matrix too
masak moritz: will do.
masak gets to it right away 09:40
moritz masak: maybe also add a line for "declarations in quasis" or so
jnthn masak: Did you add the new test file to spectest.data?
moritz 5c1b4e6 is also slow
masak jnthn: I did not. will do that too.
moritz: right. that would correspond to D4. 09:41
I'll only bump rakudo's "basic macros" support to yellow, 'cus we don't have D2 yet.
moritz ok 09:42
jnthn moritz: OK, so that means it's not about LEAVE/KEEP/UNDO. 09:43
dalek kudo/nom: fdf3306 | masak++ | t/spectest.data:
[t/spectest.data] added S06-macros/macros-d1.t
09:44
09:44 dakkar joined
09:44 huf joined
dalek atures: 3e53a06 | masak++ | features.json:
[features.json] twiddled macros desc a bit

Added a feature, changed the description of another. Added Rakudo support for basic macros.
09:49
kudo/nom: 182b2f9 | jonathan++ | src/Perl6/World.pm:
Toss unused methods.
09:56 alc left
tadzik \o/ \o/ \o/ 09:57
\\\\\\\\\\\\
oops
10:05 scott__ left 10:11 xinming left
moritz 4e02c271 is slow too 10:12
jnthn moritz: Wow.
10:12 xinming joined
jnthn So that means if it's phasers related it's either ENTER or START 10:13
Or the changes for the infrastructure stuff
10:24 envi_ joined
moritz b771b344 is fast 10:29
tadzik my nom compilation is now going for 30 minutes and no end can be seen :) 10:30
jnthn wonders if a6d75bccbd4 is to blame somehow 10:32
In the add_phasers_handling_code method 10:33
moritz I'm bisecting now 10:34
the range is pretty narrow
jnthn yes, down to 3 patches now it seems 10:35
And one just adds a spectest
So only two are interesting
moritz I just switched to a different machine for bisecting, because my laptop overheats :-) 10:36
(having a computer somewhere in the clou^internet)++ 10:37
10:37 preflex_ joined, preflex left, preflex_ is now known as preflex
moritz git bisect blames 4e02c2719553f7dad4b22f3b763e92a4b7087b57 10:38
let me verify that...
jnthn 4e02c2719?! 10:39
10:39 xinming left
moritz I'm not convinced yet 10:40
jnthn Me either, looking at that patch 10:41
10:42 xinming joined 10:57 mj41 left 11:29 tokuhirom joined 11:34 foot joined 11:43 foot left 11:45 mj41 joined 11:51 jaldhar joined 11:54 NamelessTee joined
masak sorear: which language did you expect my slides to be in? :) 11:54
moritz fwiw on one machine I couldn't reproduce any rakudo slowdowns 11:59
on the one machine where I have now cleaned out everything, and am recompiling right now 12:00
performance seems to be back after a 'git clean -xdf' 12:11
tadzik tries
moritz (git clean -xdf)++
touch src/core/Mu.pm 12:12
time make
real 5m10.172s
(that is, after a clean rebuild)
jnthn Oddness
tadzik interesting, what was the leftover that caused it
jnthn is struggling to guess 12:13
tadzik yep, confirmed 12:16
moritz++
oh, it does it again after a recompilation it seems 12:20
moritz tadzik: you mean you change something, and the next recompilation is slow? 12:22
tadzik moritz: yes
I unstashed my Set changes
moritz tadzik: does memory usage grow during compilation? 12:23
tadzik it stopped on 16.9% memory usage and kept eating CPU
moritz oh
tadzik Usually ends about 25%
moritz then that's probably an unrelated infinite loop
tadzik can you reproduce that?
moritz I don't have your set changes
tadzik I don't think they're any specific, provided that everyone experienced this slowdown 12:24
try just declaring 'my class Foobar {}' somewhere maybe
moritz well, for me it was slow, but still completed
tadzik: trying that now
tadzik gist.github.com/1992817 this are my changes for Justin Caes 12:25
moritz tadzik: simply add a 'my class Foobar { }' doesn't significantly increase compilation time here 12:28
tadzik hmm 12:29
could you try the patch I pasted?
moritz yes, I'll try that next
tadzik okay
moritz if it works, we'll know before the end of the talk (if the speaker uses up his time)
tadzik :) 12:30
12:30 bluescreen10 joined
jnthn uh-oh...low battery 12:30
moritz tadzik: compilation of that one seems to hang :/ 12:32
tadzik yay! I mean, uh 12:33
I'll try to golf that
moritz I'm trying now with the class declaration removed
jnthn Try running setting compilation with --ll-exception too, just in csae.
moritz ah, I thought of that too
but didn't take my own thoughts serious :-9 12:34
dalek kudo/name-cleanup: 2da46c4 | jonathan++ | src/Perl6/World.pm:
Start to sketch out an attempt at neater name handling.
12:36
kudo/name-cleanup: 04b9e4e | jonathan++ | src/Perl6/World.pm:
Add method for turning a longname into the name component.
kudo/name-cleanup: 316db7b | jonathan++ | src/Perl6/Grammar.pm:
Start using the new longname handling in the type-declaration related parts of the grammar.
kudo/name-cleanup: 50daf80 | jonathan++ | src/Perl6/Actions.pm:
Update enum and subset actions for using new longname handling.
kudo/name-cleanup: effeb6f | jonathan++ | src/Perl6/World.pm:
Toss install_package_longname, which we no longer use.
moritz hangs with ll-exception too 12:37
tadzik -my class KeySet is Iterable does Associative {
+my class KeyHash is Iterable does Associative {
this is enough to trigger it
tadzik looks at stubs.pm
jnthn yeah, there's a stub in there
tadzik yep 12:38
and KeyHash is already defined as empty
jnthn yeah
moritz oh
that should be a stub
jnthn right
moritz if you then fill it out
jnthn but the error reporting shouldn't hang either :(
moritz so there is really a redeclaration error
jnthn Dunno why that happens.
tadzik yep
moritz nom: class A { }; class A { };
tadzik trying that now
p6eval rakudo 182b2f: OUTPUT«===SORRY!===␤Redeclaration of symbol A␤at /tmp/HAXUCxuP4Z:1␤»
tadzik may act funny in the setting
moritz it shouldn't, but it might :/ 12:39
especially since Set.pm is after Exceptions.pm 12:40
tadzik oh 12:41
ah
crap, it hangs anyway
tadzik moves to a Place Of Power somewhere 12:42
12:45 Trashlord left 12:47 NamelessTee left
moritz Method 'of' must be resolved by class KeyHash because it exists in multiple roles (Associative, Associative) 12:49
tadzik yeah, I'm trying a new thing now
moritz is what I get when compiling it, when making KeyHash a proper it with the proper stub
tadzik it seems to work, at least it passed the 16.9 step
okay, it's now doing .pir -> .pbc 12:50
12:55 skids left
masak \o/ 13:01
nom: my $N = 4; .say for (grep { $N / 2 == [+] .comb }, (0 .. 2 ** $N)».fmt("%0{$N}b"))».trans("01", "[]") 13:24
p6eval rakudo 182b2f: OUTPUT«Method 'at_key' not found for invocant of class 'Nil'␤ in method postcircumfix:<{ }> at src/gen/CORE.setting:1183␤ in block <anon> at /tmp/XruNbUbnD4:1␤␤»
masak hm :/ 13:25
nom: my $N = 4; .say for ((0 .. 2 ** $N)».fmt("%0{$N}b").grep({ $N / 2 == [+] .comb }))».trans("01", "[]") 13:26
p6eval rakudo 182b2f: OUTPUT«Method 'at_key' not found for invocant of class 'Nil'␤ in method postcircumfix:<{ }> at src/gen/CORE.setting:1183␤ in block <anon> at /tmp/kLv8pmlrpm:1␤␤»
13:29 benabik left
jnthn masak: Any idea which bit it is that's failing? 13:30
nom: my $N = 4; .say for ((0 .. 2 ** $N)».fmt("%0{$N}b") 13:31
p6eval rakudo 182b2f: OUTPUT«===SORRY!===␤Unable to parse postcircumfix:sym<( )>, couldn't find final ')' at line 2␤»
jnthn nom: my $N = 4; .say for ((0 .. 2 ** $N)».fmt("%0{$N}b"))
p6eval rakudo 182b2f: OUTPUT«Method 'at_key' not found for invocant of class 'Nil'␤ in method postcircumfix:<{ }> at src/gen/CORE.setting:1183␤ in block <anon> at /tmp/G9bSyjslC2:1␤␤»
masak oh!
%0
jnthn Oh :)
flussence nom: "%0{a}"
p6eval rakudo 182b2f: OUTPUT«===SORRY!===␤CHECK FAILED:␤Undefined routine '&a' called (line 1)␤»
13:31 xinming left
masak my bad :) 13:31
jnthn phew
masak nom: my $N = 4; .say for ((0 .. 2 ** $N)».fmt("%0\{$N}b").grep({ $N / 2 == [+] .comb }))».trans("01", "[]")
p6eval rakudo 182b2f: OUTPUT«'{' is not a valid sprintf format␤ in method fmt at src/gen/CORE.setting:1789␤ in method dispatch:<hyper> at src/gen/CORE.setting:824␤ in block <anon> at /tmp/PzLvhKO7j1:1␤␤»
masak grr :)
nom: my $N = 4; .say for ((0 .. 2 ** $N)».fmt("%0" ~ $N ~ "b").grep({ $N / 2 == [+] .comb }))».trans("01", "[]") 13:32
p6eval rakudo 182b2f: OUTPUT«"01" is not a Pair␤ in method trans at src/gen/CORE.setting:3894␤ in method dispatch:<hyper> at src/gen/CORE.setting:824␤ in block <anon> at /tmp/xxHw_W9vnY:1␤␤»
masak nom: my $N = 4; .say for ((0 .. 2 ** $N)».fmt("%0" ~ $N ~ "b").grep({ $N / 2 == [+] .comb }))».trans("01" => "[]")
p6eval rakudo 182b2f: OUTPUT«[[]]␤[][]␤[]][␤][[]␤][][␤]][[␤»
13:33 benabik joined
flussence was about to suggest sprintf inside .fmt there, but realised that's a bit insane 13:33
masak nom: my $N = 4; .say for ((0 .. 2 ** $N)».fmt("%0$N" ~ "b").grep({ $N / 2 == [+] .comb }))».trans("01" => "[]") 13:34
p6eval rakudo 182b2f: OUTPUT«[[]]␤[][]␤[]][␤][[]␤][][␤]][[␤»
13:36 kaleem left 13:37 xinming joined
flussence nom: say [X~] [<[ ]>] xx [<[ ] [ ]>] 13:37
p6eval rakudo 182b2f: OUTPUT«[[[[ [[[] [[][ [[]] [][[ [][] []][ []]] ][[[ ][[] ][][ ][]] ]][[ ]][] ]]][ ]]]]␤»
13:40 benabik left, benabik joined 13:43 benabik left
masak nom: my $N = 6; for ^(1 +< $N) { given .fmt("%0$N" ~ "b") { next unless $N / 2 == [+] .comb; next unless all (my $c = 0; map { $c += 1 - 2 * $_; $c >= 0 }, .comb); say .trans("01" => "[]") } } 13:45
p6eval rakudo 182b2f: OUTPUT«[[[]]]␤[[][]]␤[[]][]␤[][[]]␤[][][]␤»
[Coke] is able to run the rakudo tests again. 13:48
thanks to whoever fixed that. 13:50
13:53 kaleem joined
masak the one who broke it, I believe. 13:53
[Coke] n: say 7324-6527 13:55
p6eval niecza v15-4-g1f35f89: OUTPUT«797␤»
[Coke] au++
masak \o/
au quite a win :)
masak ausome. 13:56
[Coke] O_o
I'd say that's worth a gold star. 13:57
p: "hey, is this pugs?".say
tadzik I hope the name Fat Slasher catches :)
(the // operator)
masak moritz: didn't pugs get a "p" alias? :/ 13:58
[Coke] P: "caps?" 13:59
13:59 Trashlord joined
masak g: "not the initial?" 13:59
z: "something altogether different?" 14:00
[Coke] pugs: 22/234.Num.Rat.say
p6eval pugs b927740: OUTPUT«*** No such method in class Int: "&Num"␤ at /tmp/hDmV1veHSl line 1, column 1 - line 2, column 1␤»
[Coke] evalbot: rebuild pugs
evalbot: rebuild nom
masak evalbot rebuild pugs
p6eval OK (started asynchronously)
dalek Rebuild of pugs complete.
[Coke] masak++ 14:01
dalek: liar!
pugs: 22/234.Num.Rat.say
p6eval pugs b927740: OUTPUT«*** No such method in class Int: "&Num"␤ at /tmp/QHbnS7XKZI line 1, column 1 - line 2, column 1␤»
[Coke] (plus also that code's wrong, but still, Int hasa .Num now.)
pugs: (22/234).Num.Rat.perl.say # that's better, but will still fail in channel. 14:03
p6eval pugs b927740: OUTPUT«*** No such method in class Rat: "&Num"␤ at /tmp/koV86vULAH line 1, column 1 - line 2, column 1␤»
[Coke] I am guessing that pugs was not necessarily setup to be rebuilt.
that revision is from Tue Oct 18 12:31:02 2011 14:04
14:05 pernatiy joined 14:07 kaleem left, kaleem joined
[Coke] -> 14:08
14:08 tokuhir__ joined 14:11 tokuhirom left
dalek ast: 289b7be | (Solomon Foster)++ | S05-mass/properties-general.t:
Fudge out tests which have not yet caught up with the latest Unicode changes.
14:18
14:21 Trashlord left
dalek kudo/name-cleanup: 95d31f8 | jonathan++ | src/Perl6/ (3 files):
Rename for clarity.
14:23
kudo/name-cleanup: 76fb938 | jonathan++ | src/Perl6/World.pm:
Start recognizing pseudo-package names and complaining about invalid use of some of them in a package declaration.
kudo/name-cleanup: c6747d2 | jonathan++ | src/Perl6/ (2 files):
Eliminate canonical_type_longname.
14:23 skids joined
masak nom: sub postfix:<!>($n) { [*] 2..$n }; constant @catalan = gather { my ($i, $d) = 0, 1; loop { take (2 * $i)! / $d; $i++; $d *= $i * ($i + 1) } }; sub bal($l) { return "[]" x $l if $l < 2; for reverse ^$l -> $m { if @catalan[$m+1].rand < @catalan[$m] { return "[&bal($m)]&bal($l-$m-1)" } } }; say bal 4 for ^10 14:24
p6eval rakudo 182b2f: OUTPUT«[[[]]][]␤[[[]][]]␤[[]][][]␤[[]][[]]␤[[]][[]]␤[][[]][]␤[[[]]][]␤[[][]][]␤[[[[]]]]␤[[[[]]]]␤»
masak a new approach.
this one *might* produce an even distribution -- I haven't it tested it thoroughly yet. 14:25
but it doesn't build on the grid at all, it builds on catalan numbers.
the principle is this: for balanced strings with three pairs of parens, there's a 2-in-5 chance that there's a set of parens surrounding the the rest of the string. because there are 2 strings with two pairs, and 5 strings with three pairs. 14:29
14:30 snearch left 14:35 benabik joined 14:39 PacoAir joined 14:49 birdwindupbird left 14:52 kaleem left 14:55 key__ joined
[Coke] n: say True.Rat 15:10
p6eval niecza v15-4-g1f35f89: OUTPUT«1␤»
benabik p: say 'hi' 15:11
r: say 'hi'
p6eval rakudo 182b2f: OUTPUT«hi␤»
benabik I like the one letter abbrevs. Will have to remember they exist. :-D
15:12 bluescreen10 left 15:20 wtw left
skids I think I'll still use "nom" because it's fun to tell an interpreter to "eat this". 15:22
Oh, I guess niecza and nom have an "n"-amespace collision 15:24
15:25 dbr joined 15:27 bluescreen10 joined
dbr being fully aware that this is a bit off topic, but since i know the perl community best (the pathological helpfulness thing...) and since there is so much knowledge about utf-8 here: 15:28
in the tibetan script, you can have a letter, and this one can have one on top and one on the bottom (and, for that matter, one more to the left, plus two optional ones to the right, not counting the signs to change the vowel...) 15:29
that is to say your 'main letter' can have optional _more_ letters on top and in other places
now for the ones that are subscripts, unicode has a definition for them 15:30
but it seems it's not possible to render all (commonly used!) graphemes, since i can't find anything for the ones on top of the main letter 15:31
is that possible?
anybody any ideas?
TimToady I have two ideas; either the 'MARK' characters are used for that somehow, or maybe you're supposed to do a double subjoin in that case 15:32
but I know nothing about Tibetan 15:33
dbr hey TimToady!
there is some hints that i found here
Encoding of any new ligatures in Unicode will not happen, in part because the set of ligatures is font-dependent, and Unicode is an encoding independent of font variations. The same kind of issue arose for Tibetan script
sorry forgot the link:
en.wikipedia.org/wiki/Unicode#Indic_scripts
especially in the second paragraph
however, i don't know what to do with it really
TimToady: i see what you mean, but can't find good (more) advice on the two ways you're outlining 15:34
TimToady but they're couting these as "ligatures", then it's probably going to go all contextual in the rendering engine 15:35
dbr yes, these would be ligatures 15:36
so coudl it be the case that unicode is not able to render commonly used graphemes/ligatures in the languages it supports or is it merely a rendering question on my end? 15:38
s/coudl/could/
TimToady so it looks like you're not going to be able to treat each "cell" as a grapheme, but rely on rendering to construct these super-graphemes 15:39
dbr ah, ok
that i understand :)
TimToady I can well understand that the Unicode consortium is between a rock and a hard place
logicians always want to detangle form and content, but real people mess them together all the time :) 15:40
dbr apart from tibeto-specificness, unicode can't (won't?) support everything?
15:40 pernatiy left
dbr ok, "everything" is debatable, but i'm talking commonly used stuff 15:41
15:41 pernatiy joined
TimToady yes, there are no strike-through characters from which you could construct strike-through words, for instance 15:41
there aren't colored letters
the whole CJK fiasco arose because some spots seem like font differences while some of the people involved think they're really semantic differences 15:42
dbr hmm...
TimToady so now the Plane 0 CJK characters can be rendered with any of several Plane 2 characters, depending 15:43
dbr that is, to make striked-through-characters?
TimToady if Unicode had strike-throughs, I'd use 'em for printing undefined values in Perl 6 :) 15:44
15:45 Psyche^ joined
dbr haha, i guess you would :) 15:46
15:48 Patterner left, Psyche^ is now known as Patterner
au -> a̶f̶k̶ & 15:48
[Coke] characters, depending 15:50
ww.
n: say ¾*¾
p6eval niecza v15-4-g1f35f89: OUTPUT«===SORRY!===␤␤Unsupported use of bare 'say'; in Perl 6 please use .say if you meant $_, or use an explicit invocant or argument at /tmp/QzoOgSx31_ line 1:␤------> say⏏ ¾*¾␤␤Confused at /tmp/QzoOgSx31_ line 1:␤------> [3…
[Coke] nom: say ¾*¾ 15:51
p6eval rakudo 182b2f: OUTPUT«===SORRY!===␤Confused␤at /tmp/xLc3rpBoOx:1␤»
[Coke] that seems better.
dbr what is the equivalent to the \N{} notation in perl6? 15:57
15:58 Patterner left
flussence nom: say "\c[INTERROBANG]"; 15:58
p6eval rakudo 182b2f: OUTPUT«‽␤»
dbr ah thanks 16:01
16:02 gfldex left
dbr perl6: say "\c[TIBETAN SUBJOINED LETTER KA]\c[TIBETAN LETTER RA]" 16:02
p6eval pugs b927740, rakudo 182b2f, niecza v15-4-g1f35f89: OUTPUT«ྐར␤»
dbr so the messed-up-ness of the output is a question of rendering on my platform, did i get that right? 16:03
16:04 gfldex joined
dbr if you size it up by approx 1000% size, you can still find that circle-thingy there, stating that it can take some other letter at that place (i have no idea what that is called) 16:04
16:06 alester joined 16:07 marmalade joined 16:08 gfldex left 16:10 gfldex joined
TimToady perl6: say "%\0{a}" 16:29
p6eval rakudo 182b2f: OUTPUT«===SORRY!===␤CHECK FAILED:␤Undefined routine '&a' called (line 1)␤»
..niecza v15-4-g1f35f89: OUTPUT«===SORRY!===␤␤Undeclared routine:␤ 'a' used at line 1␤␤Unhandled exception: Check failed␤␤ at /home/p6eval/niecza/boot/lib/CORE.setting line 1362 (die @ 3) ␤ at /home/p6eval/niecza/src/STD.pm6 line 1147 (P6.comp_unit @ 33) ␤ at /home/p6…
..pugs b927740: OUTPUT«*** No such subroutine: "&a"␤ at /tmp/Iyoz8elxx7 line 1, column 10-11␤»
TimToady perl6: say "%0$(a)"
p6eval rakudo 182b2f: OUTPUT«===SORRY!===␤CHECK FAILED:␤Undefined routine '&a' called (line 1)␤»
..niecza v15-4-g1f35f89: OUTPUT«===SORRY!===␤␤Undeclared routine:␤ 'a' used at line 1␤␤Unhandled exception: Check failed␤␤ at /home/p6eval/niecza/boot/lib/CORE.setting line 1362 (die @ 3) ␤ at /home/p6eval/niecza/src/STD.pm6 line 1147 (P6.comp_unit @ 33) ␤ at /home/p6…
..pugs b927740: OUTPUT«%0$(a)␤»
TimToady two workarounds to avoid ~
16:32 att joined 16:33 kaare_ joined 16:34 att is now known as gilm 16:36 envi_ left 16:58 Psyche^ joined, Psyche^ is now known as Patterner 17:04 bynari joined
PerlJam bynari: you even have multiple implementations of Perl 6 to choose from. 17:04
bynari nods 17:05
It's a big vast scary unknown world venturing outside perl 5 to 6 just now
It seems there's SO much information and SO many ways to do things just now
Where would be the best place to start to get the big picture clear in my head? 17:06
PerlJam bynari: we like to call that "fun" rather than "scary" ... but to each their own :)
bynari Heh
It only becomes fun once you get to grips
PerlJam bynari: perl6.org has all sorts of resources
bynari How much are things subject to change? Is something I write now likely to be obsolete in a year? 17:07
PerlJam bynari: depends on the specifics of what you write. Most of the language has stabilized that it isn't going to change much, but there are still a few things in flux
bynari Would I be crazy for writing production stuff in Perl 6? I own my own company, so it would be my decision 17:08
felher Hm, if 'CATCH' makes 'try {' redudant, one doesn't need that level of extra indention in subs anymore (as opposed to, say, java), if the sub has to handle exceptions. And to emphasize error-handling, one could even put the 'CATCH' at the top of the sub. Am i right about that or did i misunderstand something?
PerlJam bynari: If you don't currently have any time constraints (i.e., your programs must run fast-ish) then I don't think you'd be too crazy for using Perl 6
bynari What do you mean by fast-ish. Development time or performance? 17:09
PerlJam felher: sounds about right to me.
bynari: performance
17:09 Trashlord joined
bynari Oh. Perl 6 performance is currently not up to Perl 5's just now? 17:09
felher PerlJam: great :) That is so cute :)
PerlJam bynari: I don't have any benchmarks handy ... maybe you could make some? :) 17:10
benabik felher: try {...} is noted as being similar to eval {...} in P5. It's a declaration that the default is to ignore errors from the block.
sorear good * #perl6
bynari nods
benabik If I read it right, S04 says `try { ... }` is the same as `{ ... CATCH { } }` 17:11
17:11 am0c left
benabik Hm. Perhaps that actually needs something to mark $! handled in the CATCH. 17:11
benabik shrugs.
felher benabik: I see, thanks :) 17:12
PerlJam bynari: The two main implementations of Perl 6 (Rakudo and Niecza) aren't "fast" but they aren't "slow" either. And both have room for optimizations.
colomon sorear: o/
TimToady benabik: try {...} is the same as { ... CATCH { default {} } }
benabik Something more like `{ ... CATCH { default { } } }`, reading a little further.
bynari I'll definitely dive in. It sounds like it could be fun
benabik TimToady: Hah, yes. 17:13
PerlJam bynari: See perlgeek.de/en/article/5-to-6 and github.com/perl6/book/downloads 17:16
sorear right now, fun is all there is
17:16 thou joined
benabik -Ofun 17:16
PerlJam bynari: those might be good starts on the language
sorear #phasers in 14. I seem to have made the only report.
17:16 MayDaniel joined
bynari Thanks, PerlJam 17:17
TimToady bynari: you can also compare Perl 5 to Perl 6 examples in rosettacode.org
bynari nods
17:17 NamelessTee joined 17:18 tokuhir__ left
PerlJam rosettacode++ 17:18
bynari How many people are working on Perl 6 full time roughly? 17:20
dalek href="https://perl6.org:">perl6.org: 7436854 | benabik++ | source/fun/index.html:
Update ParrotQuotes link to the new Parrot wiki

Rather than directing people to the old trac instance with its expired certificate, just point them to github.
bynari Has it gone slowly because most people are busy with their full time jobs etc? 17:21
PerlJam bynari: It's gone slowly because language design is hard.
17:21 key__ left
bynari Excuse my ignorance, I'm just curious 17:21
PerlJam bynari: (and people have other things in their lives like jobs and family and such) 17:22
bynari nods
PerlJam bynari: there's been an inter-play between the design of the language and the implementations of the language such that one informs the other and vice versa 17:23
17:23 _ilbot left, am0c joined, _ilbot joined
bynari Hm, I see 17:23
PerlJam bynari: TimToady says "Perl 6 will do such and such" and the implementors say "I tried to implement such and such, but I ran into these problems" and so forth
(gross oversimplification btw :) 17:24
bynari Yeah
What would help fix the problem?
PerlJam um ... what problem?
benabik PerlJam++ 17:25
bynari The problem of inter-play between design and implementation
PerlJam bynari: that's not a problem, that's an advantage.
bynari Oh.
TimToady we're trying to do something here that *nobody* is smart enough to do 17:26
PerlJam but hopefully, we're collectively smart enough to muddle through
bynari I see, yes 17:27
Has no one thought about getting more commercial sponsorship to speed things up?
So more developers can work full time
moritz thought about: yes
done much about it: no
PerlJam bynari: I don't think that would help as much as people think anyway 17:28
moritz well
bynari Money is time and time helps
moritz I'd like to work fulltime on p6
thing is, most people in here enjoy hacking much more than talking to business folks
PerlJam bynari: sponsorship can help with the implementation side of the equation but not the "figure out the ramifications of the language design and make it all work well together" side
moritz and they are also much better at hacking
bynari Yeah, that's the thing. There's obviously not any business people involved in the project 17:29
moritz so that's what they do
bynari Just hackers and visionaries :)
benabik I'm applying to PhD programs and I periodically wonder how I can fool a committee into thinking that hacking P6 is a reasonable thesis.
tadzik :)
bynari PerlJam: Sure, but the main thing is it just pumps more time into the project
moritz if somebody did make those business contracts and brought some more money, I'd be very happy
bynari More people who can work full time on it and give it their full energy without having to re-focus on another job 17:30
PerlJam benabik: If computer scientists can still be studying sorting after all these decades, I think there's bound to be some way to turn Perl 6 into a PhD
bynari And that leads to figuring out the ramifications of the language design
What would rock is getting a major company behind perl 6. In a similar way as Google are behind python 17:31
benabik Woo! I didn't break the website.
PerlJam moritz: I got a phone call from Jamaica earlier today that said I'd won $850,000 and would I be home to receive my prize package. If it actually turns out to be real, I'll pay you to work on Perl 6 for a year or so. :-)
bynari Hehehe 17:32
17:33 fglock joined, isBEKaml joined
moritz PerlJam: deal :-) 17:34
bynari I see a bit of a paradox with Perl 6. For most of the general programming community it's still too out there, and although quite a few see it as being an improvement on Ruby and Python, in its current state they won't start using it, but will go for something more comfortable like Python or Ruby. Until more people start doing more things with it and more companies start taking an interest it's 17:35
not going to accelerate
The reason I'm interested is because I can make the decisions for my own company and I find it quite exciting, but most people aren't like that 17:36
PerlJam bynari: what is it that your company does exactly?
bynari The original Perl's advanced so rapidly because they got so much mainstream attention
Marketing
I do various things. I want to eventually start building useful web 2.0 companies though
fglock o/ 17:37
bynari Once I have a few million and I can sit and try out new stuff. Just now it's just more practical, but less interesting things
PerlJam bynari: so ... you could market Perl 6 to people ? :)
bynari Sure
moritz that would be awesome
bynari Perl 6 has 0 marketing right now. It's only attractive to the hackers who see it for what it is
PerlJam that would be tres awesome
fglock can I have some perl5 help, I'm implementing a perl5 parser and I'm trying to understand how this works: 17:38
perl -e ' use strict; BEGIN { *CORE::GLOBAL::print = sub { die "here" } }; print "123\n"; ' # 123
bynari Hackers don't like marketing though. I'm in a unique position of being a hacker and a marketer, so I know things most would hate
fglock perl -e ' use strict; BEGIN { *CORE::GLOBAL::time = sub { die "here" } }; print time . "\n"; ' # here at -e line 1
bynari For instance, I wouldn't call it Perl 6 :)
'Ruby' is a great marketing name. People are captivated by the name and the red 17:39
PerlJam bynari: Well it's already called Perl 6, so you'd just have to emphasize or de-emphasize the appropriate things.
isBEKaml that's the first thing any marketer says. First, undo everything. :)
bynari Before you even look at the language, just hearing the word 'Ruby' and thinking of shiny things and red you have a higher opinion of it
moritz bynari: would you be more inclined to market Rakudo? 17:40
you could mention that it implements Perl 6 too :-)
bynari Well
isBEKaml bynari: btw, it's too late to change the name now. It's just the language, per se.
bynari What you guys have to remember is the mass programming market is MUCH dumber than you are
fglock (I'll try #p5p)
bynari They're not much different than regular consumers
They like easy, shiny things 17:41
17:41 jferrero left
bynari Marketing Rakudo is too 'advanced' 17:41
You need to look at more general concepts to market and come up with a unique selling point. Something to get into people's mind
PerlJam So ... we should make a Perl 6 implementation called "Shiny Perl" and market that?
bynari Python has the whole. "Google are behind us" - "We're easy to learn" - "Even school kids can learn it"
Haha. I actually like that, PerlJam 17:42
You wouldn't have to change the name. It would still be Perl 6. It would just be an alias
isBEKaml bynari: No, I tend to think python got the mileage it got was because it had "batteries" - so to say.
bynari What do you mean by 'batteries', isBEKaml?
isBEKaml bynari: so, any newbie wouldn't have to look too far just to get to "real world" stuff.
PerlJam bynari: python's motto was "batteries included" 17:43
bynari Ah ok
PerlJam bynari: i.e. it came with everything you needed to do useful work
bynari Yes
isBEKaml bynari: what PerlJam++ said
moritz and rakudo star tries to do the same
but most of the batteries need to be charged first
PerlJam heh
TimToady one can market distributions like Rakudo Star; look at RedHat, Ubuntu, etc
isBEKaml moritz: that's a way to say it.. ;) 17:44
17:44 gfldex left
bynari reads more about rakudo 17:44
PerlJam Having a "real world" project or two that uses Perl 6 would help greatly I think.
TimToady though rakudo star is still back at the slackware stage :)
isBEKaml
.oO(slackware - I look at my distro, slackware)
17:45
bynari Where does the word 'rakudo' come from?
17:45 fglock left
PerlJam bynari: Rakuda do -- way of the camel (or something like that. I'm sure TimToady could tell you better) 17:45
isBEKaml bynari: I think it's in the logo. A gate or pathway. Though TimToady++ can say more about that.
bynari See this is the problem. It's too smart. Most people won't get that 17:46
Or remember the word 'rakudo'
17:46 gfldex joined
PerlJam bynari: also, I think Rakudo actually means "paradise" 17:46
bynari You guys approach things from a very very intellectual point of view, which is great, but for marketing to the dumbed down masses it doesn't work
TimToady and ubuntu is better how? :)
bynari The word 'star' is great
benabik Someone with access to rakudo.org might want to update the /about page to mention something about the meaning of the name and so forth.
bynari Not every successful technical project has *everything* right from a marketing point of view :) 17:47
'redhat' is great
TimToady for english speakers, but we're aiming higher
bynari You can't forget that. You just picture a red hat
isBEKaml TimToady: Hey, I'm not an English speaker! :P
bynari Literally everything is perception. Most Python programmers don't know WHY they prefer python over ruby or perl 17:48
PerlJam isBEKaml: me either ... I'm American ;)
TimToady finds it ironic that ruby is named after a jewel *because* perl was named after a jewel
PerlJam bynari: yes they do ... it's "cleaner" (less symbology)
bynari The same with everything in life. Very few can give you intellectual, logical reasons why they prefer something
PerlJam bynari: Have you read "Crossing the Chasm"? 17:49
bynari I've not, no
TimToady it should probably be required reading for someone who wants to do what you want to do 17:50
isBEKaml PerlJam: I know - what you said gave it out! ;)
bynari It looks interesting
TimToady: Well. The type of web 2.0 projects I'm wanting to create aren't technical. Social applications etc
PerlJam TimToady: or maybe it's one of those thing where if you name what you're doing, it impedes your ability to do it. 17:51
bynari Technical behind the scenes, but not to the users
17:51 jferrero joined
isBEKaml bynari: I think you're missing the point of what you say "intellectualism". What you call intellectualism is just another way of raising the bar for general programming. Look at Haskell. :) 17:51
TimToady we do understand most of these principles of marketing, but don't want to apply them too aggressively before the Wave is ready to carry us 17:52
we're already accused of overpromising and underdelivering
bynari isBEKaml: You can't force the masses to become something they currently are not
isBEKaml bynari: "Technical behind the scenes but not to users" - that's what perl5 was about.
bynari isBEKaml: I'm talking about things like facebook :)
isBEKaml bynari: Persuasion, not coercion. :) 17:53
TimToady so we're looking for a natural growth path toward marketing, not forcing it
bynari Yes
Rakudo Star is a good first step at going more mainstream, despite the 'Rakudo' part ;) 17:54
isBEKaml bynari: when your marketing is strong, then it's persuasive. It persuades people to try out your product and stays in their mind space for a purportedly 'longer' time than an ordinary product. You're not coercing or forcing them in any way.
bynari isBEKaml: Yes, but you can't persuade everyone to do everything. You have to approach the market with the right tools 17:55
TimToady currently our marketing is still primarily to "early adopters" (c.f. Crossing the Chasm)
isBEKaml bynari: Yes, that's why we have many products, varying degrees of quality and service. 17:56
TimToady I've been doing as much marketing over the last two years as I have been design, but that marketing to early adopters is mostly on rosettacode.org
bynari If the material doesn't connect with the market in the first place you can't persuade them
TimToady "the market" is a gross oversimplification 17:57
bynari For instance, trying to sell a raw food diet to a 300lbs obsese guy that's been living off complete crap for the rest of his life and barely gets off his chair won't work
mikemol TimToady: I might have to quote you on that.
bynari Yet the raw food diet WILL change his life, but it's too far "out his zone of reailty"
reality
doy bynari: does this mean that raw food diets have no use?
PerlJam bynari: That's kind of why haskell isn't as "popular" as some other languages.
bynari doy: They have a use, but not for the masses 17:58
isBEKaml bynari: you're either oversimplifying too many things or you got broken analogies.
bynari isBEKaml: I make over $1k/day marketing using what I'm talking about
I know my stuff :)
TimToady our goal is not making $1k/day
bynari I've been surrounded by marketing for the past 4 years. I live and breath it every day 17:59
mikemol bynari: Then you know a big part of marketing is knowing your audience. Something tells me you're missing the audience for Perl 6.
bynari No, but the point is I know why people buy/use something
mikemol: I definitely know the audience
PerlJam mikemol: plus we want to grow our audience (just like Perl 5 did) 18:00
bynari The vast majority of you guys are extremely intelligent and can't understand how most people think
Even most average programmers
Things that to you, are 2nd nature, common sense, to others are like nuclear physics 18:01
Things that are exciting for you, are scary for others
18:01 dakkar left
isBEKaml bynari: perl5 didn't aim at smart folks. It made folks smarter. 18:01
bynari It's not the Perl community that's your market. It's the whole interpreted programming community
PerlJam bynari: You're making me itch to write some tutorial-like material again
isBEKaml perl6 aims to do that and more.
bynari Yes, but you can't make folks smarter by approaching the problem from a high level point of view 18:02
You come in at their level and walk them up the path
PerlJam bynari: aye. You're preaching to the chior I think on this one. :)
bynari Going back to the obese thing. THe best way to improve your life health wise is a mostly raw plant based diet and lots of high intensity exercise
You can't in a million years go after obese people with that solution
You need to ease them in, make small changes until you start changing their thinking
PerlJam: :)
PerlJam bynari: Perl 6 still allows for "baby talk" as well as "PhD dissertation". We tend to want to start people with baby talk though 18:03
bynari Yes
It's just lacking that shiny packaging right now
PerlJam (though, in #perl6, it's mostly PhD talk :)
bynari Yeah, of course :)
Does Perl 6 have a motto btw? 18:04
18:04 mj41 left
mikemol bynari: There's not a whole lot I've seen in Perl 6 that Perl, Python or Ruby programmers wouldn't be comfortable with, honestly. The biggest resistences I've seen are: 1) "it's perl, isn't it? *shudder*" and 2) "I'll use it when it's ready, by which I mean I'll use it when it's stable". 18:04
18:04 not_gerd joined
PerlJam bynari: You mean something separate from Perl 5? 18:04
bynari: Perl 6 is still Perl, so that normal Perl mottos still apply 18:05
bynari mikemol: You misunderstand me. I'm not saying any functionality of Perl 6 needs to be changed. I'm talking 100% about the shiny box
isBEKaml mikemol: there's another that I have seen on reddit and HN. It's got too many symbols, though many get over them after some explanation.
benabik isBEKaml: That's somewhat "It's perl"
bynari One of the fundamental things in marketing is you CANNOT change the perception a consumer has in their mind once their mind is made up 18:06
PerlJam yeah, people are afraid of punctuation for some reason
bynari MIcrosoft for instance. Let's say they made the BEST linux in the world.
What would you think of it?
isBEKaml benabik: Ah, I somehow missed it - I was thinking more of backward compatibility thinking. :)
mikemol bynari: I'd use it.
PerlJam bynari: 2 words: oxy. moron. ;)
bynari Exactly, PerlJam
mikemol bynari: But then I'm a Linux user at home, and a C++-on-Windows dev at work. :)
bynari We would probably try it out because we're more open minded, but for most once their mind is made up that's it 18:07
Companies who establish themselves as X in the consumers mind should never go on to create something totally different Y that contradicts X, no matter how good Y is
So what I'm saying is
Unfortunately perl has gotten a terrible reputation in the minds of the newer generation of programmers. Heck most people still think Perl's OO is bad, when really Moose has the most advanced OO out there
benabik No computer company could ever convince people that they make the best mobile phone. >.> <.<
mikemol bynari: If you want to talk about a shiny box, what Perl 6 really needs is a very visible demonstration of its efficacy.
bynari So when you say 'perl 6', people see 'perl' 18:08
mikemol bynari: That's the biggest thing I've seen people ask for when they ask if it's ready. They want to see someone else dive in before they do. 18:09
bynari Yes
isBEKaml bynari: there. I was waiting for it. So, here we come a full circle. :)
mikemol I mean, I got excited about Perl 6 when there was a Linux Journal or Linux Magazine article about it almost a decade ago, because the syntax was so much nicer than in Perl 5, what I was using at the time.
bynari Yeah
isBEKaml bynari: though, there's one thing you missed about programmer audience. They don't see languages in a black and white sort of way you put it (ignoring fanatics and language lawyers). I generally found them to be very open minded about new languages. 18:10
bynari Much more so than the general masses, but still very far from the people you'll find in here 18:11
benabik Most good programmers learn a new programming language on a regular basis. Most bad ones use whatever their boss tells them to. ;-)
bynari If you guys were at 100 and the fat needy masses who want to lose weight fast and get rich were at 0, the mass programming market would be at 30-40
There's very very few programmers who learn new languages, benabik 18:12
PerlJam It "feels" to me like we're on the cusp of some important event in the Perl 6 universe. But I haven't kept a record of how often my gut is right or wrong to know how much weight to put behind the feeling :)
bynari In your world there is, but in the wider programming world the latter you described is the norm
I don't know much about Perl 6, but my gut tells me it's something special
benabik bynari: I think the publishers of books on learning programming languages would argue with you. 18:14
bynari They are entitled to their opinion
18:14 GlitchMr joined
bynari I will point out that both groups in your example will buy new books 18:14
Buying a book isn't an indication of any particular motive 18:15
benabik I don't think people spend money on a book teaching a new language on the theory that they're going to use it to hold up a rickety table. Or at least they don't buy it new.
bynari Ahahaha :) 18:16
They'll buy a new book because they have to learn something new for work
isBEKaml bynari: you can say that because the numbers of those who pick up new programming languages routinely, are not talked about very much. So, it's a black picture here for you.
bynari There's 10's of thousands of people who love learning new languages and do it for fun, but there's millions who learn because they need to do it for their job to put food on the table 18:17
benabik It's going to be a while before people have to learn Perl 6 for their job. So our market is those people who learn it "for fun". (Or to keep their skills sharp, or to pad their resume, or whatever.) 18:18
isBEKaml Well, none of us here are arguing your other points. They are well taken. What I'm against is, dumbing down stuff and thereby insulting their intelligence.
bynari As long as that remains your market though, you won't see substantial growth and you won't get into the mainstream
benabik isBEKaml++ 18:19
PerlJam isBEKaml: Haskell doesn't "dumb down" anything and as a result, it's seen as an elitist academic language.
bynari isBEKaml: You perceive it as dumbing down and insulting their intelligence. Most see it as helpful
PerlJam :-)
bynari I'm extremely smart, but I love it when someone dumbs something down for me. Why not?
Ego is pointless
18:19 Chillance joined
bynari If I can learn something faster then all the better 18:19
benabik There's a difference between presenting a tutorial and "Rakudo is too complicated a name for you to remember" 18:20
bynari Regular people love it when things are dumbed down for them too becuase they just want to learn and enjoy life
isBEKaml PerlJam: Exactly. But again,they are extremely helpful and *really* enjoy looking at your "Ah-ha" faces, don't they? :)
benabik Teaching != dumbing down
bynari The only people who get offended by dumbing down are generally people who like to pretend they're very smart
It's just semantics
dumbing down is just making something more digestable
Why make something more difficult than it has to be 18:21
Even the greatest scientists tried to make things as easy as possible for themselves to understand
not_gerd Terry Pratchett calls this lies-to-children: you need to start with a simplified version and build up from there
bynari What matters is learning and productivity, not how you learned something
PerlJam not_gerd++
sorear "Python is easier to remember than Rakudo" is a hilariously anglocentric statement 18:22
not_gerd (also known as Wittgenstein's ladder, btw;))
sorear I suspect that for 1/4 of the people on Earth 楽土 is more memorable than 'python'... 18:23
and for the rest they're both strings in an incomprehensible language 18:24
PerlJam sorear: memorable? I'd remember it as "some sequence of symbols I can't easily reproduce" :)
sorear imagine you speak Hindi and "rakudo", "niecza", "python" are all just meaningless strings of characters
isBEKaml sorear: anglocentric? I'm not getting the reference?
18:24 ksi joined
isBEKaml Ah 18:24
benabik isBEKaml: Focused on people who speak English. 18:25
sorear isBEKaml: anglo-, from England/English
isBEKaml sorear: yes, I got that part. I was wondering more about what "python" and "rakudo" has to do with anything here. FWIW, python's an english word too.
benabik isBEKaml: Rakudo isn't. It's based in Japanese. Which we're being told is bad. 18:26
isBEKaml nvm, I later saw what you referred to.
Tene Also, the majority of "dumbed down" documentation seems to cater to specific learning styles, and really doesn't work for me. I really hate documentation that goes on and on about metaphors and goes as slowly as possible, repeating everything a dozen times...
sorear ==Tene 18:27
Tene It obviously works very well for many people, but not for me.
sorear It's not that I'm a "genius", I'm just impatient
bynari IMO the best marketing plan would be to keep the name "perl 6" in the background, focus on "rakido star", or even better change it to "something star" then from there create a new unique selling point, something along the lines of "the language that allows you to express your creativity naturally", then from there create a couple of marketing-oriented learning resource sites that actively get
people learning not just perl 6, but programming. Also approaching schools, colleges and other learning instutions and pushing perl 6 there
Even creating tools FOR schools written in perl 6 that allow students to engage in more hands on learning
In the mainstream marketing campaign I wouldn't use the word 'perl' anywhere either
sorear you seem to think we *want* a good marketing plan. 18:28
bynari sorear: If you don't, then no problem
doy the other aspect to this is that perl 6 is still changing rapidly enough that getting lots and lots of outside people interested in it who aren't early adopters could well be very harmful to its image
flussence
.oO( oh great, I've come back to one of *these* threads again... )
sorear I for one am a disciple of the original Haskell motto, Avoid success at all costs
PerlJam sorear: yuck. (I say that as a person who likes haskell)
doy marketing is not always an unqualified good, depending on what you are marketing 18:29
benabik would prefer more people working on implementation than more people trying to use the language.
isBEKaml sorear++ # What TimToady++ too said earlier. The only thing we need to prove to the world is to *do* Perl6.
bynari Marketing its self is 100% neutral 18:30
Tene When I first started learning Haskell, I tried to read through Learn You A Haskell after hearing about so many people liking it, and it was painful and awkward for me.
bynari If everyone was a logical machine we wouldn't need it, but people work the way they work and if you want to do good for people then you need to play the game of marketing 18:31
Tene I think that has a lot more to do with learning style than it does with "intelligence" of the documentation.
isBEKaml Tene: I felt the same way. Then I switched to RWH for a more straightforward discussion (Even then, the initial chapters felt awkward)
Tene I learned far more from reading the haskell 2010 report
"Here is syntax. Here is semantics. Next section." 18:32
RWH was okay for me, but not great.
sorear good to hear they FINALLY finished the revision effort
flussence I think I get why people say PHP has a good documentation website
sorear I read the '98 report in '07 or so, and I beleived that the "2010 report" would be unfinished forever 18:33
flussence it's pretty dense with actual information, to the point where you can start doing stuff without a tutorial
Tene I hate PHP's documentation, but I always hear about people loving it. Same with mysql, I hear about people loving the documentation, but I hate trying to find anything in it.
isBEKaml Tene: I had those irritating moments when they kept going like "We know what you're thinking... and imperative language discussion ensues.."
flussence Tene: I tried using the dev.mysql site recently, I know exactly what you're talking about :) 18:35
sorear I also learned a lot from SPJ's _Implementation of Functional Programming Languages_
isBEKaml those were about the only times I found myself skipping pages.
flussence front page: "BUY THIS!!1", search results: "here's a billion duplicate results for point releases, none of which are the thing you want"
the nicest thing about php's docs is that if you know the name of what you're looking for, it's at php.net/$name 18:37
(and if you don't, you can usually find it soon-ish by stumbling around blindly :) 18:38
Tene The big difference to me is between conversational vs structured; with conversational documentation, the actual information is scattered and mixed. Compare the table at the top of www.postgresql.org/docs/8.1/static/...n-iso.html to the conversational text in dev.mysql.com/doc/refman/5.0/en/set...ction.html 18:39
Talking with others, though, I know several people who greatly prefer conversational to structured.
flussence Tene++ # there's a name for those? :D
sorear I think the Perl 6 documentation would benefit from an organization where the semantic model is clearly set out in one place 18:40
benabik I tend to call it tutorial and reference documentation.
Tene flussence: those are the names I use; I've seen others.
bynari Conversational is great. Good teaching material shouldn't just give people technical details, it should show them new ways of thinking. Take them on a journey to open up their mind
PerlJam bynari: but only if it tells a good story 18:41
conversational but dry rarely works
Tene Conversational has its place, but if it's the *only* thing present, I'm going to hate using your docs. Even if it were nice the first time through, it would still be a pain for later reference use.
I don't want to read a story to look up language semantics. 18:42
isBEKaml Tene++ # Exactly!
Tene Some people do, though.
bynari Yep 18:43
PerlJam I don't think anyone wants to read a story to lookup language semantics. That's how they want to be introduced to the language or to learn new features, but once they've gotten there, they want a nicely indexed reference where they could lookup "methods" or "objects" and find the right bit of knowledge they are looking for 18:44
Tene PerlJam: I know a few people I've talked about this at length with who claim they do prefer conversational discussions for reference material, and claim they have trouble with structured reference style. 18:45
not_gerd there's no one-size fits all solution
personally, I'm most comfortable with 3 types of docs: basic tutorials/code examples, big picture language overview, specification-style reference docs
PerlJam Tene: I can only imagine that working when it's a story they are quite familiar with. "Objects? Ah, that's on page 35 right after the example using farm animals" 18:46
Are there any publications that regularly feature perl-related content? 18:48
like the Perl Journal used to do
or merlyn's column in Web Techniques 18:49
TimToady well, not very regular, but theperlreview.com/
not_gerd is there a best-practice workaround for the lack of <commit> in rakudo grammars? 18:50
TimToady looks like it may have gotten tired last year
throw an exception?
PerlJam It seems to me part of Perl's image problem is that all of the regular writers have gotten burnt out or moved on to other things.
37signals and RoR got popular mainly because DHH and Jason Fried went to every conf. they could and talked about themselves and what they were doing. 18:51
There's not enough of us "talking about perl" to a wider-than-the-echo-chamber audience 18:52
18:52 fglock joined
TimToady at the moment the Perl 5 community is outside the Perl 6 echo chamber, so we're marketing Perl 6 at Perl 5 conferences :) 18:52
bynari The wider perl5 guys are also part of that general programming group 18:53
18:53 xinming left
TimToady I think a killer app would be a refactoring PHP-to-Perl6 translator 18:53
bynari It's a lot of the perl5 guys that went to ruby/python
18:53 ggoebel joined
bynari as well as ruby/python picking up php programmers and new-comers 18:54
I was trying to advice a friend of mine to learn Perl, but he INSISTED that Python was the way forward and he'd been advised Python by his friend. This was an MIT post-grad nuclear physicist too
And his friend who advised him was a harvard grad physicist
isBEKaml I think this has already been talked about - RoR was mostly the reason for Ruby's popularity. There's some "loud noise" coming from haskell circles mainly due to Yesod
PerlJam TimToady: I think a killer app would be using Perl for something outside of the programming community :-) (bioperl maybe?)
TimToady and Perl 6 has picked some folks back up from all those communities too; they'll end up evangelizing their original communities 18:55
PerlJam if we can make the implementations useful enough
bynari Most people don't even know Perl 6 exists
not_gerd nom: "foo" ~~ / \d+ || { die } /; CATCH { $_.perl.say } 18:56
p6eval rakudo 182b2f: OUTPUT«X::AdHoc.new(payload => "")␤Method 'match' not found for invocant of class 'Any'␤»
not_gerd I'd like to get more information than that...
sorear leaes. 18:57
TimToady not_gerd: then consider supplying more information 18:58
isBEKaml n: die $!.say 18:59
p6eval niecza v15-4-g1f35f89: OUTPUT«Any()␤Unhandled exception: True␤ at /home/p6eval/niecza/lib/CORE.setting line 1362 (die @ 3) ␤ at /tmp/6o8pAreCBJ line 1 (mainline @ 3) ␤ at /home/p6eval/niecza/lib/CORE.setting line 3838 (ANON @ 3) ␤ at /home/p6eval/niecza/lib/CORE.setting line 3839 (m…
18:59 NamelessTee left
isBEKaml b: die $!.say; 18:59
p6eval b 1b7dd1: OUTPUT«Any()␤Bool::True␤ in main program body at line 22:/tmp/iEChAoVMpa␤»
TimToady why are you trying to die with a boolean?
ggoebel bynari: imho the goal of marketing for perl6 shouldn't be about bringing in companies and code monkeys... but about attracting talent and cross-polination between lessons learned from different languages and implementations 19:00
bynari The 2 aren't mutually exclusive 19:01
You can't bring in talent without the capitalist machine
[Coke] +# 03/07/2012 - rakudo++ ; niecza (96.02%); pugs (34.64%)
+"niecza", 20306, 1, 757, 1540, 22604, 23759
+"pugs" , 7325, 0, 2854, 868, 11047, 23568
+"rakudo", 21146, 31, 626, 1888, 23691, 24026
ggoebel perl6's selling points are the fertile ground, the pleasant community, and relative absence of ax grinding
bynari A lot of talent goes for Python because of Google
PerlJam ggoebel: I think we've got far too much "lessons learned" from other languages. That's not our weakness :)
ggoebel and the slow steady march of progress 19:02
bynari Python has a pleasant community. YOu can't take the USP of another brand
PerlJam ggoebel: slow and steady isn't sexy though.
ggoebel slow and steady is sexy to corporate types in the long run... 19:03
bynari Definitely not, ggoebel
Corporations are very much quarter-to-quarter
[Coke] n: say 8000/21146
ggoebel backward compatibility without vendor lock-in is sexy
p6eval niecza v15-4-g1f35f89: OUTPUT«0.37832214130331976␤»
isBEKaml bynari: tell that to Java shops.
[Coke] usp? 19:04
bynari Companies use Java because of the abudance of Java programmers
isBEKaml Unique Selling Point.
bynari That's also a quarter to quarter tactic
Rather than picking the best language and training up staff for the long-game, they'll take what they can now for quick results
ggoebel success breeds success and perception is reality
PerlJam "friendly community" is hardly unique to python.
bynari People perceive Python to be friendly, which means they have the monopoly on that one 19:05
TimToady non sequitur 19:06
bynari The same way people perceive microsoft to be user friendly. If another software companies comes along and tries to say they're just as user friendly people won't buy it. When it comes to user friendliness they'll go with MS
ggoebel bynari: what in your opinion is the potential big draw for perl6?
bynari If another company wanted to topple MS in an area they'd need something fresh to get into prospect's minds
timotimo i thought macs are "user friendly"?
ggoebel timotimo: ditto
timotimo or are macs just "easy"?
TimToady it's really easy to oversimplify
bynari ggoebel: Off the top of my head I would focus on creative expression and ease of use
something that allows any programmer of any skill level the creative expression to create what they imagine 19:07
PerlJam jots down a few more ideas for Perl 6 articles
bynari It's a fresh angle that python/ruby haven't gone after
The other things are secondaries. Like when you pick up something and it says "Contains strawberries", and you think cool.. I love strawberries. Then it also says "No added sugar" and you think "ooh lovely! sold" 19:08
You don't advertise the "no added sugar", you advertise the "contains strawberries", but the other bits seal the deal once the prospect picks up the box as it were
ggoebel bynari: how to do you sell that idea in a way that plays to the low, middle, and hi brow programmers and corporate pointy haired bosses without coming off as a pompous jerk to one group or jargon bingo idiots to the others?
TimToady ggoebel: you have different channels 19:09
bynari Well. You don't try to sell to everyone at the same time. You can't really do that
The market isn't the pointy haired bosses. Once enough people start using Perl 6 and creating cool stuff, more jobs become available, more people learn the language, more money is pumped into it
The goal isn't to have every company use it. We don't want to compete with Java 19:10
We want to compete with Python and Ruby
TimToady I want to compete with Java and PHP and Haskell
bynari Toppling java is a whole other strategy
ggoebel TimToady: I was waiting for someone to say that...
bynari Java is top of the commercial world. There's way more Java jobs than Python, but Python is huge because of Google 19:11
tadzik hopes Go gets huge because of Google
TimToady but most of that doesn't leak out of the Googleplex
tadzik I quite like Go, and I was never quite fond of Python
araujo write an application that takes advantage of perl6 features , fast, easy to deploy, and extend ....
ggoebel bynari: what is the LHF for marketing perl6? something that can be done successfully, recognized as success, and built upon?
araujo that would be a start
19:12 NamelessTee joined
bynari A couple of sites aimed at the mainstream needs to be created 19:12
ggoebel araujo: is there a perl6 implementation that iyho is ready for that?
araujo ggoebel, rakudo seems nice already .... 19:13
bynari Sites that start to become well known and become talked about
PerlJam ggoebel: I think Rakudo and Niecza both could fit that bill if you're willing to be a little lax on "easy to deploy"
bynari No perl6 dev talk on them, or news about the compilers, or language features etc. Just fun stuff you can do with Perl 6
araujo ggoebel, for a start, and small production code ... it seems good
bynari And on that site you'd have a list of companies who are using Perl 6 for production 19:14
araujo also note that, at this stage, developing a perl6 application, would also take you into perl6 development ... which can be a good thing :)
[Coke] ponders a yapc::na talk : "fun stuff you can do with Perl 6"
bynari That's something that has to be built up. No one will do it because no one else is doing it
flussence TimToady: if you want to appeal to PHP users, you have to learn to think like one. That way lies madness... :)
bynari Someone has to take the jump
PerlJam [Coke]: you know, I just jotted that down as an idea to expand upon myself :)
ggoebel a new site often becomes and old unmaintained one... which is a problem for perl
bynari And as I've said before, the name 'perl' has to be released for real success 19:15
tadzik [Coke]: I had an idea for a talk like Real World Perl 6
bynari I don't think you guys understand quite how important that is or the effect it would have
ggoebel the advent calendars have served that role... fun cool perl6 stuff
tadzik as in Actually Building Useful Stuff
19:15 pernatiy left
bynari If you hit the market with a fresh new name, no ties to the current perl perception 19:15
tadzik I met a few people here on GPW who were like "as soon as Perl 6 is capable of XXX I can use it"
bynari People perceive Perl 5 as being sloppy, old, write-only and even Perl 6 has a reputation now for not living up to promises 19:16
tadzik where XXX was things like "A web framework with database access"
which should be quite achievable right now
bynari A name is just a name. What matters is the SOUL of the project
19:16 am0c left
[Coke] PerlJam: you going to yapc::na? 19:16
PerlJam [Coke]: probably not.
:-(
skids bynari: that is indeed one of the things I like the most about Perl (5 and 6). There's a learning curve there if you want it, and the hill goes very high (all the way to meta programming now) but you can also have a lot of fun just cruising around at the same altitude. 19:17
bynari skids: Yep
It's definitely easier to be more productive in Perl as a newbie than python or ruby
But no one knows this
They just have this perception that Perl is messy and hard
TimToady so a web 2.0 site for six-year-old programmer wannabes 19:18
bynari I think you should rename the project Zerl
PerlJam [Coke]: since my dad died, I'm probably going to spend the next 6 months to a year helping my mom straighten out his things (there's just *so* much stuff that people leave behind)
ggoebel I've got some 9-10 year old programmer wannabes
bynari Z = Very cool
ggoebel make it a web 2.0 game that you can extend in perl6 and you'll hook the next gen
PerlJam bynari: Z as a meta-op is very very cool
bynari nods 19:19
[Coke] hugme: hugh PerlJam
hugme [Coke]:
[Coke] hugme: hug PerlJam
hugme hugs PerlJam
[Coke] #hugh jackman?
TimToady six-year-olds won't care what the PHBs think of Perl currently; they'll think it's cool
PerlJam my @foo = @a Z+ @b; # that makes me a little giddy every time I see it :)
TimToady and six-year-olds will remember that pearls are cool
araujo Well, you can write messy hard-to-read code in any language, I think this is more a matter of programming practice and "programming aesthetic" 19:20
ggoebel TimToady teach them to play with perl6?
bynari araujo: You're preaching to the choire :)
ggoebel sounds similar to something a wise man once said about fishing
PerlJam teach a man to fish and he'll sit in your boat and drink all of your beer? 19:21
ggoebel There's alice, squeak, etc. that mix art, programming, and play 19:22
TimToady and haven't taken over the world either
araujo bynari, I do think about that ... and I think programming is going that way too .... look at today's languages ... we have declarative programming taking more strength through different projects, and many languages are focusing as much in aesthetic as in any other aspects that probably were the main focus before, like optimization, speed, and so on
For example, Go ... many of its decisions design are based on "aesthetic" 19:23
TimToady indeed, and "blech" :)
araujo :) 19:24
TimToady I think many of Go's design decisions are based on "anaesthetic" :P
bynari The mind solves problems through beauty
TimToady "I no longer feel how much it hurts to pretend to be a computer"
bynari When something, like a problem can be perceived in a more beautiful way we can often see solutions that we wouldn't otherwise have seen 19:25
araujo The code is usually very readable .. at least I think so .... and not hard to get into system programming with it
ggoebel People tend to have fond memories of their first programming languages no matter how disfunctional they were...
[Coke] moritz: wow, autounfudge is so much nicer on pugs. ;)
ggoebel perl6 for 6 year olds sounds like a very nice goal
TimToady gee, maybe we should come up with a mascot that 6-year-olds will like... 19:26
ggoebel :-)
[Coke] I wonder if it will continue to be fast as it catches up feature wise.
ggoebel got to go pick up my 5-year-old
TimToady well, this is where the spiral approach to design will help us understand how the design prevents good optimization
where we have to force the programmer to think like a computer to get good performance, and where we don't 19:27
there is a set of problems for which Perl 6 is already "good enough", but every time we make it twice as fast, the applicability goes up by the square of that, or some such 19:28
I've already written an editor in Perl 6, but it runs a lot smoother on niecza simply because it's faster 19:29
19:30 mj41 joined, birdwindupbird joined
felher regarding S04-control.pod:1057: `If [something] or [otherthing] ([explanation for otherthing]).` <-- are we missing a "then foo happens" here? Otherwise it seems that i just don't get that sentence. 19:40
19:41 Trashlord left 19:42 not_gerd left
PerlJam felher: no, that seems to be an incomplete sentence. 19:43
felher PerlJam: k :) 19:48
[Coke] pugs: say 3.Rat 19:49
p6eval pugs b927740: OUTPUT«*** No such method in class Int: "&Rat"␤ at /tmp/4nIf6f470W line 1, column 5 - line 2, column 1␤»
[Coke] moritz: can you get pugs to rebuild?
moritz [Coke]: I'll try 19:50
felher Another thing 'bout exceptions (S04-control.pod:1050): why do we set @! of the outer caller to all handled exceptions, if there weren't any unhandled exceptions? 19:56
19:57 preflex left 19:58 preflex_ joined, preflex_ is now known as preflex 20:01 krakan joined
moritz [Coke]: yes, pugs rebuild worked 20:05
20:06 gilm left 20:25 fglock left 20:31 cotto left
TimToady great, we all get to revalidate our ssh keys on github... 20:31
20:32 cotto joined 20:44 birdwindupbird left, benabik left 20:45 fsergot left, birdwindupbird joined
[Coke] pugs: say 3.Rat 20:49
p6eval pugs b927740: OUTPUT«*** No such method in class Int: "&Rat"␤ at /tmp/hxg3hX_zza line 1, column 5 - line 2, column 1␤»
[Coke] moritz: I meant p7eval pugs.
er, p6eval pugs.
20:58 birdwindupbird left 21:05 MayDaniel left
skids Hrm, interesting appeal from DuQu dissectors just posted to /. to try to identify what compiled the main body of the virus. 21:09
erm, malware, whatever 21:10
21:12 pernatiy joined
colomon moritz: this seems to be where my 64-bit Windows build is failing: building parrot in --gen-parrot, I guess: gist.github.com/1996282 21:13
21:13 GlitchMr left
colomon does that mean anything to anybody here, or do I need to wander over to #parrot? 21:13
21:15 sporous left, sporous joined, att joined
moritz colomon: no idea 21:16
tadzik phenny: ask jnthn how hard would it be to make S14-roles/attributes.t run on rakudo? 21:17
phenny tadzik: I'll pass that on when jnthn is around.
21:19 bluescreen10 left, pmurias_ joined 21:20 pmurias_ is now known as pmurias
pmurias sorear: hi 21:20
sorear: do you think p5/niecza interop would make a good gsoc project? 21:22
21:39 Trashlord joined 22:02 skids left 22:03 Trashlord left
felher moritz: fwiw: i think i found a typo in an old blogpost (perlgeek.de/en/article/mutable-gram...r-perl-6): "we're ambitious and what to allow". That "what" may have wanted to be a "want". :) 22:07
22:07 ksi left
felher moritz: nice post btw :) 22:07
22:08 Trashlord joined 22:10 benabik joined 22:11 thou left
mj41 TimToady: @homakov ... postereous, speakerdeck, scribd, github - and I only have started testing. ... github.com/rails/rails/issues/5228...nt-4286254 22:32
22:34 havenn joined 22:35 kaare_ left
felher after getting lost in moritz++ blog posts, /me decides to go to bed. good night, folks. 22:36
tadzik 'night 22:37
22:58 envi_ joined, thou joined 23:10 havenn left 23:14 mattp_ left, mattp_ joined 23:18 mj41 left, Trashlord left 23:30 Chillance left, skids joined 23:34 Tedd1^ left 23:43 sivoais left, PacoAir left 23:48 NamelessTee left 23:57 tokuhirom joined