pugscode.org | Beware of `make install` and Pugs, it will do bad things to your system
Set by Aankhen`` on 22 May 2007.
00:05 guinex joined
Aankhen`` Hmm... "It's worth noting if you do not define parameters with the read-write trait explicitly, they will be copies, not references." # aren't they readonly aliases to the variables passed in by default? 00:06
Er, to the values passed in.
moritz ?eval sub f($x){$x=3} f(2) 00:08
evalbot_r16576 Error: Can't modify constant item: VInt 2
moritz ?eval sub f($x){$x=3} my $y=2; f($y)
evalbot_r16576 Error: Can't modify constant item: VRef <Scalar:0xb67902f8> 00:09
thoughtpolice Aankhen``: i'll change it in a sec. 00:12
Aankhen`` Kewlies.
00:12 mr_ank joined
Aankhen`` Also, "You can also explicitly make your parameters have a name, by prefixing it with :" # this isn't really very clear. You might want to say something like: "You can force certain parameters to always be passed by name rather than positionally, by prefixing them with :." 00:13
The original version makes it seem as if all you're doing in :$foo is explicitly marking that parameter as having the name "foo". 00:14
thoughtpolice++ though, nice article again. :-)
thoughtpolice thanks :) 00:15
i have two in draft, the round 3 and an interlude
Aankhen`` I wait with bated breath.
What's the interlude?
thoughtpolice but the interlude will probably come a bit later after I've collected more thoughts
coming from a haskell background I like functional programming. so the article is about functional[-esque] programming in perl 6. 00:16
Aankhen`` Ah.
00:17 weinigLap_ joined, prism joined
thoughtpolice so far I've gotten a section on higher order functions, and as I work with it more I'll find more parts of the language that relate to functional programming. 00:18
Aankhen``: I made the changes, though.
Aankhen`` That's cool, thoughtpolice++ :-) 00:19
thoughtpolice :)
higher order functions are the bomb. i got really close to them because of haskell.
Aankhen`` Heh.
thoughtpolice and now I don't think I can go back to passing function pointers 'n stuff.
Aankhen`` (languages without higher-order functions)--
thoughtpolice agreed. 00:20
Aankhen`` tries to think of some modern dynamic languages without HOFs
.
I wonder if PHP qualifies. 00:21
IIRC, you can pass functions as values and create anonymous functions, but there's some weird syntax for it.
thoughtpolice i wouldn't know off the top of my head; i 'quit' php a while back.
Aankhen`` I never did PHP, just picked up some stuff from being exposed to way too much. 00:22
Tene highly recommends the book 'higher order perl'
thoughtpolice i met this girl called rails and a friend called seaside, and shortly thereafter me and php broke up. :(
Aankhen`` LMAO.
Nice way to put it.
thoughtpolice i thought so too.
we agreed (or, at least, I stated) it was better for both of us. 00:23
Aankhen`` I thought PHP was neat when I first heard about it. Then I started reading about it, and I couldn't stand it.
thoughtpolice i just kind of started like, you know, hating it. 00:24
Aankhen`` Hehe.
Okay, I'mma go back to Lisp now.
thoughtpolice it felt messy and bloated (one namespace? :/), and once I saw how much more abstractly I could accomplish things in say, Rails, with a nice design pattern to boot, there wasn't a question in my mind. 00:25
then again I'm not much of a web developer these days, but when I have to, I try to do rails or at least use a framework of some sort. 00:26
Aankhen`` Have you seen Catalyst?
00:26 knewt joined
thoughtpolice that perl framework? Yeah, I haven't investigated it too much 00:27
Aankhen`` It's really very useful.
thoughtpolice saw something on reddit a while back, Catalyst vs. Rails or something I think.
i haven't heard much of it though in discussion, however. just from the jist of the article though I got interested to a degree. 00:28
Aankhen`` You should check it out if you're doing any Web development. :-)
thoughtpolice note this is really befeore I got into perl 6 and whatnot, so I have an excuse :P
Aankhen`` Hehehe.
thoughtpolice 'cause until I started with perl 6
I'd say I hadn't done perl in like, 3 years.
00:28 rashakil joined
Aankhen`` Owa. 00:29
thoughtpolice some trivial apps and whatnot; when I saw pugs and perl 6 my feeling for the language was fairly revived as I'm sure you can tell.
Aankhen`` Perl 6 has that effect. ;-)
thoughtpolice one of them got used by a commercial company, though
some old port scanning code I wrote.
Aankhen`` Fun. 00:30
thoughtpolice it was unbearably slow but the person who emailed me said they liked it because A) it was simple. B) they didn't have to write it. C) speed was of little importance since the thing only had to be run once every so often or somesuch.
but I was about 14 at the time
so I was pretty proud
00:30 nipotaway is now known as nipotan 00:35 nekokak joined
thoughtpolice wow, thanks apple software update! you totally killed my terminal sessions and for some reason made my system unresponsive! way to go. 00:35
dduncan really? its never done that to me 00:36
thoughtpolice yeah, my cpu usage shot to like 100% in an instant and half my stuff became totally unresponsive. luckily I have screen + ssh though so I didn't really lose anything.
what was weird is it didn't do it until like, 75% way through the update.
oh well, no harm no foul. 00:38
00:39 rlb3 joined 00:45 knewt joined 01:14 SubStack joined 01:16 dolmans joined 01:24 zamolxes joined 01:36 [particle] joined 01:53 [particle1 joined, rlb3 left
ingy hola 01:54
02:04 weinigLap joined
offby1 buenas dĆ­as 02:06
ingy hola 02:08
gaal: Syck is annoying me
its emitter seems to like to put trailing spaces on certain lines 02:09
which is legal but annoying
and hard to write tests for that work against saner implementations
so I want to complain to you gaal 02:10
:)
TimToady didn't you help write the spec? 02:22
dduncan come now, people are allowed to complain about their own work 02:24
TimToady heh
02:37 mako132_ joined
dduncan ?eval my $v1 = s1($v2); 02:42
evalbot_r16576 Error: No such subroutine: &s1
dduncan my $v1 = s1(:a1($v2));
?eval my $v1 = s1(:a1($v2)); 02:43
evalbot_r16576 Error: No such subroutine: &s1
dduncan how come no compile time errors?
anyway, what I wanted to demonstrate was that the second example gave different compile time errors than the first 02:44
the first example complained that $v2 was not declared
but the second was a lot more cryptic, simply saying Unexpected "$v1" ...
the $v2 not being declared was the problem, but it took me awhile to figure out why I got the other error, since things looked syntactically correct 02:45
(and the not being declared was due to a misspelling)
so it seems invoking a positional arg gives the better error, but a named arg the worse error
evalbot doesn't show it, but you can try entering the snippets I quoted at the pugs command line 02:46
02:56 japhb joined 04:01 baest joined 04:05 LCamel_ joined, scw joined 04:09 beppu joined, ofer joined, GeJ joined, idiotmax joined, spinclad joined 04:10 beppu_ joined 04:11 idiotmax_ joined 04:13 ahmadz joined
ahmadz good morning ;-) 04:13
04:14 grick12345 joined
offby1 mrgn stnly 04:16
04:16 ofer joined, GeJ joined, spinclad joined 04:21 GeJ joined 04:35 nipotan is now known as nipotaway 04:38 ofer joined, spinclad joined 04:45 ofer joined, spinclad joined 04:50 rindolf joined 04:51 ofer joined, spinclad joined 05:06 BooK joined
cj Zelda Mae Adams-Collier was born on 2007/05/28T1038 05:16
05:20 jisom joined
buu cj: Zelda?! 05:27
cj buu: yar 05:28
buu Wowch.
cj yes, like "doo doo doo, doo doo doo doo doo doo doo doo"
buu =[
There was a zelda in one of the thin man movies.
cj I mean o/~ doo doo doo, doo doo doo doo doo doo doo doo o/~
thin man movies? 05:29
you don't like the name?
buu Well..
I just think it could have gone better with a "Destroyer of Worlds" in there someplace.
cj ah, yes. probably 05:30
05:42 devogon joined
gaal he's Syck of it. okay that was probably the worst pun in the entire universe, sorry. 05:47
ingy: I hadn't noticed it was doing that... but it's got its own tests, how do they handle it? 05:48
I hope not with s{is <something>}{like <something> <ws>*} 05:49
ingy gaal: the tests expect various unneeded whitespace 05:54
explicitly
gaal lose, lose :( 05:55
wow, I wish "did you know"
style tips weren't so dumb 05:56
like, "You just upgraded firefox! did you know there are add-ons you can install?"
Yes, and I have like 5923 of them already!
ingy I'm writing multiple expectations in my tests, and making them pass if one yaml matches
gaal well, if the amount of randomly appended whitespace isn't predictable, that'd be a lot of yamls :) 05:57
05:58 franck__ joined
ingy gaal: 05:58
> perl -MYAML::Syck -e '$_ = Dump([1..2]); s/ /+/g; print'
---+
-+1
-+2
lambdabot Parse error
ingy it dumps "--- " on all docs for instance 05:59
amnesiac ingy, does that generats brainfuck? :P
ingy > perl -MYAML::Syck -e '$_ = Dump(\42); s/ /+/g; print' 06:00
---+!!perl/ref+
=:+42
lambdabot Parse error
ingy there's another
gaal yaml doesn't spec a canonical form, does it?
ingy amnesiac: :P
gaal: it does, and it's being reworked currently 06:01
but it looks more like json
it's not a default form
not human friendly
but very useful
gaal well, since loading and dumping are roughly as hard, i suppose you need to roundtrip in your tests more? :/ 06:02
why do you depend on yaml::tiny in t/, btw? 06:03
(didn't look at the source yet, just got errors for missing it)
06:06 araujo joined 06:25 Averell joined 06:34 franck___ joined 06:35 weinigLap joined 06:39 buetow joined
meppl good mornig 06:45
rindolf meppl: guten tag! 07:14
Hi gaal , ingy
07:16 renormalist joined
ingy hi rindolf 07:20
rindolf ingy: yo.
07:31 buu joined 07:36 toshinori_ joined 07:48 weinigLap joined 07:53 elmex joined 08:02 weinigLap joined 08:03 ahmadz joined
meppl good morning rindolf 08:11
rindolf meppl: what's up?
meppl: are you new here?
meppl :-P
not really
but im unproductive
08:12 obvio171 joined, thoughtp1lice joined
svnbot6 r16577 | renormalist++ | - cperl-mode.el: is reparsed trait + minor comment fixes 08:16
08:16 obvio171 joined 08:19 weinigLap_ joined
Tene moritz: using your irclog stuff for #reprap. Thanks. 08:27
svnbot6 r16578 | Darren_Duncan++ | ext/QDRDBMS/ : added part 2/2 of a test block (resembling actual user code) to Validator.pm ... as soon as the Example Engine can execute that correctly, QDRDBMS will be ready for its version 0.0.0 release 08:46
Aankhen`` Yay, v0.0.0! 08:47
dduncan well, the Perl 5 version will go out right then 08:50
the Perl 6 version, whenever Pugs does
possibly at a later version number by that time 08:51
Tene dduncan: very nice 08:52
dduncan fyi, anyone who would end up using QDRDBMS would probably be writing code like in the current Validator.pm, which doubles as a SYNOPSIS of sorts, or more likely they would use a bunch of wrapper functions to make it more terse as appropriate to their needs 08:58
writing in ASTs tends to be verbose 08:59
moritz Tene: does it work? *g*
Tene moritz: mostly. couple of glitches had to be smoothed over, but mostly it works great. :)
dduncan fyi, this example basically illustrates performing a 3-data-table join plus a search 09:01
it also illustrates loading said tables, in a roundabout way, roundabout being that, in this case, the tables are lexical variables
in fact, this code is directly derived from a p6l post I made 1-2 months ago 09:02
the one that requested some relational operators in Perl 6
relational meaning for databases in this context
that post included a use case example of why a relational join is useful, and had examples about farmers 09:03
Tene I remember reading that post. I thought you were just a madly-raving nutjob at the time. ;) 09:04
I'm quite impressed now, though.
dduncan good to hear 09:05
09:09 andara joined 09:25 thoughtp1lice is now known as thoughtpolice
svnbot6 r16579 | moritz++ | t/builtins/list/zip.t: updated test to current spec regarding lists with 09:31
r16579 | moritz++ | different length
09:49 chris2 joined 09:52 revdiablo joined
svnbot6 r16580 | moritz++ | ext/DateTime/t/basic.t: 09:52
r16580 | moritz++ | * fixed unbalanced parenthesis
r16580 | moritz++ | * used string instead of code inside eval()
09:58 iblechbot joined 10:00 rhizo joined 10:18 cernd joined 10:24 penk joined 10:25 dduncan left
svnbot6 r16581 | moritz++ | Tree::Visitor::FindByPath: changed subs to methods 10:31
10:35 riffraff joined
riffraff hi 10:35
10:35 riffraff left, riffraff joined
moritz hi riffraff ;) 10:36
riffraff sorry for being a little skizoid in joining :) 10:37
moritz ignores joins and timeouts and quits ;)
I just haven't figured out how to ignore leaves 10:38
riffraff eh 10:40
svnbot6 r16582 | gabriele++ | tests for sigil behaving as Positional,Associative,Abstraction,Object roles.
r16582 | gabriele++ | Everything fails because these roles don't exist yet.
riffraff still can't figure out how to define classes/roles in Prelude that are visible outside of it 10:44
this is disappointing :/
moritz who hacks the prelude? 10:48
I mean normally ;) 10:49
audreyt, rhr, TimToady and putter mostly it seems 10:50
10:55 Co2 joined
lumi moritz: irssi? 11:03
moritz lumi: yes
is there another irc client? *g* 11:04
lumi moritz: "leaves" are calles "PARTS" 11:05
moritz lumi: thanks a lot
lumi (/help levels and /help ignore are your friends) 11:06
moritz lumi: I read the /help to ignore, I didn't know about levels 11:08
lunch& 11:10
11:26 fglock joined 11:29 fglock_ joined
riffraff moritz, well, yes but I have the feeling that nobody ever noticed that.. i.,e. class Carp is defined there but I wonder who can access it 11:31
masak @users 11:47
lambdabot Maximum users seen in #perl6: 173, currently: 152 (87.9%), active: 9 (5.9%)
11:49 Jmax- joined 11:50 fglock__1 joined, fglock__2 joined, Jmax- is now known as Jmax 12:06 fglock__1 left, fglock joined 12:10 ajs_home joined, ajs_home left 12:19 mjk joined 12:34 rindolf joined 12:37 cozwei joined 12:41 [particle] joined
obra win 5 12:42
fglock obra: thanks for the notes - I'll work on it 12:48
obra fglock: excellent. shoot me another draft and I'll try to hack at it 12:51
I'll be offline for the next 9 or so hours, then online for an hour at an airport, then offline for more hours
fglock obra: ok! 12:55
13:01 moritz_ joined 13:25 kanru joined 13:32 daxim joined 13:34 iblechbot joined 13:50 jerrylee joined 14:36 chaoslawful joined 14:44 Grrrr joined 14:57 obvio171_ joined 15:04 penk joined 15:10 fglock joined 15:16 amoe joined 15:30 ruoso joined 15:47 the_dormant joined 16:03 silug joined 16:08 offby1 joined 16:21 justatheory joined 16:22 weinigLap joined
moritz YaY, my sudoku solver in Perl 6 seems to work ;) 16:23
I'll do a few more tests, and if they pass I'll add it to ext/, that should make problem97.t trivial ;) 16:24
16:26 Limbic_Region joined
lumi I think Perl 6 should have a sudoku solver in core! 16:26
moritz ;)
hey, it's not Prolog ;)
Limbic_Region lumi - it does, it is called junctions
lumi emacs comes with a psychologist 16:27
moritz I haven't used junctions at all
how well are they implemented atm?
Limbic_Region anyone know why the recent changes on pugscode.org is b0rk?
moritz Limbic_Region: what are you refering to? 16:28
Limbic_Region or rather, not so recent - it has said trac has been turned off for some time
dev.pugscode.org/timeline?changeset...ate=Update
sorry about the echos, this client sucks
moritz I think that's the feather load issue again
Limbic_Region eval? my $foo = any(1..5); say $foo.pick; 16:29
er
moritz ?eval any(1..5).pick(1)
evalbot_r16582 Error: pick not defined: VJunc any(VInt 1,VInt 2,VInt 3,VInt 4,VInt 5)
Limbic_Region ?eval my $foo = any(1..5); say $foo.pick; 16:30
evalbot_r16582 OUTPUT[2ā¤] Bool::True
moritz my input had the wrong precedence I guess
Limbic_Region ?eval say 'foo' eq any('bar', 'blah', 'asdf', 'foo'); 16:31
evalbot_r16582 OUTPUT[any(VBool False,VBool True)ā¤] Bool::True
Limbic_Region junctions are really neat 16:33
16:33 audreyt joined 16:34 sunnavy joined
Limbic_Region hey audreyt! 16:34
TimToady ?eval say ('foo' eq any <bar blah asdf foo>) == Bool::False
evalbot_r16582 OUTPUT[any(VBool False,VBool True)ā¤] Bool::True 16:35
TimToady that is bogus
Limbic_Region it appears that the web interface to the change tracking of the pugs repo has been disabled (for sometime now)
Limbic_Region gives up on this client
TimToady I think 'foo' eq any <bar blah asdf foo> should just return True 16:36
not a junction:
?eval 'foo' eq any <bar blah asdf foo>
evalbot_r16582 (Bool::False | Bool::True)
16:41 jisom joined 16:42 bernhard joined 16:43 franck__ joined
svnbot6 r16583 | moritz++ | implemented problem96.t with regexes 16:45
moritz I don't think that problem was intended to be solved with regexes, but I don't know if prolog has them anyway ;) 16:46
16:51 jisom_ joined 16:56 andara left 17:11 amnesiac joined 17:20 amoe left 17:39 Psyche^ joined 17:40 theorbtwo joined 17:43 weinigLap_ joined 17:46 weinigLap_ joined 17:49 buetow joined 17:54 andara joined 17:56 Psyche^ is now known as Patterner 17:57 awwaiid joined, weinigLap_ joined 18:02 obvio171_ is now known as obvio171 18:04 weinigLap_ is now known as weinigLap 18:13 the_dormant joined
lumi gaal: ping 18:21
18:21 araujo joined 18:25 andara_ joined
gaal lumi: moose 18:26
lumi gaal: I'm trying to write Pugs.Meta.List, can you clue me any? 18:29
I somehow got the idea that you know this machinery 18:30
svnbot6 r16584 | lwall++ | Test that ('c' eq any <a b c>) returns True, not (True|False)
18:32 demq is now known as dmq
moritz TimToady: could take a look at t/magicals/dollar_underscore.t? it looks like it should end in a compile time error, but I don't know enough about try {...}'s semantics to be sure 18:34
japhb moritz++ # cage cleaning 18:37
moritz I thought only parrot needed a cage ;-)
japhb Well, there are dog cages too .... :-)
lumi Pugses live in handbags, I think
gaal moose! what methods are in List? 18:38
lumi A whole bunch (zip, cross, pick, etc)
Does PureClass mean it can't do IO? 18:39
gaal cool, all right. I wonder if vv(<a b c>) creates a new list though... hmm 18:40
yes
lumi pick requires IO
gaal ?eval vv(<a b c>)
evalbot_r16583 *** No such method in class Array: &ITEMā¤ at -e line 16, column 7-60
lumi Is that a yes or a no?
gaal I think that's a no :/
lumi Hmm 18:41
gaal pick requires IO, indeed
or at least, it isn't pure
?eval vv([<a b c>])
evalbot_r16583 *** No such method in class Array: &ITEMā¤ at -e line 16, column 7-64 18:42
18:42 rindolf joined
lumi So it needs more infrastructure first 18:42
gaal this means there's the practical development problem of constructing these values to play around with them, exactly
lumi :\ What's already in newval? 18:43
18:43 theorb joined
lumi Where do I find this? 18:43
gaal see Pugs.Val
don't let the commented-out stuff confuse you
18:44 silug joined 18:46 kunwon1 joined
gaal hmm, line 71 goes 18:46
to suggest lists ought to be represented by Seq
lumi Do we have a Seq? 18:47
xinming Oh, I get an interesting feeling. That Perl 7 will move forward functional language and keep itself purely. :-)
functional programming language.
gaal a haskell Data.Seq, that is
moritz xinming: you mean it will be even more lisp than perl 6 is?
lumi gaal: Oh, that makes sense 18:48
gaal: I haven't used those yet
18:48 cozwei joined
moritz wonders how hard it is to implement haskell in terms of lisp macros ;) 18:48
xinming moritz: No, I mean, maybe, the next version of perl will get more support on functional programming style. and keep perl 6 itself intaint. though, grammer might change, But not much.
though, that's too far,
As I just read synopsis. And I finally find, there are too many functional programming stuff. 18:49
gaal Data.Sequence, that is
xinming reduction curry lazy list etc..
moritz xinming: why "too many"? if you don't want to use them, don't use them ;) 18:50
lumi moritz: Semantics? I'm not sure how you'd transform all expressions into lazy ones, apply static typing and type inference, etc, with macros
xinming But currently larry might not be able to think in haskell very well, so he can't steal lots. :-)
moritz lumi: yes, especially the lazyness might behard;)
xinming moritz: No, I like these. It's really an amazing thing to see that a language has all power in other language, and keep the syntax really understandable. 18:51
gaal lumi: I'd say let it be [Var] for now
lumi moritz: But maybe you can just make a (module) macro that will take the rest of your program, and transform every expression inside it
gaal: What do I need to do to plug it into newval then? a Boxable instance? 18:52
18:53 dmq is now known as demq
gaal an empty instance should do, i think 18:53
"instance Boxable PureList"
lumi Looking at Meta.Str, it defines a Boxable instance with its class in 18:54
So it belongs in Meta.List, I guess
So I'm doing the right thing :)
gaal oh, right; that's where you wire a method table etc. to the hs type 18:55
18:56 demq is now known as dmq_
lumi Maybe I'll just try the tiniest possible class and see if it works 18:56
gaal also on your todo list are making "vv" work for lists, and ensuring the instances (Pugs.Class:72 and on) are suitable for the particular methods you need 18:57
18:58 dmq_ is now known as dmq
gaal the tiniest possible class doesn't have any methods you define; you just do vv(<a b>).methods and hope it works :) 18:58
the Pugs.Class stuff is pretty magical
lumi I'm not sure I understand these instances
Yes, looks magic
moritz let's hope the magic works for us ;) 18:59
gaal they're what you need to get calls of various arities get dispatched
lumi vvToVal is kinda evil-looking 19:00
gaal the [: :] stuff, btw, is "parr", a fast datastructure very similar to hs lists
lumi I thought it was an array? 19:01
gaal you need -fparr for it to work, and then you can even patmatch against it IIRC
yeah. it's similar to lists in usage. :)
vvToVaal isn't evil, it's just a bunch of thunks 19:02
(not in the closure sense, in the API bridge sense) 19:03
19:03 buetow joined
lumi Its pattern matching is evil 19:03
gaal you mean the lhs being repeated like that? well, thats generics+type inferece for you :) 19:04
lumi Also it's not vv()
gaal you need fromVV in VList's Value instance, I tihnk 19:07
lumi Where's that? 19:08
gaal P.AST.Internals, 663
moritz I couldn't live without grep ;) 19:09
gaal hmm maybe not; there is a method there
I need to reremember this stuff :( 19:10
19:10 BooK joined
daxim cpan P/PE/PETDANCE/ack-1.62.tar.gz 19:10
lumi ?eval vv(<a b c>).WHAT 19:11
evalbot_r16584 Error: No such method in class Array: &ITEM 19:12
gaal ok you may also need to tweak the Prim.hs table
to say rw!Any instead of Any
so that the vv prim sees the container
lumi Where?
gaal 2195
lumi Which Any am I changing? 19:13
gaal anyone know how to cure screen breaking copy-paste on xterm?
oh the parenthesized one
add no new spaces
19:14 dmq joined
gaal eg the TEMP on 2140 19:14
at least playing with Prim doesn't take ages to rebuild 19:15
lumi Is this Pugs.Prim ?
gaal I hope that doesn't break the other vv() things though
yes
lumi I don't see a TEMP on 2140
19:15 rodi joined
gaal o rly? what do you see? 19:16
lumi O, I guess I'm not up to date?
Pulling
But I see TEMP now 19:17
(It's just on another line)
gaal ok, it was just an example anyway
lumi Why does it need to see the container?
gaal you want to do stuff on the list, no? 19:19
lumi Oh duh
rw failed to clue me, somehow
Is this really right, and won't this break all the old vv stuff? 19:20
gaal i don't know :)
moritz lumi: that's why we use subversion - if everything brakes, we can roll back ;)
lumi moritz: True, and also why we have tests 19:21
lumi wonders whether there are tests for what's working in vv atm
gaal ./pugs -e 'say vv("moose").reverse' is enough of regression test for this change :)
vv is just a transitory kludge 19:22
in a makeshifts-last-longest kinda way.
lumi I gotta go, I'll pick this up tomorrow 19:25
gaal moose moose
lumi Moose
moritz ?eval 'moose' x 3 19:26
evalbot_r16584 "moosemoosemoose"
19:37 the_dormant joined 19:42 weinigLap joined 19:43 weinigLap joined 19:48 fglock joined
svnbot6 r16585 | fglock++ | kp6-Perl6-roadmap.txt - (work in progress) added obra++ comments and an introduction text 19:52
19:53 dduncan joined 20:02 ruz joined 20:05 polettix joined
fglock TimToady: this means that any( True | False ) returns True, right? 20:08
because: 'foo' eq any <bar blah asdf foo> is the same as: any( 'foo' eq 'bar' | 'foo' eq 'blah' | 'foo' eq 'asdf' | 'foo' eq 'foo' ) 20:10
20:16 mj41 joined
fglock ?eval ?( 'foo' eq any <bar blah asdf foo> ) 20:17
evalbot_r16585 Bool::True
fglock ?eval ?( 'foo' eq all <bar blah asdf foo> )
evalbot_r16585 Bool::False
fglock it's just a matter of coercion 20:18
moritz ?eval ?(Bool::False == ('foo' eq any <foo bar>)) 20:20
evalbot_r16585 Error: No compatible multi variant found: &Bool::False
moritz ?eval ?(False == ('foo' eq any <foo bar>))
evalbot_r16585 Bool::True 20:21
moritz fglock: that's not just coercion IMHO
fglock good point :) 20:23
20:23 riffraff joined
riffraff szia 20:24
20:26 andara joined 20:28 isaacd joined
rhr fglock: I think eq == etc. are supposed to never return junctions (i.e. junctions don't distribute over them) 20:40
so False === ('foo' eq any <foo bar>) should be false, but False === (True | False) should be true 20:42
20:43 rff joined, rff is now known as riffraff
rhr that was my interpretation anyway, I can't find anything about that in S03 though 20:45
TimToady rhr: yes, that's how I think of it. I think we're getting eq and friends returning (True|False) to mean "true", and the boolean tests just all happen to test against the True part rather the False part, so it always looks true in boolean context, unless you actually ask whether it is also === False, in which case you get a bogus result 20:46
and that's what my test is testing for 20:48
20:50 SubStack joined 20:53 rff joined 21:02 wilx` joined 21:08 silug joined 21:11 wilx` joined 21:13 sahadev left 21:14 weinigLap joined 21:34 jhorwitz joined 21:55 prism joined
dduncan so the 4th discussion draft of the GPLv3 has been released today ... and it continues to get better 22:00
it is also now compatible with the Apache license v2
moritz cool ;) 22:01
dduncan that is, I just read the delta, and the changes I understood looked like improvements
22:01 buetow joined
dduncan fyi, I will be using the GPL v3 after June 29th, most likely 22:01
when it is final
PerlJam Has pugs kept up with recent parrot chagnes? 22:02
er, changes?
moritz PerlJam: the parrot backend is bit rotten :(
PerlJam That's what I thought 22:03
PerlJam wishes he had more time and inclination to *do* something to make Perl 6 more of a reality 22:05
22:06 rodi left 22:08 cognominal_ joined
moritz started to learn haskell to help with pugs ;) 22:08
but haskell is... different ;) 22:09
svnbot6 r16586 | moritz++ | [irclog] added google search link, added date to the <title> 22:13
meppl good night 22:15
moritz good night ;) 22:16
meppl ;) 22:17
prism PerlJam, as long as perl6 manages to make a base and the documentation for people to make their own modules 22:19
it will be a success
and it is on the way to doing that now :)
moritz speaking of Modules... I create a folder $module_name in ext/, with subfolders lib/ and t/ and lib/$modulename.pm as a file... 22:24
and then I did "perl Makefile.PL" in the hope that it would create a Makefile for me, but it did not... 22:25
any ideas what I can do about that?
22:27 thoughtpolice joined
moritz ah, I have to create an Makefile.PL myself 22:29
dduncan yes 22:36
but its easy ... just modified clone another one
you can use my QDRDBMS one if you want
moritz I used Net::IRC 22:37
but I guess they are all nearly identical ;)
lazyness++
perlbot: karma lazyness 22:38
jabbot moritz: lazyness has karma of 1
perlbot Karma for lazyness: 1
moritz it seems jabbot has a hardcoded trigger on "perlbot" ;)
prism perlbot, karma prism 22:39
perlbot Karma for prism: 3
jabbot prism: prism has neutral karma
prism hmm
22:40 weinigLap joined
moritz perlbot is longer in #perl6 than jabbot it seems 22:40
@karma moritz
lambdabot You have a karma of 110
moritz wow, we have at least three different bots that track our karma
prism lots of karma bots
moritz how much karma do you need to get a halo? *g* 22:41
thoughtpolice @karma thoughtpolice 22:55
lambdabot You have a karma of 8
thoughtpolice hah :)
TimToady @karma lambdabot
lambdabot lambdabot has a karma of 50
moritz ?eval my @a = [1,2], [3,4]; map zip, @a 22:58
evalbot_r16586 Error: Cannot cast from VList [VList [VInt 1,VInt 2],VList [VInt 3,VInt 4]] to Pugs.AST.Internals.VCode (VCode)
moritz not quite what I wanted ;) 22:59
how do I best turn [1,2],[3,4] into "1324"? 23:00
for arbitrary sizes, of course ;)
23:03 Limbic_Region joined
Aankhen`` wonders if learning Lisp is of any use in the Pugs context. 23:10
svnbot6 r16587 | moritz++ | added ext/Sudoku/, a very simple Sudoku solver
rhr ?eval my @a = [1,2],[3,4]; [Z] @a
evalbot_r16586 ((1, 3), (2, 4))
moritz rhr: thanks, exactly what I wanted ;) 23:12
rhr should be the same as map zip, @a 23:13
svnbot6 r16588 | moritz++ | ext/Sudoku: written out() more perlish, rhr++
moritz rhr: no, it shouldn't 23:14
rhr oh, right
moritz rhr: consider [+] @a versus map {+} @a
PerlJam prism: I've been writing articles on Perl 6 as if it will exist. Ergo, it *will* exist :-) 23:15
s:2nd/will/shall/ also :)
moritz "Perl 6 shall overcome some day" ;) 23:16
prism PerlJam, it must exist
perl HAS to evolve at some point
like windows freebsd linux whatever
moritz hey, it exists now
23:16 demq joined
prism the versions keep going up 23:16
PerlJam prism: yeah, but there's a strong camp of Perl 5 people who are happy with snail's pace evolution.
Aankhen`` Hmm.
?evalmy @a = [1,2],[3,4]; ([Z] @a).join(' ')
?eval my @a = [1,2],[3,4]; ([Z] @a).join(' ')
moritz and in parallel blead incorporates cool p6 features 23:17
evalbot_r16586 "1 3 2 4"
prism PerlJam, eventually perl6 will HAVE to come around though
Aankhen`` ?eval my @a = [1,2],[3,4]; ([Z] @a).join('')
prism my point is it doesnt matter if there are 5 billion perl5 users
and 10 perl6
evalbot_r16586 "1 32 4"
prism sooner or later perl5 will reach its EOL
where it cant go any further
Aankhen`` Why are there spaces in between the numbers when I specify '' as the delimiter?
Oh, er.
PerlJam prism: COBOL was end-of-lifed long ago, yet it's still around.
moritz Aankhen``: with one more map and join
Aankhen`` Yeh, I was misunderstanding it. 23:18
Not to change the topic or anything, but... how do you exit from Pugs under Linux?
moritz ?eval my @a = [1,2],[3,4]; (map {.join("")}, [Z] @a).join("")
Aankhen`` ^Z works on Windows but here it suspends the process.
PerlJam Aankhen``: :q
Aankhen`` Ah, thanks.
evalbot_r16586 "1324"
Aankhen`` Heh, force of habit beats :h every time. 23:19
Aankhen`` grins sheepishly.
moritz Aankhen``: or Ctrl+D (which is EOF)
Aankhen`` Oh, thanks.
prism PerlJam, yes but COBOL's following isnt as big or as important as perls, not forgetting perl5 is base in freebsd and many other os's depend on it as a dep too. What will people say when those basis are shifted to python ruby etc... for speed reasons or other. Perl5 will have to be abandoned in search of a better solution,
Aankhen`` (^Z is EOF on Windows, in case it's still unclear. :-)
PerlJam prism: then perl will die and python or ruby will be "perl 6" 23:20
prism PerlJam, personally I think perl6 was based on the wrong language to start off with (but thats another matter) :)
PerlJam, unlkely, perl has to mayn followers
perlbot, also notice this channel probably started with 10 users, its now at 150 and ptrobably growing slowly
Aankhen`` Interesting coincidence... I was reading some Paul Graham stuff today, in particular an article where he wrote about how it's extremely hard to get people to use new languages because it's not new technology so much as a new way of thinking. Or something to that effect.
prism PerlJam, take that into consideration as public awareness + development increase 23:21
moritz @users
lambdabot Maximum users seen in #perl6: 173, currently: 150 (86.7%), active: 17 (11.3%)
PerlJam prism: I intend on using perl until the day I die. So it's got to stick around for my lifetime at least (and I plan on living a long long time)
Aankhen``: recent article?
prism PerlJam, it will be also your grand kids :)
Aankhen`` PerlJam: No, I don't think so. I just headed to the Lisp section and started reading.
PerlJam perhaps.
23:22 dmq joined
Aankhen`` PerlJam: www.paulgraham.com/avg.html 23:22
PerlJam prism: The thing about programming languages is that they tie us to certain interfaces that I believe will go away at some point (WIMP)
lambdabot Title: Beating the Averages
Aankhen`` PerlJam: April 2001, rev. April 2003 23:23
prism PerlJam, hmm perhaps, but perl is generally pretty flexible in that respect
PerlJam oh, I've read that one.
Aankhen`` Yeh.
I had only read a couple of his Lisp articles before.
PerlJam prism: tell me how to generate guillemets without a keyboard. 23:24
moritz IMHO both lisp and haskell have that "different things look too similar" problem
lisp more than haskell, though
Aankhen`` moritz: How's that (Lisp)?
PerlJam prism: Tell me what we'll use in their place when there aren't keyboards anymore
TimToady prism: which language do you think perl 6 wasn't based on? :)
prism TimToady, I wanted it on an erlang base :)
moritz Aankhen``: too many (parentheses) 23:25
Aankhen`` Yech.
I tried learning Erlang, and it was really boring. :-(
prism Aankhen``, i think its pretty fun
Aankhen`` moritz: That's because everything is a list, after all.
prism PerlJam, voice to camel :)
Aankhen`` prism: Well, I didn't give it much of a chance.
moritz comes from a town called "Erlangen" ;)
PerlJam prism: I think we've all seen how well that (doesn't) work.
prism moritz, is it a distributed town :)
Aankhen`` prism: I started following along with some tutorial and didn't even complete it because the language just seemed so unappealing. 23:26
prism perlbot, langauges will evolve alongside technology
PerlJam I know nothing about erlang. What does it bring to the conceptual table?
moritz prism: at least it distributed me to Scotland ;)
prism Aankhen``, use it enough it will seem great
moritz, hehe :P
PerlJam (lua doesn't seem to bring much though there are people who like it)
prism PerlJam, its a fully OO easily distributed language
moritz PerlJam: it has no "use strict;" afaict
Aankhen`` PerlJam: Erlang is all about distributed, fault-tolerant computing. It's basically built around message-passing concurrency. Or at least that's my understanding of the language.
prism used in phone networks and satalites
can handle 2000+ conns with ms responce times to all
on common hardware
PerlJam gotcha. 23:27
prism derived roughly from LISP
Aankhen`` Really? o_O
I don't see any similarities. O_o
PerlJam now you're making me not like it.
prism Aankhen``, but the book lol
Aankhen`` Oh, I never touched any Erlang book.
prism s/but/buy/
Aankhen`` I'll give it another try some time.
But not any time soon.
PerlJam Well, if it's derived from lisp but doesn't look like lisp, it's probably okay :)
prism Aankhen``, its a necesity the first part is free on the website
Aankhen`` I'm too busy with Lisp. :-)
i luvs teh lisp
prism PerlJam, the website says it was sort of derived from lisp but lots of other languages got spots in the light too 23:28
PerlJam, so its kind of a hybrid between quite a feqw
TimToady P6 will have erlangish semantics in its underlayer, see www.seas.upenn.edu/~lipeng/homepage/unify.html
lambdabot Title: Unifying events and threads
prism s/feqw/few/
TimToady but P6 will also have better transactional support on top
PerlJam *really* looks forward to the day when we stop talking about perl 6 in the future tense. 23:29
prism PerlJam, hmm maybe sooner than you think
Aankhen`` "Apocalypse Now" ~~ s/Apocalypse/Perl 6/
TimToady okay, P6 has better transactional support on top *cough*
moritz wants threaded IRC
prism wants IRC where /slap really works 23:30
PerlJam prism: How soon do you think I think? ;)
Aankhen`` moritz: Threaded as in threaded conversations?
prism PerlJam, next week on thursday
moritz Aankhen``: yes
PerlJam TimToady: :-P
Aankhen`` moritz: Heh.
prism btw 23:31
whats the topic bout
about*
Aankhen`` If you run `make install`, the Perl 6 modules will overwrite your Perl 5 modules.
PerlJam TimToady: Are you willing to give odds on another major semantic change to Perl 6 Regex? :)
prism Aankhen``, ah lol
Aankhen``, let me find a production server I dont like 8)
Aankhen`` LOL. 23:32
moritz prism: you can circumvent that by building debian packages first ;)
Aankhen`` moritz: People like me are the reason why IRC could never have threaded conversations. :-P
prism moritz, all the servers I have root on are freebsd
except one which is netbsd ;p
moritz Aankhen``: It's worth a thought
PerlJam Aankhen``: we have threaded conversations all the time!
Aankhen`` Possibly.
PerlJam (they just aren't marked)
Aankhen`` PerlJam: Pfft.
PerlJam: BTW, I like chicken.
TimToady yes 23:33
Aankhen`` PerlJam: Hey, have you seen the newest PotC movie?
PerlJam Aankhen``: aye!
prism hmm I tell you what is really needed for perl6 when it is released
a gui version of cpan [perl5]
Aankhen`` PerlJam: How'd you like it?
dmq prism, so write one
prism dmq, I have enough writing this dumb website I started 23:34
Aankhen`` prism: Go fix CPANPLUS::Shell::Tk. ;-)
svnbot6 r16589 | Darren_Duncan++ | ext/QDRDBMS/ : renamed the AST node types Lit(Bool|Text|Blob|Int) to make the Lit a suffix ; made a few other small changes
prism Aankhen``, ill look into it :)
PerlJam Aankhen``: I liked it. It was good.
Aankhen`` prism: Have fun! Though if you're serious, I'd prefer ::Curses to work. ^_^ 23:35
Tene prism: how would that even work? You mean something other than search.cpan.org/ ?
lambdabot Title: The CPAN Search Site - search.cpan.org
Aankhen`` PerlJam: Ah, that's good. Apparently I'm going to be watching it on Saturday.
PerlJam prism: Yeah, but which should you do? Something *important* or your website?
Tene prism: what would it do?
prism Tene, yeah a nice little plugin for XFCE perl6-cpan quick installer :)
Aankhen`` Tene: I believe prism is referring to the CPAN shell.
Tene Oh.
moritz wants cpan6
any news on that?
prism hmm everything is a damn 6 23:36
Aankhen`` LOL, I should try out INTERCAL.
PerlJam TimToady: Should I wait with bated breath or ask for the odds? ;-)
Aankhen`` From the manual: "Caution! Under no circumstances confuse the mesh with the interleave operator, except under confusing circumstances!"
TimToady yes
prism I run FreeBSD 6, IPv6 and im in #perl6
666? yes please
Aankhen`` runs off.
prism :P
PerlJam thinks TimToady has been replaced by Tron's bit
moritz d'oh, even Perl 6 will come out before Debian 6 does ;) 23:37
TimToady I'm downloading Fedora 7...
PerlJam (which btw, as far as techno-movies go, I think *still* stands up well in light of the last 25 years of changes)
moritz sleep++ & 23:40
PerlJam Well, it's time for me to go to tae kwon do. See you guys later!
TimToady: good luck with FC7 :)
PerlJam &
TimToady s/C//
23:42 silug joined 23:52 theorbtwo joined
spinclad gaal: re copy-paste in screening xterm: try <Shift>-<Left,Middle,Right> (haven't tried it myself with screen but it works with other mousing apps) 23:58