Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2005-10-12

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:00 PerlJam autrijus: I'm "playing" so that I can get familiar enough with svk to use it on a regular basis
00:00 autrijus and if you've synced only until the Last Big Branch it should be ok
00:00 autrijus so use "h" or "-20" etc
00:00 autrijus instead of "a" which would take hours anyway.
00:00 autrijus nodnod, but parrot is somewhat perculiar.
00:04 larsen has quit IRC ("later")
00:11 justathe1ry has quit IRC (Read error: 110 (Connection timed out))
00:14 autrijus woot, both lightning talks accepted.
00:14 Juerd Congrats
00:14 Juerd I'm sleeptyping by the way
00:14 SamB has quit IRC (Connection timed out)
00:16 autrijus cool, a fellow sleepytyper
00:17 revdiablo Does that mean Juerd is from the future too?
00:17 autrijus revdiablo: no, he has to be a sleepingcommitter for that
00:18 revdiablo Ah so in the future they not just chat but even work while sleeping? Impressive.
00:18 Juerd I've sleepcommitted before
00:18 autrijus yes, in 2027 we discovered that alpha waves during sleep can be harnessed into productivity, using REM modulator
00:19 Juerd REM modulator ++
00:22 efunneko has joined #perl6
00:24 mugwump Do you suffer from working all night, only to wake up and realise it was all just a dream, and that you'll have to do the work again?  Try the new ACME REM modulator
00:25 SamB has joined #perl6
00:29 stevan autrijus: yes, Ruby does inherit class methods
00:29 stevan and I responded to dconway
00:29 stevan he is wrong,.. &new is not a class method
00:29 stevan it is an instance method on Class
00:30 stevan this is how Smalltalk, CLOS, etc do it,.. and pretty much how all the literature I have read in the past few months explains it
00:31 stevan autrijus: I knew this proposal would be controversial,.. espcially for the Java/C++ folks
00:31 autrijus stevan: yeah, it is extremely counterjava
00:31 stevan but Java does not have meta-classes, or any real Meta-model for that matter
00:31 stevan in fact,.. new is a keyword,.. not a method at all
00:31 stevan same with C++
00:31 autrijus stevan: I think dconway is not confused after all; he was pointing out a "pattern of use" by perl5 oo folks
00:31 mugwump Java has Run-Time Type Information / Reflection, I thought...
00:31 autrijus which is shared by ruby
00:32 autrijus that is having class utility methods and expect them to be inherited
00:32 autrijus also there is this extremely naughty p5 "idiom"
00:33 stevan I can see inheriting instance utility methods,.. but class utility methods?
00:33 autrijus which is a method serving as dual class/instance
00:33 autrijus stevan: class utility methods, like File::Spec.canonpath
00:33 autrijus against File::Spec::Unix.canonpath
00:33 autrijus not a shining example
00:33 autrijus but that is somewhat an idiom too
00:33 stevan yes, but what use it the method call syntax is you ignore the invocant?
00:34 autrijus I don't know, maybe just to get mixin behaviour?
00:34 stevan File::Spec's interface is pretty much universally accepted as being wrong i think
00:34 autrijus I agree and I see your point perfectly :)
00:34 stevan I know, devils advocate and all :)
00:35 autrijus aye.
00:35 autrijus also, there is an explanation cost.
00:35 autrijus "when you want to do this, don't, instead use a Role"
00:35 stevan I think File::Spec's behavior could accomplished with Roles
00:35 autrijus "when you want to do this, don't, instead use a Eigenmethod"
00:35 autrijus etc
00:35 stevan well the transition from p5OO to p6OO will be painful for many people I think
00:36 stevan but that has nothing to do with class methods :)
00:36 autrijus which is, again, not a bad idea, it's just a bit more drastic than the current spec.
00:36 stevan I guess I dont see it as all that drastic
00:36 theorbtwo It is a happy thing that most valid perl 5 ways of doing things will be valid perl 6 ways of doing things.
00:36 autrijus what theorbtwo said...
00:36 theorbtwo They will just no longer be the best way to do it.
00:36 mugwump for instance, can't you still have blessed hashes/
00:36 mugwump ?
00:37 theorbtwo You can.
00:37 autrijus ...yet really, I'm devil advocating, as I agree with stevan's main point, and I think the old method can be emulated with a different metaclass.
00:37 stevan theorbtwo: that is a valid point
00:37 theorbtwo AFAIK, you can even still rebless them.  (But please don't.)
00:37 stevan mugwump: you can, it is simply another "repr" type
00:38 stevan I think most of the p5 behavior will end up being implemented "on top" of the meta-model though
00:38 stevan emulation really
00:40 stevan I also think while the conversion might be painful for some, the benefits of switching will end up far outweighing the benefits of not switching
00:41 stevan you get so much "for free" with p6 OO that is just plain annoying or difficult to do in p5 OO
00:42 mugwump So what ever happened with the ./foo($bar) ==> $.foo($bar) thing ?
00:42 efunneko has quit IRC (Read error: 110 (Connection timed out))
00:43 * stevan wonders if that dead horse is anything more than bones and little bits of rotted flesh
00:43 autrijus just watch the necromancers on p6l.
00:43 dolmen has quit IRC ("ZZZZzzzzz.....")
00:43 autrijus lvl 1, cantrip: "dead horse reanimation"
00:43 autrijus mm, cantrip is lvl0
00:44 stevan autrijus: in the end, if class methods must be inherited, they can be fairly easily with the eigenclass model, so I am not worried
00:44 stevan I just figured I would try :)
00:44 autrijus stevan: it may be worth it to demonstrate on p6l how to do that.
00:44 * theorbtwo wonders if anything has happened to perl6 in the last 6 months, or if everybody has been playing with javascript instead...
00:44 autrijus theorbtwo: er you mean the language?
00:44 theorbtwo Yeah.
00:45 stevan autrijus: well in order to do that, you really need to have it in the core-metamodel
00:45 stevan it goes fairly deep actually, the best place for the explicit eigenclass createion is in Class::CREATE
00:45 autrijus stevan: hm? it can't be turned on from user code by annotating the class so it CREATEs differently?
00:45 autrijus theorbtwo: there's been much abolishing of unworkable ideas
00:46 autrijus and there are significantly less handwaving
00:46 autrijus but on the whole nothing much has been added
00:47 stevan autrijus: maybe with a subclass of Class,... I will try it and see
00:47 autrijus stevan: yeah, somehow I think that is the best way out
00:47 joepurl has joined #perl6
00:47 theorbtwo There's a bit less magic around, then?  (As in "you'd think that, but the majickal nature of pairs||junctions||foo means that something-bind-boggling happens instead"?
00:47 autrijus theorbtwo: yes.
00:47 theorbtwo Oooh, good.
00:48 autrijus theorbtwo: due to large part by a good interaction between p6l and #perl6 and spec-based tests -- iblech I think is very dedicated on this
00:49 theorbtwo Oh, spec-based tests sounds very good.
00:51 * theorbtwo wonders how he can catch up.
00:54 autrijus joyfully? :)
00:55 autrijus theorbtwo: or, write some fair-sized project with p6 :)
00:56 autrijus but I really need to sleep now.
00:56 autrijus journal up. ciao!
00:56 nothingmuch has left
00:56 wolverian nice post from larry
00:57 autrijus stevan: Larry out-insanified you
00:57 theorbtwo g'night.
00:57 autrijus but I'll proc it tomorrow. :) *wave*
01:07 * stevan was busy writing Java for david :P I will ogo read Larry;s post now
01:19 stevan wow,.. Larry did out-insanify me, but a long shot
01:20 stevan s/but/by/
01:20 stevan I am also not sure if he is agreeing with me or not
01:20 stevan "I think most class methods should be written as submethods instead." implies that the class methods will not be inherited
01:20 stevan since submethods are not inherited
01:21 stevan I am also not so sure about the "class as undef" thing either
01:22 stevan I think it is just as easy to reason about a class by inspecting the class instance than it is by inspecting a special instance which evaluates to undef
01:22 stevan oh well
01:22 * stevan goes off to let Larry's insanity sink in
01:39 joepurl has quit IRC ("Lost terminal")
01:40 joepurl has joined #perl6
01:53 justatheory has quit IRC ()
02:16 svnbot6 r7570 | stevan++ | Perl6::MetaModel - cleaning up some details in Pneuma about how Eigenclasses are named
02:21 evalbot_7569 has quit IRC (Remote closed the connection)
02:21 evalbot_7571 has joined #perl6
02:22 svnbot6 r7571 | stevan++ | Perl6-MetaModel -
02:22 svnbot6 r7571 | stevan++ | * added test to show that the behavior of inheritable class methods could be
02:22 svnbot6 r7571 | stevan++ |   accomplished with a subclass of Class. It works, however there is some room
02:22 svnbot6 r7571 | stevan++ |   for improvement.
02:30 joepurl has quit IRC ("Lost terminal")
02:30 joepurl has joined #perl6
02:52 sleepster is now known as typester
02:53 locksy has joined #perl6
03:00 rafl has joined #perl6
03:08 revdiabl1 has joined #perl6
03:08 revdiablo has quit IRC ("Reconnecting")
03:08 revdiabl1 is now known as revdiablo
03:10 sili has joined #perl6
03:13 joepurl has quit IRC ("Lost terminal")
03:13 joepurl has joined #perl6
03:20 Blicero has joined #perl6
03:55 joepurl has quit IRC ("Lost terminal")
03:55 joepurl has joined #perl6
03:57 * QtPlatypus asks "In pugs will perl5 re's work even if perl5 isn't compiled in?"
03:58 mugwump QtPlatypus: yes, it's pcre
03:58 geoffb QtPlatypus, yep -- they're handled with PCRE
04:06 Amnesiac has quit IRC ("Leaving")
04:07 sili oh nos
04:07 wilx` has joined #perl6
04:08 wilx has quit IRC (Read error: 104 (Connection reset by peer))
04:11 scook0 has joined #perl6
04:14 xinming_Beijing has quit IRC (Connection reset by peer)
04:32 stevan has quit IRC (Read error: 110 (Connection timed out))
04:36 rafl has quit IRC (Read error: 113 (No route to host))
04:38 QtPlatypus ?eval class foo { $.status}; class foo is bar {}; my $test = foo.new; $test.status = "1";
04:38 evalbot_7571 Error: Undeclared variable: "$?SELF"
04:39 QtPlatypus ?eval class foo { has $.status}; class foo is bar {}; my $test = foo.new; $test.status = "1";
04:39 evalbot_7571 \"1"
04:39 QtPlatypus ?eval class foo { has $.status}; class bar is foo {}; my $test = foo.new; $test.status = "1";
04:39 evalbot_7571 \"1"
04:39 QtPlatypus ?eval class foo { has $.status}; class bar is foo {}; my $test = bar.new; $test.status = "1";
04:39 evalbot_7571 \"1"
05:00 saorge_ has quit IRC (Read error: 110 (Connection timed out))
05:38 SM_ax has joined #perl6
05:49 Blicero- has joined #perl6
05:49 Blicero has quit IRC (Read error: 104 (Connection reset by peer))
05:58 GeJ has joined #perl6
06:33 xinming_Beijing has joined #perl6
06:34 scook0 ?eval say'hello'
06:34 evalbot_7571 hello bool::true
06:35 xinming_Beijing the operator '?? ::' is changed to '?? !!' for now, But '?? !!' is just a tmp solution.
06:35 xinming_Beijing So, I wonder, Could we use '!? !:' instead of '?? ::'?
06:36 scook0 xinming_Beijing: I'm not sure that's *better*
06:37 xinming_Beijing hmm, ?? :: operator is doing something a bit like `if test-statement { true...} else { false...} `
06:39 scook0 xinming_Beijing: the thing I quite like about `?? !!` is that it kind of reads like this:
06:39 scook0 `is $condition true?? if so, then $true -- but it's not!! so $false`
06:40 scook0 the question comes after the conditional
06:40 xinming_Beijing So, ?? :: is not a operator for "caculating", So, we can use ! prefix to specify the statement, and ? for the test, the answers are seperated by :
06:40 xinming_Beijing hmm, hope what I say is understandable.
06:41 scook0 xinming_Beijing: sorry, I don't follow
06:41 xinming_Beijing I just wish to make it be like C. :-)
06:41 scook0 please give a concrete example of your syntax
06:41 scook0 it is like C, except s/?/??/ and s/:/!!/
06:42 xinming_Beijing if true { yes... } else { no... };  true !? yes !: no ;
06:42 scook0 ??!! is still an expression (with a value), not just a statement
06:42 scook0 what's wrong with `$cond ?? $true !! $false`?
06:44 scook0 nothingmuch (if you backlog): no need to run any more tests for me; I got a feather account today, so I'll use that
06:45 xinming_Beijing scook0: hmm, for C language, we use '? :' and perl 5 borrowed this, And to perl 6, It then becomes '?? ::' which is also understandable to most people. But for '?? !!', IMHO, It's changed too much. So, I'd prefer '!? !:'
06:45 iblechbot has joined #perl6
06:45 scook0 xinming_Beijing: I can see what you're saying
06:45 scook0 but I don't think it's worth
06:45 scook0 (worth) it
06:46 xinming_Beijing lazy people will agree with what I said. :-)
06:46 scook0 I think '!? !:' is very ugly
06:46 scook0 xinming_Beijing: but lazy people won't bother to agree with you :P
06:47 scook0 I don't think !?!: is close enough to be of any benefit
06:47 scook0 so people might as well learn ??!!
06:47 scook0 $work bbl &
06:52 ^conner has quit IRC (Remote closed the connection)
07:16 larsen has joined #perl6
07:20 Blicero- has quit IRC (Remote closed the connection)
07:35 xinming_Beijing has quit IRC (Client Quit)
07:41 Cryptic_K bbl
07:41 dduncan I think that the '?? !!' syntax is actually beautiful, and much better than either '? :' or '?? ::'
07:41 Cryptic_K has quit IRC ("Leaving")
07:43 * geoffb agrees with dduncan, though perhaps not as strongly
07:43 Cryptic_K has joined #perl6
07:57 svnbot6 r7572 | gaal++ | golf haddock target fix
07:58 dduncan well, the lone ? or : look too much like other operators that do different things, and the :: looks too much like a package name part ...
07:59 dduncan plus, the !! says 'not' which fits in with it leading the result when the conditional is not true
08:00 dduncan nap time!
08:00 dduncan has quit IRC ()
08:00 ezra_ has joined #perl6
08:01 evalbot_7571 has quit IRC (Remote closed the connection)
08:01 evalbot_7572 has joined #perl6
08:02 Cryptic_K has quit IRC (Read error: 110 (Connection timed out))
08:04 sili has quit IRC (Read error: 104 (Connection reset by peer))
08:11 ezra_ has quit IRC ()
08:12 Blicero has joined #perl6
08:22 arcady has joined #perl6
08:27 gaal .ping for <eric256 autrijus>
08:28 gaal eric256: please add this after line 19 of ~/auto/autobuild.sh :
08:28 gaal make haddock
08:29 gaal autrijus: please make haddock.pugscode.org point to the output of eric256's eval("!!" :lang<shell>) :-)
08:31 dada has joined #perl6
08:33 autrijus okay, where would that be on feather?
08:34 gaal ~eric256/auto/pugs/dist/doc/html/
08:34 gaal hmm, well, eric should put a symlink from his public_html
08:35 autrijus yes.
08:35 gaal haddock/, presumably.
08:36 * autrijus ponders just go ahead and change autobuild.sh
08:36 gaal now to figure out how to have haddock link to the source :)
08:36 autrijus I can symlink to my public_html
08:36 gaal you are teh r00t?
08:37 autrijus yeah, I pwn0rz
08:38 gaal bbiab
09:04 rafl has joined #perl6
09:06 * autrijus decides to wait for eric256
09:11 rantanplan_ has joined #perl6
09:13 pdcawley_ has joined #perl6
09:13 pdcawley_ What's this week's syntax for declaring a default argument value
09:15 autrijus you mean parameter value.
09:15 autrijus sub foo (?$blah = 3)
09:15 autrijus that had not changed
09:16 pdcawley_ Good oh. When I say 'this week' it's a general this week :)
09:17 gaal parameter => property of the signature, parameter value => property of the particular call? what's an argument then?
09:18 gaal .oO(about time i get this terminology right)
09:18 autrijus gaal: you declare parameters; user supplies arguments
09:18 autrijus so "default argument value" works, I guess, operationally
09:19 joepurl has quit IRC (Read error: 110 (Connection timed out))
09:19 rafl autrijus: How could installing the c includes from src/ be done using cabal?
09:19 autrijus I was thinking that because you put it on the decl line it belongs to parameter
09:19 autrijus but the S06 nomenclature is just "default value"
09:19 gaal that has a built-in mnemonic to it. the user often indeed does supply arguments :)
09:19 autrijus rafl: probably you need to do it by hand. cabal doesn't support that natively
09:20 autrijus rafl: and cabal usually handles with this kind of thing using hooks
09:20 rafl autrijus: OK, are they really needed to compile something using the haskell lib?
09:20 autrijus probably not
09:20 rafl autrijus: I fear those need to be written in haskell..
09:21 autrijus er no, it can call out to shell...
09:21 rafl Phew..
09:21 autrijus in any case, if you really need it you can throw it into our Makefile.PL targets at first
09:21 rafl autrijus: How could one find out if the headers are really needed?
09:22 autrijus rafl: the test.hs passed linking
09:22 autrijus so they are not
09:22 autrijus you can attempt again after nuking source dir
09:22 autrijus just to be sure
09:22 rafl autrijus: Works. I linked outside of the sourcedir where the relative paths to the include can't be found (what is the origin of my problem).
09:23 autrijus k.
09:23 * pdcawley_ feels the urge to yell DON'T BE SILLY! at stevan...
09:23 rafl autrijus: OK, so I guess we should get out those include-dirs that lay in the src-dir.
09:25 rafl autrijus: Compiling the c-bits already works for me without those include-dirs. The hs-stuff not. How can I include a c header file with a relative path to the haskell file?
09:25 autrijus prolly can't, so try hacking pugs_build to canonize all C headers?
09:26 rafl "canonize all C headers" --verbose
09:28 joepurl has joined #perl6
09:29 joepurl has quit IRC (Remote closed the connection)
09:30 autrijus rafl: turn all include-dirs into rel2abs canonpat
09:30 autrijus h
09:31 autrijus have build_pugs proc them
09:31 rafl autrijus: Wouldn't help. Then we still have include-dirs that lay in the src-dir and aren't needed for linking.
09:32 autrijus rafl: you can include with
09:32 autrijus {-# INCLUDE "../../include/blah.h" #-}
09:33 autrijus rafl: ok, but we don't have .h files for ourselves -- all the .h are for c bits from upstream
09:33 autrijus if you do factoring them out to includes/, that makes merge slightly harder
09:33 autrijus but if you think it's worth it, do it
09:35 rafl Well, as we already found out: We don't need them to be installed or something like that. So why should they be put into includes/?
09:35 rafl I think removing those paths from include-dirs and make pugs compile would be enough.
09:36 autrijus sure
09:36 autrijus that can do too.
09:37 autrijus want to take a stab? :) I think implicitly you have a include-dir of "."
09:37 autrijus so indeed that should work.
09:45 rafl Does the cabal system chdir into where the .hs file is? Or is pwd always the / of the src-dir during hs-compilation?
09:45 autrijus I think it's always src-dir
09:48 rafl OK, thanks.
09:48 rantanplan_ has quit IRC (Remote closed the connection)
09:49 Lopo has quit IRC (niven.freenode.net irc.freenode.net)
09:49 Lopo has joined #perl6
09:51 xerox has joined #perl6
09:54 xerox Are there anonymous functions in p6?
09:54 QtPlatypus Yes
09:54 xerox What is the syntax to create them?
09:54 QtPlatypus sub { ... }
09:54 autrijus { ... }
09:54 xerox Where is the argument list?
09:54 autrijus ?eval { 4 + $_ }.(9)
09:54 evalbot_7572 13
09:55 autrijus xerox: sub ($x) { ... }
09:55 autrijus -> $x { ... }
09:55 autrijus { ...$^x... }
09:55 autrijus any one of the three ways
09:55 xerox ?eval ($x) { 4 + $x }.arity
09:55 evalbot_7572 Error:  unexpected "{" expecting operator, postfix conditional, postfix loop, postfix iteration, ";" or end of input
09:55 xerox I wanted to try arity <blink>
09:55 autrijus ?eval sub ($x) { 4+$x }.arity
09:55 evalbot_7572 1
09:55 autrijus ?eval -> $x { 4+$x }.arity
09:55 evalbot_7572 1
09:55 xerox Woot.
09:55 autrijus ?eval { 4+$^x }.arity
09:55 evalbot_7572 1
09:55 xerox I mean, wot.
09:56 xerox ?eval { $^x + $^y }.arity
09:56 evalbot_7572 2
09:56 xerox Time to get pugs :D
09:57 autrijus *grin*
09:58 xerox It's better to darcsget --partial or it's not too big/slow ?
10:01 autrijus partial is fine
10:02 xerox Your video is very nice :D
10:02 autrijus the motd one? :)
10:16 xerox Yeah :D
10:26 xerox Is this problem known?  "Could not find module `Language.Haskell.Syntax': it is a member of package haskell-src-1.0, which is hidden (imported from src/Pugs/External/Haskell.hs)"  Though the package isn't hidden, and it seem to contain that module.
10:27 nnunley has joined #perl6
10:28 autrijus hm, you have hsplugins?
10:28 autrijus is it exposed properly?
10:28 xerox Yep
10:28 xerox It's not enclosed in parens
10:29 autrijus look at your Pugs.cabal
10:29 autrijus in the pugs src dir
10:29 autrijus do you see haskell-src ?
10:29 xerox Nope
10:30 autrijus that may be why
10:30 rep xerox what video?
10:30 xerox rep: http://www.pugscode.org/talks/oscon05/movies.html
10:30 autrijus xerox: look at the last line of cabal
10:30 autrijus do you see -DPUGS_HAVE_HSPLUGINS ?
10:31 xerox Yes autrijus
10:31 autrijus ghc 6.4.1?
10:31 xerox Yep.
10:32 autrijus ok fixing
10:32 xerox :-D
10:32 autrijus fixed
10:33 autrijus pull in another minute or so
10:33 autrijus xerox++
10:34 rep heh nice video
10:34 xerox Thanks autrijus, I'll try :D
10:34 xerox I think this is my first ++! Heh.
10:36 autrijus hm, pulling from darcs is slow
10:36 svnbot6 r7573 | autrijus++ | * add hsplugins to dependencies in Cabal file; this is
10:36 svnbot6 r7573 | autrijus++ |   apparently required to build with hsplugins on xerox's
10:36 svnbot6 r7573 | autrijus++ |   machine.
10:36 svnbot6 r7573 | autrijus++ | * add xerox to AUTHORS.
10:37 autrijus I did tag every revision as droundy instructed :-/
10:37 xerox Woot.
10:37 xerox I didn't deserve it :-)
10:37 xerox But yes, it's kinda slow.
10:37 xerox (Still running)
10:38 autrijus you can always switch to svn :)
10:38 evalbot_7572 has quit IRC (Remote closed the connection)
10:38 * autrijus ponders what makes it that slow
10:38 evalbot_7573 has joined #perl6
10:38 xerox And there is no heavy bandwidth consumption
10:38 autrijus nor cpu
10:38 autrijus which is very weird
10:38 xerox it's just some do sleep =<< randomR ..
10:39 autrijus that is not good news :/
10:39 xerox dunno in fact
10:39 autrijus http://svn.openfoundry.org/pugs/ is the svn master repo
10:39 autrijus "svn co http://svn.openfoundry.org/pugs/" gets you that.
10:39 autrijus hm, maybe I should consult with droundy again
10:40 xerox is it possible to update with svn, and keep working with darcs, and back and forth again?
10:40 autrijus not really, I don't think
10:40 autrijus hm, it's taking longer than a fresh get
10:40 autrijus that is not very right
10:40 autrijus (if you prefer the darcs experience, you can try svk :))
10:41 xerox it's taking damn too long, indeed
10:41 xerox It seems I have svn installed for some reason, let's smoothly recover this failure with it :-\
10:43 * Odin- likes the name: Subversion. Comedy gold.
10:46 xerox Okay, it passed the previous point of failure, autrijus++
10:46 autrijus :))
11:01 ods15 has quit IRC (Read error: 104 (Connection reset by peer))
11:05 joepurl has joined #perl6
11:13 ods15 has joined #perl6
11:13 ods15 has left
11:14 ods15 has joined #perl6
11:23 xerox real    18m50.220s
11:23 xerox user    16m13.613s
11:23 xerox sys     0m22.497s
11:26 Juerd I just killed a pugs running t/builtins/sprintf_and_as.t on feather
11:26 Juerd It had been using lots of CPU for a while
11:27 Juerd If possible, please have a look into what might have been causing it
11:27 * gaal looks
11:27 SamB has quit IRC (Read error: 110 (Connection timed out))
11:27 Juerd The specific instance was in /home/scook0/svk/pugs
11:28 gaal r7573/win32 doesn't exhibit this, checking on feather
11:29 xerox How does one specify new bindings in pugs?
11:32 wilx` is now known as wilx
11:35 dada has quit IRC ("see Emily play")
11:36 gaal Juerd: looks like a bug in scook0's working pugs.
11:36 gaal scook0: ping
11:36 scook0 gaal: pong
11:36 svnbot6 r7574 | iblech++ | * Usual svn props.
11:36 svnbot6 r7574 | iblech++ | * t/pugsrun/12-script-args.t: skip on PIL2JS, added an appropriate chdir()
11:36 svnbot6 r7574 | iblech++ |   call, fixed the expectations of .perl.
11:36 svnbot6 r7574 | iblech++ | * PIL2JS: P6 Prelude::JS, Prelude::JS::Str: Stubbed sprintf.
11:36 scook0 shall I kill my test run?
11:36 gaal i think Juerd freed it for you (unless it's hanging somewhere else)
11:37 gaal which it might be, builtins/ is at the start of the run.
11:37 scook0 yeah, it seems to be continuing fine now
11:38 gaal scook0: it's after the first subtest passes.
11:38 xerox :e is The Backdoor!
11:39 evalbot_7573 has quit IRC (Remote closed the connection)
11:39 evalbot_7574 has joined #perl6
11:40 scook0 does `make test` launch a new pugs for each test?
11:40 gaal yes.
11:40 gaal each test *file*
11:40 gaal (of course :)
11:40 scook0 I think it's hanging on `t/examples/examples` atm...
11:40 gaal the harness (both for make test and for make smoke) is a perl5 process.
11:41 * scook0 is glad he ran his test under `nice`
11:41 gaal you can run one test manually, either simply do ./pugs path/to/test.t
11:42 gaal or with prove -v path/to/test
11:42 gaal for both, you need to put Test.pm in your PERL6LIB
11:42 gaal and for the latter, you need to set HARNESS_PERL to `pwd`/pugs
11:45 gaal xerox: new bindings, you mean like p5's *alias = \&some::func?
11:45 xerox gaal: I just want to name things
11:45 gaal ?eval sub f1 { say "moose" } my $x := &f1; $x()
11:45 evalbot_7574 moose bool::true
11:46 xerox ah, sub <name> <args> { <body> } ?
11:46 gaal ?eval sub f1 { say "moose" } my &alias := &f1; alias()
11:46 evalbot_7574 moose bool::true
11:47 gaal args is part of the optional signature. this should work too:
11:47 gaal ?eval sub f1 (Int $x) { say "moose: $x" } my &alias := &f1; alias(42)
11:47 evalbot_7574 moose: 42 bool::true
11:48 xerox Oh, there are types too.
11:48 gaal s/part of the optional signature/an optional part of the signature/
11:48 xerox Is there an "lispy" &rest ?
11:48 gaal s/args/parameters/
11:48 gaal what's rest? you mean a tail of a list? (/me doens't speak lisp)
11:49 xerox Maybe I just need to know how to get a list as argument
11:49 gaal continuation?
11:49 xerox Maybe, I need an introduction to p6 :)
11:49 autrijus xerox: sub car (@x) { @x[0] }
11:49 autrijus xerox: look at docs/quickref/
11:50 xerox (suitable for a lambdafolk)
11:50 gaal autrijus: wanna resume the lexical pragma stuff?
11:51 autrijus gaal: maybe tonight... I'm trying to get my four talks -- all due next monday, none ready -- done
11:51 gaal okay :)
11:52 autrijus sorries :)
11:52 gaal four? vb++, tolkien++, and what else? :)
11:53 gaal no worries anyhow :)
11:54 nnunley_ has joined #perl6
11:55 autrijus gaal: pugs++ and haskell++
11:55 gaal hee
11:56 * xerox joins the {pugs,haskell}++ party
11:56 autrijus xerox++
11:56 scook0 xerox: for &rest, I suspect you want `sub foo ($arg1, $arg2, *@rest) {...}`
11:56 xerox Thanks!
11:57 scook0 and @rest will get any extra positional arguments
11:57 scook0 ?eval sub foo(*@args) { say @args }; foo('hello', 'world');
11:57 evalbot_7574 helloworld bool::true
11:58 xerox ?eval sub (*@args) { say @args }.arity
11:58 evalbot_7574 1
11:58 xerox ^_^
11:58 xerox What is "    list $foo        # $foo" supposed to mean?
11:58 scook0 arity is not particularly reliable at the moment
11:59 xerox arity made me download pugs, hehe.
11:59 scook0 xerox: what are you reading? (where's that example from?)
11:59 autrijus xerox: it means "evaluting (a) in list context returns [a]"
12:00 autrijus if a is a scalar, that is
12:00 xerox scook0: the quickref
12:00 xerox pugs> map { $_ + 1 } [1,2,3]
12:00 xerox (2, 3, 4)
12:00 xerox Woot, I like this.
12:00 autrijus ?eval map &infix:<+>.assuming(1), [1,2,3]
12:01 xerox Partial application with verbose syntax? :)
12:01 autrijus yeah :)
12:01 scook0 ?eval [+] 1..10
12:01 xerox Uh.
12:01 evalbot_7574 (2, 3, 4)
12:01 evalbot_7574 55
12:01 * xerox shackes scook0
12:01 xerox That's nifty
12:02 scook0 the reduce meta-operator
12:02 scook0 ?eval [1, 2, 3] »+« [10, 20, 30]
12:02 evalbot_7574 Error:  unexpected "\\" expecting operator, postfix conditional, postfix loop, postfix iteration, ";" or end of input
12:02 xerox I'd call it fold
12:02 autrijus ?eval [=>] <foo bar baz>
12:02 evalbot_7574 ("foo" => ("bar" => "baz"))
12:02 xerox »+« ?!
12:02 scook0 ?eval [1, 2, 3] >>+<< [10, 20, 30]
12:02 evalbot_7574 (11, 22, 33)
12:02 autrijus xerox: it's fold, at the associativity of the operator within
12:03 scook0 xerox: the 'hyper' metaoperator
12:03 scook0 applies + (or whatever) element-wise
12:03 autrijus woot, no need to hack Spork anymore
12:04 autrijus native spork-esque support via XUL
12:04 autrijus wonderful
12:04 autrijus (for takahashi)
12:04 xerox slides?
12:04 autrijus yeah, http://piro.sakura.ne.jp/xul/appl​ications/takahashi/takahashi.xul
12:04 autrijus and the .css
12:04 autrijus it's like S5
12:04 autrijus but far niftier
12:05 autrijus (particularly because you can write in wikisyntax)
12:05 G2 has joined #perl6
12:06 xerox autrijus: and how do you convert the wikisyntax afterwards?
12:07 autrijus xerox: the XUL does it for you
12:07 autrijus that is the beauty
12:07 autrijus via javascript
12:07 * xerox stares at the .xul
12:08 * autrijus praises crazy .jp hacker and forgives their use of shiftjis
12:08 nnunley has quit IRC (Read error: 113 (No route to host))
12:09 scook0 autrijus: I'm beginning to suspect that I may have to give up on my parser patch :(
12:09 autrijus scook0: :(
12:09 autrijus scook0: try commit them as comments
12:10 scook0 I was hoping to get it in before demagicalizing pairs began (that being my whole motivation)
12:10 scook0 but it just causes *so* many really subtle parsing bugs
12:10 xerox autrijus: I can't understand the links, damn nice-looking-glyphs!  Where can I grab it to try? :)
12:12 autrijus xerox: wget the .xul
12:12 autrijus and the .css
12:12 autrijus and modify the .xul file
12:12 autrijus done
12:12 autrijus web application, man
12:12 G2 Anyone used Template Toolkit to create PDFs?
12:13 autrijus G2: no, I usually use PDF::FromHTML or PDF::Template
12:13 G2 Never got either to work
12:13 autrijus scook0: check them in as comments I think, so I can relook
12:13 G2 Will have another look
12:13 scook0 autrijus: will do
12:14 scook0 (and I was so proud of having fixed `foo.bar`...)
12:14 xerox autrijus: whoa.
12:14 G2 autrijus: I wonder why you use PDF::FromHTML ;-)
12:14 scook0 oh, I had to tweak `notFollowedBy` in Parsec, to make its type signature more general
12:14 autrijus G2: I wonder why too :)
12:15 autrijus scook0: that part you can always commit
12:15 xerox autrijus: I think I'll use it, I have to make some slides for school, how cool :)
12:15 autrijus xerox: :D
12:16 autrijus xerox: modify the .css to adjust fonts, too
12:16 xerox Yeah :-)
12:16 autrijus but I think it's so easy it will definitely replace spork in my toolchain :)
12:16 autrijus ok, I need to be offline for a bit
12:16 autrijus to Really Focus
12:17 autrijus bbiab... *wave*
12:19 * xerox waves back
12:19 autrijus xerox: oh btw
12:19 autrijus if you focus your mouse cursor to the top of canvas
12:19 autrijus you can see a control bar
12:20 autrijus that let you scroll thru the slides
12:20 autrijus _and_ it includes an inline editor
12:20 xerox Yeah, I saw that!!!
12:20 autrijus there is something very crazy about this
12:20 xerox Edit in wiky and play!
12:20 autrijus so... enjoy. *wave* &
12:21 xerox :-)
12:22 kolibrie has joined #perl6
12:30 svnbot6 r7575 | scook0++ | * Commented-out revised version of arglist-parsing patch
12:30 svnbot6 r7575 | scook0++ | (based on r7439)
12:30 svnbot6 r7575 | scook0++ | Thanks anyway to nothingmuch++ and autrijus++
12:30 svnbot6 r7575 | scook0++ | * Generalised notFollowedBy's signature
12:31 evalbot_7574 has quit IRC (Remote closed the connection)
12:32 evalbot_7575 has joined #perl6
12:33 G2 autrijus: PDF::FromHTML works fine. Cool.
12:33 elmex has joined #perl6
12:36 svnbot6 r7576 | iblech++ | PIL2JS:
12:36 svnbot6 r7576 | iblech++ | * Prelude::JS::Array: Implemented &uniq (but unsing a O(n^2) algorithm (push
12:36 svnbot6 r7576 | iblech++ |   unless $elem == any(@already_pushed)) -- waiting on .id or eqv hashes).
12:36 svnbot6 r7576 | iblech++ | * Prelude::JS::Array, Prelude::JS::Operators: Implemented &zip, Y, and ?\194?\165.
12:36 svnbot6 r7576 | iblech++ |   But: @a Y @b doesn't work yet, as this is desugared to infix:<Y>(@a,@b), and,
12:36 svnbot6 r7576 | iblech++ |   as &infix:<Y> has a signature of (Array *@arrays) (and thus provides list
12:36 svnbot6 r7576 | iblech++ |   context to its arguments), the @a,@b gets flattened...
12:37 xerox How does one declare a numeric variable?
12:38 scook0 xerox: a 'numeric variable'?
12:39 xerox $x = 2
12:39 xerox ?
12:39 scook0 ?eval my $x = 2; say $x
12:39 xerox my.
12:39 xerox Thanks :-)
12:39 scook0 xerox: 'my' declares a lexical var
12:39 scook0 there are also a bunch of other declarators
12:40 xerox Like?
12:40 scook0 'our' for package variables
12:41 xerox what is .tr ?
12:41 scook0 umm...I can't remember the others off the top of my head
12:41 xerox No problem :-D
12:42 QtPlatypus .tr translate.
12:42 * scook0 checks AES
12:42 cognominal I think Num is float and Int is integer
12:42 cognominal ?eval my Num $x = 2; say $x
12:42 scook0 technically speaking, I think Num also includes rationals and arbitrary-precision integers though
12:43 evalbot_7575 Can't exec "./pugs": Permission denied at examples/network/evalbot//evalhelper.p5 line 42.
12:44 evalbot_7575 Can't exec "./pugs": Permission denied at examples/network/evalbot//evalhelper.p5 line 42.
12:45 G2 has quit IRC ("oops")
12:45 wolverian wow, feather was SLOW for a few minutes there
12:45 stevan has joined #perl6
12:45 kolibrie good morning stevan!
12:46 evalbot_7575 has quit IRC (Remote closed the connection)
12:46 evalbot_7576 has joined #perl6
12:46 rafl wolverian: ACK.
12:46 stevan morning kolibrie
12:51 evalbot_7576 has quit IRC (Remote closed the connection)
12:51 evalbot_7577 has joined #perl6
12:52 svnbot6 r7577 | iblech++ | PIL2JS: libjs/PIL2JS.js: +"0d123", +"0b1010", +"0o123" all work now (this gives
12:52 svnbot6 r7577 | iblech++ | us five more passing tests).
12:54 xerox ?eval [<] [1,2,5,3,4,6]
12:55 evalbot_7577 bool::true
12:55 xerox O_o ?
12:55 QtPlatypus ?eval [<] (1,2,5,3,4,6)
12:55 evalbot_7577 bool::false
12:55 xerox Oh.
12:56 scook0 hmm, what else...
12:56 scook0 ?eval 3 < 1|4
12:56 evalbot_7577 bool::false
12:56 scook0 urk
12:57 xerox What are '[' and ']' used for, if not lists?
12:57 scook0 ?eval say(3 < 1|4)
12:57 evalbot_7577 any(VBool False,VBool True) bool::true
12:57 scook0 xerox: arrays
12:57 xerox Ah!
12:59 QtPlatypus xerox: Anonomouse refrences to arrays
12:59 QtPlatypus ?eval ref [1,2,3]
12:59 evalbot_7577 ::Array
12:59 xerox Is there a way to see the type of something in pugs?
13:00 * QtPlatypus just showed you
13:00 xerox Like, 'ref ref' :D
13:00 xerox Or, a-la-GHC, :t ref
13:01 scook0 xerox: nope
13:01 wolverian ?eval ref((1)), ref((1,2))
13:01 autrijus xerox: not until 6.2813 :)
13:01 evalbot_7577 (::Int, ::Array)
13:01 xerox approaching 2pi?
13:01 autrijus yup
13:01 xerox I wonder if there is one, I say one, not cool thing about pugs.
13:02 autrijus *smile*
13:02 xerox Oh yes, supporting OO... <grin>
13:02 xerox ^_^
13:02 autrijus lol :)
13:02 autrijus timtowtdi and all that.
13:03 autrijus (and I think there are a significant continent in Haskell hackers that wants subtyping as well)
13:03 scook0 has quit IRC ("Leaving")
13:03 xerox What is subtyping?
13:04 autrijus "class F is G"
13:04 autrijus F is then a subtype of G
13:04 xerox How does it differ from typeclasses?
13:05 cognominal is there a Carp equivalent in pugs?
13:05 autrijus cognominal: yes, "die"
13:06 autrijus (which is eq to "confess")
13:06 autrijus but not carp() yet
13:06 cognominal oki
13:06 xerox pugs> die
13:06 xerox *** Died
13:06 xerox Happy happy, joy joy.
13:07 cognominal another :q   :)
13:07 xerox :D
13:07 autrijus xerox: cf. http://www.haskell.org/tmrwiki/FpVsOo
13:07 xerox TIMTOWTDI
13:08 autrijus woot, the Pugs Mug arrived
13:08 autrijus cafepress++
13:08 autrijus if orwant makes to euro oscon, maybe I should give the mug to him
13:09 autrijus in accord to the biblical principle "a mug for a mug"
13:09 cognominal :)
13:10 nothingmuch has joined #perl6
13:11 Qiang has joined #perl6
13:19 nothingmuch morning
13:20 kolibrie morning nothingmuch
13:20 nothingmuch hi ho!
13:21 kolibrie nothingmuch: though, isn't it afternoon where you are?
13:21 nothingmuch yeah
13:21 nothingmuch but i like the word morning
13:21 kolibrie it is kind of nice
13:21 nothingmuch and since for many other people it is morning, it doesn't really matter ;-)
13:21 kolibrie :)
13:27 nnunley has joined #perl6
13:30 sheriff has joined #perl6
13:30 Limbic_Region has joined #perl6
13:31 cognominal ?eval say ref rx|a|
13:31 evalbot_7577 Pugs::Internals::VRule bool::true
13:31 SamB has joined #perl6
13:36 cognominal should not that be something like Regex?
13:38 autrijus that should be Rule
13:40 nnunley_ has quit IRC (Read error: 111 (Connection refused))
13:50 Juerd j/last juerd 3
13:50 Juerd eh.
14:07 stevan autrijus: did you see the "inheritable class methods with a subclass of Class" test?
14:07 Limbic_Region my apologies Juerd, I started replying to your Feather email before realizing you wanted them in a .plan file
14:07 Limbic_Region I sent the reply anyway as I am not currently able to login to Feather
14:10 eric256 has joined #perl6
14:11 Juerd Limbic_Region: Paste it later :)
14:11 Juerd I'll optimize my next message for single pass parsing :)
14:12 * eric256 can't beleive people think pod comments count as multi line comments when most other language have a quick way to do it
14:12 SM_ax has quit IRC ("Download Gaim: http://gaim.sourceforge.net/")
14:13 Juerd Limbic_Region: Re hardware failures: the system does use a RAID-1 array
14:13 theorbtwo eric256, is pod really that hard?
14:13 Juerd eric256: I don't believe people think they need multiline comments. They're nothing but trouble.
14:14 Juerd The only reason to want them is having a stupid editor that won't let you easily s/^/#/m
14:14 stevan is anyone else having issues connecting to openfoundry.org?
14:15 stevan svn.openfoundry.org to be more specific actually
14:16 autrijus it worksforme
14:16 autrijus try again?
14:17 autrijus (and yes, I saw your test)
14:17 stevan hmmm, still cant get it,.. it keeps redirecting to 0.0.0.0 which is really odd
14:18 autrijus try hardcode in etchosts: 140.109.17.109
14:18 autrijus also try web browser: http://svn.openfoundry.org/pugs/
14:18 stevan yes, the webbrowser is not workting either
14:18 autrijus it's local to you I think.
14:19 stevan yeah,.. probably,.. I am gonna restart,.. see if that helps :)
14:19 stevan has quit IRC ("Leaving")
14:22 stevan has joined #perl6
14:22 stevan much better :)
14:23 autrijus ...reboot... it cures everything!
14:23 eric256 Juerd pod isn't hard it just not comments.
14:24 eric256 and i think blaming an editor because the language lacks muliline comments is dumb
14:26 PerlJam eric256: the language does not lack multi-line comments.
14:27 eric256 it does indeed. it has multiline inline documentation. that is not the same. and its =begin comment is far longer than /* or whatever c++ is.  However, if they removed the newline restriction in p6 then its at least usable
14:27 PerlJam eric256: and why don't "pod comments" count?  Why must there be a "quick" way?
14:27 evalbot_7577 has quit IRC (Remote closed the connection)
14:28 evalbot_7578 has joined #perl6
14:28 svnbot6 r7578 | stevan++ | Perl6::MetaModel -
14:28 svnbot6 r7578 | stevan++ | * added example of PlugIn classes/roles described in
14:28 svnbot6 r7578 | stevan++ |   recent p6l post
14:28 eric256 because i'm lazy? because pod comments implie documentation, while inline comments can be used to temporarily remove code
14:29 eric256 if my goal is documentation then pod comments are fine.  if i'm debuging though pod comments don't realy feel right.
14:29 eric256 maybe i'm crazy, but the constant call for multiline comments would tend to say i'm at least crazy with a following ;)
14:30 PerlJam eric256: lemmings will follow each other too.
14:30 Juerd eric256: Pod is not comments
14:30 eric256 lol. yea. no one said anything about following...many people arriving at the same conclusion isn't the same as blindly following one person
14:30 Juerd eric256: Perl 6 lacks multiline comments
14:30 Juerd eric256: All true
14:30 Juerd eric256: But I love that Perl does not have multiline comments
14:31 Juerd I think they are trouble and to be avoided
14:31 eric256 why?
14:31 stevan autrijus: take a look at test 38 in the meta-model (which i just commited), it is a very nice (ab)use of Roles I think :)
14:31 Steve_p Multi-line comments are evil
14:31 theorbtwo "< eric256> ... crazy with a following ;)
14:31 Juerd eric256: It's impossible to see that something is commented.
14:31 theorbtwo "< eric256> lol. yea. no one said anything about following..."
14:31 Juerd eric256: Except by reading huge chunks
14:31 theorbtwo Or by having an editor that syntax-hilights.
14:31 eric256 shh theorbtwo i was hoping no one would notice
14:31 Steve_p eric256, I've seen far too much abuse of them programming in C to think they are a good thing
14:31 Juerd eric256: multiline comments are used only for disabling code. Big humps of code
14:32 eric256 same is true for pod though
14:32 theorbtwo But if we go back to that, then you can M-x comment-region.
14:32 PerlJam eric256: It's very rare that I've seen people use multiline comments without putting some marker along the left side of the comments.  If you're going to do that then putting a # at the start of each line is no hardship.  :)
14:32 stevan Steve_p: if we followed that logic, we would not have anything to program with ;)
14:33 PerlJam eric256: and for disabling large chunks of code (for debugging presumably) there's alsways =cut
14:33 eric256 ironic that a smart editor like yours that will allow block # insertion will almost also have syntax highlighting that solves your issue with multi line comments
14:33 Juerd eric256: I cannot and will not expect my editor to be able to parse perl.
14:34 stevan perl has multi-line comments,... assuming of course all lines begin with #
14:34 eric256 to me any use of pod just feels like abusing one tool for a different job
14:34 Juerd eric256: Agreed.
14:34 stevan yeah, i agree with that too
14:34 stevan I dont like inline pod myself
14:34 Steve_p Once you've spent a few good hours wondering why code wasn't getting executed only to find out that it was commented out all along, you haven't really dealt with abusive coding.
14:35 eric256 hopefully this is pointless because you should be able to define a macro or opertar in pugs that gives you  multi line comments
14:35 stevan Steve_p: I have done that with perl too, thats just stupidity/lack-of-sleep/drunkeness
14:35 eric256 Steve_p any number of things can cause that, and any programming anything can be abused.  I don't see that as argument agianst something like this
14:38 Steve_p Granted people will do dumb things.  But when people want to put a hole in the bottom of a boat, don't hand them the drill.
14:39 eric256 then sure as hell don't hand them perl5 or perl6, normaly it gives them a stick of dynamite
14:39 Ikarus[zleep] is now known as Ikarus
14:39 cognominal ?eval my @a = qw( a b c);  say "a" =~~ rx| @a |
14:39 cognominal oops
14:40 evalbot_7578 Error:  unexpected "~" or "\"" expecting block construct, ":", term, term postfix, operator, postfix conditional, postfix loop, postfix iteration, ";" or end of input
14:41 cognominal ?eval my @a = qw( a b c);  say( "a" ~~ rx| @a | )
14:41 evalbot_7578 bool::true
14:41 eric256 why does that work?
14:42 cognominal it's equivalent to perl5   "a" =~ m/ a | b | c /
14:43 eric256 @a inside regex joins with | ? okay
14:43 cognominal yes
14:43 Juerd eric256: It's not interpolation, and there is no joining happening
14:43 Juerd eric256: But yes :)
14:44 eric256 new to p6 rules  then?
14:44 cognominal it avoids ugly perl 5 stuff like    eval  "qr/" . join( "|", @a )  . "/"
14:44 eric256 yea its nice. just didn't know it did that ;)
14:45 cognominal I was just searching for it to avoir the forementionned eval and was happy to find it
14:45 eric256 do hashes do anything special then? /me can't picture anything useful with hashes
14:45 cognominal I bought perl6 wholesale when reading the apo about rules
14:46 Juerd cognominal: The idiom is my $re = join '|', @a; $re = qr/$re/;, to avoid eval :)
14:46 cognominal I can't imagine witht the added value of attribute grammars; laziness++
14:46 cognominal thx Juerd
14:47 PerlJam eric256: "An interpolated hash matches the longest possible key of the hash as a literal, or fails if no key matches."
14:47 PerlJam eric256: (quoting S05 there)
14:47 PerlJam eric256: there's more to it, but I assume you can read too  :)
14:47 PerlJam http://dev.perl.org/perl6/doc/design/syn/S05.html
14:47 eric256 thanks for the link
14:47 eric256 i hadn't read up on the rules yet because i couldn't get them to work on my windows box
14:48 PerlJam of course, there's no  telling how much is actually implemented except by trying it.
14:50 eric256 yea it could be kinda fun to have a little implemented in pugs logo to put near stuff in the S documents
14:51 cognominal hum, the bool::true  was return by the evaluation of the say, not printed by it
14:52 eric256 ?eval my @a = qw( a b c);   "a" ~~ rx| @a |;
14:52 evalbot_7578 MkMatch {matchOk = False, matchFrom = 0, matchTo = 0, matchStr = "", matchSubPos = [], matchSubNamed = {}}
14:52 cognominal :(
14:52 eric256 ?eval my @a = qw( a b c);  rx| @a |.perl;
14:52 evalbot_7578 "\{rule}"
14:53 QtPlatypus ?eval my  @a = qw( a b c);  "a"  ~~ rx:2| @a |;
14:53 evalbot_7578 pugs: *** cannot cast from VUndef to Handle (VHandle)     at tmp-Prelude.pm line 197, column 24-45        tmp-Prelude.pm line 221, column 13-25        tmp-Prelude.pm line 275, column 5-55        tmp-Prelude.pm line 61, column 30-59
14:54 ods15 YOU CRASHED IT
14:54 ods15 :P
14:56 QtPlatypus ods15: Eval bot''s nice and healthy.
14:57 Blicero has quit IRC (Remote closed the connection)
14:57 eric256 yea its pretty durable
14:58 gaal it can't crash:
14:58 gaal ?eval crash
14:58 evalbot_7578 Error: No compatible subroutine found: "&crash"
14:58 gaal see?
14:58 eric256 ?eval can(Crash)
14:58 evalbot_7578 Error: No compatible subroutine found: "&can"
14:59 justatheory has joined #perl6
14:59 eric256 that same code that gave you an error on eval bot, just says unknown modifier :2 on my system
14:59 eric256 ?eval my  @a = qw( a b c);  "a"  ~~ rx:2| @a |;
15:00 evalbot_7578 pugs: *** cannot cast from VUndef to Handle (VHandle)     at tmp-Prelude.pm line 197, column 24-45        tmp-Prelude.pm line 221, column 13-25        tmp-Prelude.pm line 275, column 5-55        tmp-Prelude.pm line 61, column 30-59
15:00 eric256 same version running on both.....can someone try that code localy?
15:03 eric256 anyone?
15:03 kolibrie feather says Unknown modifier :2 will probably be ignored
15:05 kolibrie how is that, since evalbot_7578 is on feather?
15:08 QtPlatypus ?eval my  @a = qw( a b c);  "a"  ~~ rx:q2| @a |;
15:08 evalbot_7578 pugs: *** cannot cast from VUndef to Handle (VHandle)     at tmp-Prelude.pm line 197, column 24-45        tmp-Prelude.pm line 221, column 13-25        tmp-Prelude.pm line 275, column 5-55        tmp-Prelude.pm line 61, column 30-59
15:08 QtPlatypus What is the modifer that switches on intropolation?
15:10 rafl Just commited some major changes to the build system. Please test excessively.
15:11 Juerd Who wants to write a Perl 6 based wiki?
15:12 * rafl - as soon as catalyst ist ported. ;-)
15:12 svnbot6 r7579 | rafl++ |  r17088@ata:  rafl | 2005-10-12 17:10:51 +0200
15:12 svnbot6 r7579 | rafl++ |  * Made changes to remove all directories from include-dirs in Pugs.cabal that
15:12 svnbot6 r7579 | rafl++ |    are in the source tree. They aren't installed or needed for linking, etc.
15:12 Juerd Who wants to do it sooner? :)
15:14 kolibrie Juerd: brentdax already wrote one
15:15 Juerd Is that finished then?
15:15 Juerd As in: usable
15:15 kolibrie very slow, the last time I looked at it
15:15 Juerd That's not usable :)
15:16 rafl pugs is very slow. What did you expect?
15:17 Juerd I did not expect something fast from such a comprehensive thing
15:17 Juerd But we can make something that's usable and fast
15:17 Juerd Or at least not that slow
15:17 Juerd It just won't allow doing everything by the designer's book
15:17 eric256 so port over one of the wiki modules....though i've never had any success with any of those. ;)
15:17 rafl I'd like to hear that my recent changes didn't break anything. :-)
15:18 eric256 rafl testing here
15:18 rafl Thanks.
15:19 rafl eric256: No.. you're developing on Win32, don't you? I fear that..
15:19 eric256 i'm running one make on feather, and one on win32...i'll let you know what happens
15:26 Juerd eric256: The point is that I'm not able to do anything
15:26 Juerd But I do want a Perl 6 based wiki :)
15:27 Juerd Or perhaps we can just put feather's site in the pugs tree
15:27 Juerd After all, everyone's a committer
15:27 Juerd autrijus: What do you think about that?
15:30 eric256 i think a wiki is better
15:31 eric256 you can't do anything? come on!! who needs to eat sleep and work for a living ;)
15:31 typester is now known as sleepster
15:34 evalbot_7578 has quit IRC (Remote closed the connection)
15:35 eric256 who manages eval_bot agian? iblech?
15:35 evalbot_7579 has joined #perl6
15:43 GeJ has quit IRC ("Client exiting")
15:50 rafl It runs on feather. Check who owns the process.
15:51 rafl eric256: Build results? :-)
15:51 gaal the build on windows is currently broken. fixing.
15:52 pasteling "eric256" at 66.102.136.66 pasted "build resutls" (11 lines, 861B) at http://sial.org/pbot/13641
15:52 eric256 rafl failed on feather
15:53 rafl eric256: I'd say that's not an error.
15:53 eric256 i would too, except it stopped there and the bin version of pugs is 7578 instead of 7579
15:53 eric256 uhh scratch that
15:53 * eric256 is stupid. lol
15:54 rafl accidently activated screens copy mode? That happens too often to me.
15:55 eric256 i ran feathers pugs instead of my local copy i just built
15:55 eric256 local copy seems to have worked fine
15:55 eric256 waiting for galls word to retry the windows build
15:55 rafl Great. What's wrong with win32?
15:56 gaal .hsc got borked in the makefile
15:56 gaal you can't use single quotes for oneliners there.
15:56 rafl Hrm, why?
15:56 gaal because the windows shell, to put it mildly, sucks rotten donkey arse.
15:57 eric256 hhehe gaal++ definitly
16:02 gaal and when you try to use a make argument in a rule, like \$, it contains backslashes. in your oneliner. welcome to windows and have a nice dayt
16:04 gaal er $<
16:05 eric256 looks lik fibonaci is currently running the eval bot
16:11 Jooon http://images.ucomics.com/c​omics/ft/2005/ft051011.gif
16:17 nothingmuch fibonaci == luqui
16:24 Southen_ has quit IRC (Connection timed out)
16:28 saorge has joined #perl6
16:28 saorge has quit IRC (Client Quit)
16:28 saorge has joined #perl6
16:28 saorge has quit IRC (Read error: 104 (Connection reset by peer))
16:28 saorge_ has joined #perl6
16:28 saorge_ has quit IRC (Read error: 104 (Connection reset by peer))
16:32 svnbot6 r7580 | gaal++ | unbreak .hsc.hs target on Win32
16:32 svnbot6 r7579 | rafl++ |  r17088@ata:  rafl | 2005-10-12 17:10:51 +0200
16:32 svnbot6 r7579 | rafl++ |  * Made changes to remove all directories from include-dirs in Pugs.cabal that
16:32 svnbot6 r7579 | rafl++ |    are in the source tree. They aren't installed or needed for linking, etc.
16:32 gaal but there's still another probelm.
16:33 gaal anyone else getting errors with RRegex.PCRE (pcre.h not found?)
16:33 gaal (brb)
16:34 SamB has quit IRC (Read error: 110 (Connection timed out))
16:35 icebattle has joined #perl6
16:35 evalbot_7579 has quit IRC (Remote closed the connection)
16:36 evalbot_7580 has joined #perl6
16:36 gaal well, evalbot is built, so obviously this isn't a problem on linux.
16:37 SamB has joined #perl6
16:40 autrijus it killed my build too.
16:41 autrijus fixing
16:42 gaal 7579 removed includes: from the Cabal file
16:42 eric256 has quit IRC (Read error: 110 (Connection timed out))
16:42 autrijus fixed.
16:42 rantanplan_ has joined #perl6
16:43 gaal how come linux wasn't affected?
16:44 gaal or it it because evalbot's autobuild doesn't make clean?
16:45 autrijus I have no idea... both are possible
16:48 autrijus hm, the PCRE.hs still dies
16:48 * autrijus ponders what to do
16:48 kolibrie I'm getting this:
16:48 kolibrie /usr/bin/perl -Iinc -MFile::Spec -e "my (undef, $dir, $file) = File::Spec->splitpath(shift); chdir($dir); system(q+/usr/local/bin/hsc2hs  -DPUGS_HAVE_PARROT -I/var/projects/parrot/include  -Isrc/syck  + . $file);" src/Data/Yaml/Syck.hsc
16:48 kolibrie syntax error at -e line 1, near ". )"
16:48 autrijus kolibrie: I just fixed that one.
16:49 kolibrie I'll pull again
16:49 autrijus rafl: any ideas about PCRE.hs?
16:49 gaal eek, then my fix broke unix. sorry :/
16:49 svnbot6 r7581 | autrijus++ | *hsc2hs rule: do not mention $@% in the Makefile for portability.
16:51 autrijus gaal: np :)
16:51 evalbot_7580 has quit IRC (Remote closed the connection)
16:51 evalbot_7581 has joined #perl6
16:53 gaal ARGV->[0] !?
16:53 autrijus gaal: another bit of perl5 you didn't know? :)
16:53 gaal indeed
16:53 autrijus ENV->{PATH}
16:54 autrijus etc, all works
16:54 gaal i know it about hashes
16:54 gaal ahhhh
16:54 gaal right, same thing
16:54 gaal heh.
16:54 gaal vile.
16:54 cognominal any idea why      my @a = << a b c >> ; "a" ~~ /  @a /   des not work?
16:54 autrijus you probably does not want //
16:55 autrijus PGE<->p6 interaction is currently all string level
16:55 cognominal and weirder, does that should mean anything?      "a"  ~~  rx| << a b c >> |
16:55 cognominal ?eval    my @a = << a b c >> ; "a" ~~ rx /  @a /  
16:55 gaal wait no, i knew %X->{foo} works. how the moose does X->{foo} work?
16:55 evalbot_7581 MkMatch {matchOk = False, matchFrom = 0, matchTo = 0, matchStr = "", matchSubPos = [], matchSubNamed = {}}
16:56 autrijus gaal:
16:56 autrijus $x->{k}
16:56 autrijus desugars to
16:56 autrijus %{$x}{k}
16:56 autrijus so X->{foo}
16:56 autrijus desugars to
16:56 autrijus %{X}->{foo}
16:56 autrijus er
16:56 gaal oy oy oy oy
16:56 autrijus %{X}{foo}
16:56 autrijus happy, no?
16:57 gaal i need a drink :)
16:57 autrijus er, I lied; s/%/$/ above
16:57 autrijus $x->{1} is $$x{1}
16:57 autrijus so X->{foo} is $X{foo}
16:58 autrijus the things you can learn via golfing...
16:58 gaal hmmm okay, still doesn't explain how the array subscripting happened
16:58 autrijus ARGV->[0]
16:58 autrijus desugars to $ARGV[0]
16:58 autrijus which acts on @ARGV
16:58 autrijus and there you go
16:58 gaal oh, "by analogy".
16:58 autrijus no, same rule.
16:59 autrijus $ perl -MO=Deparse -e 'ARGV->[0]'
16:59 autrijus $ARGV[0];
16:59 autrijus $ perl -MO=Deparse -e '$ARGV->[0]'
16:59 autrijus $$ARGV[0];
16:59 autrijus so I really meant "desugaring"
16:59 gaal wow
16:59 kolibrie autrijus++ # explaining perl5 desugaring
17:00 autrijus :)
17:00 gaal golf for portability. now where's that drink...
17:00 autrijus pass me a bottle too
17:00 eric256 has joined #perl6
17:00 * stevan holds up his cup for a pour
17:00 gaal autrijus: there'll be as many as you like when you come over
17:01 icebattle has quit IRC (Read error: 110 (Connection timed out))
17:01 autrijus gaal: indeed indeed
17:01 gaal stevan: if you come, you'll get yours too.
17:01 stevan :)
17:01 stevan we can all meet on the top of a mountain in Turkey
17:01 autrijus I'm happy that I'm going to .au and work with damian for a few days :)
17:01 gaal it's insanely cold there, stevan.
17:02 stevan then we drink more !
17:02 autrijus I'd rather drink over a dinner of turkeys on a mountain
17:02 gaal heh. always the practical mind
17:02 stevan drink your turkey dinners??
17:02 stevan :P
17:02 autrijus "bring your own turkey"
17:03 stevan actually I think a nice resort on the mediteranan is a better idea
17:03 * eric256 tries to recall if .au is austria or astralia
17:03 Juerd Funny. My message of yesterday seems to have reminded people that they have feather accounts
17:03 Juerd More people than normal are logged in
17:03 Juerd :)
17:03 Juerd eric256: australia
17:03 PerlJam Juerd: yep.
17:03 autrijus eric256: australia... it's summer there
17:03 autrijus Juerd: good to know :)
17:03 Juerd PerlJam: Are you one of them? :)
17:04 gaal w|wc -l # 19
17:04 PerlJam Juerd: yep.  sorta
17:04 Juerd I've put online http://feather.perl6.nl/cgi-bin/finger.pl yesterday, by the way
17:04 Juerd I don't now if you have seen it already
17:04 PerlJam I was well aware of my feather account, but I hadn't used it in a while.  Your message made me slap my forehead about the parrot development I was doing, "duh, this would be perfect for feather!"
17:05 Juerd heh
17:05 Juerd I love remote forehead slapping
17:08 gaal autrijus: the sych.h/pcre.h fix isn't in yet, is it?
17:08 gaal (dropped from Pugs.cabal.il)
17:09 gaal oops, what is this accidental bout of patriotism? i meant .in.
17:09 autrijus mmm patriotism
17:12 wolverian Juerd, should that be sorted somehow?
17:12 wolverian (er, I see it is)
17:14 Juerd wolverian: It's currently sorted in getpwent order :)
17:14 Juerd This happens to be uid order, but it might be passwd order instead
17:15 Juerd Or random.
17:15 xerox Happy happy, joy joy.
17:15 Juerd wolverian: See /usr/lib/cgi-bin2/finger.pl :)
17:16 PerlJam Juerd: now just make that editable by anyone so that we can all modify it such that we sort first ;)
17:17 nnunley has quit IRC (Read error: 113 (No route to host))
17:18 autrijus gaal: fixed
17:20 Juerd PerlJam: No - that allows someone to remove the .nofinger support.
17:22 evalbot_7581 has quit IRC (Remote closed the connection)
17:22 svnbot6 r7582 | autrijus++ | * fix pcre build by including via relative path
17:22 evalbot_7582 has joined #perl6
17:26 gaal autrijus: on win32 at least, src/Unicode.hs can't find syck.h and pcre.h
17:27 gaal nopasting
17:27 autrijus Unicode wants syck.h and pcre.h?
17:27 autrijus k
17:27 pasteling "gaal" at 192.115.25.249 pasted "missing includes" (4 lines, 297B) at http://sial.org/pbot/13643
17:28 gaal it doens't want - they're not mentioned there explicitly -
17:28 gaal nor in UnicodeC.h
17:28 gaal must be some, uh, something else. :)
17:29 gaal (the temp file that had the error is deleted.)
17:29 autrijus put -keep-tmp-files to Pugs.cabal.in's last line
17:30 gaal oh, my bad
17:31 gaal i'd put the includes: back there and forgot them. works now :)
17:32 autrijus whew :)
17:33 * autrijus disappears for another while, trying to produce at least some slides today &
17:33 * gaal goes to celebrate Bicycle Day
17:40 nothingmuch has quit IRC (Read error: 113 (No route to host))
17:41 saorge has joined #perl6
17:41 saorge has quit IRC (Read error: 104 (Connection reset by peer))
17:41 saorge_ has joined #perl6
17:54 eric256 i don't suppose anyone here knows how to make a mysql slave skip an entry in the log that it is stuck on?
17:56 rafl autrijus: What about PCRE.hs?
17:57 wolverian heh, I never knew C can do parametric function pointers...
17:57 autrijus rafl: nvm, fixed already
17:58 wolverian hm, can I specify signatures for scalar sub refs?
17:58 rafl Whops. I should somehow make an alias that does 'dpatch deapply-all; svk $@'
17:58 wolverian my (Int --> Str) $foo;
17:59 wolverian something like that?
17:59 rafl It's the second time I commited that debian patch accidently.
17:59 xerox autrijus: do you think a getAllocations is possible in pugs?
18:00 autrijus xerox: what's that?
18:00 svnbot6 r7583 | iblech++ | * Usual svn props.
18:01 svnbot6 r7583 | iblech++ | * util/yaml_harness.pl: Reverted r7579 (patch applied by the Debian package
18:01 svnbot6 r7583 | iblech++ |   (the $SMOKERFILE thing)).
18:01 svnbot6 r7583 | iblech++ | * t/pugsbugs/attribute_hash.t: Fixed two typos.
18:01 autrijus wolverian: yes, what wolverian said, but currently unsupported
18:01 autrijus er
18:01 autrijus s:2nd/woverian/you/
18:01 wolverian autrijus, thanks. is that the right syntax?
18:02 autrijus afaik yes.
18:02 wolverian ah. are there tests? :)
18:02 autrijus I don't know, probably not, write some :)
18:02 wolverian will do
18:02 xerox autrijus: the latter part of:
18:02 xerox *Reflection> :set +s
18:02 xerox *Reflection> let f n = reset ((*) (shift g) n) where g k | n <= 0 = 1 | otherwise = k (f $ n - 1) :: Int
18:02 xerox (0.01 secs, 790016 bytes)
18:03 evalbot_7582 has quit IRC (Remote closed the connection)
18:03 autrijus xerox: sure, I think, I don't see why not, using GHC.Exts hooks
18:03 wolverian how did I say "doesn't return anything", again?
18:03 wolverian s,did,do,
18:03 evalbot_7583 has joined #perl6
18:03 autrijus if you want to hack something to Run.hs/Shell.hs, go ahead
18:03 autrijus wolverian: --> Void
18:04 wolverian ah, thanks
18:04 autrijus although if luqui gets his way, would be --> ()
18:04 autrijus anyway, Void for now.
18:04 wolverian right
18:04 wolverian should this go to syntax or subroutines (or similar)?
18:04 autrijus get a types/ dir
18:04 autrijus I think.
18:05 wolverian sounds like a really good idea
18:05 autrijus :)
18:05 wolverian parametric_references.t? :)
18:05 wolverian (I'm not very good at making up names.. oh well, writing it)
18:05 autrijus not really parametric
18:05 wolverian oh, okay
18:05 autrijus typed_variables or something
18:05 autrijus or just "variables"
18:06 wolverian this is a somewhat special case though
18:06 wolverian as in, it has a signature type
18:06 wolverian (maybe it should be Code:(Int --> Void)? I remember seeing that on p6l..)
18:08 autrijus I think --> is a tycon that cons a Code
18:08 wolverian mm right
18:08 autrijus but this part is unspecced land :)
18:11 wolverian is this :todo?
18:12 autrijus yes.
18:12 autrijus :todo<unspecced>
18:12 wolverian right
18:12 wolverian oh, I need to uh, declare the reference, then assign to it, separately in two eval() test
18:12 wolverian that has a problem with scope
18:13 autrijus use our
18:13 wolverian right. thanks :)
18:13 autrijus or something. improvise :)
18:13 autrijus bbiab...
18:18 nothingmuch has joined #perl6
18:18 obra autrijus: remember that laptop I bought on my way to Taipei? I resurrected it with the disk from a dead ipod
18:19 nothingmuch morning
18:19 nothingmuch [
18:19 nothingmuch how did you mount it?
18:19 nothingmuch isn't it way smaller?
18:21 nothingmuch odd, everyone seemed to say apple was not going to do the video stuff this time
18:22 ferreira has joined #perl6
18:22 Cryptic_K has joined #perl6
18:23 autrijus obra: woot!
18:23 svnbot6 r7584 | wolverian++ |  r2511@chronoa:  wolverian | 2005-10-12 21:21:58 +0300
18:23 svnbot6 r7584 | wolverian++ |  Add t/types/ and one test file there (variables.t) - awaiting an influx of type tests once things are specced :)
18:23 wolverian argh, I forgot --verbatim :(
18:24 wolverian (again :)
18:25 nothingmuch i think the next thing is going to be an apple PVR
18:29 evalbot_7583 has quit IRC (Remote closed the connection)
18:29 evalbot_7584 has joined #perl6
18:35 Limbic_Region has quit IRC ("CGI:IRC (Ping timeout)")
18:36 ferreira has quit IRC ()
18:54 eric256 nothingmuch....that would probably rock..i'm a pc person but just because all the good free stuff used to only be PC
18:55 eric256 wiht apple running on unix now that should let them take advantage of all the free linux projects and still be pretty stylin machines. ;)
18:57 ilogger stops logging #perl6 at Wed Oct 12 18:57:12 2005
18:57 ilogger stops logging #perl6 at Wed Oct 12 18:57:12 2005
18:57 ilogger starts logging #perl6 at Wed Oct 12 18:57:19 2005
18:57 ilogger has joined #perl6
19:01 dduncan has joined #perl6
19:17 geoffb Oh man, what a morning
19:17 obra  
19:19 dolmen has joined #perl6
19:23 eric256 build for win32 is failing agian?
19:23 pasteling "eric256" at 66.102.136.66 pasted "Failed Build on Win32" (11 lines, 513B) at http://sial.org/pbot/13648
19:29 sheriff has quit IRC ("I should be working")
19:33 nothingmuch "your aidum is 9 weeks old... [x] check daily"
19:34 eric256 ??
19:34 nothingmuch i was quoting the update box ;-)
19:34 * eric256 looks around for someone who understands. ;)
19:34 autrijus eric256: don't unoptimised
19:35 autrijus "nmake" again and it shall pass
19:35 autrijus you may wish to send it to glasgow-haskell-bugs@haskell.org, :)
19:35 nothingmuch eric256: there is supposed to be an audit of pirated software soon
19:35 autrijus (which will hopefully soon be managed via RT and hence more friendly)
19:35 nothingmuch i am the only mac user at work
19:35 nothingmuch everyone else had to carefully uninstall unpaid for shareware
19:36 nothingmuch and commercial apps they doodle around with (nobody pays for maya if they aren't a pro...)
19:36 nothingmuch so i poked around
19:36 eric256 that is optimized, at least according to config.yml
19:36 nothingmuch i have one pirated copy of microsoft office I didn't install
19:36 nothingmuch i'm entitled to a license from work, but i don't even use it
19:36 nothingmuch and surfer's serials, which I haven't opened (it was from march 2004 or so)
19:37 nothingmuch s/opened/used/
19:37 nothingmuch and it's not like I really work hard to not pirate
19:37 nothingmuch it's just that there is tons of good, free (especially opensource) software for the mac
19:38 eric256 autrijus ... did you catch that?
19:39 eric256 i'm trying agian just to be on the sure side, but i'm 99% sure that was an optimized build
19:39 rafl autrijus: You don't want to do a minor release featuring the changes to the build sys and include stuff I recently did, do you?
19:41 rafl autrijus: Why? Otherwise I would have to backport my changes to 6.2.10 using seperate patches do be able to do the Debian package for 6.2.10. That's not that bad but if you wouldn't mind a minor release without new features, etc. that would be easier.
19:43 autrijus rafl: pugs has no minor release, so that means 6.2.11
19:43 autrijus eric256: hmm, I could've triggered it only via unoptimised before -- 6.4.1 that is
19:43 rafl Well, with "minor" I mean without real big changes.
19:44 autrijus rafl: I'm fine with 6.2.11... but I don't have time for releng, so if you feel like it, do the changelogging and clean smoking again
19:45 autrijus and call me when you want me to upload it  :)
19:46 elmex has quit IRC ("ok")
19:46 xerox autrijus: how are the slides getting shaped?  :)
19:46 rafl autrijus: OK, I'll backport the changes ;-)
19:47 autrijus rafl: I meant no offense :)
19:47 rafl autrijus: Shouldn't be much more than dpatch patch-template ... < svk diff -r...  > debian/patches/foo.dpatch
19:47 rafl autrijus: Of course.
19:47 autrijus xerox: http://perlcabal.org/~autrijus/tmp/haskell.xul
19:47 rafl None taken.
19:47 autrijus k
19:47 * xerox is excited, and clicks the url
19:47 autrijus xerox: feedback welcome
19:47 autrijus also, patch welcome, since you can do "view source"
19:50 dduncan rafl, ping me if you want me to contribute a smoke pre-6.2.11
19:50 Juerd xerox: Why is your nick a copier brand?
19:51 Juerd xerox: Can I hate you personally whenever our Xerox copier has a paper jam? ;)
19:51 eric256 better question...why did a copier company steal his nick?
19:51 Juerd Equality works in two directions
19:51 dduncan xerox nick isn't unprecedented
19:51 xerox autrijus: there's an error on the fib example
19:51 dduncan many, many people use names that others trademarked as their nicks online
19:51 rafl dduncan: Well, I think I'll simply take my changes and patch 6.2.10 with it do to the debian package. They don't alter much. Only some includes and the cabal file. The rest will work as before (famous last words?)
19:51 xerox it was just a case
19:52 dduncan usually those nicks are the names of fictional story characters, though
19:52 autrijus xerox: what error?
19:52 xerox autrijus: is it really x + y ?
19:52 autrijus xerox: fixed
19:52 autrijus    [ x+y | x ? fibs | y ? tail fibs ]
19:53 autrijus er, s'?'<-'g
19:53 dduncan rafl, so then your debian package is the same as 6.2.10 except for your own patches then?
19:53 xerox I think so, autrijus.
19:53 rafl dduncan: Right.
19:53 autrijus xerox: thanks :)
19:53 dduncan perhaps it should be named 6.2.10a or something, to differentiate it from the 6.2.10 already on CPAN
19:53 PerlJam heh ... "type rocks /typing/ sucks"
19:54 xerox autrijus: no problem :-)  Is it possible to align the code snippets properly?
19:54 rafl dduncan: The debian package won't be on cpan and the changes are quite debian specific, although integrated into upstream now.
19:55 rafl dduncan: My patches are only necessarry to make it possible to packge 6.2.10. I think another version than the official upstream version would only be confusing to users.
19:55 autrijus xerox: yes, I'll hack that part later -- content first
19:55 xerox autrijus: it is 1:1:[..] also?
19:55 autrijus xerox: or if you are into javascript/xul, you can do it too
19:55 xerox I don't know them, I'm sorry
19:55 autrijus that's fine
19:56 autrijus xerox: it is 0:1
19:56 autrijus http://en.wikipedia.org/wiki/Fibonacci_number
19:56 xerox I think it's not important, in any case:)
19:56 autrijus :)
19:57 rafl dduncan: Don't you think so?
19:57 xerox What is reverse [reverse] <=> [reverse]  ?! :D
19:57 dduncan just a minute
19:57 autrijus xerox: just to show reverse works on a list of functions :)
19:57 xerox heh!
19:58 dduncan I wasn't paying attention to the lead-up to that question
19:58 rafl Hrm. That's not really obvious from 'reverse [reverse] <=> [reverse]' for me.
19:58 autrijus okay, it's too cute.
19:58 xerox It's cute.
19:59 rafl dduncan: well, the lead-up to that question is mainly that I didn't do enough tests before 6.2.10 to figure out that the ghc6 lib requires more special handling.
19:59 autrijus fixed.
20:00 iblechbot has quit IRC (Connection timed out)
20:00 xerox It was ok anyway :D
20:00 dduncan I didn't notice any problems at release time ... for me, all tests passed ... though prior to release there was something about a file needing indexing that wasn't, which was fixed
20:01 xerox The smartest guys attending at the talk will have an interesting snippet :D
20:01 xerox ..or even people could pose questions? hehe
20:01 rafl dduncan: The problems are that I need to register the haskell lib with ghc-pkg. That needs to be done when installin the package.
20:01 rafl dduncan: So I wrote a script that's executed after installing.
20:02 * eric256 realizes that he has two giant databases that should be in sync but now are not and begins to cry
20:02 rafl dduncan: Unfortunately the generated cabal file of 6.2.10 contains directories of the source tree in the include-dirs line.
20:02 rafl dduncan: Those don't exist when I install the debian package.
20:02 rafl dduncan: ghc-pkg tries to access them, though.
20:02 autrijus eric256: aww. :/
20:03 autrijus eric256: nuke one and declare the other as the master?
20:03 dduncan and so your patches to make debian work consist of rectifying this problem
20:03 rafl dduncan: Therefor the register step failes. So the changes needed to be made are removing the include-dirs that are part of the source tree and make pugs compile again. This is what I did today.
20:04 rafl dduncan: Right.
20:04 dduncan eric256, I wouldn't be so quick to do what autrijus said
20:04 dduncan the first step is to determine why the dbs are out of sync
20:04 rafl dduncan: No only /usr/include/ and /usr/lib/perl/5.8/CORE (or something like that) is in include-dirs. This exists when installing the package in any case.
20:05 eric256 i know why they are out of sync.. one stopped responding but was still editable localy...
20:05 dduncan keep both dbs in case each has something the other needs
20:05 eric256 now the auto incremented ID's overlap which isn't good
20:05 dduncan ensure first that one copy has all the data that you need, then nuke and reclone to the other
20:05 eric256 isn't goot at all
20:06 dduncan what brand of db?
20:06 eric256 MySQL
20:06 dduncan version?
20:06 eric256 4.1
20:06 dduncan well, that's the lowest MySQL version one should have these days, so that's good
20:07 dduncan 5.0 is much better, not just for the big ticket items, though its less stable I think
20:07 eric256 so i was hand updating the ID records...when it occured to me that those statments will be replicated back to the first DB changing the correct id numbers on that DB to the now incorrect ones....its like a bad bad loop
20:07 dduncan are these databases being used live right now?
20:07 eric256 so now i have to at least dump the log file from one of them....but who knows what changes will be lost ;(
20:08 eric256 of course they are...well one is.. local one shouldn't be. /me over head pages not to touch the databases ;)
20:08 dduncan why don't you dump and restore to a new third db, then do a diff between that and each of the others?
20:11 eric256 well i'm trying to get all the changes out of one into the local one.. then i should be able to diff back agianst it somehow and insert updated or inserted records based on time stamps....i hope
20:11 eric256 or i could quit and run like hell
20:12 dduncan is it feasable to take the live one down for awhile ... or make it read-only so others don't exasperate the problem?
20:12 eric256 no. and the live one is the master copy in case of fail we'll just have to try and manualy recover what got lost. ;)
20:13 dduncan do you use InnoDB tables?
20:13 eric256 generaly the local people edit completly different things than the remote so it shouldn't be too bad
20:13 eric256 getting them all synced completly will be hard though :)
20:14 dduncan well, the first step is to ensure the current problem doesn't compound as people continue to use the db
20:14 arcady has quit IRC ("Leaving")
20:15 eric256 no local use so that wont be a problem. i hope. /me continues crieng and sorting out his id numbers. ;)
20:16 dduncan as long as you know the problem won't get worse, you should have some time to solve the problem properly
20:19 eric256 yea....slave is 403661 seconds behind.../me should probably check that on a daily basis
20:20 dduncan that's about 4-5 days, isn't it?
20:20 eric256 yep
20:20 * eric256 begines to write automated script to check while waiting for the next conflict to show up
20:21 xerox is there a '++' list?
20:22 eric256 by that you would mean?
20:22 xerox a list of people being '++'-ed here, with relative score :D
20:22 eric256 karma xerox
20:22 jabbot eric256: xerox has karma of 1
20:22 xerox ah :D
20:23 Juerd karma juerd
20:23 jabbot Juerd: juerd has karma of 1
20:23 xerox karma pugs
20:23 jabbot xerox: pugs has karma of 7
20:23 Juerd woohoo
20:23 Juerd karma Juerd
20:23 jabbot Juerd: Juerd has karma of 1
20:23 Juerd When did it reset? :)
20:23 eric256 pugs++
20:23 eric256 pugs++ xx 1000000000000000
20:23 xerox karma karma
20:23 jabbot xerox: karma has neutral karma
20:23 Juerd eric256: That doesn't evaluate the LHS more than once.
20:24 eric256 :(
20:24 Juerd eric256: For that you'd need XX, which hasn't been fully accepted yet
20:24 eric256 pugs++ for 1...;
20:24 Juerd pugs += Inf
20:24 eric256 show off. ;)
20:24 eric256 ?eval Inf
20:24 evalbot_7584 Inf
20:25 eric256 ?eval Inf + Inf
20:25 evalbot_7584 Inf
20:25 Juerd ?eval Inf - Inf
20:25 evalbot_7584 NaN
20:25 dduncan karma dduncan
20:25 jabbot dduncan: dduncan has neutral karma
20:25 eric256 wow. pugs does math with infinity
20:25 Juerd Now THAT is a tough question :)
20:25 eric256 ?eval Inf / 2
20:25 evalbot_7584 Inf
20:25 eric256 ohhh
20:25 eric256 lol
20:25 Juerd ?eval Inf * Inf
20:25 evalbot_7584 Inf
20:25 eric256 ?eval Inf + [+] 0..Inf
20:25 evalbot_7584 pugs: out of memory (requested 1048576 bytes)
20:25 xerox ?eval 0 / 0
20:25 evalbot_7584 Error: Illegal division by zero
20:25 Juerd ?eval Inf/0
20:25 evalbot_7584 Inf
20:25 Juerd Haha
20:26 eric256 what!?
20:26 dduncan shouldn't division by zero produce Inf?
20:26 xerox Goodnight lambdacamels!
20:27 eric256 or NaN ...but computers insist it is an error
20:27 dduncan though any N divided by itself should produce 1, regardless of whether that is zero
20:27 eric256 ?eval Inf * Inf + 1
20:27 evalbot_7584 Inf
20:27 eric256 just interesting to me...its an odd concep
20:27 dduncan unless there is some good reason not to, such as insurance against floats that appear to be the same but may not be due to rounding
20:28 dduncan ?eval sqrt 4
20:28 evalbot_7584 2.0
20:28 dduncan eval sqrt -1
20:28 eric256 ?eval sqrt(Inf)
20:28 evalbot_7584 Inf
20:28 eric256 ?eval sqrt(-1)
20:28 evalbot_7584 NaN
20:28 dduncan eval sqrt(-1)
20:28 eric256 you forgot the ?
20:29 dduncan I thought Perl 6 had native support for imaginary numbers?
20:29 eric256 you probably just imagined that
20:29 * eric256 is lives life -Opun
20:29 dduncan I was sure it was in the spec ... data types or something
20:33 mugwump there's an unboxed type for it
20:33 mugwump in S09
20:34 mugwump great for optimising to those architectures with built-in complex registers, presumably
20:34 mugwump but no Complex in S06#Types
20:35 wolverian haha
20:35 Juerd eh
20:35 Juerd Built-in complex registers?
20:35 eric256 yea i was pondering that one too
20:36 eric256 dduncan should be easy to create a Complex class and overide the operators ( i know thats not what you were asking...just fyi)
20:36 mugwump meanwhile that wart should be removed from S09 :)
20:36 dduncan yes, but one should be built-in
20:36 mugwump why, dduncan ?
20:36 dduncan just as large numbers are built in
20:37 Juerd dduncan: Why? They are not applicable to the real world.
20:37 eric256 complex numbers are only used in very specific cases though
20:37 Juerd I think having NaN and Inf is questionable too
20:37 Juerd Although Inf can be very useful, admittedly
20:37 dduncan because this is a widely used and very low basic thing that could stand best to be implemented at the low level
20:37 eric256 yea Inf could lead to some interesting responses, but it could be handy
20:37 Juerd Inf is mostly useful because Perl has lazy lists
20:37 eric256 "widely used" would be the phrase you wont get wide agrement on
20:37 dduncan complex numbers are used all the time in image, audio, and video processing
20:38 Juerd All the time?
20:38 Juerd I'm really good at avoiding running into them, then :)
20:38 eric256 and those wouldn't qualify as applications where perl jumps to mind anyway.
20:38 dduncan its a basis of lossy image compression, for example
20:38 dduncan its also a basis of cleaning noise out of images
20:38 eric256 imaginary numbers are?
20:38 Juerd eric256: complex
20:39 eric256 arg. complex...arn't complex and imaginary the same?
20:39 Juerd afaik, yes
20:39 dduncan they're used when converting data from a spacial-based plane to a frequency-based plane
20:39 mugwump interesting, still, I think it should be possible to prototype it with a module before they become automatically generated when you sqrt(-1)
20:40 dduncan well, being built-in doesn't mean they have to be used automatically ... there could be a 'use complex' pragma, for example
20:40 dduncan but the feature should be built-in
20:40 mugwump so build it, then someone can put it in :)
20:41 Juerd dduncan: What's the benefit of them being built in, rather than in a module?
20:41 mugwump Normally I guess that sqrt() would be : sub sqrt(Num where { $_ > 0 }) : Num
20:41 Juerd dduncan: Why shouldn't "use complex" just load a module instead?
20:41 mugwump `use complex' would export a sub sqrt(Num where { $_ < 0 }) returns Num
20:41 dduncan the pragma is simply to control how users want the computer to behave when they say things like sqrt(-1) ... if they didn't intend to use complex numbers, that would be an error
20:42 eric256 that didn't answer the "why" question
20:42 PerlJam IIRC, Larry sanctioned Complex numbers as part of perl6's "core"
20:43 dduncan complex numbers are used in heavy data processing, and would be best done in a low level optimized way
20:43 dduncan putting it in a module is too slow and complicated
20:43 mugwump I have just pinged P6l about this...
20:44 eric256 actualy dduncan thast not realy an absolute.  modules could be c or some other language and be much faster (maybe not than core, but faster than a pure perl module)
20:44 integral why can't the pragma just have a standard interface, and it depend on implementations whether it uses a Complex PMC,  or a perl6 impl?
20:44 Juerd dduncan: A module too can be as optimized, in Perl 6
20:44 dduncan either way, they are frequently used in some problem domains
20:44 dduncan and they are basic enough to warrant being built in
20:44 integral (built-in just means then that it's standard across impls)
20:44 Juerd dduncan: Don't forget that modules can alter grammar and access parrot directly
20:44 PerlJam Look under "Sized Type" in http://dev.perl.org/perl6/doc/design/syn/S09.html
20:44 PerlJam er, Sized types
20:44 leo__ dduncan: Parrot has already a Complex PMC
20:45 Juerd dduncan: There is no direct relation between "module" and "pure perl"
20:45 dduncan then that's the kind of low level support I'm talking about
20:45 Juerd dduncan: And there is no direct relation between "pure perl" and "inefficient"
20:45 dduncan never mind that
20:45 integral dduncan: But why does this need to be built-in on all perl6 implementations?   Why can't they each have their own complex.pm that uses impl-specific hooks to do it faster?
20:45 eric256 mugwump that pos is ....well short and to the point
20:45 dduncan my main point is that it is conceptually basic and very often used
20:46 dduncan one could ask the same question of why junctions are now built-in
20:46 * eric256 feels many might regret builtin junctions too
20:47 dduncan but I don't have a problem with either
20:47 mugwump dduncan, because we're masochists.  see autrijus' oscon video
20:47 eric256 i think junctions were too hard to do outside the core... while something easily done outside should probably be left there...all personal opinion though.  i just think the bar to being builtin should be rather high not impossible but high.
20:48 eric256 i like modular perl and keeping perl lean (haha) okay leaner, as lean as can be? something like that.
20:48 mugwump builtin vs not builtin is pretty much a moot point, if Perl 6 is written in Perl 6.
20:48 PerlJam eric256: Quantum::Superpositions implements junctions just fine outside of the perl5 core  ;-)
20:48 integral Why does the spec need to dictate the implementation?  Surely it should just say "it should look like junctions are builtin, and the complex pragma should make sqrt work, provide a Complex type, etc"
20:48 eric256 PerlJam  ... for some definitions of just fine. sure
20:49 Juerd dduncan: Junctions are for $foo == 1|3|5|7|9
20:49 Juerd dduncan: :)
20:49 Juerd dduncan: They're there to enable us to make the gap between how we think and what we write in code much smaller
20:50 PerlJam Juerd: not to mention give us new things to think about  ;)
20:50 eric256 integral ..... when i hear "should be core" i think "should be in the main perl implementation that is compiled to an executable."  versus a module "that is tacked on extra and not specified as part of the actual language, but rather an optional addition to it"
20:50 Juerd Humans don't think in complex numbers, though.
20:50 integral eric256: ok, and why can't that include pure-perl modules?
20:50 Juerd Except for some idiot savans
20:50 Juerd savants
20:51 eric256 integral...you lost me somewhere. i'm not agianst pure perl modules at all. or excluding them.
20:51 Juerd Let's first define "core"
20:51 integral Sorry, I was just asking to be clear.
20:51 Juerd I suggest: "core" means built-in, no module needed (perhaps a pragma to enable the functionality, though)
20:51 eric256 or are you saying parts of the spec'ed language could be implemented in pure perl modules? that to is true. perhaps with the new and redfined perl the idea of core changes
20:51 Juerd and "standard" means distributed with perl
20:52 Juerd as a module
20:52 eric256 thats the definitions i was thinking. /me remembers agian why we need a wiki
20:52 integral I think anything should be implementable as a pure-module once grammars arrive, the prelude could bootstrap the whole syntax.  I don't think the spec should exclude anything like this
20:52 geoffb Juerd: Someone had said something akin to "Standard across all implementations, such that the end programmer can assume it's just there" earlier.  I like that
20:52 Juerd Perl itself will be almost pure perl. Why give "pure perl" any meaning?
20:52 dduncan regardless of implementation, I see complex numbers as something that should be part of the language spec
20:52 Juerd geoffb: That's standard
20:52 Juerd geoffb: At least in Perl 5 jargon (this is disputed and denied by some)
20:53 putter has joined #perl6
20:53 Juerd I see no reason to change this jargon
20:53 dduncan and I also think it is more efficient to implement them at the same low level as other numbers or strings
20:53 putter stevan: ping?
20:53 geoffb Juerd, OK, fair enough . . . then I argue that complex and Complex should be Standard.
20:53 putter hi all
20:53 Juerd dduncan: A module too can use parrot
20:53 dduncan sure
20:53 Juerd dduncan: That is low level.
20:53 geoffb dduncan, implementation doesn't matter.  As long as the end programmer need not care.
20:53 Juerd dduncan: There no longer is an important distinction. Sub call overhead is negligible.
20:53 dduncan and so I said 'regardless of implementation'
20:54 geoffb I don't want to have to worry about whether my end users can get PDL to work.  It should Just Be There
20:54 Juerd geoffb: To that I agree.
20:54 dduncan I agree
20:54 geoffb well, . . . good, then.
20:54 geoffb :-)
20:54 leo__ geoffb: I can hardly imagine a lower cased complex (in the sense of 'int', or 'float')
20:55 eric256 so, dduncan, you now aggree that it could be a standard module versus a core feature?
20:55 eric256 then you may as well start writing the module ;)
20:55 geoffb leo__, I thought the lowercased version just meant "unboxed & tightly packed if possible"?
20:55 leo__ yes, I know
20:55 geoffb leo__, um . . . then where is the imagination gap?
20:55 dduncan I think that complex numbers should be defined as part of the perl 6 language spec ... and my 'I agree' comment referred to the PDL comment
20:56 Juerd geoffb: It means "uses native data type", iirc
20:56 geoffb complex == 2 * float or 2 * double
20:56 leo__ 'int' and 'float' are native cpu as well as C types, complex isn't
20:56 eric256 dduncan ahh
20:56 dduncan I'm not a stickler for implementation ... if its part of the spec, then an optimal implementation should simply work out of that
20:56 geoffb Juerd, nodnod -- hence "unboxed".  Or am I overloading "unboxed" too much?
20:56 eric256 why define it as part of the langauge if it can be part of a standard module?  just seems like asking for extra trouble for no gain
20:57 leo__ unboxed is an implementation thingy
20:57 eric256 would be like sayins  CGI needs to be part of the spec because it gets used lots....i dunno. i think i'm missing something
20:57 geoffb leo__, I'm not sure that distinction is true for other processors besides the CPU (I don't know that it's false, but with GPUs, PPUs, DSPs, etc, I'd not be surprised)
20:57 dduncan this is one of those things were people can argue about in-language vs module ... the most important thing is that one can use them syntactically like numbers ... I happen to fall on the side that prefers in-language
20:58 PerlJam eric256: lots of things will be "part of the language" but loaded in via a module.
20:58 leo__ I'm not aware of any native hw complex support, but it might exist inside some chip, yes
20:58 eric256 i just wanted to understand why...what benifit there is?  it seems form larrys responce that he is implying agreement, not sure though. but what is the benefit?
20:58 geoffb leo__, and besides, C++ has a core packed Complex, yes?  (Yes, I know, we're not doing C++ code, I meant for binding)
20:58 dduncan perl 6 has a number of things in the core that aren't native cpu supported ... such as strings of characters
20:59 geoffb geoffb, errr, Native Code calls, etc.
20:59 geoffb er, that was for leo
20:59 * geoffb having to think too fast for being this tired
20:59 leo__ for me the difference is: needs memory management or not
20:59 leo__ two floats (or doubles) do need it
20:59 leo__ thereforre it needs a 'box'
21:00 PerlJam eric256: Think of Larry's response as inviting a patch  :)
21:00 geoffb leo__, why is an array of complex not packable like an array of double?
21:00 geoffb And moreso, *desirable* to pack?
21:00 eric256 PerlJam: i would rather see complex numbers handled by some module rather than speced in the language. the specs are long enough and complex enough as is. simpler can be better.  
21:01 kolibrie has quit IRC ("leaving")
21:01 dduncan I would say that Larry's response is that the docs have an error in them
21:01 PerlJam dduncan: right (thus inviting a patch)
21:01 leo__ well, we could of course provide a 'complex' register type too, then we had an unboxed complex
21:01 PerlJam This is a community rewrite after all
21:01 eric256 since perl6 lets you define operators and change grammar a module can do everything a builtin can,  so i don't see the reason to add more to the spec.
21:01 nothingmuch has quit IRC (Read error: 113 (No route to host))
21:01 geoffb eric256, support in the optimizer and NCI, for one
21:02 eric256 geoffb++ finaly some sort on answer that makes sense...thats all i was looking for. /me was too dense to come up with that while others probably assumed it
21:02 geoffb eric256, heh
21:02 PerlJam leo__: suggest that in ernest and see how far the hue and cry are heard  :)
21:03 eric256 so implementing complex numbers in the core could let you store them without the implied overhead of objects and overloading caused by putting them in a module? something along those lines at least?
21:03 leo__ geoffb: arrays of 'native complex' are a totally different thing, that's rather simple
21:03 geoffb One of PDL's downfalls is that the wall between Perl 5 numbers and native numbers is very high.  Moving data through that barrier is SLOW
21:04 geoffb eric256, nod
21:04 dduncan I agree with that PDL comment
21:04 geoffb eric256, but as others have pointed out, you can get much of the way with a module.
21:04 geoffb eric256, but experience with PDL reminds me that "much of the way" != "all of the way", at least in terms of performance
21:05 autrijus mugwump, dduncan: I commited a fix to S06.
21:05 geoffb Also, PDL having to wrap things up in a way that makes perl happy makes complex expressions slow as hell, too, because of temporary generation.
21:06 geoffb Of course, there's PDL::PP, but that is just a giant hack to get around the above mentioned fact.
21:06 PerlJam geoffb: define "complex expressions"
21:06 dduncan autrijus, to what copy of it?
21:06 geoffb And I don't want to have to do that in Perl 6.  Really, REALLY hoping to avoid it, actually.
21:06 autrijus dduncan: master copy
21:06 PerlJam Because I think you mean "slow as hell" relative to what it could be in C (or fortran or whatever), not "slow as hell" as compared with how slow it would be if you did it in perl.
21:06 dduncan url? ... its not in pugs svn yet
21:06 autrijus https://svn.perl.org/perl6/d​oc/trunk/design/syn/S06.pod
21:07 geoffb PerlJam, sorry for overloaded "complex".  I mean, lots of operations.  A * B + (C * D) /  (E ^ F) ...
21:07 dduncan oh wait
21:07 geoffb PerlJam, actually, if you're not careful, it's easier to be *slower* in PDL than pure Perl.
21:07 dduncan never mind the with-pugs comment
21:07 PerlJam geoffb: Really?  I've never done it.
21:07 geoffb PDL is often thought of as fast, because the canonical PDL use is processing astro images.
21:08 geoffb PerlJam, sadly, I have.  Over and over.  Bleah.
21:08 leo__ geoffb: another idea: instead of extra storage, a complex could overlap to 'N' registers - with a little help of the register allocator, but there is some literature about that
21:09 PerlJam leo__: 32 N regs == 16 C regs?
21:09 leo__ s/to 'N'/two 'N'/
21:09 leo__ forget 32
21:09 leo__ but yes
21:09 geoffb leo__, I think having complex == 2 * N is perfect.  If the alligator didn't mind, even forcing it to starting at an even register num or something wouldn't be horrid, though I'm guessing parrot doesn't even care
21:09 theorbtwo I've used PDL in two cases, and on one I threw it out because of obnixious syntax.
21:09 theorbtwo I'm wondering if I shouldn't throw it out in the other because it's too damn slow.
21:10 geoffb theorbtwo, it really depends on exactly what you're doing.
21:10 geoffb I've had to spend a hefty number of cycles learning it's performance gotchas.
21:10 theorbtwo geoffb, in the first case, I was doing some fairly simple 3d graphics.
21:10 geoffb When used well, it can cook along.  Used badly (which is not hard), *ouch*
21:11 PerlJam I wonder how you'd do the equivalent of PDL's where() in perl6
21:11 geoffb theorbtwo, ditto.  :-)
21:11 theorbtwo In the second case, I'm doing some odd tings best left undescribed, other then to say that I'm dealing with 1 x lots vectors, that are very sparse.
21:12 theorbtwo And, even worse, that I really want to be able to add more to the end of on the fly, which AFAICT can't be done with PDL.
21:12 geoffb theorbtwo, yeah, that case 2 sounds really suboptimal for PDL.  It likes huge packed arrays
21:12 geoffb theorbtwo, there is some ability to resize.  I've not spent a huge amount of time on it.
21:12 PerlJam Doesn't PDL have an optimization for sparse matrices?  or am I imagining it?
21:13 theorbtwo I think I may be getting rid of the whole thing, if I can colabarate with the mightv trio from london.pm.
21:13 geoffb In any case, this all comes down to:  I've gotten bloodied from PDL.  I want Perl 6 not to suck for numerical work.  I think $Larry and parrot were headed that way with native types, but more is needed, and complex is part of that
21:14 geoffb PerlJam, if so, it's happened since last I investigated (admittedly some time ago)
21:14 theorbtwo Is complex worth supporting as something other then a 1 x 2 matrix?
21:14 iblechbot has joined #perl6
21:14 geoffb PerlJam, er, I'm assuming you didn't mean "It's possible with some PDL::PP indirection code", which IMHO doesn't count
21:14 PerlJam geoffb: well, I can't find anything in the docs, so I'm chalking it up to my imagination.
21:15 eric256 what does iblechbot do?
21:15 eric256 i forgot agian.
21:16 theorbtwo Hm, wouldn't a PDL equiv be OK ... eric256, logs ... if complex ops could be optimized to be completely in PDL if type-inferencing could figure out that they were doable all in the PDL layer?
21:16 geoffb theorbtwo, I think so, for various reasons: ease of programmer understanding, support from builtin operators and functions, optimizer pass support, etc.
21:17 eric256 don't we already have a bot logging everything to irc.pugscode.org?
21:17 geoffb theorbtwo, possible . . . but then all math optimization code in the main interpreter would have to be duplicated in PDL
21:18 geoffb eric256, I'm not sure why, but iblech keeps his own, which he has agreed *not* to share
21:18 theorbtwo Hm, also in many cases "die" is what the programmer expects if they accidentally write sqrt(-1)?
21:18 dduncan a pragma should fix that
21:18 theorbtwo Yeah.
21:18 geoffb theorbtwo, what dduncan said
21:18 dduncan user can choose when they want die or complex
21:19 geoffb In general as I said, I don't care about the implementation so much.  What I care is that it not suck for the end programmer.  I may be limited in my imagination, but my PDL experience is screaming that that implementation choice should not be repeated.
21:19 geoffb (for the specific case of numeric computation in Perl 6)
21:19 dduncan yes, geoffb
21:20 theorbtwo I think PDL could be a lot less bad if it tried and if there were better mechinisims for it to do so.
21:20 dduncan numbers should just be natural to use, regardless of how they're implemented in back end
21:20 theorbtwo For example, normal array access syntax not working is EVIL.
21:20 PerlJam theorbtwo, geoffb: have you used recent version of PDL?
21:20 geoffb theorbtwo, PDL is so bloody complex to work around so much stuff, that I think people (me included) have a hard time understanding how to fix it
21:21 theorbtwo I'd rather concentrate on giving a PDL replacement the hooks it needs to be good then on putting everything in core.
21:21 geoffb PerlJam, it's been about a season since I last used it, and then I was using whatever was in debian sarge
21:21 dduncan the reason PDL exists in the first place is because Perl itself didn't have good compact number storage etc
21:21 Cryptic_K has quit IRC ("Leaving")
21:21 theorbtwo I'd like to be able to announce that we have reached 1.0 without first reimplementing all of CPAN.
21:21 dduncan if the core language does, then PDL and its funky workaround syntax isn't needed
21:21 theorbtwo I have used a recent version of PDL recently, but haven't seen good documentation on it.
21:21 geoffb theorbtwo, fair enough.
21:22 geoffb theorbtwo, good docs for PDL?  mwa-ha-ha-haaa
21:22 geoffb (Don't get me wrong, the PDL guys clearly tried -- they just assumed way too much of their own knowledge.)
21:24 stevan putter: pong
21:24 theorbtwo That seems to be a /very/ common failing in documentation.
21:24 eric256 "putter pong" sounds like some sort of ping pong variation for old people
21:24 geoffb theorbtwo, nodnod.  I personally think it comes from not having spent time teaching raw beginners.
21:25 geoffb eric256, *snort*
21:25 geoffb Good thing I wasn't drinking something just then
21:25 theorbtwo Sounds like pong for golf players.
21:25 geoffb It would have been all over the screen
21:26 geoffb OK, I'm about 2 hours late for lunch.  I think I'll pause for a bit.
21:26 geoffb &
21:27 Amnesiac has joined #perl6
21:27 dduncan good lunch
21:27 * eric256 's slave database is now only  298331 seconnds behind...
21:28 dduncan oh, you're catching UP!
21:28 * eric256 smacks his forhead for letting this happen.  First month i checked it like 5 times a day, then i got complacent and look what happends
21:28 dduncan a few hours left, I imagine
21:28 eric256 yea there is a major update to teh "main" database every night at midnight, now i have to set through all those in one shot. lol
21:29 dduncan a typical human fallacy ...certain bad things rarely happen, so one starts to assume they never do and stop looking
21:29 dduncan a paraphrase of a lead in to the error checking chapter in PBP
21:29 eric256 i also assumed someone would notice the numbers where off. ;)
21:30 eric256 i should get some X10 in here and setup green and red lights. lol bright red light comes on when they get more than 60seconds out of sync. ;)
21:30 dduncan is this a slave/master deal, or can some writes go directly to either one first?
21:31 dduncan like a cluster
21:31 eric256 some writes go directly to the local slave and then are replicated to the master. those updates are going to be the hard ones to recover. but first things first
21:31 dduncan I thought the definition of slave was that all writes to it are copies of the master, so the master is always updated first
21:31 dduncan slaves are only read from directly
21:33 nomeata (and now my IRC bouncer just disconnected me. Did I get any answers so far?)
21:34 eric256 then call them masterA and masterB
21:34 eric256 with MasterA being the live Master being accessed by the website and *everyone else* and MasterB being a local copy to speed access which was abismal otherwise
21:35 eric256 if i could some how setup MySQL server localy to send edits to the other server directly that would rock. but i don't know of any way to do that
21:35 eric256 since i use Access for the front end i would have to link 1 table for reading, then a copy of it linked to the other server for writing...
21:36 iblechbot has quit IRC (Connection timed out)
21:36 dduncan eric256, look up MySQL's newer "clustering" features, which I think does two-way whatsits
21:37 dduncan different than "replication", which is what the master/slave thing describes
21:38 dduncan note that I've never used either, just read about them
21:41 putter has quit IRC (Read error: 110 (Connection timed out))
21:41 eric256 clustering requires large amounts of memory though
21:41 dduncan maybe you don't need it though ...
21:41 eric256 like 10 times as much memory as the size of your DB...read about it when i was setting this up
21:41 dduncan how often do you do local updates?
21:42 eric256 often, but mostly to different parts than the masterA is updating
21:42 dduncan maybe you can put up with slower updates, that go straight to the remote db and then replicate back to your local slave for fast reads
21:42 eric256 thats what i was jsut saying, except its like impossible to setup
21:42 eric256 i wouldn't mind slow rights at all
21:42 dduncan why?
21:42 dduncan I would think that would be easy to set up
21:43 eric256 not with an MS Access front end.
21:43 dduncan if the 2 dbs are setup according to mysql's definition of "replication", with the remote being the master and the local the slave, ...
21:43 eric256 no way i know to have the local server redirect all writes to the remote
21:43 dduncan then you have one connection to the master to do all writes, and and a separate one to the slave for read-only actions
21:44 dduncan you connect to the remote directly
21:44 dduncan when doing changes
21:44 dduncan as if the local didn't exist
21:44 stevan has quit IRC ("Leaving")
21:45 eric256 yes i understand all that.  the problem is there is no easy way to do that with MS Access as the front end
21:45 eric256 i would have to link to both DB's and have seperate forms for view and editing, which would just be annoying and a pain to maintain.
21:45 dduncan this single writer and many reader concept has been in mysql since the 3.23.x series and is mature
21:46 eric256 i don't think you are paying attention
21:46 eric256 its not a defecit in mysql
21:46 eric256 its a missing feature ni Access...no way to redirect write't to a different DB than you are reading from
21:46 dduncan how much trouble is it to make new front-end tools
21:46 dduncan do you *need* to use Access?
21:47 eric256 lots of trouble. ;) lots.  it is an accounting tool built very specificaly for our accountants and an inventory tool built to track orders/supplies and inventories.  moving them from access would be possible but very *VERY* difficult and would end up with an application that wouldn't be as friendly to use
21:47 dduncan if you had a good front-end toolkit with even a minimal bit of indirection built-in, all writes could automatically go to one connection, and reads from another
21:48 dduncan and anyone using the toolkit, to them it would look like just one connection
21:48 eric256 if i did. but i don't, and wont get the time anytime soon for a conversion. though i've wanted to get away from access for a while. we'll get there, just not in the next 12 months
21:49 dduncan maybe you could employ or use some migration or abstraction tool, so your code that expects to talk to access would talk to that instead without being rewritten
21:49 dduncan so then cut access out without great pains of a rewrite
21:50 eric256 the code is IN access. and i've looked but never found a tool that can migrate an entire Access based application, let alone several dependent ones
21:50 putter has joined #perl6
21:50 dduncan or if you can't cut out Access ...
21:50 dduncan you could have a tool intercept the communication between Access and MySQL
21:51 dduncan the tool would then make two MySQL connections look like the one that Access expects to see
21:51 eric256 it would just be a ncie feature if MySQL provided the ability to write to a different database than you are reading from, although i can't say i'm surprised such an option is missing
21:51 eric256 yes that would definitly be an option
21:51 dduncan said tool would be a 'proxy' of sorts
21:52 dduncan that's probably the simplest solution, given your current situation
21:52 dduncan aside from MySQL having said feature built-in
21:52 geoffb Actually, I used to work somewhere that had built that sort of proxy for MySQL . . . unfortunately, I wasn't involved in that implementation . . .
21:52 Iriska has joined #perl6
21:52 eric256 yea a proxy of some sort would be cool
21:52 eric256 geoffb ;(
21:53 eric256 getting my hopes up like that was just cruel
21:53 eric256 lol
21:53 dduncan I'm sure others exist ... probably several FOSS ones
21:53 eric256 i wonder if there is just a generic odbc proxy like that?
21:53 geoffb eric256, sorry man.  I was just saying "It has been done, there is hope."
21:53 eric256 FOSS?
21:53 geoffb DBD::Proxy?
21:53 eric256 lol geoffb i know.
21:53 dduncan Free and Open Source Software, eric256
21:54 stevan has joined #perl6
21:54 eric256 ahh
21:54 geoffb DBI has builtin proxying, I've never used that either though.
21:54 geoffb Sorry, eric256, I'm not really intending to torture you . . . .
21:54 dduncan geoffb, I'm thinking something similar to DBD::Proxy, but I don't imagine said Access code is written In Perl
21:55 geoffb dduncan, yeah, but it has got to be reasonable to make a Perl server that looks like a MySQL DB.
21:55 geoffb I can't believe I just said that.
21:55 geoffb sheesh
21:55 dduncan sure you could do that
21:55 geoffb OK, back to working on food.
21:56 dduncan assuming they're talking by either TPC/IP or IPC, it should be possible to interject a Perl process to do the work
21:56 dduncan I mean TCP/IP
21:56 dduncan IPC is only relevant if the Access and MySQL are on the same machine
21:56 Iriska has left
21:57 theorbtwo TCP/IP or unix domain socket, I think.
21:57 putter &
21:57 putter has quit IRC ("Leaving")
21:57 dduncan I see unix domain socket as being a type of IPC
21:57 eric256 they are never on the same server so sockets/IPC arn't trouble
21:59 theorbtwo Really, you can pick your choice of anything that you can find an ODBC driver for.
21:59 eric256 theorbtwo: what?
22:00 theorbtwo If mysql has an easy protocol, emulate mysql.
22:00 theorbtwo If pg has an easier protocol, then emulate pg's protocol instead.
22:01 eric256 ahh i see what your saying
22:01 eric256 i was looking for an existing implementation, can't beleive i'm the first to have this problem, as geoffb confirmed
22:01 dduncan basically, you just need to emulate some protocol that Access knows how to invoke
22:03 eric256 i just need to emulate an ODBC driver, where the options let you choose an ODBC connection for reading, and one for righting.
22:03 eric256 unfortunatly i don't know how to do that...yet ;)
22:05 dduncan however, once you figure it out, it is probably less work than rewriting your Access programs
22:06 theorbtwo I expect it's easier to emulate a mysql server then it is to write an ODBC driver.
22:06 dduncan I would expect so
22:06 theorbtwo But possibly I just say this because my perl is far better then my C.
22:06 dduncan ODBC is designed to handle a whole bunch of features that MySQL doesn't have, and is necessarily more complex
22:06 eric256 hehe true. i hadn't thought of that aspect.  thats where you were going with the pg and mysql example
22:09 Juerd wolverian: I've installed fetchmail on feather
22:10 wolverian Juerd, thankyou!
22:10 wolverian Juerd++
22:10 Juerd wolverian: Whenever you need debian packages installed, all you have to do is ask :)
22:11 Juerd wolverian: It's a oneliner to do these things: apt-get install fetchmail
22:12 theorbtwo debian++
22:12 wolverian Juerd, I know, that's why I only run debian and ubuntu nowadays :)
22:12 Juerd Are you familiar with debian, wolverian?
22:12 Juerd I take that as a yes
22:12 Juerd Then I don't have to tell you about apt-cache
22:12 wolverian Juerd, for searching?
22:12 Juerd Yes
22:13 theorbtwo Also packages.debian.org++ when you want to search by filename.
22:13 Juerd I wonder why you are 1007 in the output of ps
22:13 Juerd instead of your login name
22:13 theorbtwo (perl regular expressions)++
22:13 * eric256 panicks slightly as his slave starts to loose ground on the master....no!!!
22:14 Juerd eric256: ?!
22:14 eric256 214844 seconds and climbing. ;(
22:14 eric256 no errors. just doesn't feel like updating...i dunno. madness
22:14 Juerd ?
22:14 Juerd Have you been drinking?
22:15 eric256 nope...should be though, might calm me down
22:15 theorbtwo Or letting your slave hold the whip when you want a free hand...
22:16 Juerd Given a slave, what would you need a free hand for?
22:20 wolverian hmm, why is mutt opening the spoolfile now instead of ~Maildir
22:20 wolverian er, ~/
22:21 wolverian Juerd, I just set up my home system to do the fetchmail thing - I'll see how stable it is. it'd certainly be nicer to do it on feather to save one ssh session :)
22:21 wolverian oh, hm. it's not reading the configuration file at all.
22:23 eric256 hmmm maybe its a bandwidth issue...could be someone else downloading crap and slowing it down... ;( /me crosses fingers
22:25 wolverian this is really broken
22:27 Juerd wolverian: mutt opens $MAIL or whatever you gave on the command line
22:29 wolverian oh. I thought it opens 'folder' in .muttrc
22:29 wolverian thanks.
22:29 Juerd many programs use $MAIL
22:29 Juerd it's important to have such things set up correctly.
22:30 wolverian right.
22:30 wolverian does the trailing / have a meaning there?
22:31 Qiang has quit IRC ("home")
22:31 Juerd It tells some clients that haven't invented -d yet that it is a maildir, not an mbox
22:31 Juerd procmail needs this, iirc
22:31 wolverian thanks again
22:32 wolverian augh. I ran formail -s procmail on the spoolfile, but forgot to tell procmail where to put things by default!
22:32 wolverian GHLAUGHAGUEGAgg that's a big /var/mail/wolverian
22:33 Juerd You did backup things before you started playing, I hope
22:33 wolverian of course not!
22:33 Juerd Stupid.
22:33 wolverian now I just need to trim the duplicates..
22:33 wolverian yes.
22:34 eric256 lol. Juerd++ for such encouraging behavior lol
22:34 wolverian he's right, though. :)
22:34 wolverian be glad I'm not your BOFH.
22:34 Juerd eric256: At least I am sincere
22:35 eric256 hehe. "why are you offened? I sincerely mean your an idiot."  ;)
22:35 * eric256 is dealing with his own trouble cuased by being stupid so he can sympathize with wolverian ;)
22:35 Juerd I was judging the action (or actually, lack thereof), not the person :)
22:36 eric256 or empathyze...can't remember which (or spell either)
22:36 wolverian oh, damn, I forgot the envelope thing
22:36 Juerd I hate envelopes that you have to lick
22:36 wolverian (it is not very smart to forget your server's hard drive somewhere)
22:36 Juerd It gives me goose bumps
22:36 wolverian (I have no idea where I left it)
22:36 eric256 paper cuts on the tongue--
22:36 eric256 karma tongue
22:36 jabbot eric256: tongue has neutral karma
22:37 eric256 can't say i didn't try
22:37 Juerd wolverian: Why has it left the server with critical data on it? :)
22:37 wolverian Juerd, I relocated from my apartment
22:37 Juerd Oh, home server
22:37 wolverian yes.
22:37 wolverian (so, no worries.)
22:38 Juerd I'm not used to such things
22:38 wolverian I'm just a poor student.
22:38 Juerd I no longer have any servers at home
22:38 Juerd Just workstations
22:38 Juerd One headless, that I connect to using ssh
22:38 theorbtwo formail has a nice easy "trim dupes" mode.
22:38 wolverian theorbtwo, yeah, found it. thanks :)
22:39 wolverian well, I'd run things on my university server(s), but they either run weird FC versions that don't have UTF-enabled shells or SunOS.
22:39 Juerd non-linux sucks :)
22:39 wolverian not that the former really means that much, but those servers don't have mutt either.
22:39 wolverian Juerd, yes.
22:39 Juerd (Uh oh, I'm making enemies again...)
22:39 wolverian okay, I think I lost that mail somewhere
22:40 wolverian oh. SMTP server timed out
22:40 Juerd They never time in
22:41 wolverian where the hell did it even get that address
22:41 Juerd Are you sure it's yours?
22:43 wolverian yes.
22:43 wolverian (it's not supposed to be)
22:43 wolverian (well, "mine" as in I don't own or operate it.)
22:44 wolverian here's why this set up sucks: I can't use a mail indicator in irssi
22:44 wolverian (since it's running on feather)
22:45 Juerd ssh.
22:45 Juerd You can do it, but you're too lazy to make it happen
22:46 eric256 "mine" as in I don't own or operate it .... that is an interesting definition of "mine" lol
22:46 wolverian eric256, I meant "not mine" ;)
22:46 Juerd eric256: I have lots of that stuff
22:46 wolverian Juerd, I'd have to recode the mail indicator script. yes, I'm a bit lazy.
22:46 * eric256 watchs juerd swing and connect with wolverian's jaw, Juerd isn't pully any punches today. lol
22:46 wolverian now, why is this SMTP relay timing out.
22:47 Juerd wolverian: That's more like it
22:47 Juerd wolverian: Eitheir it is somehow broken, or it hates you.
22:47 Juerd s/heir/her/
22:47 eric256 pulling*...../me needs an irc client that spell checks as he types
22:47 Juerd eric256: Won't help. Pully is a real word.
22:48 theorbtwo eric256, gaim+gspell.
22:48 eric256 spelling intention checker?  "did you realy intend to say that?" lol
22:48 Juerd There's no way to completely evade having to think.
22:48 wolverian it isn't helping that it doesn't give a real error message
22:48 eric256 Juerd....but i can try!
22:48 Juerd eric256: Merge Clippy into your irc client.
22:48 Juerd eric256: When you do so, please do leave this channel :)
22:49 Juerd wolverian: That's typical for time outs
22:49 * theorbtwo ponders hooking up a whatsit chain, and hit space-bar on occasion to make it say something different.
22:50 eric256 markov chain?
22:50 wolverian oh, goddamn
22:50 theorbtwo Markov, thanks.
22:50 wolverian I hope the ISP isn't blocking me >:|
22:51 wolverian erm. that doesn't make sense, though.
22:51 wolverian oh, here we go.
22:51 wolverian should have read the IT dep's FAQ :)
22:51 Juerd Note that markov chains are not related to Mark Overmeer
22:51 elmex has joined #perl6
22:52 Juerd theorbtwo: Hm
22:52 wolverian (they require TLS and login/pass from outside the university network)
22:52 Juerd theorbtwo: interesting.
22:52 Juerd wolverian: Then it is not broken and the other option remains.
22:53 wolverian Juerd, PEBCAK
22:53 * Juerd wanders off to bed
22:53 Juerd bye
22:53 wolverian good night
22:54 theorbtwo G'night.
23:00 venk has joined #perl6
23:02 eric256 later
23:02 * eric256 is under a 187k seconds behind now...time to go sleep. ;)
23:08 joepurl has quit IRC (Remote closed the connection)
23:09 kakos has quit IRC ()
23:16 eric256 has quit IRC ("Trillian (http://www.ceruleanstudios.com")
23:19 wilx has quit IRC (Read error: 104 (Connection reset by peer))
23:23 elmex has quit IRC ("leaving")
23:23 elmex has joined #perl6
23:23 sleepster is now known as typester
23:24 wilx has joined #perl6
23:24 Cryptic_K has joined #perl6
23:26 larsen has quit IRC ("later")
23:32 justatheory has quit IRC ()
23:42 efunneko has joined #perl6
23:44 penk has quit IRC ("Download Gaim: http://gaim.sourceforge.net/")
23:44 penk has joined #perl6
23:47 scook0 has joined #perl6
23:52 scook0 has quit IRC ("leaving")

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

Perl 6 | Reference Documentation | Rakudo