Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2006-01-21

Perl 6 | Reference Documentation | Rakudo

| Channels | #perl6 index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
00:28 aufrank joined perl6
00:44 lampus joined perl6
01:48 Amnesiac joined perl6
01:49 shreddr joined perl6
01:53 shreddr must go TODAY.  MESSAGE ME ONLY ON MSN AT [email@hidden.address] AIM AT OGD443 or YAHOO at MCSLTD2 IF INTERESTED! 1 alienware desktop computer price $550, one alienware area51-m 5700 notebook price $550.  prices include sameday shipping, case, wireless router.
01:58 binary42 is now known as binary42____
01:59 binary42____ is now known as binary42
02:31 stevan_ joined perl6
03:05 \xe6var ugh
03:05 \xe6var I thought
03:06 \xe6var if $look_mommy >= $no_parentheses { ...
03:06 \xe6var was possible because you could no longer do
03:06 \xe6var if %hash         {whitespace_between_the_key_and_they_hash_name} { ...
03:06 \xe6var so stuff like
03:07 \xe6var if %hash {"am I "} {}..
03:07 * \xe6var pokes
03:08 \xe6var I seem to be right;)
03:08 \xe6var $ pugs -e 'my %h = (1 => 0); if %h {1} { say "foo" }'
03:08 \xe6var foo
03:11 \xe6var %h<> I mean
03:24 beppu ?
03:26 \xe6var indeed
04:28 stevan_ joined perl6
04:28 stevan_ is now known as stevan
04:32 lypanov joined perl6
04:42 meppl guten morgen
04:42 rep moin
04:43 meppl good morning rep
05:23 sapper joined perl6
06:22 scw joined perl6
06:24 lypanov joined perl6
06:38 sapper left perl6
06:52 elmex joined perl6
06:52 ManChicken joined perl6
06:53 Debolaz joined perl6
06:54 ManChicken Anybody got a good reference for this stuff?
06:54 ManChicken I know it's not production material yet, but I'm curious as curious can be.
06:54 ManChicken Been playing with it for a few hours, and things are a bit different.
07:07 cognominal joined perl6
07:10 Debolaz joined perl6
07:36 xinming joined perl6
07:37 perlbot joined perl6
07:40 ManChicken left perl6
07:45 azuroth joined perl6
07:49 iblechbot joined perl6
07:58 azuroth joined perl6
08:39 marmic joined perl6
08:40 nnunley joined perl6
09:07 elmex joined perl6
09:43 ingy seen audreyt
09:43 jabbot ingy: audreyt was seen 14 hours 41 minutes 9 seconds ago
09:46 G2 joined perl6
09:50 bsb joined perl6
09:53 scook0 joined perl6
11:08 iblechbot joined perl6
11:15 r0nny joined perl6
11:15 chris2 joined perl6
11:33 svnbot6 r8765 | putter++ | Parse/Rule/Core.pm - completed r8456 (the renaming of $.match_num/name to $.capture_num/name).
11:40 arcady joined perl6
11:45 gugod_ joined perl6
11:48 kane_ joined perl6
11:55 svnbot6 r8766 | gaal++ | my.t - marking tests :todo<feature>
11:55 gugod joined perl6
11:56 gugod joined perl6
12:02 \xe6var joined perl6
12:53 audreyt hm, I hope I don't get used to those 16-hours sleeps
12:54 audreyt because my entire body -- especially stomach -- feels terrible after waking up
12:54 audreyt I'll bbiab...
13:01 putter joined perl6
13:02 Alias_ heh
13:02 Alias_ know what you mean
13:02 * putter notes more 7-hour sleeps => fewer 16-hour sleeps. ;)
13:04 audreyt how very true ;)
13:05 * putter *chortles*: Oooh, audreyt is well rested!!!  We're going to romp!  6.2.11, here we come! :)  (took a moment to sink in)
13:05 putter ;)
13:06 audreyt I wouldn't say "well-rested" -- "somewhat less zombie-like" is more like it
13:07 audreyt but I need to fix svk first as the svn bindings broke with perl 5.8.8
13:07 audreyt mmm yaks
13:07 audreyt s/5.8.8/5.8.8rc1/
13:07 putter lol.  putter pictures "night of the living dead" zombie hackathon...
13:08 audreyt hackoween
13:08 audreyt so, I think I owe myself a really good 9pm breakfast
13:09 audreyt I'll see ya :) &
13:09 putter :) &
13:10 putter oh drats.  putter kills a smoke.  forgot to set PATH to include parrot.  external!&#@!@#$ parrot. ;)  anyone sure if the pugs build does/doesnt happen normally in the absence of parrot?  putter contemplates rebuilding.
13:11 pasteling "bsb" at 84.177.43.70 pasted "Number.hs refactor" (45 lines, 2.2K) at http://sial.org/pbot/15537
13:11 bsb Hi all
13:11 putter hi bsb
13:11 * putter looks at paste
13:12 bsb I need someone with more haskell clues verify my patch
13:12 bsb I'm mainly unsure about what should be Int and Integer
13:13 bsb I haven't tested it, compiling
13:23 putter "I haven't tested it, compiling" ;)
13:24 bsb It takes so looong
13:25 bsb Done now.  No damage to t/syntax/parsing/numbers.t at least
13:25 putter you likely know by now, but the functions are variously misnamed, eg b36DigitToInteger and b36DigitToInt
13:26 putter re looong,  make unoptimized  is your friend :)
13:27 putter at least until the file compiles.  then its a friend which has overstayed its welcome. ;)
13:29 putter note that multiple '_'s are speced as allowed.  but maybe that's a todo for after the refactor.
13:31 bsb Thanks.
13:31 putter err, no.  never mind.  my misnaming comment was bogus.
13:32 bsb There's a test in numbers.t: isnt eval('1__0'), 10, "Multiple embedded underscores fail";
13:32 * putter is puzzled.  thought an excess of '_' was speced as ok.  exploring...
13:33 Juerd I haven't seen any spec of that
13:33 Juerd That usually indicates Perl 5 is leading, which would mean 1__0 == 10
13:33 Juerd But there may be a spec somewhere.
13:34 bsb S02: A single underscore is allowed only between any two digits in a literal number, ...
13:34 Juerd Does it say why?
13:34 bsb No
13:35 Juerd I'll p6l it
13:37 putter S02 is clear enough...
13:38 Juerd It's clear, but I want to know WHY the change is made.
13:39 putter my perl5 is warning if there are multiple or trailing _
13:39 putter so it looks like it's already in the process of p5 depreciation
13:39 bsb A02: Underscores will be allowed between any two digits within a number.
13:39 bsb Ambiguous plural there
13:39 putter bsb: right.  I was mistaken.  No ambiguity.  Only single '_'.
13:40 putter As to "WHY", it looks like that's more of a p5 question than a p6 one ;)
13:40 Juerd putter: Ah, the warning is enough for me.
13:41 Juerd bsb: No, not ambiguous, that plural, as there may be multiple underscoreS, just not without digits in between.
13:46 putter re ambiguous plural, the S02 at dev.perl.org says A single underscore is allowed only between any two digits in a literal number
13:47 putter ('twas what I meant by unambiguous;)
13:51 putter Juerd: actually, the A02 phrasing _is_ ambiguous.  it may well have been saying _'s are not allowed trailing or next to the decimal or "e".  with no commitment on the number of _'s which can occur properly placed with digits on both ends.
13:51 Juerd We were talking about different things, but it does not matter.
13:56 putter yeah.  breakfast sounds like a plan. (9am)   (pugs-time == GMT-5?:)
14:00 Juerd pugstime == GMT -12 + int rand 24
14:20 Khisanth joined perl6
14:20 dolmans joined perl6
14:22 sapper joined perl6
14:28 dolmans left perl6
14:47 svnbot6 r8767 | tewk++ | t/builtins/undef.t - TODO crashing test due to missing functionality
14:54 rantanplan_ joined perl6
15:26 Limbic_Region joined perl6
15:37 feng joined perl6
15:41 penk joined perl6
15:43 penk joined perl6
15:46 Debolaz joined perl6
15:47 penk joined perl6
15:54 ManChicken joined perl6
16:02 ManChicken Is there a comprehensive collection of built-in perl6 functions? (e.g. perlfunc)
16:02 ManChicken I'm having a doosey of a time finding one.
16:02 Alias_ I'm not sure they actually are built-ins at the moment
16:02 ManChicken I know this isn't production-ready or done yet, but I'd really like to play with things.
16:03 Alias_ But rather default macros that map to methods
16:03 Alias_ or something like that...
16:03 ManChicken It seems like much of perl5 built-ins are still available.  Is this the case?
16:03 Alias_ The style should feel somewhat similar
16:04 ManChicken It looks like Perl, just with everything I've ever had to hack out already thought of.  I love it.
16:04 ManChicken All it needs now is cpp macros ;)
16:04 Alias_ You know it does have macros right?
16:05 ManChicken Oh?
16:05 Alias_ Basically, a lexically sane equivalent of the source filter hacks of Perl 5
16:05 ManChicken I heard macros, but I though of the VB definition of a macro...
16:05 Alias_ I'm afraid I don't know the difference
16:06 ManChicken VBA macro is just a function that's immediately visible in a MS Office application
16:06 Alias_ oh..
16:06 ManChicken IIRC
16:06 ManChicken Never played with it much.
16:06 Alias_ A Perl 6 macro is a lex-tree transformation
16:06 Alias_ (although my terminology is always suspect)
16:07 Amnesiac joined perl6
16:07 ManChicken Pardon my ignorance, but what does that mean exactly?  I'm but a humble hacker.
16:07 Alias_ I believe it's vaguely equivalent to C-ish macros
16:07 Alias_ But you'd want confirmation from someone that actually can keep up
16:07 Alias_ :)
16:07 ManChicken Nice.
16:08 Alias_ I just hang out here because if I don't I'll never be able to keep up at all... I work higher level that the language usually
16:09 ManChicken heh
16:09 Alias_ s/that/than/
16:09 audreyt got some nice japanese food... and then am promptly dozing off again
16:09 ManChicken Ooh.
16:09 Debolaz Eww, asian food.
16:09 audreyt but I want to hack *pout*
16:09 ManChicken I'm about to go get greasy McDonalds... because I like cholesterol...
16:09 Alias_ audreyt: BTW, mst is reporting more problems with M:I
16:10 ManChicken Okay, gonna run, be back shortly to hack....
16:10 Alias_ audreyt: I think basically if you're CPAN is sub-whatever-version and M:I wants to do the dep installs itself, and CPANPLUS isn't available, it freaks
16:10 Alias_ your
16:10 audreyt Alias_: okay, bounce it to my mailbox? I _think_ my body is telling me it wants more sleep before I make it hack
16:10 Alias_ he's still analysing
16:10 audreyt Alias_: okay, then maybe we inject a minimum version check -- or bundle a copy of CPAN.pm (unthinkable?)
16:10 Alias_ yes, unthinkable
16:10 audreyt or fix it Correctly using he analysis
16:10 audreyt I'd love to hear about it tomorrow
16:11 Alias_ But I think we're heading towards forcing a CPAN.pm upgrade :/
16:11 Alias_ Dunno if we can avoid it yet
16:11 audreyt we'll see.
16:11 Alias_ indeed
16:11 Alias_ Any reason M:I can't use CPAN.pm for the upgrades instead of CPANPLUS?
16:11 Alias_ Or did you just go for the nicer API :)
16:12 audreyt the latter
16:12 audreyt also because I use cpanplus muself
16:12 audreyt also because it's the new core module etc
16:12 * Alias_ nods
16:12 Alias_ Not yet it isn't
16:12 Alias_ The fight continues
16:12 audreyt :D
16:12 audreyt I'll be back later after a variable-length nap.
16:12 Alias_ Looking at 5.8.8 it would appear M:B isn't even in yet either
16:12 * audreyt waves &
16:13 Alias_ later
16:17 putter &
16:21 planrantan joined perl6
16:22 Limbic_Region the repository still down?
16:22 Limbic_Region nope
16:22 Limbic_Region ;-)
16:30 bsb joined perl6
17:19 gaal say, why does util/gen_prelude.pl:_BypassPreludePC use an IORef Bool? isn't a Bool enough?
17:35 DaGo joined perl6
17:35 svnbot6 r8768 | bsb++ |  r202@rex:  bsb | 2006-01-21 18:30:45 +0100
17:35 svnbot6 r8768 | bsb++ |  Merging number parsing changes back to main local
17:40 bsb Obviously I don't understand svk
18:09 * ingy studies haskell
18:09 * Alias_ hands ingy the paracetemol
18:11 ingy Alias_: what's that?
18:11 Alias_ um... pain tablets?
18:11 Alias_ Asparin?
18:11 Alias_ (sp)
18:11 elmex joined perl6
18:13 ManChicken Asprin*
18:13 ManChicken ^_^
18:14 ManChicken This perl6 thing is so nifty.
18:14 ManChicken Makes me want to try ADA....
18:14 ManChicken But I don't know why.
18:15 lypanov ada is teh funk
18:33 lypanov__ joined perl6
18:48 lypanov_ joined perl6
18:52 ManChicken Does "use" work the same way in Perl6?
18:53 iblechbot joined perl6
19:08 ingy can someone help me write a little haskell function?
19:08 lypanov_ i suck at haskell, but i wouldn't mind learning? ;)
19:09 ingy ok
19:09 ingy I have this function called fibs
19:09 ingy Prelude> let fibs = 0 : 1 : [ a + b | (a, b) <- zip fibs (tail fibs)]
19:10 Juerd ManChicken: Nothing works exactly the same way in Perl 6
19:11 Juerd ManChicken: It's the philosophy of Perl that makes Perl 6 be still Perl, not the actual language.
19:11 ingy I want to write a function that returns a list of all the values between fibs 2000 and fibs 2100 that don't have the digits '20' in them
19:11 Juerd ingy: Really?
19:11 Juerd I can think of more fun things to do ;)
19:12 ingy well really I want the values that don't match /20\d\d/
19:12 ingy Juerd: yeah, but can you do that?
19:12 Juerd No, I don't speak Haskell
19:13 Juerd Years ago, I said that a good programmer can easily pick up any programming language.
19:13 Juerd But either I was wrong, or I'm not a good programmer myself.
19:14 * ingy bites her tongue :P
19:14 Juerd Because I find it very hard to write useful stuff in non-imperative languages.
19:14 Juerd Don't bite your tongue :)
19:14 Juerd Don't bite anything but food.
19:15 ManChicken Juerd: Well, that makes it no fun to play with.
19:16 ManChicken Juerd: Because there are no references yet :(
19:16 Juerd ManChicken: Huh? Perl 6 has references. Don't listen to dragonchild :)
19:16 ManChicken No no no no, reference materials
19:16 ManChicken heh
19:16 ManChicken as in documentation
19:16 gaal ingy: you can use drop and take
19:17 Juerd ManChicken: There certainly is some.
19:17 ManChicken I LONG to play in perl6, but I can't find any refs.
19:17 Juerd ManChicken: Have a look in pugs' docs tree, and at the synopses.
19:17 ingy gaal: how do I pattern patch that though?
19:17 ManChicken Juerd: I've looked at the synopses, they're a little on the vague side.  I need something a bit more explicit (I'm on the dense side).
19:18 ManChicken I'll check out the pugs doc tree...
19:18 Juerd ManChicken: Can you give an example of what you found vague?
19:18 ManChicken Didn't think to look there yet.
19:18 ManChicken Well, primarily the code samples embedded in the documentation.
19:18 gaal ingy: oh i didn't see the end of your question
19:18 gaal ingy: so lets start with fibs 2000 to 2100
19:18 ManChicken They don't really go to the same level of detail that perl docs have in the past.
19:19 * ingy follows along at home...
19:19 Juerd ManChicken: That's because knowledge of Perl 5 is assumed, and most things map 1:1 to Perl 5.
19:19 ManChicken Oh, really?
19:19 ManChicken Well, hell, I can work with that.
19:19 Juerd ManChicken: Note that these documents are meant for Perl 6 developers, not Perl 5 users :)
19:19 ManChicken Yeah...
19:19 gaal let intetresting = take 101 drop 1999 fibs
19:19 ManChicken But I'm impatient.  I want to play with the new toy now.
19:19 ManChicken ^_^
19:19 gaal modulo off-by-ones :-)
19:19 Juerd ManChicken: It takes some getting used to, but a Perl 6 user can certainly benefit from these documents.
19:20 Juerd ManChicken: Have you installed Pugs yet? It comes with a great bunch of example code.
19:20 ManChicken Yeah.
19:20 ManChicken I'm using the win32 port.
19:20 gaal then you want to treat each value as a string, so
19:20 Juerd Yuch.
19:20 ManChicken Don't have a unix box available for my personal use yet, and I doubt my office would appreciate me installing it on there.
19:20 gaal map show interesting
19:20 Juerd You shouldn't use Win32.
19:21 bsb filter
19:21 Juerd ManChicken: You can get free access to feather.perl6.nl, a Linux box that runs pugs.
19:21 ManChicken I also may be switching jobs soon....
19:21 bsb instead of map, yeah?
19:21 ManChicken Juerd: What now?
19:21 gaal then you want to filter on those that match
19:21 ManChicken Juerd: Why would anybody give out free shell access?
19:21 Juerd ManChicken: Because it speeds up development.
19:21 ManChicken Oh.
19:21 Juerd ManChicken: If you're able to try out Perl 6, you can find bugs and report them.
19:22 ingy gaal: you mean: take 100 (drop 1999 fibs)
19:22 gaal ingy: do you have parsec where you're at?
19:22 ingy gaal: no
19:22 gaal ingy: yes, or even: take 100 $ drop 1999 fibs
19:22 ingy gaal: right, thanks
19:22 Juerd ManChicken: Given the dynamics of Perl, it's impossible to design a 100% perfect language, and corner cases have to be found using actual implementations.
19:22 gaal is it /20\d\d/, or /^20\d\d/?
19:22 ingy gaal: the former
19:23 gaal I think this might work (we can assume every char is a digit):
19:23 gaal wanted '2':'0':x:y:_ = True
19:23 gaal wanted _ = False
19:23 gaal errr
19:24 gaal wanted _:'2':'0':x:y:_ = True
19:24 gaal the other version is for /^20\d\d/
19:24 ManChicken Juerd: How does one go about gaining access to said shell?
19:24 bsb I thought !~ /[20]/
19:25 ManChicken The win32 port is a nightly build....
19:25 Juerd ManChicken: You send an email requesting access to [email@hidden.address] and include your realname and preferred username.
19:25 ManChicken is it not?
19:25 ingy bsb: correct
19:25 gaal oh, I missed the "don't". Sorry :)
19:25 ingy = False
19:25 gaal reverse True and False then.
19:25 ingy gaal: can I somehow use that as a guard on a list comprehension?
19:26 Juerd ManChicken: Don't forget to ask audreyt for a committer bit, if you want to report bugs (reporting bugs is done by adding unit tests)
19:26 gaal ingy: probably :)
19:26 ingy does it need to be a lambda thingy?
19:26 * gaal should get more comfy with those
19:26 ManChicken Juerd: Is it really a bad idea to use Jon Worthington's automated win32 build?
19:26 gaal ingy: lambda is just anonysub
19:26 ingy right
19:27 ingy and \ is the syntax?
19:27 ManChicken The current version is from yesterday...
19:27 gaal \args ->
19:27 ManChicken I've heard that parrot really isn't ready for much playing yet.
19:27 gaal like p6 $args -> { }
19:27 ingy cool. that's all the stuffs I need to play around
19:28 ingy contrary to Juerd, I think this is a nifty little problem :)
19:28 Juerd ManChicken: It's a bad idea to use win32, in my opinion.
19:29 ManChicken Is activestate putting any hand into the perl6 pot?
19:29 Juerd ManChicken: It's probably okay to use the win32 port if you know how to hack it.
19:29 Juerd ManChicken: Not yet, as far as I know of.
19:29 ManChicken Well, if I notice anything odd, I'd try it out on a BSD build first.
19:29 Juerd ManChicken: Whatever makes you feel comfortable.
19:30 ManChicken Or I could try using cygwin.
19:30 ingy ManChicken: as a former employee of ActiveState I can pretty much say that it will be a long time until they get involved
19:30 ManChicken I just don't feel like playing with remote development.
19:30 ManChicken ingy: Why?  They've got a lot they could gain from perl6.
19:31 ingy ManChicken: A) there's no $$$ in it. B) they are not really doing anything new
19:31 ManChicken weird...
19:31 ManChicken C:\Documents and Settings\Michael\My Documents\Devel\perl6>pugs coin.pl
19:31 ManChicken *** No such method in class Num: "&srand"
19:31 ManChicken    at coin.pl line 38, column 1-14
19:31 ManChicken heh
19:31 ManChicken That comes from: srand(time());
19:32 ingy ActiveState is a (still breathing and cashflow positive) remnant of the dotcom era
19:32 gaal haskell is really good at "connect the pipes" kinds of tasks
19:32 ManChicken What a shame.
19:32 ManChicken I use their stuff all the time.
19:32 ManChicken My company even bought a few licenses to their perl IDE.
19:32 ManChicken Nobody uses them, but they're paid for...
19:32 ManChicken Everybody still prefers VIM
19:32 ManChicken heh
19:33 ManChicken And those IDEs aren't cheap
19:33 ingy ManChicken: they are still maintaining their current products because they still bring some revenue
19:33 ManChicken Well, I'm glad to see the community is picking up where they left off with perl6
19:33 ManChicken I use perl on win32 daily.
19:33 ManChicken I'd like to use perl6 on win32 daily.
19:34 ingy I think Perl 6/ pugs doesn't need any help from AS
19:34 ManChicken My boss says I'm too much of a coder to use windows, yet he still prefers that I do.
19:34 ManChicken heh
19:34 ManChicken ingy: Good.  Although ActiveState's perldocs were very nice.  I'll miss that.
19:34 gaal ManChicken: pugs works OK on win32. do you want to make it better? I have a few ideas but no tuits for that.
19:34 ManChicken Especially their win32 API docs.
19:35 ingy ManChicken: nod
19:35 ManChicken tuits?
19:35 ManChicken heh
19:35 gaal ManChicken: start by building an MSYS perl 5.8
19:35 ManChicken As I've said before, I'm but a humble perl hacker.
19:35 ManChicken Hmm...
19:35 ManChicken Never ported anything before....
19:36 gaal then you can compile a pugs with embedded parrot and perl5!
19:36 ManChicken Hell, I don't even know how to get MSYS running right.  Every time I try, it screws up on me.
19:36 gaal so far no haskell :)
19:37 ingy Juerd, gaal: I can't msg on freenode :(
19:37 ingy <-- to lazy to register
19:38 ingy anyway, I am sometimes female on irc
19:38 * ingy strokes her beard...
19:39 ManChicken If someone wants to walk me through getting MSYS installed, I'm more than happy to play with getting a build there.
19:39 ManChicken I can't promise results, but I'm willing to dive in for a day and see if it's worth the time.
19:39 ManChicken heh
19:39 * ingy takes ManChicken for a long walk on $short_pier
19:39 ManChicken heh
19:40 gaal ManChicken: starting's not too bad, you install MSYS and the "developer toolkit"
19:40 gaal I ran out of tuits trying to build a modern perl
19:40 gaal (perl5 that is)
19:40 gaal I think I should have tried a different make program.
19:42 Alias_ ManChicken: You could always have a shot at making PXPerl work?
19:42 gaal Alias_: doesn't it work already?
19:42 Alias_ PXPerl is SO close to being done
19:42 Alias_ Only for pure Perl
19:42 gaal oh :(
19:42 Alias_ You have to hook up a compiler yourself, which isn't trivial
19:43 Alias_ I've been waiting for someone to do it and send me a screencast of it :)
19:43 Alias_ Because compilers are a bit beyond me
19:43 gaal "screencast"?
19:43 Alias_ buzzword of the year :)
19:44 theorbtwo gaal: Use vnc2swf to record what you're doing on screen.  Then send it to somebody else.
19:44 Alias_ Go look it up
19:44 gaal ah
19:44 Alias_ Except with things like Wink you can do back and edit it
19:44 gaal "script" for a gui
19:44 Alias_ And put in callout boxes and explainations
19:45 Juerd ingy: I see. What do you prefer to be viewed as?
19:45 ingy Juerd: you mean Man or Chicken?
19:46 ingy <-- Human Paraquat
19:46 feng123 joined perl6
19:46 ingy (The Big Lebowski)++
19:47 ingy gaal: how do I run haskell commands like a Perl script
19:47 ingy I want to 'run' a .hs file
19:47 ingy with ghc
19:48 integral runghc
19:48 ManChicken Okay, installing mingw runtime and all that.
19:48 ManChicken I'll give it a shot.
19:49 Alias_ If you get it working, please screencast it and post it to the PXPerl forums
19:49 Alias_ I will be eternally greatful
19:49 gaal ingy: #!/bin/cpr errr, oh wait no
19:49 ingy :p
19:49 ingy integral: thanky
19:51 gaal ingy: alternatively have two shells, one with an editor and one with ghci. :r reloads the file you're editing
19:51 gaal dinner &
19:51 integral gaal's suggestion is usually much faster too
19:53 ManChicken Ooh, this is nice.
19:53 ManChicken I get a real shell.
19:54 bsb ok ingy
19:54 bsb filter (\x -> null(show x `intersect` "20") ) $ take 100 [1..]
19:54 bsb I forgot "show" is toString
19:58 ManChicken Gotta grab gcc and all that.  Can someone show me a place to grab instructions on how to grab the source?
19:59 Alias_ The webside has some of the docs
19:59 Alias_ But half the problem is knowing what exactly to download
20:03 ManChicken Wow, these binaries are nice.
20:04 gaal ManChicken: there should be a "DTK" there I think
20:05 ManChicken yeah
20:05 ManChicken libtool & such
20:05 ingy gaal: gracias
20:05 ManChicken they have an exe...
20:05 ManChicken wonder if it's an installer
20:06 gaal ingy: de nada
20:09 ManChicken It's installing perl already
20:09 ManChicken I thought that's what I was going to try to build...
20:09 ManChicken Or am I building PXPerl?
20:13 gaal ManChicken: perl -v will prolly tell you 5.6.1
20:13 ManChicken yeah
20:13 ManChicken So I'm building 587?
20:13 gaal yup
20:14 gaal the reason this is desirable is that GHC on win32 was built with msys
20:17 ManChicken This is the first time I've gotten msys to work.
20:17 ManChicken It's nice.
20:17 gaal i hate its default shell :)
20:17 ManChicken I prefer zsh myself...
20:17 ManChicken I'll build from source shortly.
20:17 gaal feels like being on hpux ten years ago :)
20:17 ManChicken Feels like redhat
20:18 Alias_ Again, if you get a full Perl install working, please document it. k thnks bye
20:18 ingy Alias_: it's spelled 'thx' fyi
20:18 Alias_ omg wtf
20:19 ManChicken heh
20:19 Alias_ purl, omg poem
20:19 Alias_ ENOPURL!
20:19 * ingy chuckles
20:19 ManChicken I'm not sure if I'll be able to get one working, but I can sure give it the old college try... even though I never finished college.
20:19 Alias_ ManChicken: That's fine, others have also failed
20:19 Alias_ But ActivePerl is really asking to be replaced at this point
20:20 Alias_ So someone's gunna do it soon
20:20 * ingy watches ManChicken amusedly
20:20 gaal Alias_: if all you want is to replace activeperl... build your own perl with ms vc toolkit 2003
20:20 gaal I did that successfully
20:21 Alias_ gaal: Yes, but ActivePerl has the key advantage there of being an .msi you can download off the intarweb
20:21 ingy something like, mortals rush in where Mongers fear to tread...
20:21 Alias_ I want an .msi that lets you installed compiling modules direct from CPAN
20:21 Alias_ install
20:21 gaal Alias_: building perl w/msys won't get you that
20:21 Alias_ Basically, what we have on linux or everywhere else
20:21 ingy ManChicken++
20:21 Alias_ gaal: Why not?
20:21 gaal won't hurt either :)
20:22 Alias_ You'd have a compiler available, and set up so perl can see it
20:22 gaal that, yes.
20:22 Alias_ And then it's up to someone to work out how to package the setup
20:22 ManChicken Alias_: I wouldn't mind helping you in that goal.
20:22 Alias_ ManChicken: PXPerl is the main effort towards that end
20:22 Alias_ But the author went AWOL due to some student election
20:23 ManChicken Well, couldn't you staticly link it and distribute it that way?
20:23 * Alias_ shrugs
20:23 Alias_ I dunno about these compilery things
20:23 ManChicken heh
20:23 Alias_ I just know I want something like ActivePerl that installs straight from CPAN
20:23 Alias_ And can do XS modules
20:23 Alias_ That's all I ask
20:23 ManChicken Yeah.
20:23 ManChicken ActiveState can do that.
20:23 Alias_ No it can't
20:23 ManChicken perl -MCPAN -e shell works though.
20:23 Alias_ nope
20:24 ManChicken Well, they've got the huge lib of binaries you can install.
20:24 gaal yep it does
20:24 ManChicken But in msys you can perl -MCPAN -e shell
20:24 Alias_ ManChicken: A huge library of 40% broken, mostly out of date, binaries
20:24 ManChicken heh
20:24 ManChicken That I won't  argue against.
20:24 Alias_ That we rely on their good graces to maintain
20:24 ManChicken Although they do have a 587 release
20:25 Alias_ Anyways, with a standard base platform that COULD compile from CPAN, at least we'd have something to test on
20:25 Alias_ And then maybe actually make more modules Win32 compatible
20:26 Alias_ Unlike now, where the test cycle involves waiting for PPM to catch up
20:26 ingy ActiveState has a very solid methodology for building ActivePerl
20:26 ingy building the modules, much less so
20:26 Alias_ right
20:26 Alias_ The dual modules problem is a killer too
20:26 Alias_ Anything that uses Scalar::Util is dead atm
20:26 Alias_ recursively
20:27 ingy why S::U?
20:27 Alias_ I talked to the new PPM maintainer, apparently their build farm has trouble recognising dual modules
20:27 Alias_ So while the core one is ok, the non-core version dies at compile time
20:27 Alias_ And the dependencies link back to the non-core one, so the build of THOSE shortcuts
20:27 Alias_ (to fail)
20:28 Alias_ And thus recursively outwards
20:28 Alias_ So you have the current situation where PPI is at 0.990 in the PPM lib, and dead
20:30 Alias_ http://ppm.activestate.com/BuildStatus/5.8-P.html
20:30 Alias_ Look how much red is on that page
20:31 Alias_ Also annoyingly, the only platform not quite so broken is Mac, the one their own developers use
20:34 ManChicken grrr
20:34 ManChicken screwed up my msys build already
20:34 Alias_ :)
20:34 ManChicken The separation between mingw and msys is too freakin' complicated.
20:35 ManChicken I install gdb and lo and behold, there is no gdb...
20:36 ManChicken I'll try building from source
20:41 Juerd ingy: I'll just use "it", okay? :)
20:41 ManChicken I wonder if I can build from distribution source.
20:42 ManChicken WOW!  msys GCC is 3.4.2
20:43 ManChicken Latest is 4.0.2
20:44 ingy Juerd: that or "thoust"
20:44 ingy thine, etc
20:46 ManChicken Man, GNU's mirrors are slow...
20:46 ManChicken Been a while since I played on one.
20:49 ManChicken I'm gonna have to build the entire environment before I can even look at perl 587
20:49 ManChicken What a pain.
20:49 ManChicken Oh well... it's not like I have anything better to do today.  heh
20:50 Alias_ heh
20:50 Alias_ The tricky bit will just be packaging the .msi :)
20:50 ManChicken Oh, you want me to package it?
20:50 ManChicken Wow, I don't even know where to begin on that.
20:50 ManChicken heh
20:50 ManChicken First things first, getting it to bloody compile.
20:51 Alias_ Well, that would be the "Payble in a vertical metre of beer" award one
20:51 ManChicken But before that even, GCC needs an updating.
20:51 ManChicken Alias_: I'll consider that a promise ;)
20:51 Alias_ done
20:51 ManChicken As long as it's not budweiser.
20:51 ManChicken :(
20:51 Alias_ Vertical in the sense of stacked crates/cartons/etc
20:51 ManChicken Newcastle might be nice though.
20:51 Alias_ And of your choice, as long as it's not insanely over the top premium
20:52 ManChicken heh
20:52 ManChicken Wow, GCC takes a while to decompress...
20:52 ManChicken heh
20:52 ManChicken How dare a 30MB archive take a while to decompress!
20:52 ManChicken heh
20:52 ManChicken It'll be a long build.
20:59 ManChicken Man... the GCC dist comes with EVERYTHING.  g77, ada, java, objc, etc.
20:59 ManChicken heh
20:59 ManChicken msys distributes it all separately.
21:12 ingy gaal: ping
21:12 ingy is _ greedy in haskell pattern matching?
21:17 gaal ingy: pong
21:17 gaal I... don't know
21:18 ManChicken So... how long does it take to fully compile GCC on msys win32?  heh
21:18 gaal actually it could be that _:'x' implies _ is a char
21:18 ingy It seems maybe _:'x' might never match 'x'
21:18 ManChicken Answer: For bloody ever.
21:18 gaal hmm right, it always matches *something*
21:18 ManChicken I'm not even going to get to the 587 code if this keeps up.
21:19 ingy I mean it might not match "foooooox"
21:19 gaal now I just don't know if it matches a string in your case or a char
21:19 gaal because x:[a] means x has type a
21:20 gaal so presumably _:'2':'0':_... no, maybe _ is special-cased here.
21:20 gaal try it or ask people who know, ie #haskell :)
21:25 bsb I think _ only matches one thing
21:26 ingy bsb: how do I match [Char] for /20\d\d/ ?
21:27 ingy ie /^.*20\d\d.*$/
21:27 bsb Not sure.  There is a Regex module
21:27 ingy I can keep poking at this too.
21:28 ingy mmmm Regexp! :p
21:28 bsb Text.Regex
21:28 gaal that's cheating :) if you allow that, might as well do it with parsec :)
21:28 ingy heh
21:29 ingy yeah, I think I should be able to do this sans Regexp
21:30 ingy maybe I should read the Prelude for some tasty bits
21:30 ManChicken Ooh, in perl6, will it be easier to address a string as an array of chars?
21:30 bsb matchRegex (mkRegex "^(20[[:digit:]]{2})") "20123"
21:31 bsb You probably can do it without a regex, but I'm not Haskell native so wouldn't know
21:31 bsb I keep writing perl in Haskell
21:31 ingy :)
21:32 ManChicken I still don't quite understand the relationship between haskell and perl.  Anybody care to explain?  I've got plenty of time to learn while GCC compiles.
21:33 Alias_ Perl 6?
21:33 Alias_ ok... Haskell is really good at writing parsers and compilers
21:33 Alias_ And some of the features for Perl 6 aligned quite nicely with the Haskell feature set
21:34 Alias_ So after reading a compilers book, audreyt decided to try writing a basic Perl 6 parser in Haskell
21:34 Alias_ As an experiment
21:34 Alias_ And got a basic expression parser for Perl 6 running in 6 days
21:35 Alias_ And so the pugs stuff developed as a way of taking Perl 6 code and trying it out
21:35 Alias_ By converting it to Haskell
21:35 Alias_ (details more complicated)
21:35 Alias_ Now, Haskell is a pretty mind bending language, while Perl isn't (in comparison)
21:36 ManChicken Fascinating.
21:36 Alias_ So all of a sudden, there's this "standard" type language that compiles to, and can load, haskell modules
21:36 Alias_ And so the Haskell people now have a sort of "scripting language" on top of Haskell
21:36 Alias_ I'm vastly overgeneralising, but that's the basics
21:36 ManChicken I doubt they're too upset about that.
21:36 ManChicken I don't doubt that.
21:37 ManChicken But I appreciate you being gentle. ;)
21:37 Alias_ It's been a huge win for both sides
21:37 integral well, it can access haskell stuff, but pugs doesn't actually compile to haskell (yet)
21:37 integral s/yet/currently/
21:37 ManChicken I've never really been playing around durring something like this.
21:37 Alias_ integral: Like I said, vastly overgeneralising :)
21:38 Alias_ So Haskell gets this normal top level language on it, and Perl gets the benefits of the most kick-ass technical base we could ever want
21:38 Alias_ Because Haskell at a technical level does kick insane amounts of ass
21:38 integral oh, well actually it appears the GHC template-haskell backend is still present!  But it appears to just be the old one compiling straight off the AST, not via the PILs
21:45 ingy I think in the pattern (_:x:y:_) the first '_' matches one char and the 2nd '_' matches all the remaining chars
21:46 ingy like in _:xs and x:_
21:46 ingy so the constuct for /.*?/ still evades me
21:46 integral yes.  : is right-associative: ( _: (x: (y: _)) )
21:47 ingy but i get to pair with audreyt tomorrow :)
21:47 integral ingy: I'm not sure what you mean, patterns for deconstructing aren't regular, they're only linear
21:47 ManChicken This MSYS compile system is poorly packaged.
21:48 ingy integral: that is probably why I can't make this work :)
21:48 ManChicken Like, all of the install packages are out of date, or inappropriately packaged.
21:48 ingy <- zzzzzzzzzzz &
21:48 ManChicken Now I'm having to build from source half of the stuff.
21:49 Alias_ yep
21:50 Alias_ I only had to look at the webpage to see that
21:52 bsb ingy: "Pattern matching" is deceptive isn't it?
21:53 bsb Maybe you could match (a:b:c:d:rest) and then check a == '2', b=='0' etc
21:53 bsb Then  recurse with b:c:d:rest
21:55 bsb Or ('2':'0':a:b) as the guard
21:55 bsb actually ('2':'0':a:b:rest)
21:57 bsb I think .*? is done by matching fn (x:xs) = ... fn xs
22:01 ManChicken Okay, I'm gonna let msys win for now.
22:02 ManChicken So damned confusing.  Can't get even the runtime to build from source.
22:02 Alias_ heh
22:02 ManChicken gcc won't build without the runtime.
22:02 Alias_ OK then, it may be time to post the competition officially
22:03 ManChicken MSYS needs some serious work.
22:03 ManChicken More than I have the time or patience to do.
22:03 ManChicken left perl6
22:09 chris2 joined perl6
22:09 SamB joined perl6
22:12 Odin- joined perl6
22:34 wolverian hm, this java project of mine is 10% of the java size in perl6.
22:35 wolverian with no loss of typing or features
22:36 integral how does performance compare at the moment?
22:36 wolverian I don't know, I don't expect pugs to actually run it
22:36 wolverian it's heavily type annotated and uses roles
22:37 wolverian s,run,compile,
22:38 integral ooh, that sounds good.  It's nice to hear that the type stuff is grokkable and usable
22:40 wolverian I'm not sure about the syntax, but it feels right :)
22:45 wolverian Foo of Bar is the same as Foo[Bar], right?
22:48 vel joined perl6
22:57 vel left perl6
23:40 Shachaf joined perl6
23:48 bsb left perl6

| Channels | #perl6 index | Today | | Search | Google Search | Plain-Text | summary

Perl 6 | Reference Documentation | Rakudo