»ö« 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! | Rakudo Star Released! Set by diakopter on 6 September 2010. |
|||
00:00
orafu joined
|
|||
ingy | star: $_ = 'hello'; .say() | 00:00 | |
p6eval | star 2010.09: ( no output ) | ||
ingy | star: 'hi'.say | 00:01 | |
p6eval | star 2010.09: ( no output ) | ||
ingy | star: say 'hi' | 00:04 | |
p6eval | star 2010.09: ( no output ) | ||
sjohnson | rakudo: say 'hi' | ||
p6eval | rakudo : OUTPUT«hi» | ||
sjohnson | .oO(???) |
||
ingy | rakudo: $_ = 'hi'; .say | 00:05 | |
p6eval | rakudo : OUTPUT«hi» | ||
ingy | rakudo: $_ = 'hi'; .= ' world';.say | ||
p6eval | rakudo : OUTPUT«===SORRY!===Confused at line 22, near ".= ' world"» | ||
ingy | rakudo: $_ = 'hi'; $_ .= ' world';.say | ||
p6eval | rakudo : OUTPUT«===SORRY!===Quoted method name requires parenthesized arguments at line 22, near ";.say"» | 00:06 | |
00:11
risou_ left
|
|||
ingy | sorear: what debian mono package should I install for niecza? | 00:12 | |
niecza: say 'sorear' | 00:13 | ||
p6eval | niecza 914f55d: OUTPUT«sorear» | ||
00:13
orafu left
00:14
orafu joined
00:15
Chillance left
|
|||
dalek | tpfwiki: (Herbert Breunung)++ | www.perlfoundation.org/perl6/index....kup_tablet | 00:25 | |
diakopter | ingy: I didn't know there was one.. | ||
00:26
hanekomu left
00:28
orafu left
00:29
orafu joined
|
|||
dalek | tpfwiki: (Herbert Breunung)++ | www.perlfoundation.org/perl6/index....kup_tablet | 00:30 | |
00:33
masonkramer left
|
|||
dalek | tpfwiki: (Herbert Breunung)++ | www.perlfoundation.org/perl6/index....dex_tablet | 00:36 | |
sorear | ingy: dunno, I installed from source. I know you need libmono2.0-cil | 00:56 | |
moritz would have the full list | |||
you'll also definitely need mono-gmcs and mono-xbuild | 00:58 | ||
ah! mono-complete | 00:59 | ||
"Install this package if you want to run software ... not ... from a Debian package" | |||
01:00
redicaps joined
01:25
bluescreen joined,
bluescreen is now known as Guest49812
01:26
nymacro joined
01:30
Guest49812 left
01:34
bluescreen_ joined
01:37
bluescreen_ left
01:40
bluescreen_ joined
|
|||
sorear | TimToady: What do <( and )> do in subrules? | 01:43 | |
01:48
bluescreen_ left
|
|||
ingy | sorear: where is the name Niecza from? | 01:50 | |
sorear | masak | ||
ingy | any idea what it means | ||
sorear | it's a badly misremembered line from a joke dub of a music video on youtime | 01:51 | |
ube | |||
ingy | cool | ||
sorear: I just showed Damian the irc log | 01:53 | ||
he thought I said Nietzsche earlier | 01:54 | ||
and he thinks it should actually be called Nietzsche | |||
colomon | "That which does not crash you makes you stronger." | 01:55 | |
ingy | that which requires mono-complete makes you stronger | ||
colomon | ingy: ask Damian how his p6 modules are coming. :) | 01:56 | |
sorear | ingy: which irc log? | 01:58 | |
also, the name Nietzsche is ... taken. | 02:01 | ||
sorear can't imagine Niecza is very TheDamian-compatible | 02:05 | ||
02:06
bluescreen joined
02:07
bluescreen is now known as Guest86192
|
|||
TimToady | sorear: all they do is change .from and .to, as usual | 02:08 | |
sorear | TimToady: consider my regex foo { a )> b }; "abc" ~~ /<&foo>c/; "ab" ~~ /<&foo>b/ | 02:12 | |
which one matches? | |||
02:19
TypeNameHere joined
|
|||
TimToady | the second one does | 02:20 | |
02:21
whiteknight joined
|
|||
TimToady | what follows )> is like a lookahead | 02:21 | |
ingy | sorear: /tmp/tmp52a1123b.tmp: 1: viv: not found | 02:25 | |
what's viv? | |||
02:30
envi joined
02:35
dd-sphere joined
02:36
gimix joined
02:45
TypeNameHere left
03:06
Guest86192 left
03:15
hercynium joined
03:21
whiteknight left
03:30
kanishka joined
03:36
satyavvd joined
03:37
QinGW joined
03:41
[particle] joined
03:55
plobsing joined
04:00
plobsing left,
Chillance joined
|
|||
sorear | ingy: still here? | 04:35 | |
04:37
hercynium left
|
|||
sorear waits for ingy to return. | 04:47 | ||
05:03
kanishka left
05:26
cjk101010 joined
05:39
plobsing joined
06:06
_kaare joined
06:08
sftp left
06:11
stepnem joined
|
|||
kthakore | Hello, is a perl6ier way of injecting scalar references into a callback's scope? In perl5 I do $foo->set_callback( set{ _local_callback( @_, $local_in_scope_scalar ) } ) a lot. | 06:17 | |
or does that just mean a bad design .... prolly the later ... | |||
oops also s/set/sub/g | 06:18 | ||
06:22
perimosocordiae joined
|
|||
TimToady | my $lexical; $foo.set_callback( -> $param { whatever($param,$foo) } ); | 06:22 | |
er | |||
my $lexical; $foo.set_callback( -> $param { whatever($param,$lexical) } ); | 06:23 | ||
the lexical comes from the lexical scope, the parameter is passed by the caller of the callback | |||
kthakore | wow this is magic! | 06:24 | |
TimToady | just like in Perl 5, except you get to name your parameters | ||
kthakore | I really need to get SDL working with Parrot | ||
TimToady | seems to me it was long ago, but likely has suffered bitrot | 06:25 | |
kthakore | TimToady: parrotSDL ? I forked it a few months ago, but parrot was a moving target | ||
it was working for a while though | |||
so let me get this straight ... if I do -> $param { whatever ($param, $lexical ) } | 06:26 | ||
in whatever( ) I can just us $param and $lexical? | 06:27 | ||
use* | |||
no need to do 'my ($param, $lexical) = @_' ? | |||
TimToady | yes, P6 has real parameters now | ||
kthakore | .... -.- | 06:28 | |
ok I really need to get parrotSDL caught up now | |||
TimToady | well, $lexical isn't a parameter, but yes | ||
kthakore | thanks TimToady | ||
TimToady | you could write it sub ($param) {...} if you want it to look more p5ish | ||
kthakore | ok I am confused ... | 06:29 | |
sub ($param) ? | |||
is that like sub { my $param = shift ... | |||
TimToady | yes | ||
kthakore | ah ok | ||
TimToady | you can have multiple parameters | ||
kthakore | sorry if I didn't get that right away ... I am pulling an all nighter | ||
What I am really interested in is the perl 6 grammar stuff ... but I am not sure if it is the same as what I am thinking. | 06:30 | ||
A while ago I was making a context free grammar language in ANTLR for MAgic the Gathering card rules. | 06:31 | ||
TimToady | p6 grammars are something like that | ||
kthakore | Magic The Gathering Card rules are essentially ( {Target} {Action} {modifier} ... so on) | 06:32 | |
TimToady: are as powerful as context free or similar to regular expressions? | |||
cause using regex for that stuff was really really painful | 06:33 | ||
TimToady | they are as powerful as you want them to be | ||
kthakore | hehe ... I should have seen that coming | 06:34 | |
TimToady | they can be context sensitive if you like | ||
kthakore | context sensitive as in @_ or $ context? | ||
TimToady | that depends on your language definition | ||
kthakore | I meant context free grammars as in defining a way to 'parse' text rules | ||
I am not really good at this stuff bascially | |||
I want to be able to do this | |||
' [Green Cards] {destroy} {turn} ' = Destroy all green cards this turn | 06:35 | ||
where ' [Green Cards] {destroy} {turn} ' is the card rule | |||
so this would be converted into a subroutine ... | 06:36 | ||
nah ... that would be crazy ... | |||
or possible? | |||
TimToady | anything is possible, and some things are easy | ||
sorear | doing NLP with Perl 6 is on the crazy side | ||
but good crazy | |||
kthakore | but is it NLP? | ||
because I use notations to tell what is the target | |||
TimToady | sounds pretty restricted to me | ||
sorear | oh | ||
I misunderstood | |||
thought you'd be parsing the card text | 06:37 | ||
kthakore | no no | ||
that converted manually | |||
hold on let me see if I have the XML we converted | |||
yay! Found it! | 06:39 | ||
hold on getting it some place public | |||
kthakore dusts off the xml | |||
sorear | if you have xml why not use it? | ||
kthakore | I will explain | 06:41 | |
again you are too fast ;) | |||
sorear: TimToady sdlperl.ath.cx/mtg/ | 06:42 | ||
C[Self: | Damage:Player,Waiting](Player:Waiting | Discard:1): is pretty much the 'rule' of the card | |||
So it does 'Damage the waiting player and make the player discard a card' | 06:43 | ||
C means it is only works in a certain phase | |||
... I forgot this ... wow this was sooo long ago | 06:44 | ||
sorear: I was trying to make a grammar for this in Antlr so I could make it applicable on the game state some how | |||
06:44
_twitch joined
|
|||
kthakore | my plan was to 'parse' this XML into subroutines ... | 06:45 | |
06:45
masak joined
|
|||
masak | morning, #perl6! | 06:45 | |
kthakore stays quite now while people look at his stupid insane thing .... | |||
hi masak | |||
06:49
justatheory left
06:53
xinming joined
|
|||
sorear | hi masak | 06:53 | |
kthakore | so ... is that language possible to parse in perl6 grammars? | 06:57 | |
or do I need to define my language better? | |||
06:59
xinming left,
xinming joined
07:00
__david__ joined
07:02
nymacro left
|
|||
kthakore | hmm I guess you guys are busy I am gonna head to sleep | 07:09 | |
masak | kthakore: not busy, just low activity right now. | 07:10 | |
kthakore: I haven't finished backlogging. when I do, I'll have a look. | |||
sorear | kthakore: perl 6 grammars contain a Turing complete language, so they can parse any recursively enumerable language | 07:11 | |
your question is not very meaningful | |||
kthakore | sorear: you are right I guess... I don't know how to ask a meaningful question here. I guess my real question is 'Given a card game, with rules defined by each card in play. How to generate a subroutine based on it's rule? ' | 07:14 | |
I thought grammars was the way to go ... but maybe not | |||
sorear | grammars are the way to go for inputting data from adhoc text files | 07:15 | |
if you have XML, you should use an XML parser. Not a grammar. | |||
kthakore | sorear: I don't think you understant ... | 07:18 | |
I am not trying to parse XML | |||
sdlperl.ath.cx/mtg/EasyMTGCardsSyntax.xml | |||
see <Card> .... <Rule> C[Self: | Damage:Player,Waiting](Player:Waiting | Discard:1): </Rule> .... | 07:19 | ||
sorear | ick | ||
kthakore | the text I am trying to parse is ' C[Self: | Damage:Player,Waiting](Player:Waiting | Discard:1): ' | ||
sorear | you combine all the disadvantages of ad-hoc text with all the disadvantages of XML | ||
kthakore | sigh ... | ||
this is not about XML sorear | 07:20 | ||
ignore the xml I am sorry I picked it too | |||
masak | sjohnson: what's your criterion for a decent hex editor? would it be very hard to write one? | ||
kthakore | sorear: I want to parse something like ' C[Self: | Damage:Player,Waiting](Player:Waiting | Discard:1): ' | ||
into a function that I can call like $card->apply_effect() | 07:21 | ||
sorear | You'll confuse yourself less if you use an AST. | ||
masak stands back and lets sorear++ handle this | 07:22 | ||
sorear | Make a few classes, have the grammar produce a tree of objects representing the card, then write a recursive function to apply the effect | ||
kthakore | ah ok | 07:23 | |
so each node on the tree will have something like $node->target, $node->effect, $node->modifier ? | 07:24 | ||
and then I will work from the bottom of the tree up? | |||
sorear | I'd have to see your code to decide thayt | 07:25 | |
kthakore | ok | ||
I am in design phase as my first prototype is in C# and ANTLR | |||
... and I am looking for a better way to tokenize, parse, and make an AST | |||
sorear | What does C[Self: | Damage:Player,Waiting](Player:Waiting | Discard:1): mean? | 07:26 | |
(it's been about 10 years since I last played M:tG) | |||
kthakore | it means Damage the waiting player with same health as self ( the caller) | ||
and make tha same player discard a card | 07:27 | ||
sorear: the rules are very complex .... *sigh* | |||
sorear | I know the rules, mostly | ||
but I won't remember them without prompting | |||
How does it say that? | |||
kthakore | I had this for a third year design project (2 years ago) and it still haunts me | ||
sorear: in english? | |||
sorear | Where does it say "same health"? | ||
kthakore | Self: | Damage:Player,Waiting | ||
sorear | kthakore: English would be ideal, yes | 07:28 | |
kthakore | yeah let me get that sorry | ||
sorear | What are the other options? | ||
kthakore | oops I forget C[ ] means a condition | ||
www.coolstuffinc.com/main_viewCard....ng%20Cards | |||
sorear | What does Self: mean by itself? | ||
kthakore | the player I guess | 07:29 | |
my language making skills are really bad :( | |||
how do I define a good language for this .... | |||
sorear | What does Damage:Player,Waiting mean? | ||
kthakore | whenever abyssal specter deals damage to a player, that player discards a card. | ||
C[ ] is the condition .... | |||
sorear | What is 2bb? | 07:30 | |
I remember what 2w, 2r, etc are | |||
kthakore | 2 black mana | ||
err | |||
2 other cards | |||
sorear | What's the difference between 2b and 2bb? | ||
kthakore | blue and black | ||
bb = black | |||
yeah ... it is stupid ... | |||
oh wait no no | 07:31 | ||
that is 2 any colored card and 2 black cards | |||
2 bb | |||
sorear | so bbbb or bbww or bbrg etc? | ||
kthakore | bbbb 4 black cards | ||
bbwww 2 black 2 white | |||
yeah | |||
the number means any mana color | 07:32 | ||
sorear | I remember now | ||
kthakore | so my real problem I guess is to define a better language for this? | ||
07:32
jummy joined,
jummy left
|
|||
sorear | What does 'Waiting' mean in your example language? | 07:32 | |
kthakore | Player who is waiting to play | 07:33 | |
other player | |||
I guess | |||
there is a playing player and waiting player | |||
sorear: I know I have to redesign the language. However I was wondering if going into perl6 grammar was the correct direction for the implementation of such a game? | 07:35 | ||
moritz_ | perl 6 grammars are good for parsing that kind of stuff | 07:37 | |
the rest of the implementation should not be done with grammers :-) | |||
kthakore | moritz_: indeed ... that will be done with other stuff | 07:38 | |
ok I really need to go to sleep | 07:39 | ||
thank you folks | |||
sorear | kthakore: Every time I've played m:tg, there have been 5-10 players, and I've been allowed to attack any of them. That's not standard form? | 07:40 | |
ok | |||
masak | someone seems disappointed: twitter.com/predominant/status/7947907076460544 | 07:41 | |
but actually, Inf has some problems that we haven't yet resolved. the biggest one perhaps that it needs to act both as Int & Num & Str | 07:42 | ||
kthakore | sorear: yeah but I have to start some where simple | ||
masak: bah don't listen to them | |||
haha | |||
masak | kthakore: I don't let my happiness be contingent on things people say on Twitter, but I do pay attention to them. | 07:43 | |
kthakore: Twitter has this wonderful way of letting you hear things you might otherwise turn a blind eye to. | |||
s/blind eye/deaf ear/ # mixing of metaphors | 07:44 | ||
sorear | I think I'd be doing something along the lines of class AbyssalSpecter does Card[power => 2, toughness => 3, type => 'specter', cost => '2bb'] { method onDamage($taget) { $target.discard } } | ||
then use eval to load the card file | |||
kthakore | sorear: ... 0o | 07:45 | |
I couldn't do that in C# .... that is why I didn't consider eval! | |||
kthakore curses | 07:46 | ||
omg ... shit ... wow .... I mader this soooooooooooooo hard | |||
kthakore facepalms | |||
sorear: thank you ... so much ... and now I really need to go | 07:47 | ||
masak | some harsh criticism here: www.reddit.com/r/programming/commen..._released/ | ||
07:48
Trashlord joined
|
|||
kthakore | masak: oh yeah I saw that ... but you know what that means ... they are disappointed ... because they had expectations !!! | 07:50 | |
masak: so it is good hahah | |||
masak | also, the criticism that isn't raving lunacy is often spot on. | ||
Rakudo has a high memory footprint and runs slowly. | |||
kthakore | indeed but parrot is slimming up | ||
and I think rakudo and parrot feedback loop is gonna get it right soon ... ish | 07:51 | ||
masak | whatever. until it's fixed, the criticism is valid. | ||
those are big problems, and they don't have easy fixes. | |||
yes, people are working on them. | |||
kthakore | yeah | ||
please keep doing it! | |||
I can't wait to get SDL onto perl6 | |||
masak | but I have quite a lot of sympathy for those who write Rakudo off due to it being slow or memory-hungry. | ||
kthakore | then have lots of games! | 07:52 | |
in perl6 | |||
sorear | niecza: sub fib($n) { $n == 0 ?? 1 !! $n == 1 ?? 1 !! fib($n-1) + fib($n-2) }; say fib(25) | ||
07:52
am0c joined
|
|||
p6eval | niecza 914f55d: OUTPUT«121393» | 07:52 | |
masak | the main reason for Rakudo not being faster and slimmer already is that developing Perl 6 is non-trivial. | 07:53 | |
the past five years have been spent implementing and re-implementing tooling on Parrot just to be able to handle the requirements that Perl 6 poses. | |||
it takes time and effort, and it brought us to this point. that's awesome, but we're not done yet. | |||
most any outsider will look in and see that we're not done yet, but fail to see the massive amount of effort that went into getting us to this point. | 07:54 | ||
kthakore | masak: I am an outsider (if you will grant me that), and you know what I see? Smart People working Real Hard. | 07:58 | |
So I cut a lot of slack there | |||
seriously if people can't understand that ... well w/e | |||
but there are some who do (i.e. me ) | 07:59 | ||
masak | indeed. kthakore++ | ||
nevertheless, this is a case where deeds speak louder than words. if someone does something cool with Perl 6 (such as the URL dispatcher grammar last week), people will pay attention and get interested. | 08:00 | ||
and then the speed and memory footprint doesn't matter that much anymore. | |||
kthakore | I mean I tried to help with string IO in parrot ... failed sooooo miserably | ||
masak | perhaps not the simplest aspect to help with. | ||
kthakore | masak: immutable string IO ? | ||
sorear | I don't like this notion of Smart People and Non-Smart People | ||
kthakore | sorear: it is probably not right, but it is how I see it | 08:01 | |
masak | sorear: neither do I, but I tend to let it slip when it's a compliment. :) | ||
kthakore | sorear: can I put it like this? People who are more competent and capable and productive at compiler design then I am working really hard on a problem | 08:02 | |
hence proble not easy so give them slack. | |||
problem* | |||
sorear | pmichaud and jnthn leave me utterly awed too, but I don't let that stop me from contributing | ||
kthakore | I never said I won't contribute | 08:03 | |
I have tried when I have time | |||
I do it in parrot at times | |||
I was just explaining how my last attempt to add a String IO bug feature was a total bust | |||
sorear: still hasn't stopped me :D I am just biding my time till xmas break to get back into parrot | 08:04 | ||
s/bug//g | |||
sorear | in other news, making indexing efficient is... a lot harder than I expected | 08:06 | |
08:07
cosimo joined
|
|||
kthakore | sorear++ masak++ thanks guys and bye for real now ... | 08:07 | |
sorear | more than half of STD's time is being spent in return if @*MEMOS[$¢.pos]<ws>:exists; now | ||
masak | pmichaud and jnthn leave me utterly awed too, but I don't let that stop me from using my sledgehammer. :P | ||
sorear | (in other other news, niecza-compiled STD is now outperforming viv on the "parse niecza lib/SAFE.setting" benchmark) | 08:09 | |
moritz_ | \o/ | ||
masak | sorear: neat! | 08:10 | |
08:10
perimosocordiae left
|
|||
masak | I think the most useless entries by far in day-of-year articles on Wikipedia are those that chronicle the forming of US college fraternities. who, besides perhaps those that used to belong to it, cares? | 08:12 | |
moritz_ | ... with greek TLAs, often without meaning | 08:14 | |
masak | exactly. | ||
Phi Sigma Sigma was founded today, 97 years ago. FSS! | 08:15 | ||
08:18
palik joined
|
|||
jnthn | Writing talks the day I'm giving them. I do it for dotnet events too. | 08:25 | |
masak | :) | ||
jnthn busily slide hacks | |||
masak eyes $¢ warily. again. | 08:30 | ||
sorear | ? | 08:32 | |
08:32
QinGW left
|
|||
jnthn | masak: Like to give us your 2 cents on that? | 08:32 | |
masak | sure. | 08:33 | |
moritz_ expected such a *pun*chline | |||
masak | I completely missed that :P | ||
anyway, I don't see the rationale for making it a non-ASCII identifier just to make it one character long. | 08:34 | ||
we used to have a ¥ operator, but we decided against it. it became Z instead. | 08:35 | ||
moritz_ | I think the point is that it shouldn't be colliding with normal user-space variables | ||
rakudo: say '¢' ~~ /\w/ | 08:36 | ||
p6eval | rakudo : OUTPUT«» | ||
moritz_ | rakudo: say so '¢' ~~ /\w/ | ||
p6eval | rakudo : OUTPUT«Bool::False» | ||
masak | right, so it's in the same class as $_ and $/ | ||
moritz_ | right | ||
masak | and those have to be one-char. | 08:37 | |
moritz_ | maybe you could make it $¢/! but that wouldn't have any advantage over one char | 08:41 | |
masak | I was going to argue for $MATCH or some such, but I think I buy your argument about it needing to be a one-char non-\w identifier. | 08:42 | |
jnthn | I guess it'd be $CURSOR rtahre than $MATCH | 08:43 | |
moritz_ | but that would be a bit much CURSing in the source | ||
masak | jnthn: oh, right. thanks. | ||
08:46
Achilles14 joined
|
|||
jnthn | moritz_: yeah, no shit. | 08:47 | |
Achilles14 | hi all, is there a compiler that can compile perl6 source to .pbc file? I can not find it in perl6 command line options. | ||
moritz_ | Achilles14: rakudo can do it | 08:48 | |
Achilles14: perlgeek.de/blog-en/perl-6/my-first....writeback | |||
Achilles14 | moritz_: thanks, it works. | 08:51 | |
moritz_ | \o/ | 08:52 | |
at some point somebody should write a --compile option or so for rakudo | |||
jnthn | --target=pbc would be nais. | 08:53 | |
Achilles14 | moritz_: I remember early parrot version have this tool. | ||
08:53
wallberg joined
|
|||
Achilles14 | another question: is there anything like java's CLASSPATH, that I can deploy my program and dependencies seperately? | 08:55 | |
08:56
[particle] left
|
|||
moritz_ | there's a PERL6LIB environment variable | 08:57 | |
rakudo: say ~@*INC | |||
p6eval | rakudo : OUTPUT«lib /home/p6eval/.perl6/lib /home/p6eval/p1/lib/parrot/2.10.0-devel/languages/perl6/lib .» | ||
08:58
[particle] joined
08:59
rjbs left
|
|||
Achilles14 | can lib be pbc? so any programming language can use it. I think PERL6LIB is not the answer. may be something like PARROT_LIB be. | 09:00 | |
09:02
shabble joined,
shabble left,
shabble joined
|
|||
Achilles14 | "parrot -M./common.pbc main.pbc", something like this. | 09:03 | |
moritz_ | Perl 6 libraries can be precompiled, but you still need the source around | 09:04 | |
there are ways to load foreign libs, but currently they aren't as simple as we'd like them to be | |||
wallberg | hi all | ||
moritz_ | hi wallberg | 09:05 | |
masak | wallberg! \o/ | ||
Achilles14 | wallberg! \o/ | ||
09:07
rjbs joined
|
|||
wallberg | masak: i've made up my mind now. i'll have a go at making a phylogenetic program in Perl 6, which is the best way I can contribute to Perl 6. but I will need some help, especially with the grammars to read a newick tree :-) | 09:08 | |
masak | wallberg: absolutely. | ||
wallberg: pro tip: write tests for your grammar. | |||
that way, you won't regress on silly things. | |||
beyond that, I'm more than willing to help with the nitty gritty stuff. | 09:09 | ||
09:09
wooden joined,
wooden left,
wooden joined
|
|||
masak | so, I guess, are many others around here. | 09:09 | |
moritz_ | wallberg: pro tip: read perlgeek.de/en/article/debug-a-perl-6-grammar :-) | ||
masak | yeah, what moritz_++ said. | 09:10 | |
understanding the difference between regex/token/rule is also important. but that only comes with using them in practice for a while. | |||
wallberg | thanks guys. what editor is everyone writing their P6 code in these days? vim? Padre? | 09:11 | |
masak codes in vim | 09:12 | ||
moritz_ uses vim too | |||
masak | my general rule of thumb seems to be 'code in vim, write prose in Emacs' :) | ||
all other editors have left me wildly underwhelmed so far. | 09:13 | ||
come back when you have something with macros and scriptability, like vim and Emacs. | |||
moritz_ | masak: I'm curious, why the distinction? | ||
do you edit code more, while writing prose straight away? | 09:14 | ||
masak | moritz_: it's deeper than that. a lot of subtle things make the whole user experience of the two programs more suitable for that kind of writing... at least for me. | ||
09:15
rgrau_ left
|
|||
masak | moritz_: Emacs seems to "think" in paragraphs. vim has a lot of navigational and manipulative commands that are adjusted for code (or other hierarchical) primitives. | 09:15 | |
wallberg | well, I need something that tells me "nooooo!! you're doing it wroooong!!" as I type, so I'll start with Padre and see how it goes. or does vim have live syntax checking? | 09:16 | |
Achilles14 | I suggest emacs. | 09:17 | |
masak | I emphatically don't need an editor to tell me I'm doing things wrong. | ||
Tene vim | 09:18 | ||
moritz_ | wallberg: it highlits in real time, that's all | ||
wallberg | masak: yeah, it would be nice with an editor that says "Good job!" every once in a while. | 09:19 | |
Tene | masak: {} in vim navigate by paragraphs. also 'p' in object-select. I haven't done much with emacs; what does emacs do differently there? | 09:20 | |
Also () and s for sentences. | |||
masak | wallberg: reminds me of INTERCAL's insistence of prefixing an appropriate fraction of statements with "PLEASE " :) | ||
Tene: nod. I know that. seems in describing the quality I'm after, I botched it altogether. | 09:21 | ||
09:21
Achilles14 left
|
|||
masak | Tene: vim is not bad for editing prose text either, it's just that I find Emacs to be more suited for it. YMMV. | 09:21 | |
Tene | masak: I was curious about your milage, not trying to assert anything about mine. | 09:22 | |
masak | Tene: and yes, I use {} a lot already. I've actually turned off the arrow navigation keys in order to become more mindful of navigation. | ||
Juerd | vim is hard for prose because it doesn't support long lines | ||
I do use it, but with line wrapping and manual re-wrapping | |||
re-flowing even | |||
Tene | I haven't used emacs much. | ||
Juerd | Well, not really manual. I use gq. | ||
Tene | I have vertical arrows mapped to gk and gj | 09:23 | |
I rarely use them. | |||
Juerd | Ahhh. Thanks | 09:24 | |
Tene | Oh, I guess if you didn't know those, long lines might be a bit more awkward for you. :) | 09:25 | |
masak | Emacs is wonderful when it comes to re-flowing emails with those '>'s in them. | 09:27 | |
moritz_ | #perl6 - learn something new about the editor you've been using for $n years | ||
Tene | Every six months or so, I go read through the vim docs and look for something new to try using. | ||
szbalint | sometimes I think there is too much to learn about vim | 09:28 | |
masak | oh, and the vim docs are awesome. | ||
Tene | Marks were the biggest thing that stuck with me, since about 1.5 years ago. | ||
szbalint | most of the features don't fit in my head. | ||
tadzik | hello sixers | ||
szbalint | I am happy with those that do, though :) | ||
masak | tadzik: \o | ||
Tene | I also try to do that with bash, but less-frequently. alt+. is a nice hotkey that is severely underused. ^R even more so. | 09:29 | |
mathw | o/ | ||
Tene | It pains me seeing people re-type things that they could call up with like three keystrokes. | ||
moritz_ | alt+. is last argument from last line, right? | ||
mathw | I've got a friend who can never remember ^R | ||
Tene | moritz_: repeat it to recall last arguments from previous commands in the history. | ||
moritz_ | right | ||
mathw | but since I found out about it I've used it constantly | ||
moritz_ | I use Esc. which I guess is the same | ||
Tene | Yeah, same. | 09:30 | |
mathw | Didn't know about alt+. | ||
mathw tries it | |||
AWESOME! | |||
Tene++ | |||
Tene | You can also use ctrl+alt+y for arbitrary arguments from the previous command | ||
Esc,3,ctrl+alt+y = recall the fourth word from the previous command | 09:31 | ||
wallberg | hmm, I seem to have the ability to turn the whole channel off-topic. This isn't the first time :-) | ||
Tene | Or even esc,-,2 for second from the end | ||
I nearly never use it, but sometimes it's useful if there's a long url or something in there. | 09:32 | ||
moritz_ | wallberg: that's fine, as long as no ongoing p6 discussion is disturbed by it | ||
mathw | And we're learning things | ||
Tene | It's nice to look through: bind -p | grep -Ev 'not bound|self-insert' | ||
I've got a co-worker who is very set in his ways, and very resistant to changing anything, and it's painful to pair with him | 09:33 | ||
instead of ^Rfoo<enter>, he insists on using !foo:p<enter><mouse copy paste> | 09:34 | ||
Wow, I never knew about alt-y. I've wanted that many times. | 09:36 | ||
"Rotate the kill-ring, and yank the new top. You can only do this if the prior command is yank or yank-pop." | |||
www.gnu.org/software/bash/manual/ht...lling.html | |||
moritz_ | good news: all those commands are from readline, and every readline app gets the same by default | ||
Tene | Yeah, readline++ | 09:37 | |
Also, if you're not familiar with it, rlwrap is great. | |||
I use it all over the place to use readline with programs that don't have it built in. | 09:38 | ||
masak | wow! Tene++ # rlwrap | 09:44 | |
moritz_ | .u phi | 09:46 | |
phenny | U+03D5 GREEK PHI SYMBOL (ϕ) | ||
09:47
kjeldahl joined
|
|||
masak | getting heisenbug-like behaviour from the .trans thing. | 09:51 | |
I have this habit when doing .trans changes to rip the whole bit of code out into a script, do MONKEY_TYPING and augment the Str class with a new 'trans' method. | 09:52 | ||
when I do it like that, it behaves as expected. | |||
but when I run exactly the same test on the old .trans, it fails. | 09:53 | ||
moritz_ | that's... weird | 09:54 | |
mathw | that's really quite disturbing | 09:55 | |
masak | I can't really explain that right now. | ||
mathw | I hate that kind of bug | ||
masak | anyone want to try the script? | ||
moritz_ | did you remove .trans from Str before monkeytyping? | 09:56 | |
masak | no. | ||
actually, it's in Cool. | |||
moritz_ | ah, when it's in Cool you can monkey-type it into Str | 09:57 | |
masak | here's the code: gist.github.com/716485 | ||
first, I monkey-patch Str. then, I run all the Rakudo-enabled spectests. | 09:58 | ||
09:58
dakkar joined
|
|||
masak | note that I call the experimental variant .xtrans to keep things straight. | 09:58 | |
last two tests are the ones that differ. (and really shouldn't) | |||
Tene | masak: Perhaps I'm misunderstanding, but afaict, that script doesn't modify .trans in Str, only adds .xtrans | 10:02 | |
masak | Tene: that's correct. | ||
Tene | So, I'm not surprised that they differ | ||
masak | Tene: but I just copied the code from Rakudo. | ||
it's the same code. | 10:03 | ||
Tene | Ah. | ||
masak | actually, the obvious conclusion is that it's not the same code. that would fit better with the observation. | 10:06 | |
but why it wouldn't be, or how to test that it isn't, I don't know. | |||
10:07
timbunce joined
|
|||
masak | there's only ever one definition of .trans in Rakudo, and that's in src/core/Cool-str.pm | 10:07 | |
mathw | Heisenbug indeed | ||
Tene | Well, lemme update rakudo and check. | 10:08 | |
masak | sure thing. | 10:09 | |
suspecting it might have something to do with the naming, I renamed 'xtrans' to 'trans' in my script. the 'trans' test succeeds then. | 10:11 | ||
which means it's unrelated to naming. | 10:12 | ||
which is disturbing, because then it's likely the core in itself that's causing this. | |||
oh! could be something related to Cool/Str. | 10:13 | ||
Tene | That sounds to me like 'the version in core and the version augmented here differ' | ||
masak | right. | ||
Tene | You've recently had trouble with cached copies. Is the compiled version different from the source? | ||
As you mentioned augmenting instead of recompiling. | |||
masak | rakudo: say "aaabbbccc".trans( / \s+ / => " " ) | 10:14 | |
p6eval | rakudo : OUTPUT«aaa » | ||
masak | I think that rules out any issues with my local Rakudo. | ||
Tene | ... is that right? That looks broken to me. Why does 'b' match \s+ ? | 10:15 | |
masak | Tene: it's broken. that's the point. | ||
rt.perl.org/rt3/Ticket/Display.html?id=79778 | |||
that's what I'm trying to diagnose and fix. | |||
that's what's going all heisen on me. | 10:16 | ||
Tene | Oh, right, this is the part that takes FOREVER now. :( | ||
So, the last two tests differ in behavior. What is the difference? | 10:17 | ||
masak | one goes to the augmented method, the other goes to the method in Cool in the setting. | ||
Tene | I'm sorry. What's the difference in behavior? | 10:18 | |
I'm still waiting on rakudo to build. | |||
10:19
redicaps left
|
|||
moritz_ | masak: fwiw your example works fine for me on the REPL | 10:19 | |
masak | Tene: ah. the setting one exposes the bug in the RT. | ||
Tene: the augmented one doesn't. | |||
moritz_: testing. | |||
moritz_ | and in a script too | ||
tadzik | it semi-works for me | ||
> say "a aab bbccc".trans( / \s+ / => " " ) | |||
lambdabot | <no location info>: parse error on input `+' | ||
tadzik | a aab bbccc | ||
moritz_ | This is Rakudo Perl 6, version 2010.11-4-g90cb844 built on parrot 2.10.1 RELEASE_2_10_1-421-g73ceeb1 | 10:20 | |
Tene | I thought we got rid of lambdabot? | ||
moritz_ | .u pi | ||
phenny | U+A03A YI SYLLABLE PI (ꀺ) | ||
Tene | π | 10:21 | |
masak | moritz_: hm. works on the REPL here too. | ||
Tene | .u π | ||
phenny | U+03C0 GREEK SMALL LETTER PI (π) | ||
masak | I'm starting to suspect I simply have an old installed version of Rakudo. | 10:22 | |
moritz_++ | |||
Tene | Rakudo compile supposed to take so much longer than it used to? :( | ||
masak: As I said. :) | 10:23 | ||
moritz_ | Tene: on a new parrot it's supposed to be a bit faster again | ||
Tene | moritz_: Ah, I'm just using whatever --gen-parrot fetches for me | ||
moritz_ | Tene: if you rakudo is new enough, you should get a "fast" parrot | ||
masak | how do I configure Rakudo to install into /usr/local/bin/perl6 ? | 10:24 | |
moritz_ | perl Configure.pl --gen-parrot --gen-parrot-prefix=/usr/local | ||
masak | thanks. | ||
10:25
leprevost joined
|
|||
Tene | masak: Both tests pass for me. | 10:25 | |
masak | good. then I seem to have nothing to worry about. | ||
Tene | moritz_: I just pulled from git right before building, so latest rakudo master | ||
masak | Tene++ # thanks for the help | ||
I'm glad it wasn't a real heisenbug. | |||
moritz_ | it seems rakudo rebuild on p6eval is busted | 10:26 | |
masak | that would explain that part of the mystery. | ||
Tene | www.guardian.co.uk/science/2010/jun...ack-hands# -- fascinating | ||
masak | now everything works over here. | 10:40 | |
Tene | :D | ||
masak | so there really was no problem with .trans | ||
I'm glad that's the case, because it felt like I fixed it last time :P | 10:41 | ||
moritz_ | $ perl evalbot/build.pl rakudo | 10:42 | |
Can't handle revision 'RELEASE_2_10_1-477-gfa56f62 | |||
' at /home/p6eval/evalbot/build-scripts//rebuild-rakudo.pl line 43. | 10:43 | ||
masak | I've recently switched to building with --gen-parrot, so I guess that's what confused me. | ||
Tene | Ah. | ||
masak | now November works (mostly) fine! \o/ | ||
Tene | \o/ | 10:44 | |
mathw | wooo! | ||
tadzik | wow! | ||
that means Web.pm too? | |||
masak | no, but I will turn my attention to Web.pm in the weekend. | 10:45 | |
got another reminder email from jhorwitz++ about Web.pm. I'll reply to that one today, and try to get the dreaded Week 20 done in the weekend. | 10:46 | ||
masak replies now | |||
tadzik | does Web.pm have HTTP headers parser? | 10:48 | |
masak | no. | ||
the Rack paradigm assumes that HTTP headers come in through the usual CGI manner, in environment variables. | 10:49 | ||
10:49
satyavvd left
|
|||
tadzik | I feel like writing that | 10:55 | |
masak | please go ahead. | ||
mathw | HTTP parsing is fun | ||
Tene | tadzik: it's the job of whatever is running the rack-style app to handle parsing the HTTP headers. | 10:56 | |
In Web.pm case, usually HTTP::Daemon | 10:57 | ||
tadzik | It also seems simple | 11:00 | |
how funny it'd be to have a Plack-alike for Perl 6? | 11:03 | ||
masak | lunch & | 11:07 | |
Tene | tadzik: Funny? I think it's an admirable goal. | 11:13 | |
sorear out | |||
moritz_ | didn't mberends++ start a clone? | 11:15 | |
tadzik | server-simple-psgi, right | 11:20 | |
Tene: it doesn't differ much for me :) | 11:21 | ||
github.com/mberends/http-server-si...-small.pl6 there it is | |||
11:25
nymacro joined
11:36
fcojocaru joined
|
|||
fcojocaru | any way a newbie to perl can help as a dumb tester? | 11:37 | |
colomon | absolutely! | 11:45 | |
masak | oh, that would *rock*. | ||
fcojocaru: even going through RT and just running stuff would help us. | |||
fcojocaru | any wiki/trac page to get me started? | 11:46 | |
what do you use to keep track of the tickets ? | |||
tadzik | fcojocaru: newbie to Perl, or newbie to Perl 6? | ||
masak | rt.perl.org/rt3/ | ||
fcojocaru | to perl unfortunately | ||
colomon | fcojocaru: masak means the bug tracking software... checking filed bugs to see what they do now. | ||
fcojocaru | so I can only help on low level stuff | ||
sorry | |||
colomon | but also, you could provide valuable feedback on the book they are working on. | 11:47 | |
masak | we need all kinds of newbies. :) | ||
fcojocaru | one at a time guys | ||
tadzik | fcojocaru: go throught the Book (github.com/perl6/book) to learn your way around, it's quite probably you'll find some bugs/broken examples | ||
that'll also help you understand stuff | |||
fcojocaru | good point | ||
tadzik | Eventually you'll become a warrior in our MMORPG :) | 11:48 | |
fcojocaru | I send back issues to someone specific or use the rt.perl.org/rt3/? | ||
I'll have to decline the offer with the warrior | |||
I'm more of a bear thing you see | 11:49 | ||
so maybe a creep | |||
? | |||
tadzik | I don't think so | ||
loook at use.perl.org/~masak/journal/39445 | |||
masak | please don't link to use.perl anymore :P | ||
tadzik | fcojocaru: OOC< how did you got interested in Perl6? | ||
masak | strangelyconsistent.org/blog/perl-6-is-my-mmorpg | ||
tadzik updates his bookmarks | |||
masak | tadzik++ | 11:50 | |
fcojocaru | quite easy , I'm trying to learn perl5 now and wanted to see the future | ||
since I'm out of ideas on what to write to get me around, testing a bunch of stuff for perl6 gives you lots of insight | 11:51 | ||
masak | the future is here already. it's just unevenly distributed. :) | ||
fcojocaru | so it seems a good thing to do , whenever I have the time | ||
11:51
daxim joined
|
|||
fcojocaru | Thank y ou all for the welcome , I'll start going trough the book and hopefully be of some use to you | 11:53 | |
Good Luck | |||
masak | likewise. | ||
stop by often :) | |||
fcojocaru | will do | 11:54 | |
12:09
gimix left
12:10
whiteknight joined
|
|||
tadzik | phenny: "さようなら"? | 12:30 | |
phenny | tadzik: "Bye" (ja to en, translate.google.com) | ||
masak | "sayōnara". guess it's the macron over the ō that makes it five characters, even though it's four syllables. | 12:32 | |
sbp | phenny: "さ よ う な ら"? | 12:34 | |
phenny | sbp: "That they are" (ja to en, translate.google.com) | ||
12:35
wamba joined
|
|||
Tene | .u さようなら | 12:46 | |
phenny | Tene: U+3055 U+3088 U+3046 U+306A U+3089 | ||
12:52
oha joined
|
|||
jnthn | rakudo: (1, 1, * + * ... Inf)[0..10].join(', ').say | 13:10 | |
p6eval | rakudo : OUTPUT«1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89» | ||
13:15
bluescreen joined,
bluescreen is now known as Guest13659
|
|||
masak | rakudo: say (1, 1, * + * ... Inf)[0..10].fmt(:separator(", ")) | 13:17 | |
p6eval | rakudo : OUTPUT«1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89» | ||
masak | \o/ | ||
13:18
MayDaniel joined
13:24
Patterner left
13:26
sftp joined
13:31
MayDaniel left
13:32
mavrc joined
13:35
takadonet joined,
Psyche^ joined,
Psyche^ is now known as Patterner
|
|||
masak | *groan* you may take the au++ out of #perl6, but you can never take the #perl6 out of au: twitter.com/audreyt/status/8152126110826497 | 13:43 | |
punnery worthy of Worthington. :) | |||
13:46
mavrc left
13:49
florz left,
buu left,
MindosCheng left,
_ilbot2 left,
estrabd left,
robinsmidsrod left
13:50
kjeldahl left,
shabble left,
cjk101010 left,
Chillance left,
cotto left
|
|||
jnthn | lol my talk went well | 13:51 | |
(yes, I did manage to find a way to get the p6 evalbot into a .Net event talk... :-)) | |||
masak | nice | ||
13:51
mavrc joined
13:52
kjeldahl joined,
shabble joined,
cjk101010 joined,
Chillance joined,
cotto joined,
florz joined,
buu joined,
MindosCheng joined,
HarryS joined,
simcop2387 joined,
f00li5h joined,
ashleydev joined,
mkramer1 joined,
knewt2 joined,
pothos joined,
lamstyle joined,
sunnavy joined,
Sarten-X joined,
huf joined,
sECuRE joined,
cookys joined,
Bucciarati joined,
_ilbot2 joined,
estrabd joined,
robinsmidsrod joined,
Maddingue joined,
nperez joined,
frodwith joined,
leguin.freenode.net sets mode: +v _ilbot2
13:53
HarryS left,
kjeldahl left,
HarryS joined,
kjeldahl joined
13:57
mavrc left
14:00
estrabd left
14:01
estrabd joined
14:05
sftp left
14:06
sftp joined
14:12
mavrc joined
|
|||
takadonet | i cannot wait for smash to do the benchmarking for the newest rakudo star version | 14:12 | |
14:16
sftp left,
sftp joined,
mavrc left
|
|||
colomon | takadonet: why? | 14:20 | |
takadonet | colomon: should see a huge speed up on startup times | 14:21 | |
colomon | ah | ||
need to get smash to check in the scripts for running the benchmarks (if he hasn't already) so we can all duplicate them locally. | |||
takadonet | ya | 14:22 | |
14:23
mavrc joined
|
|||
colomon | I don't see any trace of the harness in bench-scripts. :( | 14:23 | |
14:34
cookys left,
cookys joined,
zby joined
14:35
timbunce left
14:36
`26 left,
Eevee joined
14:37
buu left
14:38
buu joined,
rurban joined
14:41
timbunce joined
14:52
_kaare left
14:54
Sarten-X left
15:01
Sarten-X joined
15:04
dual left
|
|||
oha | am i missing something, or the parenthesis are mandatory for a method call, but not on a sub call? | 15:08 | |
jnthn | rakudo: 42.say | 15:09 | |
p6eval | rakudo : OUTPUT«42» | ||
jnthn | oha: But if you want args, then yes | ||
masak | well, | 15:10 | |
jnthn | oha: There's also this colon syntax. :) | ||
oha | with args, yes | ||
masak | right. | ||
jnthn | But, well... | ||
oha | jnthn: could you explain the colon syntax a bit? | ||
jnthn | I think the colon is better left in smileys. | ||
colomon | rakudo: $*OUT.say: 42 | ||
p6eval | rakudo : OUTPUT«42» | ||
oha | ty | ||
masak | rakudo: say 42.fmt: "%05.2f" | ||
p6eval | rakudo : OUTPUT«42.00» | ||
colomon | but yeah, I'm not a big fan of the colon form in general | 15:11 | |
jnthn | (Some people like the colon syntax a lot. It's not my preference...but I've nothing really against it either.) | ||
colomon | still, TMTOWTDI | ||
masak | kill it with fire. :) | ||
jnthn | masak: -> #parrot | ||
;) | |||
masak | jnthn: what's this ':notdef:' thing? twitter.com/uasi/status/8174326008258560 | 15:13 | |
looks made up. | |||
jnthn | .:notdef maybe once woulda worked? | 15:15 | |
No, that still loosk wrong | |||
Looks made up to be :) | |||
There was a notdef method once. | |||
MindosCheng | pugs: <sleep read>.pick() | ||
p6eval | pugs: ( no output ) | ||
MindosCheng | pugs: say <sleep read>.pick() | ||
p6eval | pugs: OUTPUT«read» | ||
MindosCheng | Okey... | ||
jnthn | Perl 6. Solving your important life decisions. | 15:16 | |
masak replies to uasi | |||
perl6: say <work rest>.pick | |||
p6eval | pugs: OUTPUT«rest» | ||
..rakudo : OUTPUT«work» | |||
masak | oh noes :) | ||
jnthn | I like Pugs answer better here. :) | ||
masak | the two implementations kinda reveal their current active status, too. | 15:17 | |
jnthn | :) | ||
MindosCheng | masak++ | ||
jnthn | ooh, almost time for my next talk | ||
mathw | ooh | 15:18 | |
what's it on | |||
MindosCheng | jnthn++ | ||
masak | oh, there's a blog post too, containing a similar error: d.hatena.ne.jp/uasi/20101126/1290783645 | 15:19 | |
oh wait! | 15:20 | ||
:!defined: *does* work. | |||
but it... looks so wrong... :) | |||
the second colon is an invocant colon. | |||
the first is a pair constructor, along the same principles as :e | 15:21 | ||
masak holds head in hands | |||
how does one designate "invocant undefined" using the :U syntax? | 15:22 | ||
colomon | method blah(Frob:U $self:) | 15:23 | |
(he guessed, no idea if this works) | |||
masak | right. thanks. | ||
colomon | rakudo: sub blah(Str:U $not-a-string) { say $not-a-string.defined }; blah(Str) | 15:25 | |
p6eval | rakudo : OUTPUT«===SORRY!===Invalid typename in parameter declaration at line 22, near " $not-a-st"» | ||
colomon | rakudo: sub blah(Str $not-a-string) { say $not-a-string.defined }; blah(Str) | ||
p6eval | rakudo : OUTPUT«Bool::False» | ||
masak | that's what I got locally too. | ||
15:28
flussence joined
15:31
MayDaniel joined
|
|||
masak | rakudo: say 42.notdef | 15:35 | |
p6eval | rakudo : OUTPUT«Bool::False» | ||
masak | I'm not sure I can submit a rakudobug for this one. :) | ||
for all I know, it's "extra functionality" that Rakudo provides, on top of the spec. | 15:36 | ||
15:37
whiteknight left
15:38
nymacro left
15:41
yuki_ joined
15:54
clkao joined
15:57
yuki_ left
15:58
ch3ck3r joined
16:02
dd-sphere left
|
|||
moritz_ | std: sub bla(Int:U $x) { $x } | 16:10 | |
p6eval | std a194beb: OUTPUT«ok 00:01 121m» | ||
16:12
__david__ left
|
|||
tadzik | hello again | 16:12 | |
masak | std: class C { method bla($?CLASS:U $self:) {} } | 16:19 | |
p6eval | std a194beb: OUTPUT«===SORRY!===You may not use the ? twigil in a signature at /tmp/dF09kjh67D line 1:------> class C { method bla($⏏?CLASS:U $self:) {} } expecting twigilParse failedFAILED 00:01 120m» | ||
masak | didn't think so. | ||
16:20
jferrero joined
|
|||
masak | wow, JS to "borrow" the Perl 6 way of writing if/while/etc expressions without parens? twitter.com/Smylers2/status/8191234032013312 | 16:23 | |
takadonet | the original post does not even talk about Perl 6 ! | 16:25 | |
brendaneich.com/2010/11/paren-free/ | |||
16:26
risou joined
16:30
sftp left
16:31
timbunce left
16:38
timbunce joined
16:40
dual joined
16:44
sftp joined
16:47
ch3ck3r left
|
|||
kthakore | masak: morning. | 16:49 | |
masak | kthakore: hi there. | ||
kthakore | I am trying to remember our convo last night (6 hrs ago) | 16:50 | |
Where did you say most of perl6's memory gets into? | |||
16:50
mkramer joined,
fcojocaru left
|
|||
kthakore | in parrot or perl6 land or a combination of both? | 16:51 | |
flussence | irclog.perlgeek.de/perl6/2010-11-26#i_3031080 ? | ||
16:52
mkramer1 left,
mila_ joined
|
|||
kthakore | flussence: yeah but that makes no sense to me | 16:53 | |
tooling? | |||
what is that? | |||
masak | kthakore: I was thinking about the tools required to make Rakudo. | ||
kthakore | ah ... ok | ||
masak | nqp-rx being the most prominent example. | ||
tadzik | „Learning Perl 6 has been fun. I already want to stop writing Perl 5.”. Hah, I'm not the only one | ||
kthakore | masak: well where does perl6's memory useage mostly lie? Did anyone do a static analysis? | 16:54 | |
tadzik: yay from reddit :D | |||
masak | nqp-rx is the embodiment of lessons learned from PCT, which in turn profited from lessons learned from PGE and TGE. | ||
kthakore: yes, I'm sure chromatic has done memory footprint analyses. | |||
tadzik | kthakore: which thing? :) | ||
masak | kthakore: I think "a combination of both" is most fair. | 16:55 | |
kthakore | ok | ||
masak | kthakore: we know of memory inefficiencies in Parrot, and in Rakudo. | ||
tadzik | kthakore: yay for Game programming tutorial :) | ||
kthakore | is a problem of design or just how it is implemented at the time? | ||
tadzik: :D have you seen SDL_Manual? | |||
16:56
mila__ left
|
|||
kthakore | tadzik: I tried last night to get SDL onto parrot and Perl6 ... but the memory and CPU usage of perl6 is not ready for it yet | 16:56 | |
16:58
mkramer1 joined
|
|||
masak | kthakore: maybe you could try to conspire with either jnthn/nqpnet or sorear/niecza, either of which probably has a smaller memory footprint. | 16:58 | |
nomz & | 16:59 | ||
16:59
masak left
17:00
mkramer left
|
|||
tadzik | kthakore: yes, I love it! I wouldn't mind it PDF'd though | 17:12 | |
moritz_ wonders if oha's p6l mail should have gone to p6u | 17:13 | ||
17:13
risou_ joined
|
|||
tadzik wonders whether he should subscribe p6l | 17:14 | ||
oha | moritz_: if i've written in the wrong place, i'm sorry | ||
tadzik: and sorry if my mail is annoying :( | 17:15 | ||
moritz_ | oha: no problem, I was just surprised because usually p6l posts contain some new suggestions for the language | 17:16 | |
17:16
risou left
|
|||
moritz_ | oha: I haven't quite understood what you want do with the signature | 17:16 | |
tadzik | oha: I don't know, haven't read that yet | ||
moritz_ | did you try to get the names of the parameters? | 17:17 | |
oha | moritz_: it is what i did | ||
moritz_ | ah | ||
"TODO: i would like to find a way to use the Signature for table names" | |||
that's the part I didn't understand | 17:18 | ||
oha | but if you consider a "select tab1.field1, tab2.field2" | ||
moritz_ | how would a calling example look like? | ||
ah | |||
oha | then the signature couldn't be $x.y | ||
moritz_ | fully qualified table names | ||
oha | yep | ||
(or aliases, whatever) | |||
moritz_ finally understands | |||
moritz_ has no idea how to do that | 17:19 | ||
17:19
buu left,
buubot left
|
|||
oha | moritz_: i was thinking on nested signatures | 17:19 | |
but i still can't find a way to name a nested sig | |||
moritz_ | of course you could define some substitution rules | 17:20 | |
$me-foo becomes me.foo | |||
tadzik | oha: what is your realname, so I can find your post? | ||
moritz_ | also ' is allowed in identifiers | ||
oha | moritz_: yup. anyway i have to confess that i've started thinking how to do something like chagning the perl6 grammar | ||
moritz_ | tadzik: sender is Oha [email@hidden.address] | ||
oha | tarzik: should be Oha | 17:21 | |
moritz_: but then i've realized it could be done without, and i enjoyed it. feeling happy i tout it was good to share this :) | |||
moritz_: nice, the ' is the best candidate for | |||
tadzik | doesn't look bad to me | 17:22 | |
17:22
M_o_C joined
|
|||
oha | well, time to go home for me. ty for your suggestion moritz_. bye all | 17:23 | |
moritz_ | cia oha | 17:24 | |
oha: fwiw you might like to use placeholders instead of pointies | |||
17:24
oha left
|
|||
moritz_ | oatclip monads: chrisdone.com/posts/2010-11-25-lisk...skell.html | 17:32 | |
or rather, fingernails in oatmeal monads | 17:35 | ||
whatever | |||
moritz_ is out of brainz | |||
17:41
oha joined
17:57
lamstyle left
18:01
daxim left
18:04
timbunce left,
lamstyle joined
18:10
dakkar left
18:15
risou__ joined,
jferrero left,
mkramer joined,
mkramer2 joined
18:16
risou_ left,
mkramer left
18:17
mkramer2 left
18:18
mkramer1 left,
mkramer joined
18:23
takadonet left
|
|||
tadzik | std: my @a; @a[-1] | 18:26 | |
p6eval | std a194beb: OUTPUT«===SORRY!===Unsupported use of [-1] subscript to access from end of array; in Perl 6 please use [*-1] at /tmp/OKV6umIuEc line 1:------> my @a; @a[-1]⏏<EOL>Parse failedFAILED 00:01 120m» | ||
18:27
cjk101010 left
|
|||
tadzik | rakudo: my @a = 1, 2, 3; @a[-1]; | 18:27 | |
p6eval | rakudo : ( no output ) | ||
tadzik | rakudo: my @a = 1, 2, 3; @a[-1]; say $! | ||
p6eval | rakudo : OUTPUT«Any()» | ||
tadzik | rakudo: my @a = 1, 2, 3; try { @a[-1]; } say $! | 18:28 | |
p6eval | rakudo : OUTPUT«===SORRY!===Confused at line 22, near "try { @a[-"» | ||
mkramer | rakudo: my @a = 1, 2, 3; say @a[-1]; | ||
tadzik | oh come on | ||
p6eval | rakudo : ( no output ) | ||
tadzik | ===SORRY!=== | ||
Cannot use negative index -1 on Array | |||
so rt.perl.org/rt3/Public/Bug/Display.html?id=63986 can be closed, no? | |||
jnthn | *-1 | ||
mkramer | my @a = 1, 2, 3; say @a[*-1]; | ||
blah | |||
tadzik | yeah, I meant the bug. It should fail, that's ok | ||
mkramer | just make this damn bot print its last expression =P | 18:29 | |
tadzik | I can fix the error message so it will behave like STD and we can mark that bug fixed | ||
jnthn | (from earlier) "how does one designate "invocant undefined" using the :U syntax"? | ||
method (Foo:U $self:) { ... } # works | 18:30 | ||
But also should | |||
method (::?CLASS:U $self:) { ... } | |||
tadzik | I think this one also works now: rt.perl.org/rt3/Public/Bug/Display.html?id=66252 | 18:32 | |
this too: rt.perl.org/rt3/Public/Bug/Display.html?id=67374 | 18:33 | ||
oha | am i wrong or @a[-1] should not be the same error of $x=-1; @a[$x]; ? | 18:36 | |
18:36
am0c left
18:37
palik left
|
|||
tadzik | hmm, it can't be in-grammar then | 18:37 | |
tadzik feels like fixing | |||
oha | tadzik: right now, rakudo exit with the same error to me | 18:38 | |
tadzik | fail "Cannot use negative index $pos on {self.WHO}" if $pos < 0; | ||
in Any-List.pm. Looks good to me, I think the bug can be closed | |||
18:39
leprevost left
18:40
envi left
|
|||
tadzik | rt.perl.org/rt3/Public/Bug/Display.html?id=69218 -- closable to, methinks | 18:40 | |
18:41
MayDaniel left
18:45
PacoLinux joined,
ggoebel joined
|
|||
tadzik | rt.perl.org/rt3/Public/Bug/Display.html?id=72968 and this | 18:45 | |
18:45
ggoebel left
|
|||
tadzik | ...is there a RT guy around? | 18:45 | |
s/a/an/ | |||
or this: rt.perl.org/rt3/Public/Bug/Display.html?id=73148 | 18:47 | ||
18:49
wamba left
|
|||
tadzik | std: say | 18:52 | |
p6eval | std a194beb: OUTPUT«Potential difficulties: Unsupported use of bare 'say'; in Perl 6 please use .say if you meant $_, or use an explicit invocant or argument at /tmp/xyp8lC4b3r line 1:------> say⏏<EOL>ok 00:01 117m» | 18:53 | |
flussence | ooh, p5.13.7 just made a huge amount of my $dayjob code redundant. | ||
moritz_ | flussence: with which feature? | ||
flussence | auto-dereferencing array/hashrefs in builtins | 18:54 | |
moritz_ | ah | ||
tadzik | rt.perl.org/rt3/Public/Bug/Display.html?id=74476 -- closable | 18:56 | |
moritz_ | do we have tests enabled for that? | ||
ah yes, colomon++ unfudged some | 18:59 | ||
19:02
tylercurtis joined
|
|||
tadzik | rt.perl.org/rt3/Public/Bug/Display.html?id=76238 -- closable | 19:03 | |
19:04
patrickas joined
|
|||
patrickas | moritz_ ping | 19:05 | |
19:05
bpa joined
|
|||
moritz_ | patrickas: pong | 19:06 | |
patrickas | hello boss ! | ||
did you work on getting rakudo to build after the parrot git migration? | |||
tadzik | hey, it works | 19:07 | |
moritz_: do you have RT access? | |||
moritz_ | patrickas: yes | 19:09 | |
tadzik: yes | |||
tadzik: don't you? | |||
patrickas | moritz_: there are a few things not working for me (on win32) and I am unable to build rakudo anymore which might be unrelated | 19:12 | |
moritz_ | patrickas: I don't have a win32 dev machine, so any fixes are very welcome | ||
tadzik | moritz_: nah | 19:13 | |
I wanted to do some bugfixing today, but everything I check works alredy | |||
19:13
lamstyle left
|
|||
patrickas | The thing is I am building from scratch and I want to make sure that it is not my setup that is messed up ... did anyone else coplain on win32 ? | 19:13 | |
moritz_ | tadzik: step 1: create an RT account | ||
patrickas | or rather ... did anyone build successfully on win32 ? | ||
moritz_ | tadzik: step 2: tell pmichaud about your account name, and request edit privs for the perl6 queue | ||
patrickas: jnthn did some testing, fixed a failure, did it RONG, I fixed it differently... I don't know what the final outcome was | 19:14 | ||
patrickas | ok then I'll take it up with him then..t hanks! | 19:15 | |
tadzik | phenny: tell pmichaud may I get the access to perl 6 RT? I found like 10 bugs today which are alredy working and can be closed | 19:16 | |
phenny | tadzik: I'll pass that on when pmichaud is around. | ||
19:16
M_o_C left
|
|||
moritz_ | tadzik: go to rt.perl.org/rt3/ and create an account (follow the "Get a Bitcard account" link), and then also phennytell pmichaud your nick | 19:18 | |
19:19
lamstyle joined
|
|||
tadzik | moritz_: done that | 19:24 | |
bpa | I've been trying rakudo on and off, really liking what I see. I'm wondering if I've missed a dropped feature, or if I just imagined it. Did this work before? for 1 .. 3 b $x ... | 19:27 | |
Juerd | Er... | ||
bpa | that is supposed to be the -> unicode character | ||
Juerd | Unless you're suggesting blinking text as syntax feature, you may want to send that line again. | ||
bpa | I don't think my irc client supports it | 19:28 | |
sorry about that | |||
Juerd | :) | ||
flussence | “→”? | ||
bpa | In code it looks like a nice right arrow | ||
Juerd | I think it'd be madness to support arrows like that, since there are quite a few in Unicode. | 19:29 | |
bpa | so I was just imagining it then? | ||
Juerd | I guess so, especially as the language operators fit in latin1 | ||
gfldex | bpa: or you might have visions. with perl6 you cant relly tell the difference :) | ||
bpa | I may have used it with pugs, can't really remember | 19:30 | |
The hyper operator works though, and that isn't ascii | |||
gfldex | perl6 requires unicode | ||
Juerd | Still unlikely, bpa | ||
gfldex | if you want to you could define operaters like that | ||
Juerd | You can | 19:31 | |
flussence | »« aren't ascii, but they are in iso8859-1 | ||
bpa | I think I'll stick with the core operators and not confuse people who may come across my code | 19:33 | |
19:33
justatheory joined
|
|||
bpa | I do think its amazing that I could extend the grammar do to it if I really wanted though | 19:34 | |
(without editing the source that is) | |||
dalek | kudo: 82f3de0 | patrickas++ | build/gen_parrot.pl: extra check needed for gen_parrot on win32 |
19:35 | |
oha | rakudo: "a'b" ~~ /((\w+)\')?(\w+)/; say $/[0][0], "|", $/[0][0][0]; | 19:39 | |
p6eval | rakudo : OUTPUT«a'|a» | ||
oha | i expected to get 'a' with the $/[0][0]; why must I use $/[0][0][0]? | 19:40 | |
is the ? which make an array here? | |||
moritz_ | yes | ||
every quantifier turns that capture into an array | 19:41 | ||
oha | i had to realize it alone | ||
sjohnson | hi pals | 19:44 | |
19:44
lamstyle left
|
|||
moritz_ | oha: if you use too many nested captures, you should think about using (named) subrules | 19:47 | |
TimToady | or [] where you don't care to capture | 19:51 | |
19:56
_twitch left,
patrickas left
19:58
mkramer1 joined,
silug joined
|
|||
oha | moritz_: i've used $<foo>=(...) | 19:59 | |
19:59
mkramer left
20:00
kjeldahl left
|
|||
oha | can i do something similar to: -> %x<foo> { ... } | 20:00 | |
TimToady | such binding has been conjectured, though you can't have a subscript as a formal parameter name | 20:02 | |
20:09
lamstyle joined
20:10
Raynes joined
20:16
`26 joined
20:18
gbacon joined
20:25
masak joined
|
|||
masak | ahoy! | 20:25 | |
jnthn | ahoj, masak :) | 20:26 | |
tadzik | ahoj :) | ||
jnthn | rakudo: sub foo($ where (my %x<h> = $_)) { say %x<h> }; foo(42); # curious... | 20:27 | |
p6eval | rakudo : OUTPUT«===SORRY!===Non-declarative sigil is missing its name at line 22, near "$ where (m"» | ||
jnthn | rakudo: sub foo($x where (my %x<h> = $_)) { say %x<h> }; foo(42); # curious... | ||
p6eval | rakudo : OUTPUT«===SORRY!===Unable to parse postcircumfix:sym<( )>, couldn't find final ')' at line 22» | ||
jnthn | oh... | ||
duh :) | |||
rakudo: sub foo($ where (my %x, %x<h> = $_)) { say %x<h> }; foo(42); | 20:28 | ||
p6eval | rakudo : OUTPUT«Constraint type check failed for parameter '' in 'foo' at line 22:/tmp/asBHelsmTw in main program body at line 22:/tmp/asBHelsmTw» | ||
jnthn | Hmm. :) | ||
silug | warren: i'm surprised there aren't any commercial entities taking enough of an interest in spamassassin to put some manpower behind it. | ||
jnthn | rakudo: sub foo($x where (my %x, %x<h> = $x)) { say %x<h> }; foo(42); | ||
p6eval | rakudo : OUTPUT«Constraint type check failed for parameter '$x' in 'foo' at line 22:/tmp/YkiX0jvns_ in main program body at line 22:/tmp/YkiX0jvns_» | ||
silug | urk | ||
jnthn gets curious what that ends up failing... | |||
It's still pretty nasty looking even if it worked though. | 20:29 | ||
masak | I'm just going to blog a little, and then I'll go to bed. | 20:30 | |
don't want to ruin my good sleep streak :) | |||
tadzik++ # digging around in RT | 20:32 | ||
tadzik | masak: I wanted to fix some bugs, but all of them were alredy fixed :( | ||
masak | tadzik: how terrible! :) | 20:33 | |
jnthn: why was this again? twitter.com/uasi/status/8254037887549440 | |||
jnthn: uasi thinks it's "once for (dispatch) search, once for calling". is that the truth? | 20:34 | ||
also, uasi++ made a brainfuck interpreter in Perl 6: gist.github.com/717036 | 20:35 | ||
tadzik | oh, that could be a Parrot language | 20:36 | |
dukeleto | there is already a br interpreter on Parrot | ||
s/br/bf/ | |||
jnthn | I think there's (white)space for a br interpreter ;-) | 20:37 | |
masak: Yes | |||
20:37
timbunce joined
|
|||
jnthn | masak: It's something that I think can get optimized away but... | 20:37 | |
masak | ...but not easily. | ||
jnthn | Grr. I forget the subtlety | ||
We *do* avoid re-doing the nominal type checks. | 20:38 | ||
masak | ah. | ||
TimToady | masak: the Japanese consider the ō to be two syllables (or mora, to be preciser) | ||
jnthn | I suspect there's a comment in the binder somewhere hinting at where to stick a future optimization in this area. | ||
masak | TimToady: ah, thanks. that makes sense. | ||
uasi++ is very inquisitive. I like replying to his tweets. | 20:39 | ||
TimToady | in fact, they would count it that way in haiku as well | ||
masak | TimToady: I was wondering about that. | ||
TimToady | english can stuff a lot more into a haiku than japanese can... | ||
tadzik | Hmm, brainfuck almost works | ||
20:53
bpa left
21:01
ch3ck joined
|
|||
lue | ohayo wurld o/ | 21:11 | |
masak | hellue! | ||
21:11
kfo joined
|
|||
sjohnson | hi | 21:12 | |
masak | sjohnson: \o | 21:14 | |
sjohnson | :) | ||
lue | it's strange. While writing a few tests last night, I started writing tests for things that will fail, and I had the urge to make them pass. But I had to go to bed [curse you rotation of the Earth due to forces I cannot quite name at this moment!!] | ||
masak | doesn't sound strange at all. | 21:15 | |
you have to learn to pace yourself. | |||
for example, start writing tests earlier in the day :) | |||
then you'll have time to implement them. | 21:16 | ||
lue | it's as if... TDD works, somehow... :) | ||
masak | so it's rumoured. | 21:17 | |
oha | does "a $x b" get compiled as "a "~$x~" b"? | 21:18 | |
ch3ck | hej masak \o | ||
oha | or the expansion does not pass thru ~? | ||
masak | oha: more like "a " ~ ~$x ~ " b" | ||
ch3ck: godkväll. | 21:19 | ||
21:19
timbunce left
|
|||
moritz_ knows enough bokmål to understand that :-) | 21:19 | ||
though I'd say "god kveld" :-) | 21:20 | ||
21:20
rurban left
|
|||
ch3ck | this was swedish, not norwegian | 21:20 | |
masak | right. the language on which norwegian was based. :P | ||
masak wonders whether frettled or arnsholt will slap him first :) | 21:21 | ||
moritz_ | uhm, I thought it was based on Danish | ||
masak | a truly scary thought :) | 21:22 | |
hm. seems my hobby today is as a language chauvinist. | |||
frettled | hugme: hug masak | ||
hugme hugs masak | |||
masak | awww :) | 21:23 | |
I'll quote Teratogen. "I'm a failed troll" :) | |||
blog post! strangelyconsistent.org/blog/novemb...-saucepans | 21:24 | ||
dalek | ast: 52c1e70 | moritz++ | S02-builtin_data_types/array.t: [array.t] unfudge some tests that rakudo now passes |
||
masak | tadzik: did all those tickets that you yelled "closable" about ever get closed? | ||
tadzik: would you like an admin bit for RT? | |||
moritz_ | masak: I closed the first that tadzik++ yelled about, and claimed the second (because I know of no tests so far) | 21:25 | |
then I got distracted | |||
masak | oh, good-ish. | ||
moritz_+ # :) | |||
lue | today's xkcd is hilarious. | 21:27 | |
moritz_ | masak: :-) | ||
frettled | Zack Weiner's guest comic is nice, yes. | 21:28 | |
And SMBC is often entertaining. | |||
masak++ - positively good progress (blog) | 21:29 | ||
masak | er. | ||
masak is happy to have a clown nose: :©) | |||
frettled: yes. and the weekend will be even positiver. | 21:30 | ||
oha | what am i doing wrong here? multi sub infix:<~>(B $l, Any $r --> B) { ... | 21:31 | |
lue | .oO(I knew the colon was copyrighted! I knew it!) |
||
moritz_ | oha: maybe rakudo doesn't knwo about --> yet? | ||
masak | it does. | ||
21:31
tylercurtis left
|
|||
masak | rakudo: class B {}; multi sub infix:<~>(B $l, Any $r --> B) { ... }; say "alive" | 21:32 | |
p6eval | rakudo : OUTPUT«alive» | ||
masak | oha: from what I can see, you're doing nothing wrong. | ||
oha: please be more specific, or realize that you're doing it right. :) | |||
oha | masak: but when i my $x = B.new; $x ~ 'foo'; the sub isn't called | ||
masak | oha: I see. | ||
oha: can you demonstrate that with p6eval? | |||
oha | i'm using rakudo here | 21:33 | |
masak | so is p6eval. | ||
oha | oh ok | ||
masak | (see above) | ||
oha | i've understood what i was missdoing | 21:34 | |
the sub was inside class B { | |||
and probably interpreted as a method of B | |||
masak | no. | ||
but it makes it lexical inside B. | |||
oha | ohoh! got it | 21:35 | |
masak | oha: subs and methods are separate things, at least as far as declarations are concerned. | ||
oha | therefore i must put it outside the class, and if i'm going to include it as a pm i must declare it 'is export' too? | ||
masak | well, there's still a difference between the file and the scope of the module. | 21:37 | |
but yes, most of the time. | |||
masak sleeps | 21:39 | ||
21:40
masak left,
Guest13659 left
|
|||
Teratogen | I'm a failed troll!? | 21:43 | |
21:44
tylercurtis joined,
tylercurtis left
21:47
TypeNameHere_ joined
21:54
jferrero joined
22:00
mkramer1 left
|
|||
dukeleto | Teratogen: that is the worst kind of troll. | 22:24 | |
Teratogen | oh dear =( | ||
lue | rakudo: say ":a<b>" ~~ Hash # most likely fails, just curious | 22:25 | |
p6eval | rakudo : OUTPUT«0» | ||
jnthn | /win 11 | 22:31 | |
...fail! | |||
sorear | good * #perl6 | ||
22:31
`26 left
|
|||
Tene | /fail 11 | 22:32 | |
jnthn | :P | ||
diakopter | sorear: good | ||
lue | afk | 22:38 | |
22:53
jferrero left
22:54
`26 joined,
`26 left,
`26 joined
|
|||
tadzik | bah, masak's gone | 23:00 | |
sorear | @part #perl6 | ||
aloha: seen kthakore | |||
aloha | sorear: kthakore was last seen in #perl6 6 hours 3 mins ago saying "tadzik: I tried last night to get SDL onto parrot and Perl6 ... but the memory and CPU usage of perl6 is not ready for it yet". | ||
kthakore | sorear: hi | 23:01 | |
23:06
starcoder joined
|
|||
eternaleye | phenny: tell masak Hey! I read HP & the methods of rationality too! I prticularly like how Draco was absolutely floored by muggles being the first humans on the moon. | 23:07 | |
phenny | eternaleye: I'll pass that on when masak is around. | ||
23:12
wallberg left
|
|||
kthakore | sorear: ?? ok ... | 23:13 | |
I have to head out to a class then | 23:14 | ||
23:21
gbacon left
23:42
dual left
23:44
dual joined
23:56
jferrero joined
|