pugscode.org/ | nopaste: sial.org/pbot/perl6 | pugs: [~] <m oo se> (or rakudo:, kp6:, elf: etc.) (or perl6: for all) | irclog: irc.pugscode.org/
Set by Tene on 29 July 2008.
wayland76 Has anyone seen a USB version of the Space Cadet keyboard? 00:11
meppl good night 00:46
spx2 has anyone tried automating AJAX-pages for scraping with this for example htmlunit.sourceforge.net/ ? 00:53
lambdabot Title: HtmlUnit - Welcome to HtmlUnit
wayland76 Not I (said the little ed hen) 01:19
(in response to spx2 01:20
bacek_ pugs: say one('a','b','c') eq 'a' 01:35
p6eval pugs: OUTPUT[one(VBool True)␤]
bacek_ pugs: if (one('a','b','c') eq 'a') say { "foo" } else { say "bar" }
p6eval pugs: OUTPUT[*** ␤ Unexpected "say"␤ expecting operator or bare or pointy block construct␤ at /tmp/T0q4P16ZR6 line 1, column 30␤]
bacek_ pugs: if (one('a','b','c') eq 'a') { say "foo" } else { say "bar" } 01:36
p6eval pugs: OUTPUT[foo␤]
bacek_ rakudo: if (one('a','b','c') eq 'a') { say "foo" } else { say "bar" }
p6eval rakudo 32323: OUTPUT[foo␤]
bacek_ pugs: say ~(one('a','b','c')) 01:39
p6eval pugs: OUTPUT[one(VStr "a",VStr "b",VStr "c")␤]
bacek_ pugs: say ?(one('a','b','c'))
p6eval pugs: OUTPUT[one()␤]
bacek_ pugs: say ?(one('a',Bool::True))
p6eval pugs: OUTPUT[one()␤]
bacek_ pugs: say ?(any('a',Bool::True))
p6eval pugs: OUTPUT[any(VBool True)␤]
bacek_ perl6: if (Bool::True&Bool::False) { say "foo" } else { say "bar" } 01:49
p6eval pugs: OUTPUT[bar␤]
..elf 22847, rakudo 32323: OUTPUT[foo␤]
bacek_ heh. nailed 01:50
bacek_ msg masak 'if (Bool::True&Bool::False) { say "foo" } else { say "bar" }' - root of almost all problems with Junctions... 01:55
perl6: my $j=Bool::True&Bool::False; while ($j) { say "foo"; $j = Bool::False }; say "bar" 01:59
p6eval rakudo 32323: OUTPUT[foo␤bar␤] 01:59
..pugs: OUTPUT[bar␤]
..elf 22847:
..OUTPUT[foo␤foo␤foo␤foo␤foo␤foo␤foo␤foo␤foo␤foo␤foo␤foo␤foo␤foo␤foo␤foo␤foo␤foo␤foo␤foo␤foo␤foo␤foo␤foo␤foo␤foo␤foo␤foo␤foo␤foo␤foo␤foo␤foo␤foo␤foo␤foo␤foo␤foo␤foo␤foo␤foo␤foo␤foo␤foo␤foo␤foo␤foo␤foo␤foo␤foo␤foo␤foo␤foo␤foo␤foo␤foo␤foo␤foo␤foo␤foo␤foo␤foo␤foo␤foo␤foo␤foo␤foo␤foo␤foo␤foo􏿽xE2􏿽x90
bacek_ elf--
wayland76 has not quit 05:23
TimToady @tell masak there will certainly be some method for asking an IO handle how many chunks it has returned. alternately, an input line could be decorated with some kind of chunk number property 05:26
lambdabot Consider it noted.
wayland76 TimToady!!! 05:28
(Sorry, I'm in a good mood :)
I'm working on a Perl keyboard layout
wayland76 So far, it seems the best way is to use two keyboards :) 05:29
:)
literal !#$%&*/()[]{}<> as home keys? 05:49
wayland76 No, that's the swearing keyboard :)
My basic idea at the moment is that you put one hand on each keyboard, and then have all the punctuation and stuff around the place 05:50
ie. all those perl unicode symbols
I want it to also appeal to a) programmers other than Perl, b) Mathematicians and Scientists (Greek letters and maths symbols), and c) people who write Western european languages :) 05:51
Oh, and leave room to have another language on there too, so that it can also appeal to Biblical scholars (already has Greek, and they can order the Hebrew option :) ) 05:52
literal all those Perl unicode symbols? 05:53
wayland76 rakudo: $fh = open("dev/null"); @lines = $fh.lines();
p6eval rakudo 32324: OUTPUT[No handler to delete.␤current instr.: 'parrot;PAST;Compiler;as_post' pc 6024 (src/PAST/Compiler.pir:1651)␤]
literal those aren't that many if I recall
wayland76 well, the << and >> anyway
wayland76 yeah, there aren't but if I also include the set operators, someone will no doubt make a module that uses them :) 05:53
literal on my layout it's just altgr+z(«) and altgr+x(») :P 05:54
wayland76 Also want an easy way to input unicode characters :)
literal set operators?
wayland76 literal: Well, not on my layout :)
literal have you tried a nodeadkeys variant? 05:55
that would surely have «» somewhere
wayland76 I had a look for the set operators. I always use a font named SimPL when hunting for mathematical operators 05:57
because it has them :)
Yeah, found the «» operators :)
On the [] keys :)
I made my own keyboard layout, so it has strange stuff on it :)
I'm trying to figure out if rakudo does IO.lines() yet 05:59
Do I have to use IO or something?
Don't worry, I worked around it :) 06:01
Is undef.++ going to be implemented eventually? 06:12
rakudo: $count++ 06:13
p6eval rakudo 32324: OUTPUT[No handler to delete.␤current instr.: 'parrot;PAST;Compiler;as_post' pc 6024 (src/PAST/Compiler.pir:1651)␤]
wayland76 rakudo: [1, 3, 2].sort() 06:15
p6eval rakudo 32324: RESULT[[1, 2, 3]] 06:16
literal rakudo: undef.perl
p6eval rakudo 32324: RESULT["undef"]
pugs_svn r22865 | jnthn++ | [spectest] Some tests for smart-matching a regex against an array and a hash. 12:55
pmurias @messages 13:09
lambdabot mncharity said 20d 19h 6m 26s ago: re mildew as duplication (last night), I was wrong. eg, elf doesn'
ruoso said 18h 41m 7s ago: how do you keep track of which mold frame registers you use? should it just generate a random name for them and expect a later optimization that would consolidate the
usage?
pmurias @tell ruoso i just use a register with a unique name, good register allocation in none-trivial and will be done by an optimalisation pass 13:14
lambdabot Consider it noted.
pugs_svn r22866 | jnthn++ | [spectest] Add test for anonymous enums. 13:21
pugs_svn r22867 | jnthn++ | [spectest] Test for the case where a named enum has a single value, plus test export of declared enum values. 13:28
diakopter wayland76: space bar as modifier key? 13:42
azawawi hi 16:24
pugs_svn r22868 | jnthn++ | [spectest] Unfudge a test that Rakudo now passes. 16:34
pugs_svn r22869 | jnthn++ | [spectest] Some fudging/unfudging to add another test to Rakudo. 16:56
pugs_svn r22870 | moritz++ | [t/spec] tests for @() context forcers, patch courtesy by rindolf++ 16:59
r22870 | moritz++ | (plus precedence corrections)
moritz_ svn-- 17:01
I just did a propset commit, and it failed because the server did not respond
now it says I have no local changes (ie another 'svn ci' does nothing)
pmurias svn is a bit strange ;) 17:04
pugs_svn r22871 | moritz++ | [t/spec] fudge newly added tests 17:05
moritz_ pugs_svn: that's nicely phrased :) 17:06
erm, pmurias I meant
p<tab> isn't all that reliable ;)
[particle]1 it's never *your* fault, moritz, is it? :P 17:09
moritz_ [particle]: oof course not. How could it? ;-) 17:09
ususally I write the first two letters of a name, and then press tab
(but that doesn't work with pm<tab>, because we have two pm<tab>s frequenting the channel) ;) 17:10
moritz_ but in the case of svn, I fail to see how it could be my fault 17:11
meppl good evening 17:16
pugs_svn r22872 | moritz++ | [t/spec] fix bad plan in boolean-context.t
[particle] are there any expected spectest failures now, jonathan? 17:17
i'm seeing failures in S03-junctions/boolean-context.t
and -junctions/misc
hee, moritz++ 17:18
moritz_ the three failures in misc.t are because masak++ reverted some changes to rakudo without reverting the corresponding spectest changes
but since the reversion didn't fix what he thought it would, I'm not sure what to do - re-fudge the tests, or re-comit the changes? 17:19
[particle] ok, so i'll ignore those in my review of my local changes
if the reversion is a regression, it's not a proper reversion. revert it so we stop regressing.
:)
moritz_ [particle]: if you feel like you understand what's going on, revert the appropriate change ;) 17:23
or better, the inappropriate change ;) 17:24
[particle] :)
pugs_svn r22873 | azawawi++ | [STD_syntax_highlight] re-factored --simple-html for easier support of 17:27
r22873 | azawawi++ | [STD_syntax_highlight] future output formats
[particle] t\spec\S12-class\namespaced...............................Method 'baz' not found for invocant of class 'Foo;Bar' 17:29
moritz_ it works here (no local modifications) 17:30
pugs_svn r22874 | azawawi++ | [STD_syntax_highlight] more refactorings... --full-html and --simple-html 17:38
pugs_svn r22875 | azawawi++ | [STD_syntax_highlight] smaller code, refactored --ansi-text 17:45
r22876 | azawawi++ | [STD_syntax_highlight] more code cleanups 17:48
ruoso Hello! 18:00
lambdabot ruoso: You have 1 new message. '/msg lambdabot @messages' to read it.
pugs_svn r22877 | azawawi++ | [STD_syntax_highlight] implemented --snippet-html. Enjoy ;-) 18:05
azawawi hi ruoso 18:06
*: any preference on how YAML is formatted from STD_syntax_highlight? 18:07
[particle] i prefer delimited over indented 18:08
but that may just be me 18:09
azawawi [particle]: can u give me a more specific example? 18:09
hi masak
masak azawawi: hi azawawi 18:10
lambdabot masak: You have 1 new message. '/msg lambdabot @messages' to read it.
masak @messages
lambdabot TimToady said 12h 43m 22s ago: there will certainly be some method for asking an IO handle how many chunks it has returned. alternately, an input line could be decorated with some kind of chunk
number property
masak TimToady: yes, I assumed as much.
[particle] syntax: [ !scope_declarator 'my', !ws ' ', !sigil '$', !variable 'foo', ... ] 18:12
azawawi: i'm assuming the node types will be stored as yaml type info
oh, and btw your coloring misses param_var 18:13
pugs_svn r22878 | azawawi++ | [STD_syntax_highlight] better pod, added an explanation for redspans 18:15
azawawi [particle]: param_var, i dont see a css rule for it. 18:16
moritz_ that's why it's missing ;) 18:17
azawawi moritz_++
;-)
moritz_: --snippet-html is ready
moritz_ azawawi: nice ;) 18:18
azawawi moritz_: i wanted to rename it as --very-simple-html then i resisted the urge ;-)
moritz_
.oO( too simple html)
18:19
azawawi moritz_: it would be nice if we had a bot to 'highlight:' and send the output to sial.org 18:20
[particle] azawawi: a simple example like 'my $x; foo($x);' will show you the difference in highlighting between variables and param_vars
azawawi [particle]: i dont see a 'param_vars' from redspans 18:23
[particle] y/s// 18:24
pasteling "azawawi" at 212.38.153.104 pasted "redspans output for 'my $x; foo($x);'" (39 lines, 1.8K) at sial.org/pbot/33040 18:26
azawawi [particle]: no param_var in previous pasteling... 18:27
[particle] silly me. sub foo($x) {...} 18:30
my $x; sub foo($x) {...} # to be precise
TimToady I also noticed that method unitstop was highlighting unitstop as role unitstop instead of a method name. 18:33
pugs_svn r22879 | azawawi++ | [STD_syntax_highlight] param_var now works. [particle]++ 18:46
azawawi is running out from web-safe colors ;-) 18:48
TimToady I also tend to not like my quotes to be the same color as most everything else... 18:49
masak
.oO( outstanding quotes )
18:49
TimToady
.oO(in other words, most of my quotes are off color...)
18:50
masak :)
azawawi ;-)
TimToady well, to be more precise, my quoted strings. I don't actually care what color the quotes themselves are... 18:52
azawawi moritz_: regarding using STD_syntax_highlight over CGI; can we secure it by removing the 'lex' directory?
moritz_ azawawi: STD.pm doesn't work without lex/ 18:53
TimToady in theory, it could, but slowly
since it would have to regen in-core lexers every time
moritz_ don't think it's worth the trouble 18:54
TimToady maybe some way of having a read-only lex directory
ruoso TimToady, is there a way to output a frozen STD with its lex?
[particle] ala Storable?
ruoso yeah... maybe that...
TimToady not currently 18:55
and lex/ could still use about 100x of compression in any case 18:56
ruoso TimToady, thinking on a serialize format for STD is something that is going to be usefull in a near future
just like serializing any other type of package
TimToady I'll get a fair amount of compression when I give TRE the boot
azawawi listens carefully and drinks coffee... 18:57
TimToady certainly it will be to our advantage to have a version of STD that comes with common languages pre-lexed. 18:58
bacek pugs: if (none(Bool::True,Bool::False)) { say "foo" } else { say "bar" } 18:59
p6eval pugs: OUTPUT[bar␤] 19:00
bacek pugs: if (none(Bool::True)) { say "foo" } else { say "bar" }
p6eval pugs: OUTPUT[bar␤]
TimToady but at the moment, including the common lexers runs you about .5GB
[particle] eek!
TimToady and that's just disk space 19:01
well, a couple weeks ago it was about 4 GB, so we've got a 9x improvement already
and bzip indicates there's about 200x worth of redundant info there at the moment 19:02
most of it is there for the purpose of faking out TRE into working
azawawi moritz_: where can i find the code for various p6 bots? 19:06
moritz_ p6eval lives in misc/evalbot/ 19:07
polyglotbot (in #parrot) is a fork of that, I think
azawawi moritz_: thx 19:08
pugs_svn r22880 | jnthn++ | [spectest] Unfudge an enum test that we can now pass in Rakudo. 19:12
pugs_svn r22881 | azawawi++ | [STD_syntax_highlight] implemented --yaml, [particle]++ 19:32
ruoso @tell pmurias with some help of #p5p people, I'm starting the p5 smopp5 branch in the gitorious public git hosting... gitorious.org/projects/smopp5 19:53
lambdabot Consider it noted.
masak pugs: say ?(Bool::True&Bool::False) 20:05
p6eval pugs: OUTPUT[all(VBool False,VBool True)␤]
masak ok, adding a test that checks against this (faulty) behaviour
would `ok ?(Bool::True & Bool::False) == Bool::False` cut it? 20:06
moritz_ I think so, yes
masak makes it so
moritz_ or ok ?(Bool::True & Bool::False) !~~ Junction
masak ooh
moritz_ if you wan tto be explicit 20:07
masak how about both?
moritz_ (many tests)++
masak 'xactly.
azawawi @tell [particle] --yaml for STD_syntax_highlight is done 20:08
lambdabot Consider it noted.
masak perl6: say (!(Bool::True & Bool::False)).perl 20:09
p6eval elf 22847: OUTPUT[␤]
..pugs: OUTPUT[*** ␤ Unexpected " Bool"␤ expecting "::"␤ at /tmp/SDrlsBNFjq line 1, column 20␤]
..rakudo 32343: OUTPUT[all("0", "1")␤]
masak should the real answer be 'Bool::False'? 20:10
moritz_ no, Bool::True 20:11
masak still cannot reliably do junctive algebra in his head
pugs_svn r22882 | azawawi++ | [STD_syntax_highlight] print->say
r22882 | azawawi++ | [STD_syntax_highlight] an STD.pm sanity check [masak++]
masak moritz_: because False&True collapses to False, which is then negated? 20:11
moritz_ masak: right
masak moritz_: because of all(), right. were it any(), the final answer'd been True, yes? 20:12
moritz_ masak: !any(1, 0) is 0
because ?any(1, 0) collapses to 1, and the ! negates to 0 20:13
masak moritz_: oh, of course.
I meant that, just confused myself on the way.
moritz_ I thought so, yes ;)
masak 谢谢。
interested follow-up question: when dealing with junctions, when can I _not_ be sure that if I do ?(...) I get one boolean reply and if I do !(...) I get the other? 20:17
I know we talked about this yesterday, but... I need the repetition. 20:18
pugs_svn r22883 | azawawi++ | [STD_syntax_highlight] ETOOMUCHTIME now checks your LANG variable for .UTF-8 suffix 20:19
azawawi is feeling bored ;-) 20:21
moritz_ azawawi: write more tests ;)
masak azawawi: check out November and try getting it running ;) 20:22
moritz_ masak: jonathan++ fixed precompiled modules today, at least one commit message said that...
masak moritz_: aye. means we can do a server upgrade again. 20:23
I haven't tried it yet. but if true, it's excellent news.
moritz_ oh, and Namespaces::With::Double::Colons should work again 20:24
masak low-hanging fruit for someone, then. patches welcome :)
(be sure to actually try running the wiki before sending the patch to the list.) 20:25
azawawi moritz_: how do i generate IRC colors that are reliable to work on most clients?
moritz_ azawawi: dunno. What do you need that for? 20:26
azawawi moritz_: for 'p6_hilite: my $foo = <a b c>;'
moritz_ azawawi: don't. please ;) 20:27
azawawi moritz_: why? ;-)
masak pugs: say (?(1&0)).perl
p6eval pugs: OUTPUT[(Bool::False & Bool::True)␤] 20:28
moritz_ azawawi: because colors are annoying, and should be the clients choice 20:29
pugs_svn r22884 | masak++ | [t/spec/S03-junctions/boolean-context.t]
r22884 | masak++ | * added tests checking for the following Pugs bug:
r22884 | masak++ | ** <masak> pugs: say (?(1&0)).perl
r22884 | masak++ | ** <p6eval> pugs: OUTPUT[(Bool::False & Bool::True)â¤]
r22884 | masak++ | * (should really collapse to Bool::False)
moritz_ whoops, some characters in masak++'s commit message totally borked irssi or screen 20:30
masak moritz_: it looks borked here too. 20:31
azawawi moritz_: hmmm... we can pasteling the result
masak moritz_: it was the ␤ char from the evaluation.
moritz_ azawawi: that's better 20:32
masak looks like the bot thinks it got latin-1, when it really got UTF-8
pugs_svn r22885 | moritz++ | [t/spec] fix smartlinks in angle-brackets.t 20:33
moritz_ masak: pugs_svn isn't utf-8 aware :(
masak so much potential for improvement everywhere...
moritz_ I tried to convert all the bots to plagger, but failed miserably 20:34
azawawi moritz_: btw, i cant run evalbot on feather1 since it cant find some modules 20:39
moritz_ azawawi: evalbots don't belong on feather1
azawawi i know but i need to test it a bit on another channel... 20:40
azawawi promises to be careful ;-)
feather3? 20:41
moritz_ I don't care
azawawi ?
moritz_ I don't care which one
azawawi im gonna watch the elections now... sleep & 20:42
cya 20:43
masak azawawi: good night.
azawawi masak: what time is it on your timezone? 20:44
masak azawawi: almost ten in the evening.
21:44
azawawi 10:44 here
azawawi sleep & 20:45
moritz_ @tell azawawi all required modules are installed on feather1 now (for evalbot) 20:54
lambdabot Consider it noted.
jnthn hi all 21:46
for sub foo { return }
I'm thinking this returns an empty Capture.
I guess an empty Capture is considered false in boolean context. 21:47
Is it considered as defined, though?
say defined(foo()) # gives what?
masak jnthn: by my intuitive understanding of definedness, yes. is there a situation where 'false but defined' might break the Law of Least Astonishment? 21:50
moritz_ you know my opinion on that one ;)
masak moritz_: I don't. 21:51
jnthn masak: See rt.perl.org/rt3/Ticket/Display.html?id=58770
moritz_ masak: ah, you missed the discussion in #parrot. It's about a ticket I opened because I thought it should be undef 21:52
lambdabot Title: #58770: Bare return; should be undef
moritz_ this one ;)
masak hm, an empty list object is defined, an empty capture object is defined... why not an empty Capture object?
masak reads the ticket
moritz_ masak: because return; doesn't look like it returns anything defined
masak oh. yes.
ACK.
but it seems that a little of Least Astonishment is broken by either of the choices defined/undefined. 21:53
see my reasoning above.
moritz_ no, it only breaks consitency, not principle of least surprise ;) 21:54
jnthn S06 says that return preserves the capture of the arguments it is given.
masak is there a reason `return` should give an empty Capture, and not just undef?
I mean, it's given 0 arguments.
we can make that mean anything we want. 21:55
Hee, designing languages is fun! :>
moritz_ and hard. 21:56
masak no argument there.
diakopter masak: hahaha; good one. 21:57
masak diakopter: undef. 21:58
;)
diakopter heh
jnthn masak: The Spec says "The return function preserves its argument list as a Capture object,"
masak jnthn: but there is no argument list...
just `return`
jnthn No, that's just an empty argument list. 21:59
masak hokay.
jnthn sub foo() { ... }; foo;
or $obj.meth # empty list of arguments, same as $obj.meth()
I think elsewhere in Perl 6, no argument list is taken to be the same as an empty one. 22:00
masak wait a minute -- let's clear this up once and for all, just to be on the safe side
they're called 'argument' at the definition side, and 'parameters' at the call side of the method, right?
s/argument/arguments/
moritz_ jnthn: from the spec quote it seems more logical that it should be defined. But it doesn't feel right, IMHO ;)
masak it's certainly not in line with Perl 5 22:01
so it will astonish PerlFivers more than the Least Amount
though I guess we've never tried to astonish PerlFivers as little as possible anyway :) 22:02
TimToady eh, that's backwards, they're parameters on the definition side
and arguments on the call side 22:03
jnthn Yay, we haz TimToady!
TimToady: And the answer to the original question? ;-)
TimToady mmphph
masak TimToady: thank you. I can never remember, but will try from now on.
TimToady an empty capture does not automatically turn into an undef
masak then why is it called @ARGS ? :)
moritz_ masak: "formal parameters" sounds better than "formal arguments" ;) 22:04
jnthn TimToady: So "sub foo { return }; defined(foo()) # true ?
moritz_ masak: because it's the list of arguments?
masak moritz_: I don't think CS should have "what sounds better" as a guiding principle. :)
moritz_ masak: I know, but maybe it can help you remember
TimToady it's called @ARGS because it contains some, not because it are one 22:05
masak moritz_: might be because it's the list of arguments, yes. what would be a list of parameters in this case?
TimToady: makes sense.
the arguments are pulled through from the call side.
moritz_ masak: in Unix a program doesn't have a list of parameters.
TimToady jnthn: if you want a function to fail you should use fail 22:06
moritz_ masak: it should just die if it can't make sense of an argument list
masak moritz_: does that mean anything more than that the Unix tradition got the terms wrong?
moritz_: ah.
jnthn TimToady: I've not got a position on this, I just want to know what the correct semantics are. :-)
So the implementation can be correct.
TimToady well, it depends on what the context supplied by defined() is 22:07
masak doesn't really have a position either, but plenty of momentum 22:08
TimToady if it's looking for an item then it probably fails to bind at all
so the answer might be that defined() without args throws an exception
jnthn Ah, because we have a capture back and are trying to bind that capture to the signature of defined... 22:09
moritz_ and sub foo { return }; foo().defined?
TimToady or we can give a multi with 0 args and say it's undefined
jnthn The second would sound more sensible to me. 22:09
TimToady well, more to the point is what we do with defined(@foo) and @foo.defined 22:09
I'd argue that in either case we're looking at the variable as an item 22:10
so the real question is what does item( () ) return
seems like I already decided this once 22:11
jnthn TimToady: And remind me what the answer was? 22:11
TimToady you're asking the senile member of the group to remember something? 22:12
TimToady in fact, this was discussed on p6l 22:14
TimToady and I think the real answer is that item( () ) returns Nil, which is a form of undef that returns () in list context :) 22:23
TimToady basically () === Nil 22:23
whereas Object or Failure returns itself in list context 22:25
jnthn Ah, OK.
jnthn tires to make it fit into his head 22:26
TimToady would if fit better if we named it NothingToSeeHereMoveAlong instead?
jnthn :-P 22:27
masak JediMindTrick.
TimToady btw, the p6l thread was entitled: adverbial form of Pairs notation question 22:28
jnthn Thanks
TimToady though I think I said NIL in that thread
commuting & 22:29
spx2 hmm there's some nice stuff going on 22:33
I heard recently ActiveState and also BBC joined the advisory board of Parrot ?
is this to say that perl6 has more chances of coming out sooner than before ?
moritz_ finds it hard to judge the impact of these decisions 22:34
spx2 ok uhm... what is actually going on if those companies join an advisory board ?
Perl6 needs Parrot in order for the developers to code/test it... no ? 22:35
moritz_ I think most of all they publicly announce that they are interested in the parrot project
masak spx2: Rakudo needs Parrot, the other implementations mostly don't.
moritz_ Perl 6 witout Parrot is possible, as pugs demonstrated. The question is how good, portable and fast it can be without. 22:36
wknight8111 the question is how good, portable, and fast it can be with parrot
masak that remains to be seen.
spx2 I am waiting for a version that comes out where I don't need to make distinctions between implementations or the need to know that a virtual machine Parrot exists 22:37
masak writing PIR is a remarkable experience, at least. feels like Perl assembler. it's easy to imagine Rakudo working well on top of that.
wknight8111 spx2: eventually you won't have to worry about the implementation, no 22:38
masak spx2: what do you mean? you can already do `perl6`.
wknight8111 but we aren't at that point yet, perl6 is mostly usable now, but with rough edges
moritz_ both rough and sharp edges :/ 22:39
spx2 masak: I want to write stuff with it that won't break due to "not yet implemented stuff" or "not enough tested stuff" (is this a lame excuse ?)
moritz_ and I want a ponie.
masak wknight8111: ah I see what you mean. well, with a good test suite, and a faithful "Perl Implementation" stamp of approval, you won't have to worry about implementations.
spx2: what was the latest Perl 6 feature you added to an implementation? :P 22:40
spx2 moritz_: give me your poine when you get it,I'd like to have it
masak: none , but I don't feel I need to add something in order to use perl6
wknight8111 spx2: you have three options: 1) Play around with what we have, 2) wait patiently for the rest, or 3) join the project and help us complete it! 22:40
moritz_ sadly it doesn't work that way
spx2 wknight8111: part 3 22:41
wknight8111 spx2++
spx2 wknight8111: sorry , I meant part 3 demands pretty much experience,not every newbie coming around saying "I want that toy" can really build it
masak spx2: no, you don't have to add something in order to use Perl 6. but sometimes it's actually easier to help implement something than to complain about missing features, I've found.
spx2 my <return> key is broken
wknight8111 when I was younger, I was told to "press alt+F4 to fix that" 22:42
I've never been cruel enough to give that advice myself
masak ah, the days when Alt+F4 actually quit Windows...
spx2 why exactly is this book out if perl6 is not yet finished ? I imagine only fools would buy that ...(or not ?) apress.com/book/view/1590598334 22:43
lambdabot Title: APRESS.COM : Beginning Perl 6: From Novice to Professional : 9781590598337
masak spx2: the Perl 6 Spec is fairly stable these days.
we're just waiting for the implementations to catch up :) 22:44
moritz_ spx2: people have been complaining about a lack of documentation. Rightly so.
wknight8111 yeah, documentation is one of those things I want to be working on more seriously 22:44
moritz_ wknight8111: speaking of which, I've seen that you've written a (very short) intro to rules in one of the book chapters... 22:45
wknight8111: but the Perl 6 part already has a whole chapter on it..
wknight8111 yeah, just trying to keep things standard, no idea whether my ideas are right or wrong
moritz_ wknight8111: did you just forget about that? or is that duplication intentional? 22:46
wknight8111 intentional
moritz_ (it's horribly out of date, and needs more work, but it's a starting point for sure)
ok
spx2 oh you people must be working on compilers etc...surely you have written expression evaluators ? 22:48
how does one treat unary operators when writing a infix->postfix and afterwards shunting yard rpn evaluator ? 22:49
wknight8111 i've written some very painful expression calculators
at least, painful for me
moritz_ has written Math::Expression::Evaluator ;)
but I've never bothered with rpn
spx2 recursive descent ? 22:50
moritz_ yes
works with less theory ;)
spx2 moritz_: so you read something in particular for the "theory" or examples 23:01
spx2 for example I found a nice description of recursive descent in bjarne stroustrup "the c++ programming language" and also kernighan ritchie "the c programming language" 23:02
moritz_ spx2: I read compilers.iecc.com/crenshaw/. Before I thought that compilers were scary magic. After that I decided to write at least an interpreter ;) 23:03
lambdabot Title: Let's Build a Compiler
moritz_ spx2: it's a bit out of date, but IMHO still interesting
(and yes, I built an interpreter for a nearly usable, turing complete language shortly afterwards)
moritz_ anyway, I'm off to bed now 23:05
masak g'night. 23:06
spx2 same 23:07
masak @tell moritz_ languages/perl6/tools/update_passing_test_data.pl starts funny: "This tool runs the same test that C<make spectest> would, except those that C<make spectest> runs." (in other words, it does nothing?) 23:43
lambdabot Consider it noted.
[particle] masak: i have a feeling someone did a s/spectest_regression/spectest/g in langugaes/perl6/ and didn't review the changed docs 23:50
lambdabot [particle]: You have 1 new message. '/msg lambdabot @messages' to read it.
[particle] @moosages
lambdabot azawawi said 3h 41m 17s ago: --yaml for STD_syntax_highlight is done
[particle] \o/
masak [particle]: clbuttic mistake. www.codinghorror.com/blog/archives/001176.html 23:50
lambdabot Title: Coding Horror: Obscenity Filters: Bad Idea, or Incredibly Intercoursing Bad Idea ...