Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2005-10-11

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 SamB has quit IRC (Read error: 104 (Connection reset by peer))
00:03 luqui has joined #perl6
00:08 icebattle has joined #perl6
00:13 adamc00 has joined #perl6
00:19 stevan hey luqui
00:19 autrijus adamc00: yo
00:22 SamB has joined #perl6
00:36 adamc00 has left "Leaving"
00:39 icebattle has quit IRC ("Chatzilla 0.9.68.5 [Firefox 1.0.7/20050915]")
00:39 autrijus journal up. good night!
00:39 stevan good night
00:51 luqui hi stevan
00:52 stevan hey luqui
00:54 luqui you could also think of a class MyClass as a role, and use the property system to make the class object.  That is, (Object but MyClass).new
00:54 luqui er, Class but MyClass
00:54 stevan luqui: I am not clear how all that works
00:54 luqui wait, maybe it is Object
00:55 luqui when you say $foo but bar, you are "reblessing" $foo into an anonymous subclass of its former class with the "bar" role mixed in
00:55 stevan yes, that is similar to eigenclasses
00:55 luqui you could use the same mechanism
00:56 stevan rebless == change-class-of
00:56 luqui sure
00:56 joepurl has joined #perl6
00:56 stevan luqui: I dont have properties implemented,.. eigenclasses are :)
00:56 wolverian this might be a stupid question, but how do I specify that a method's invocant is the class itself, not an instance of it? (ie a class method)
00:56 luqui well maybe you can go the other way then
00:56 JAPJuggler has joined #perl6
00:56 luqui use eigenclasses to implement properties :-)
00:56 stevan wolverian: that is what we are talking about actually
00:56 stevan luqui: that may be the way to go :)
00:56 wolverian stevan, heh, I'm just a poor peasant looking for the right syntax :)
00:57 stevan wolverian: you say method foo (Class $class:)
00:58 * luqui thinks that that way of doing it is a deceptive oversimplification
00:58 luqui I would rather see something like classmethod...
00:58 wolverian right, me too.
00:58 * stevan agree's with luqui
00:58 stevan and wolverian
00:58 stevan but I am not on the cabal *cough* luqui *cough*
00:59 luqui when larry wrote that, though, he was still thinking of declarators as sacred
00:59 luqui now he thinks of them pretty much as compile-time functions
00:59 stevan we could be like Ruby
00:59 luqui so he might be more open to that approach nowadays
00:59 stevan method Foo.bar () { ... }
00:59 stevan syntax is not my department though
00:59 luqui Yeah, not mine really either...
01:00 luqui my syntax looks good at first and then looks worse and worse as you get used to it
01:00 luqui Larry's seems to be the exact opposite... I guess that's why we trust him
01:01 luqui oh...kay... you want ==> instead of ~>, crazy man, but we'll go with it
01:01 luqui and now ~> looks too small for what it's doing
01:01 stevan hmmm, why do class methods need to be inherited?
01:01 stevan does that really make sense?
01:02 luqui well... maybe
01:02 stevan are we not inheriting the behavior without the accompanying state?
01:02 luqui it depends on what you think about class interfaces
01:02 * stevan vows never to use class methods again,.. they are just icky
01:02 stevan luqui: how so?
01:02 luqui If a class C is a subclass of a class D, does that also mean that C (not an instance of, but the class itself) should behave like D
01:02 wolverian reading synopses, enums seem really overloaded to me.
01:02 * luqui likes the "new" method quite a lot
01:03 stevan new is an instance method of Class
01:03 luqui wolverian, those are being torn down by theory theory however it works out
01:03 luqui that is its primary focus
01:03 stevan it is not a class method at all :)
01:03 wolverian luqui, ah, nice!
01:03 luqui uh what?
01:04 luqui you're saying that when I say Foo.new, I'm asking Class to do something, not the Foo object?
01:04 stevan Foo is an instance of Class
01:04 luqui yeah
01:04 stevan new() is an instance method of Class
01:04 luqui no
01:04 stevan so Foo (being an instance of Class) can call new()
01:04 luqui because you can override it
01:04 stevan yes
01:04 stevan uhm
01:05 stevan yeah, singleton method on the Foo
01:05 luqui righto
01:05 stevan and it is easily overridden
01:05 luqui so it's really more a method on the eigenclass
01:05 stevan yes
01:05 stevan which shadows Class::new
01:05 luqui okay
01:06 stevan but you can still call SUPER::new since the eigenclass is a subclass of Class (ultimately)
01:06 luqui so the eigenclass idea is that there is no difference between a class method and an instance method on the eigenclass?
01:06 stevan not exactly
01:06 stevan eigenclasses are methods attached to a particular instance
01:06 stevan not to a class
01:07 stevan however classes are instances,.. so you get 2 for the price of one
01:07 luqui eigenclasses are not methods (in response to "eigenclasses are methods..."
01:07 luqui )
01:07 luqui so what did you mean to say?
01:08 stevan sorry
01:08 stevan eigenclasses are a means to an end
01:08 stevan the end is singleton methods
01:08 stevan which are methods attached to a particular instance
01:08 stevan not to a class
01:09 luqui okay
01:09 stevan you can accomplish this easily with eigenclasses
01:09 luqui okay, so now back to the question: are class methods inherited?
01:10 stevan yes, should they be
01:10 luqui let's start from the top:  what does it mean for a class *object* to be inherited from another
01:10 luqui what kind of relationship holds between the objects?
01:10 stevan it is a subtype relationship
01:11 luqui let's try not to confuse classes and types
01:11 stevan each class has a list of superclasses
01:11 stevan this means nothing on it's own though
01:11 luqui so the set of classes in the program forms a dag
01:11 stevan only when you either 1) create an instance or 2) dispatch a method call does it mean anything
01:12 stevan uhm, yes it should be dag-ish
01:12 * luqui has the urge to go back to mathematical fundamentals
01:12 luqui but it might not get us anywhere here
01:12 stevan the class is an instance of class messes up the dag-ish-ness
01:12 luqui oh right, instance of itself
01:12 stevan uhm I was not aware there would be math on this test professor luqui
01:13 stevan but that is a special case and can be ignored
01:13 stevan so "its all a dag man" .....
01:13 * luqui has found that when you come across a hard abstract question, rather than trying to decide the answer, you should rejig your thinking to make the answer obvious
01:14 luqui which, at least in my theory and junction proposals, has found great solace in mathematical fundamentals :-)
01:14 luqui aanyway...
01:14 stevan class == state + behavior
01:15 luqui a description of state
01:15 stevan state
01:15 luqui not the state itself
01:15 luqui right?
01:15 stevan some kind of storage of values
01:16 * stevan wonders if luqui has gotten to the TaPL chapters on objects
01:16 luqui no, I've not really been reading TaPL
01:16 stevan I have only skimmed them myself
01:16 luqui should I before continuing?
01:16 stevan nah
01:16 stevan let me reviese my statement
01:16 stevan object == state + behavior
01:17 luqui that sounds much better to me
01:17 luqui and class isa object, no?
01:17 stevan yes
01:17 stevan but that is Class not class
01:17 stevan proper noun :)
01:17 luqui well, a class is an object
01:18 luqui Class or MyMagicClass
01:18 stevan Class is an instance of Class which is a subclass of Object
01:18 luqui and a method is a function whose domain is a set of objects (which we call a "type")
01:18 stevan remove classes from the model for a moment, they are fussing things up
01:19 stevan no, lets go back even further
01:19 luqui okay
01:19 stevan object == state + behavior
01:19 luqui behavior == ?
01:19 stevan think of an object as a set of closures, the functions being the behavior and the state being the bound free variables
01:20 luqui heh, like Class::Closure
01:20 stevan set is a bad word there,.. s/set/bunch/
01:20 justatheory has joined #perl6
01:20 stevan yes, like Class::Closure :)
01:20 stevan so,.. if we ignore the idea of classes completely,.. and just think of pure objects
01:20 stevan state + behavior
01:21 stevan now, lets add inheritence
01:21 * stevan cracks open TaPL to make sure he doesnt start talking too much shit
01:21 luqui and we are asking whether two objects' behaviors are related to each other
01:22 luqui wait--I'll go up my usual avenue.  Let's not call them "class methods" but "type methods"
01:22 luqui because you can never really say the name of a class, according to theory.pod
01:22 stevan ok class, please open your books to page 225 "Imperative Objects"
01:22 luqui a type is a set of objects
01:22 luqui let me rant a bit, then I will
01:22 stevan ok
01:23 luqui and a type method is function with the domain of *sets*
01:23 luqui with that bare definition, there is no requirement for methods to be inherited
01:23 luqui but, as I did with roles, maybe there is an algebraic relationship that holds for type methods
01:24 luqui like, if a type method is defined for a set, it is also defined for every subset of that set
01:24 luqui giving us inheritance
01:24 luqui then... does that make sense
01:25 joepurl has quit IRC ("Lost terminal")
01:25 stevan uhm, sort of...
01:25 joepurl has joined #perl6
01:25 stevan do theories have state?
01:25 luqui Well, let's consider an example.
01:25 luqui stevan, ceratinly not.  but they can inject stateful functions into classes (just like roles)
01:25 luqui that's how I'm thinking of it
01:25 stevan ok
01:26 luqui what's a good example of a type method?
01:26 luqui how about new?
01:26 luqui if you can create a new member A, then you can also create a new member of *any* subset of A
01:26 luqui s/member/member of/
01:27 luqui that..... doesn't seem to be true
01:27 luqui in particular, you cannot create a new member of the empty set
01:28 stevan hmmm this is getting a little funky
01:28 luqui but more generally, creating a new A presumably gives you some predefined element of A.  By saying that you can create a new member of any subset, that means you can create any object in that set
01:28 luqui well, it's a brainstorm
01:29 luqui but maybe "creating a new" object when it is a value type doesn't make sense
01:29 stevan A.new is not really inheirted
01:29 luqui (and my subset thinking only works on value types)
01:29 luqui fair enough
01:29 luqui what kind of class method would be?
01:29 stevan the canonical example is an instance counter
01:29 stevan A.counter # 0
01:29 stevan A.new
01:30 stevan A.counter # 1
01:30 luqui interesting
01:30 stevan but this doesnt make sense to be inherited by B
01:30 luqui well, that particular method has a very interesting algebra
01:30 luqui B is A
01:30 stevan B.counter  should have it's own state,.. uncurrupted by A
01:30 luqui A.counter # 0
01:30 luqui B.new
01:30 luqui B.counter # 1
01:30 luqui A.counter # 1 !
01:30 luqui A.new
01:31 luqui B.counter # 1
01:31 luqui A.counter # 2 !
01:31 stevan something like that could not be default behavior
01:31 luqui right
01:32 stevan it would mean calling A::counter though B would have an implied next METHOD
01:32 luqui anyway, nothing is really falling into place
01:32 stevan cause class methods suck camel balls
01:32 luqui which makes me think that there is no fundamental reason to inherit class methods
01:32 stevan except that you could in p5 :)
01:32 luqui right, historical reasons
01:32 luqui okay, off theory
01:32 justatheory what?
01:32 luqui what practical value would it be to inherit class methods
01:33 luqui what practical value would it be *not* to inherit class methods?
01:33 stevan bad class design would be alive and well in p6 :)
01:33 luqui you can't stop that
01:33 wolverian after using Java I'm tempted to ask what practical value are class methods?
01:33 stevan to not inherit simplifies the meta-model
01:33 stevan wolverian: exactly!
01:33 luqui wolverian, good question
01:34 luqui maybe Foo.bar is not a class method
01:34 stevan especially since Class isa Package and you can always stash plain ole subs
01:34 luqui since you can't actually refer to a class
01:34 luqui but just a sub in the Foo package
01:34 luqui uh, yeah, right, we just said the same thing :-)
01:34 stevan that is how we are storing Foo class state
01:35 stevan class Foo { our $.bar; } is the same as package Foo { our $.bar }
01:35 luqui wolverian, did you see *any* example of a class method in java that made sense to be a class method?
01:35 wolverian luqui, no.
01:35 stevan the only examples I have seen are for things like the File class
01:35 luqui it might be worthwhile just to kill them altogether
01:35 stevan but I dont think those are *good* examples
01:35 wolverian luqui, well, some did, given the restrictions of Java
01:35 wolverian but would not in the context of Perl 6
01:35 luqui right, just as a poor excuse for a function
01:36 luqui however, some methods really do make sense on the class
01:36 stevan luqui: if you think of class methods as singleton methods which override or add to the instance methods of Class, they dont seem as bad
01:36 luqui from a cognitive perspective
01:36 luqui stevan, right
01:36 wolverian luqui, any examples?
01:36 luqui and it's probably safe to think exactly that way
01:37 stevan but methods attached to an instance,.. are not inherited
01:37 luqui wolverian, Foo.num_instances
01:37 wolverian luqui, right. true.
01:37 luqui stevan, righto
01:37 luqui so...
01:37 luqui so be it?
01:37 luqui "class methods" are not inherited
01:37 stevan welllll
01:38 stevan ponder this one
01:38 stevan actually nevermind
01:38 * stevan just realized his example is moot in the context of BUILD
01:39 luqui I think inheriting class methods would not be an inheritance issue at all
01:39 luqui and the only reason you'd want to do it is for scoping
01:39 justatheory has quit IRC ()
01:39 stevan I would guess that any behavior you might accomplish with class methods could be just as easily accomplished with either
01:39 stevan 1) Role composition of singleton methods
01:39 stevan 2) subclassing Class
01:39 luqui stevan, sure, but Joe Shmoe has no idea what the heck subclassing Class means
01:40 luqui maybe even role composition
01:40 stevan 3) getting a good book on OO and stop writing procedural modules ;)
01:40 luqui say you're from Java
01:40 wolverian oh, isn't BUILD a class method?
01:40 luqui maybe that kind of scope makes sense...
01:40 stevan luqui: then you will have been sworn off of class methods a long time ago
01:40 luqui wolverian, no, it is an instance method
01:40 stevan wolverian: no, BUILD is a submethod on the instance
01:41 luqui submethod, there's an icky corner of the object model
01:41 stevan luqui: actually it's not,.. they are quite clean
01:41 wolverian hm. .new, then?
01:41 luqui what does it accomplish?
01:41 stevan wolverian: new is an instance method of Class
01:41 luqui wolverian, right, but that has no inheritance relationship
01:41 wolverian stevan, right.
01:41 stevan submethods are good for BUILD and DESTROY,.. thats about all really
01:42 stevan inheriting BUILD and DESTROY are not usually what you would intend
01:42 wolverian instance method of Class == class method?
01:42 luqui and they're not even good for that
01:42 stevan especially if they are all run by BUILDALL and DESTROYALL anyway
01:43 stevan wolverian: instance method of Class == instance method of Class
01:43 stevan they look like class methods,.. but they are not
01:43 stevan because Class itself is an instance
01:43 wolverian argh, destroy all self-referential semantics.
01:43 stevan LOL
01:44 stevan luqui: I will ponder this some more,.. I think it might be a sane proposal
01:45 luqui please do
01:45 stevan it will likely be meet with resistence
01:45 luqui object model is important :-)
01:45 luqui stevan, I'm not so sure
01:45 stevan however, if we can counter all points with examples,.. it should fly
01:45 wolverian oh wow, I think I understand the difference now. that was a maze.
01:47 * stevan needs to take some cold medicine, watch some mindless TV and sleep  
01:47 stevan I will likely p6l this tomorrow
01:47 stevan adios &
01:47 wolverian I have class in two hours; 5am now.
01:48 wolverian stevan++ # bye!
02:04 joepurl_ has joined #perl6
02:15 elmex has quit IRC (Read error: 113 (No route to host))
02:17 joepurl has quit IRC (Read error: 110 (Connection timed out))
02:45 eric256 has joined #perl6
02:51 joepurl_ has quit IRC (Read error: 110 (Connection timed out))
02:54 JAPJuggler is now known as radjuggler
02:55 * eric256 whistles in the dark
03:00 stevan has quit IRC (Read error: 104 (Connection reset by peer))
03:34 offby1 has quit IRC ("rebooting emacs (!)")
03:35 Jooon has quit IRC (Read error: 104 (Connection reset by peer))
03:41 Jooon has joined #perl6
03:44 PerlJam has joined #perl6
03:51 Amnesiac has quit IRC ("Leaving")
04:02 xinming_Beijing has quit IRC (Client Quit)
04:06 * eric256 whistles in the dark some more
04:09 imperator has joined #perl6
04:09 luqui although I'm having a wonderful time I'd rather be doing what you're doing
04:09 eric256 lol
04:30 justatheory has joined #perl6
04:31 imperator has quit IRC (Read error: 110 (Connection timed out))
04:43 GeJ has quit IRC (Read error: 104 (Connection reset by peer))
04:43 GeJ has joined #perl6
04:51 eric256 has quit IRC ("Trillian (http://www.ceruleanstudios.com")
04:55 joepurl has joined #perl6
04:59 stevan has joined #perl6
05:14 SM_ax has joined #perl6
05:23 rantanplan_ has joined #perl6
05:37 b6s has quit IRC (Read error: 110 (Connection timed out))
05:47 rantanplan_ has quit IRC (Remote closed the connection)
05:50 GeJ has quit IRC ("Client exiting")
05:50 GeJ has joined #perl6
05:55 luqui catamorphisms are SO COOL
06:00 obra cataWHATs?
06:02 joepurl has quit IRC ("Lost terminal")
06:02 joepurl has joined #perl6
06:07 luqui catamorphism
06:07 luqui you know how fmap is generalized map (from lists to arbitrary whatevers)
06:07 luqui catamorphism is generalized reduce
06:08 luqui and anamorphism is generalized something, I'm just not sure what
06:18 icebattle has joined #perl6
06:18 luqui has quit IRC ("This computer has gone to sleep")
06:19 luqui has joined #perl6
06:21 icebattle has quit IRC (Client Quit)
06:22 icebattle has joined #perl6
06:26 saorge has quit IRC ("Leaving")
06:27 justatheory Bah
06:27 justatheory I'm having trouble building GHC 6.4.1 on Tiger. Do I need GCC 3.3, still?
06:31 * justatheory knocks on the channel
06:31 justatheory Is this thing on?
06:34 Khisanth bzzzzzzzzzzzzzzz
06:35 justatheory Hrm
06:36 iblechbot has joined #perl6
06:44 Ymmv has quit IRC ("leaving")
06:46 integral #haskell can be more awake
06:48 PerlJam justatheory: I think the awake ones here are also sans Tiger.  You need to find the appropriate Mac-heads.
06:48 justatheory I thought that all geeks were a Mac-heads these days.
06:49 integral sure,  just cheap ones with Panther =)
06:50 justatheory oh
06:50 justatheory well, it's probably really a GCC 4 issue rather than Tiger.
06:50 justatheory At least, I expect so.
06:51 integral are you using a precompiled binary?
06:51 justatheory no
06:51 justatheory They only have darwinports now.
06:51 justatheory They used to have .dmg files, but I guess not anymore. :-(
06:51 justatheory I don't use darwinport.s
06:51 justatheory or any ports system. I have an allergy.
06:51 integral err, really?  *sigh* I guess no one put the .dmg on the website.  It was announced on the ML
06:52 justatheory For GHC? No, just darwinports.
06:52 justatheory I was trying to install pugs with CPANPLUS.
06:52 integral no, it was announced on the mailing list.  I've got the damn email in front of me: http://www.uni-graz.at/imawww/haskell/GHC-6.4.1.pkg.zip
06:52 justatheory That's the dmg? Gool.
06:52 integral my mistake, it is a .pkg
06:52 * justatheory downloads that
06:53 justatheory Same diff, AFAIC
06:53 justatheory s/AI/IA/
07:14 justatheory integral++ # Thanks for the link to the .pkg!
07:15 PerlJam has quit IRC ("ZZzz..")
07:16 nothingmuch has joined #perl6
07:16 * integral bows
07:18 justatheory piers++ # "Anyhow, chromatic…"
07:19 nothingmuch oh my *GOD* rindolf is an idiot
07:20 justatheory rindofl?
07:20 justatheory rindolf?
07:21 integral nothingmuch: has he done something new, or just the same testing + meme stuff?
07:21 nothingmuch the Test::Shlomif::Harness
07:21 * nothingmuch is embarraced to know him IRL
07:21 integral I just feel sorry for the other people who run that perl-meme site
07:21 * justatheory notes that compiling Perl6::Pugs is causing serious lag…
07:22 nothingmuch i really don't see how someone has the tact to make changes like the code  Andy quoted
07:22 justatheory Oh, rindolf == shlomi fish?
07:22 nothingmuch yes
07:22 nothingmuch furthermore, his code is insultingly stupid
07:22 * justatheory doesn't think that he's been insulted by other people's code, except in comments
07:23 justatheory piers++ # "Your summarizer wasn't entirely sure what they were talking about."
07:23 nothingmuch =)
07:24 nothingmuch http://perlmeme.org/tutorials/cgi_script.html (also insulting... i suspect it's his work too ;-)
07:25 luqui what's wrong with that?
07:25 nothingmuch it's how to start a CGI script
07:25 nothingmuch assuming the user knows pipes, and env variables
07:25 nothingmuch and stuff like these
07:26 QtPlatypus Yes and the problem is?
07:26 justatheory    use CGI::Carp qw(fatalsToBrowser); # NO!
07:26 geoffb has quit IRC (Read error: 110 (Connection timed out))
07:26 nothingmuch QtPlatypus: the issue is that instead of teaching how to write a CGI the script gives an example, and says what it does, but not what the things it does mean
07:27 nothingmuch which is good for a reference, but this is not a tutorial
07:27 integral it's what people want though...
07:27 luqui Joe Schmoe would rather copy a template and tweak it than write one by hand
07:27 * luqui knows this after a year of teaching OpenGL :-)
07:27 QtPlatypus nothingmuch: Your worried that it will encouage cargo cult programing.
07:28 nothingmuch no, it's more than that
07:28 nothingmuch no one ought to use CGI for HTML
07:28 nothingmuch it's just there for backwards compatibility
07:28 nothingmuch why encourage that?
07:28 luqui nothingmuch, what should you use instead?
07:28 luqui assuming little knowledge of perl's workings, of course
07:28 nothingmuch HTML::Template is simple, clear, and powerful enough
07:29 * luqui should check that out the next time he generates HTML... i.e. never :-)
07:29 nothingmuch anyway, nevermind
07:29 integral nothing wrong with HTML combinators per se though, just that they're in the wrong module
07:30 nothingmuch integral: remember please that this is the first impression someone is going to get
07:30 nothingmuch people whove been coding for 2 months don't appreciate pretty printing combinators
07:30 luqui "Perl is a language for getting your job done"  # Camel book
07:30 luqui if it works faster than any other language, then it makes a good impression
07:31 luqui anyway...
07:31 * luqui backs off
07:31 integral nothingmuch: sorry, I'm just trying to be balanced, rather than ripping rindolf to shreds continually just because rindolf is rindolf.
07:31 * justatheory likes TT and Mason
07:31 nothingmuch integral: fair enough
07:31 * nothingmuch backs down
07:31 integral particulary when for once it's not just rindolf's site.
07:31 nothingmuch enough for now
07:31 * luqui backs up
07:31 * justatheory does the holky polky
07:32 * justatheory turns himself around
07:38 geoffb has joined #perl6
07:39 geoffb Grrr.  Damn SBC incompetent ADSL management . . . .
07:41 larsen has joined #perl6
07:41 Cryptic_K has quit IRC (Read error: 104 (Connection reset by peer))
07:42 icebattle has quit IRC ("Chatzilla 0.9.68.5 [Firefox 1.0.7/20050915]")
07:43 wilx has joined #perl6
07:44 geoffb *yawn*
07:44 geoffb OK, time to crash (into bed), methinks
07:46 geoffb has quit IRC ("Leaving")
07:47 geoffb has joined #perl6
07:49 Grrrr has joined #perl6
07:49 nothingmuch ciao geoffb
07:49 Grrrr is now known as Gruber
07:59 joepurl has quit IRC ("Lost terminal")
07:59 joepurl has joined #perl6
08:12 Blicero has joined #perl6
08:15 dada has joined #perl6
08:27 radjuggler has quit IRC (Read error: 110 (Connection timed out))
08:28 dduncan has quit IRC ()
08:35 evalbot_7553 has quit IRC (Remote closed the connection)
08:35 evalbot_7554 has joined #perl6
08:39 svnbot6 r7554 | luqui++ | Solved the GADT problem in the Notes section.
08:42 elmex has joined #perl6
08:51 luqui has quit IRC ("Leaving")
09:02 ruz has quit IRC (Read error: 110 (Connection timed out))
09:05 Blicero has quit IRC (Remote closed the connection)
09:14 joepurl has quit IRC (Remote closed the connection)
09:18 ruz has joined #perl6
10:37 justatheory has quit IRC ()
10:47 Juerd Quick poll: what are your opinions about getting rid of .() altogether?
10:48 Juerd I believe it is unnecessary and confusing for people new to the language
10:50 autrijus $blah() instead?
10:50 autrijus $blah             .()
10:51 autrijus or do you mean we rid of code dereference in function application, which is insane?
10:54 Aankhen`` has joined #perl6
11:07 autrijus bbiab...
11:13 iblechbot has quit IRC (Connection timed out)
11:15 joepurl has joined #perl6
11:20 theorbtwo has joined #perl6
11:26 elmex has quit IRC ("leaving")
11:35 nothingmuch has quit IRC (Read error: 110 (Connection timed out))
11:37 dada has quit IRC ("see Emily play")
11:39 Ash has quit IRC (Read error: 113 (No route to host))
11:46 iblechbot has joined #perl6
11:58 rafl autrijus: ping
12:08 kolibrie has joined #perl6
12:16 sahadev has quit IRC ("Client exiting")
12:21 sahadev has joined #perl6
12:23 Aankhen`` has quit IRC (Read error: 104 (Connection reset by peer))
12:25 rafl What puts the include-dirs: src/perl5 into Pugs.cabal?
12:25 rafl I mean, where does the string 'src/perl5' come from?
12:29 sapper has joined #perl6
12:41 nothingmuch has joined #perl6
12:46 elmex has joined #perl6
12:57 drbean has joined #perl6
13:05 autrijus rafl: util/build_pugs.pl
13:05 autrijus (I'm in train station, wireless going off range at any point)
13:05 rafl autrijus: Yes, I already found it, but it doesn't matter anymore, I guess.
13:05 autrijus ok
13:06 rafl autrijus: Why I pinged you: Why does ghc-pkg need to access all include-dirs when registering a package?
13:06 rafl autrijus: We have src/syck, etc. in there which won't get installed.
13:06 autrijus oh hm. I have no idea really.
13:06 rafl autrijus: So you need a pugs src dir to register with ghc. That's bad, isn't it?
13:06 autrijus not _that_ bad as it is usually registered from install time
13:06 autrijus but not for you I surmise
13:06 rafl Indeed.
13:06 autrijus can you bring it up with SyntaxNinja or other Cabal people on #haskell?
13:06 autrijus or on the cabal list
13:07 autrijus for I need to run now. be back in a couple hours...
13:07 rafl Before I do that: Is there a way to remove the non-absolute paths from include-dirs and still keep compiling work?
13:07 rafl OK, bye!
13:07 autrijus maybe. or you can absolutify all of them
13:07 autrijus in build_pugs
13:08 rafl Well, won't help. A /home/rafl/projects/debian/.../pugs/src/syck/ won't exist for every user.
13:08 rafl We would need to install the includes.
13:10 autrijus nod.
13:10 autrijus &
13:30 PerlJam has joined #perl6
13:31 Qiang has joined #perl6
13:33 rep ops
13:41 * rafl get's ignored in #haskell, yay..
13:46 rafl iblechbot: ping
13:49 washu has joined #perl6
13:51 washu does anyone know how to create a byte array from string in perl (like java getBytes?) I'm messing around with unpack, but it doesn't seem to do the job.  
13:52 rafl washu: Maybe you want to join #perl. This channel is about perl6/pugs development.
13:52 PerlJam washu: in perl6 it would be @bytes = $string.bytes; # probably  :)
13:55 washu #perl is not showing up on my list. I thought it was gone. Thx.
13:55 washu PerlJam: that would be nice =>
13:56 * PerlJam still isn't clear if it's been blessed that .bytes(), .chars(), etc. return a list in list/array context.
13:56 eric256 has joined #perl6
13:57 PerlJam washu: and when you show up on #perl, I'll help.
13:58 penk has quit IRC ("Download Gaim: http://gaim.sourceforge.net/")
13:59 eric256 does pdcawley_ do the weekly summary?
14:07 PerlJam I think Piers and Matt are still tag teaming.
14:08 washu has left "Leaving"
14:08 eric256 ahhh.. from his comment yesterday i thought he was. no matter. just thought it was funny that the they used brane instead of brain. ;)
14:15 SM_ax has quit IRC ("Download Gaim: http://gaim.sourceforge.net/")
14:26 rafl ingy: ping
14:27 rafl ingy: I have a problem with Spork 0.20: Can't locate object method "slides_directory" via package "Spork::Config" at /home/rafl/.local/share/perl5/Spork/Command.pm line 44, <DATA> line 1.
14:28 eric256 has left
14:28 pdcawley has joined #perl6
14:34 Juerd autrijus: No, getting rid of it, as in: no replacement
14:35 Juerd autrijus: Well, no postcircumfix replacement anyway
14:35 Juerd autrijus: I haven't really thought about unnamed calls yet
14:42 rantanplan__ has joined #perl6
14:51 thepler has joined #perl6
15:06 justatheory has joined #perl6
15:11 G2 has joined #perl6
15:12 rafl ingy: OK, fixed it. I missused it.
15:12 ingy :)
15:13 rafl ingy: Can you tell me how it calculates the size of the images?
15:13 rafl ingy: I have a picture with 200x400 px here which gets streched to 350px width so it doesn't fit the screen anymore.
15:14 ingy rafl: just say {image: url 200}
15:15 rafl ingy: Great, spork++; # It should really be in Debian.
15:15 ingy otherwise the width will be set to 350
15:15 ingy or whatever the default width is
15:16 rafl ingy: Thank you.
15:16 rafl Do you know what nwp (the guy who want's to maintain it) does currently?
15:16 ingy no
15:17 rafl :-(
15:19 Jooon he is in the #kwiki channel currently, although there is not much activity there
15:20 chihchun has quit IRC ("Terminated with extreme prejudice - dircproxy 1.0.5")
15:21 chihchun has joined #perl6
15:23 evalbot_7554 has quit IRC (Remote closed the connection)
15:23 svnbot6 r7555 | iblech++ | * ChangeLog: Typo fix.
15:23 svnbot6 r7555 | iblech++ | * PIL2JS:
15:23 svnbot6 r7555 | iblech++ |   * jspugs.pl: Fixed the display of the paths to the various external
15:23 svnbot6 r7555 | iblech++ |     programs/files jspugs uses if $*CWD is not "$srcdir/perl5/PIL2JS".
15:23 svnbot6 r7555 | iblech++ |   * P5 Prelude::JS, P6 Prelude::JS::Operators: Division by zero and module zero
15:23 svnbot6 r7555 | iblech++ |     raise exceptions now (instead of doing what JS does, namely returning
15:23 svnbot6 r7555 | iblech++ |     Inf/-Inf or NaN).
15:24 evalbot_7555 has joined #perl6
15:37 G2 has quit IRC (Connection reset by peer)
15:37 dada has joined #perl6
15:44 justatheory has quit IRC (Read error: 110 (Connection timed out))
15:45 GeJ has quit IRC ("Client exiting")
16:04 eric256 has joined #perl6
16:08 eric256 can you set $*IN to chomp automaticaly yet?
16:12 nothingmuch has quit IRC (Read error: 110 (Connection timed out))
16:16 eric256 hmmmm
16:24 svnbot6 r7556 | eric256++ | Updated animals.p6 with new language features.
16:24 evalbot_7555 has quit IRC (Remote closed the connection)
16:25 evalbot_7556 has joined #perl6
16:26 rafl autrijus: I'll do a talk on perl6/pugs next month. Can you please tell me what you told the audience in the 4 slides following 'But First ...' in your apocalypse talk?
16:29 rafl_ has joined #perl6
16:29 rafl_ has quit IRC (Client Quit)
16:37 sapper has left "Leaving"
16:40 evalbot_7556 has quit IRC (Remote closed the connection)
16:40 evalbot_7557 has joined #perl6
16:42 svnbot6 r7557 | eric256++ | hangman.p6 - some more general pugs-ification
16:45 xinming_Beijing has joined #perl6
16:48 svnbot6 r7558 | eric256++ | Examples\Games\*.p6: Updated input methods to chomp(=$*IN)
16:48 svnbot6 r7559 | iblech++ | * t/builtins/strings/string_interpolation.t: "&func .()" and "&func. ()"
16:48 svnbot6 r7559 | iblech++ |   should (and doesn't in current Pugs) interpolate.
16:48 svnbot6 r7559 | iblech++ | * examples/games/animals.p6: my %hash = {...} creates a hash with one elem (key
16:48 svnbot6 r7559 | iblech++ |   is {...}, value is undef). Also see t/var/assigning_refs.t.
16:50 evalbot_7557 has quit IRC (Remote closed the connection)
16:51 evalbot_7559 has joined #perl6
16:51 saorge has joined #perl6
16:51 saorge_ has joined #perl6
16:51 saorge has quit IRC (Success)
16:51 saorge has joined #perl6
16:51 saorge_ has quit IRC (Read error: 104 (Connection reset by peer))
16:58 nothingmuch has joined #perl6
17:00 svnbot6 r7560 | iblech++ | PIL2JS: Prelude::JS::Operators: Implemented ~& ~| ~^, using a higher-order
17:00 svnbot6 r7560 | iblech++ | function which operates on JS sourcecode. :)
17:00 svnbot6 r7560 | iblech++ | Note: We need more tests for the bit operators (especially for the edge cases,
17:00 svnbot6 r7560 | iblech++ | e.g. "foo" ~& "", "\foo" ~& "\0" etc.). But, as I don't know what the correct
17:00 svnbot6 r7560 | iblech++ | result should be, somebody else has to write the tests. :)
17:00 perlbot has quit IRC (Remote closed the connection)
17:00 perlbot has joined #perl6
17:01 GeJ has joined #perl6
17:01 evalbot_7559 has quit IRC (Remote closed the connection)
17:01 evalbot_7560 has joined #perl6
17:02 cm_ has joined #perl6
17:02 cognominal has quit IRC (Read error: 110 (Connection timed out))
17:02 cm_ is now known as cm
17:03 nothingmuch has quit IRC (Client Quit)
17:07 nothingmuch has joined #perl6
17:07 pdcawley_ Yes, I still write the summary, or at least, I wrote the last one. And branes was deliberate.
17:09 PerlJam I think I'm going to have to killfile Thomas Sandlass.  Reading his posts to p6l is just too tiring.
17:11 cm :-)
17:12 eric256 hehe....any ideas why my pugs programs don't seem to be getting @ARGS filled?
17:12 PerlJam eric256: example?
17:13 eric256 if i do... @ARGS.perl.say; (as the only part of a program.)  then do
17:13 eric256 pugs example.p6 test
17:13 eric256 it prints []
17:13 eric256 not sure but i think pugs is sucking up the arguments...
17:14 broquaint Works fine here.
17:14 eric256 this is on windows
17:14 eric256 lemme test on feather
17:14 broquaint Ah, this is on feather.
17:15 eric256 definitly works fine on feather...gonna try the exact same file..maybe i did something dumb
17:15 eric256 lol
17:16 PerlJam works fine on my local non-feather box too :)
17:16 eric256 gtg i'll try later
17:16 PerlJam (of course I'm running linux)
17:22 cm what's feather :)
17:23 typester is now known as sleepster
17:30 svnbot6 r7561 | iblech++ | PIL2JS: Prelude::JS::Operators: Implemented +^ and ~^. This means PIL2JS passes
17:30 svnbot6 r7561 | iblech++ | 17/17 of bit.t. :)
17:31 autrijus cm: it's feather.perl6.nl, aka perlcabal.org, Juerd's server that provides free shell access to p6 developers
17:31 cm thank you
17:31 Cryptic_K has joined #perl6
17:32 evalbot_7560 has quit IRC (Remote closed the connection)
17:32 autrijus iblechbot: where is it written that "&x   .()" or "&x.   ()" should interpolate?
17:32 evalbot_7561 has joined #perl6
17:32 autrijus iblechbot: we don't do that for array/hash either and I think it makes little sense
17:32 autrijus (and a casual glance in S02 did not reveal that syntax...)
17:32 PerlJam those shouldn't interpolate IMHO
17:32 PerlJam I too think it makes little sense
17:33 autrijus ditto
17:33 * autrijus ponders
17:34 PerlJam I thought the rule was that it would interpolate only if the sequence was contiguous (i.e. no intervening whitespace)
17:34 autrijus yeah
17:35 iblech has joined #perl6
17:35 iblech Hello everyone
17:35 iblech rafl: pong
17:35 iblech autrijus: It should *not* interpolate. This is what the test tests :)
17:36 iblech autrijus: I.e. "&func .()" should eq '&func .()', but "&func.()" should eq ~func()
17:37 theorbtwo I like pb&j.  (But not with lemon jelly!)
17:37 fglock__ iblech: I had to interrupt a 'make smoke' with ctrl-C - is there a way to look at the results?
17:37 iblech fglock__: As far as I know, no :( As tests.yml is only written at the very end
17:38 cm "Cannot export Parrot_string_find_digit: symbol not defined [..]" -- any idea? :(
17:39 autrijus iblech: ok, my fault for only looking at the commitlog :)
17:39 autrijus cm: how did you trigger that?
17:39 cm trying to mingw32-make parrot, as described by http://wiki.kn.vutbr.cz/mj/index.cgi?Build%20Parrot%20with%20MinGW%20and%20ActivePerl
17:39 iblech autrijus: No, my fault for forgetting the small suffix "n't" (shouldn't instead of should) :)
17:40 cm autrijus, this happens when creating parrot.exe
17:40 cm autrijus, i am the latest code from subversion (../trunk)
17:41 autrijus leo__: your ground here :)
17:41 autrijus cm: did you do a really fresh build?
17:42 cm autrijus, I guess.. I just checked out the code from subversion, then ran Configure.pl & started make'ing
17:42 autrijus cm: send details to perl6-internals@perl.org, or visit irc.perl.org #parrot, can also work
17:42 autrijus cm: nodnod. the much-needed varreg refactoring is in place, so I expect the trunk to be somewhat fragile
17:42 cm autrijus, i'll try #parrot first, thanks
17:42 pdcawley_ has quit IRC (Remote closed the connection)
17:42 cm autrijus, is that the variable frame refactoring thing leo was talking about on perl6-i?
17:43 iblech cm: Yep.
17:44 cognominal has joined #perl6
17:47 evalbot_7561 has quit IRC (Remote closed the connection)
17:47 svnbot6 r7562 | iblech++ | * t/operators/binding/subs.t: Added a =begin unspecced guard around a subtest.
17:47 svnbot6 r7562 | iblech++ | * PIL2JS: Prelude::JS::Array: &splice should destroy possible bindings of the
17:47 svnbot6 r7562 | iblech++ |   array elements when splicing. This cuts down test failures of
17:47 svnbot6 r7562 | iblech++ |   t/operators/binding/arrays.t from 3 to 1.
17:47 evalbot_7562 has joined #perl6
17:49 leo__ cm: recent Parrot?
17:49 cm leo__: latest svn. mdiep_ solved my problem, [19:45] <mdiep_> cm: I believe parrot.def needs to be edited -- those functions were recently removed
17:49 leo__ yup excatly
17:49 cm leo__: I guess it's too trivial to send a patch? :)
17:50 leo__ I can't test on Win, so sill send a test please
17:50 leo__ argh, lagging connection - sorry
17:51 cm leo__, where is parrot.def generated?
17:52 leo__ it should have a comment at the top - else grep inside config for the failing symbol
17:52 leo__ # over to #parrot
17:55 mrborisguy has joined #perl6
17:58 mrborisguy has quit IRC (Client Quit)
17:59 mrborisguy has joined #perl6
18:05 svnbot6 r7563 | iblech++ | * t/pugsbugs/smartmatch_autovivifies.t: Use a P5 instead of a P6 regex object.
18:05 svnbot6 r7563 | iblech++ | * PIL2JS: More squashing of minor bugs
18:05 svnbot6 r7563 | iblech++ |   * Prelude::JS::Array: 3..2 results in the empty list now (previously, it
18:05 svnbot6 r7563 | iblech++ |     evaluated to (3)).
18:05 svnbot6 r7563 | iblech++ |   * Prelude::JS::Array: %hash.sort works now (the result is a list of pairs.
18:05 svnbot6 r7563 | iblech++ |     Dunno how/whether it's specced).
18:07 iblech Hm... {42}.arity is 1 in current Pugs, and there exists a test for this. Why is this so? (In PIL, {42} is a block taking an *optional* $_, and optional params don't count in the .arity, right?)
18:08 evalbot_7562 has quit IRC (Remote closed the connection)
18:08 evalbot_7563 has joined #perl6
18:11 wolverian should .arity ever be a simple scalar?
18:12 iblech There was a thread about that, but there was no final ruling, IIRC
18:13 wolverian right.
18:14 xinming_Beijing hmm, Will pugs need ghc 6.6 in the future after ghc 6.6 released? :-/
18:15 autrijus xinming_Beijing: most likely yes, when 6.6 is deemed stable enough
18:15 xinming_Beijing I sometimes got the complie progress failures. And I use GHC 6.5...
18:15 xinming_Beijing So, Now, I will try GHC 6.4.1 instead...
18:15 autrijus well... you are on your own with 6.5.x :)
18:15 autrijus 6.4.1 is recommended; 6.4 is possible
18:16 GeJ I guess so, autrijus was involved in a hackathon at IFCP to add features that would ease pugs implementation IIRC
18:16 svnbot6 r7564 | iblech++ | * New t/builtins/arity.t: Added four very very simple tests for &code.arity and
18:16 svnbot6 r7564 | iblech++ |   referred to a thread on p6l (which didn't contain a final ruling).
18:16 svnbot6 r7564 | iblech++ | * t/subroutines/bare_block_with_dollar_underscore.t: Extremely minor cosmetical fix.
18:16 autrijus GeJ: yeah, but more importantly, GHC 6.6 has much better SMP support and saner GADT
18:16 gaal is GADT pronounced "gadget"? :)
18:17 ezra_ has joined #perl6
18:17 obra How many changes in recent GHC are driven by pugs?
18:17 PerlJam autrijus: and transactional memory?
18:17 wolverian oh, hell, VB9 has STM?
18:18 wolverian what will I ridicule now?
18:18 evalbot_7563 has quit IRC (Remote closed the connection)
18:19 evalbot_7564 has joined #perl6
18:19 autrijus PerlJam: STM is already in 6.4
18:19 theorbtwo I only really meant for .airty to be a first step toward a prototype method that returned the complete prototype.
18:19 autrijus obra: two or three syntax things mostly
18:19 * PerlJam wasn't sure how well it was supported
18:19 autrijus only one deep thing that I had not had tuits to finish it
18:20 autrijus PerlJam: it works quite well but not yet SMPized
18:20 theorbtwo SMP support is getting to be important now that HT is common.
18:20 Khisanth theorbtwo: so there is some sort of &func.signature ?
18:21 GeJ more important as all the manufaturers tend to multi-core I guess
18:21 theorbtwo Not that I'm aware of; I never got further then .airity.
18:21 Khisanth just thought that might be useful for the lazy documentation writer :)
18:21 theorbtwo That was my thinking as well.
18:27 xinming_Beijing Perl 6 will be compiled to bytecodes. So, I wonder, If the "binary" will contain the comments. And also, I wonder If perl will also do the same in perl 5, hmm, just like. `cat file.p6 | perl`, and if you use `perl file.p6`, perl 6 will automatically call the compiler and generate the file.p6b, handles regeneration of the file as python does... hmm, python will do this if IIRC...
18:28 xinming_Beijing maybe not comments, I mean the document part of the source code.
18:31 Khisanth why? will compiling in p6 be a lot slower than p5? :)
18:31 autrijus xinming_Beijing: good question. larry's decree was that by default the source is stored with the compiled binary
18:31 autrijus Khisanth: possibly, yes :)
18:32 autrijus Khisanth: if you ask for it, that is
18:32 Khisanth If I ask perl to be slower?
18:32 autrijus Khisanth: if you want to trade compile time for runtime.
18:33 autrijus think -O0 vs -O2 vs -Ofun (the latter will nopaste your program to IRC and send back amusing reviews)
18:33 xinming_Beijing autrijus: How about the document part of the source code? they are useless "most" times.
18:33 autrijus xinming_Beijing: but %=DOC (or %=POD, or whatever it's called today) will hold them
18:33 autrijus xinming_Beijing: so they are stored as well by default. I imagine there will be strip programs
18:34 autrijus and/or options
18:34 xinming_Beijing I'd prefer 3 choice... automatically, strip, keep :-)
18:35 xinming_Beijing automatically will strip if it's not used, otherwise keep. :-P
18:36 autrijus it's hard to detect if it is used or not, but well, sure, you can apply heuristics
18:36 autrijus "heuristics", aka "does not work too well in general but you get what you ask for"
18:37 Khisanth not "works most of the time"? :)
18:37 geoffb -Ofun article has gotten up to rank 1163 in the O'Reilly weblog ratings.
18:37 * geoffb sets a personal goal to break 1000
18:39 stevan geoffb: how do I rank it?
18:39 geoffb (For reference, my previous best was 3908)
18:40 cm autrijus, can I build pugs without hs-plugins (some build problem on win32)
18:40 dduncan has joined #perl6
18:40 geoffb stevan, I think it's based on page hits
18:40 * stevan keeps refreshing his browser window
18:40 geoffb (That was not a call for spurious hits.  :-)
18:40 geoffb I meant, I'm setting a personal goal to write something cool enough that it naturally breaks into the 3-digit range
18:41 autrijus cm: sure, it is not mandatory
18:41 geoffb practice, practice, practice I guess
18:41 * stevan sets up a script to cause all his companies servers to hit geoffb's article
18:41 xinming_Beijing autrijus: hmm, I think, for the code which directly used the %=DOC will be detected. though, except some codes which is running in some tricks.
18:41 geoffb stevan, LOL
18:42 autrijus xinming_Beijing: *nod* that is the idea, yes
18:42 xinming_Beijing stevan: while true; do wget http://my.blog.url/ && sleep 5s; done;
18:42 xinming_Beijing stevan: this might help... But I don't know if it will really hit the counter. :-)
18:42 autrijus I think "ab" works better in general
18:43 * stevan just hired a roomful of offshore programmers to hit geoffb's blog 24/7
18:43 geoffb LOL
18:43 geoffb Nothing like a good laugh in the morning to really make the day better . . . .
18:44 stevan autrijus: did you see my discussion with luqui in the backlog, re: class methods are useless
18:44 xinming_Beijing stevan: hmm, could you please give me the blog-url?
18:45 stevan geoffb: the way I see it,  -Ofun is largely responsible for keeping pugs moving at it's current pace
18:45 autrijus stevan: yes, and I think it is mostly sane.
18:45 stevan xinming_Beijing: see the topic
18:45 geoffb stevan, DEFINITELY
18:45 autrijus stevan: I'm wading thru theory.pod for the _third_ time this week
18:45 stevan geoffb: because after all, perl6 isn't *that* cool on it's own
18:46 stevan autrijus: yes, I kind of glazed over when he starting bringing theory.pod into it
18:46 * xinming_Beijing can only find the paste bot.
18:46 autrijus ...well, it used to be *that* cool back in the RFC process...
18:46 SetCool has joined #perl6
18:46 rafl has quit IRC (Read error: 113 (No route to host))
18:46 * geoffb huffs at stevan for daring to note that Perl 6 might not be the coolest thing since the sandwich
18:46 stevan autrijus: true
18:46 autrijus ...but I wasn't there :)
18:47 SetCool has quit IRC (Client Quit)
18:47 stevan geoffb: yes, but even sandwiches have to be fun :)
18:47 geoffb heh
18:47 stevan I mean peanut butter is fine,.. but when you add jelly... then you got a party!
18:47 geoffb :-)
18:48 geoffb .oO( What would the RFC process have been like if autrijus was involved . . . ? )
18:48 * stevan thinks there would have been a lambda keyword for sure
18:48 stevan in unicode of course
18:49 geoffb And type systems would have been at least 10 RFCs by themselves
18:51 luqui has joined #perl6
18:56 xinming_Beijing capture the output from other program will be the part of perl or the part of lib?
18:56 autrijus luqui: hi.
18:56 autrijus xinming_Beijing: qx// is part of perl6 as specced
18:57 geoffb Not having that in core would be on my list of "no longer Perl" things
18:58 luqui hi autrijus
18:58 luqui right, perl still needs to be -e-friendly
18:58 luqui autrijus, do you know about the Rec type?
18:59 cm has quit IRC ()
19:04 autrijus luqui: in p6 context? no.
19:04 autrijus it's not in any spec iirc
19:05 ezra_ has quit IRC ()
19:06 luqui no, not in p6
19:06 luqui in haskell
19:07 luqui the catamorphism thingy
19:08 autrijus er, I don't understand
19:08 autrijus Rec is part of the various extensible record proposals
19:08 luqui data Rec f = In (f (Rec f))
19:09 autrijus ah, banana in space
19:09 autrijus yes.
19:09 * luqui raises an eyebrow when he hears about the space banana
19:09 autrijus aka Mu.
19:10 luqui anyway, I'm trying to define List using Rec
19:10 autrijus luqui: the banana papers are interesting reads
19:10 luqui data LF a lf = Nil | Cons a lf
19:10 luqui but I can't use cata on it unless it is a functor (in a)
19:11 luqui and I can't seem to make it a functor
19:11 luqui and #haskell is no help ;-)
19:11 ajs luqui, et al.: Keep in mind that "in core", as Larry has pointed out, is a murky phrase in P6. It might well be in a library or available through a call to a Parrot primative (though I expect that Perl has too many semantic extras for it to be pure Parrot)
19:12 luqui ajs, sure
19:12 autrijus luqui: "From Hindley-Milner Types to First-Class Structures"
19:12 * luqui has been avoiding arguing about "core" for ages now
19:12 ajs So, I fell off the planet for a while... has anyone taken over S29, or should I be jumping back in and reviewing the current state of the world?
19:12 autrijus ajs: hi!
19:13 ajs autrijus: indeed, nice to be "back"
19:13 PerlJam ajs: S29 needs to somehow become "official" IMHO
19:14 PerlJam (no, no one has picked up the S29 ball that I know of)
19:16 autrijus luqui: something like: instance Functor lf => Functor (LF lf) where fmap _ Nil = Nil; fmap f (Cons lf x) = Cons (fmap f lf) (f x)
19:16 ajs Ok, cool. I'll jump back in and see what the state of the world is. When I left it, there was a lot of work to be done turning email, details from other synopses and the like into tect
19:16 ajs er text
19:16 luqui autrijus, of course
19:16 luqui but lf is the *second* argument of LF
19:17 autrijus you want type lambda, but you can't get type lambda, because haskell's type expansion is predictive
19:17 luqui and if I make it the first, then Rec (LF a) doesn't work
19:17 autrijus so maybe using newtype to flip them?
19:18 luqui well, I tried that, but that seemed to run into other problems that I didn't understand
19:18 luqui I'll try it again
19:18 autrijus maybe you want Morror and MLF. hm.
19:18 autrijus Morrow, even.
19:19 autrijus luqui: hm, have you read the banana papers?
19:19 luqui no
19:19 * luqui is completely academic-papered-out
19:20 * geoffb resembles that remark
19:20 autrijus ok. they are: "Bananas, lenses, and barbed wire",  "Bananas in Space", "Dealing with Large Bananas", "Revisiting Catamorphisms Over Datatypes with Embedded Functions"
19:21 geoffb o/~ One of these titles just doesn't belong . . .
19:21 autrijus geoffb: lol, exactly my thought
19:22 autrijus luqui: I've read that newtype or a wrapper data type can be made to work, but I'm not exactly the one you want on technicalities
19:22 luqui mmkay
19:22 autrijus maybe you want oleg :)
19:23 autrijus (in ICFP, invited talk, "the next ML", the speaker lists as one of the major direction for ML: "Sexier types but without Oleg")
19:23 geoffb ??
19:23 autrijus it's a compliment of sorts
19:23 rantanplan__ has quit IRC (Read error: 104 (Connection reset by peer))
19:24 autrijus geoffb: http://okmij.org/ftp/README.html -- oleg is behind some extremely weird type magick in haskell land
19:24 dada has quit IRC ("see Emily play")
19:25 geoffb [added to yet-unread firefox tabs ...]
19:26 luqui got it!
19:26 luqui I was thinking about it backwards
19:26 autrijus including that zipper filesystem thing, "true" ocaml style OO system in haskell, logic transformer that adds prolog-like search ability to arbitary monads, types parameterized not with types but with numbers, delimited continutations, and assorted other things.
19:26 luqui it actually did have to be a functor in lf :-)
19:26 autrijus luqui: ah. :)
19:28 autrijus ...and whatever benign language features introduced, oleg can poke holes in it and abuse it into something truly startling.
19:28 autrijus sort of like a cross between damian and abigail.
19:29 luqui what is oleg?
19:29 luqui *who?
19:29 Steve_p Haskell guy, isn't he?
19:29 autrijus luqui: Oleg Kiselyov
19:29 * Steve_p checks autrijus's journal
19:30 Steve_p Of course, just asking autrijus is faster :)
19:30 autrijus Steve_p: also scheme guy and prolog/c/c++/perl etc guy
19:31 autrijus sub fixpoint { &{$_[0]}(@_) }# Yep, it does look like @#&$!
19:31 * Steve_p feels that pain
19:31 autrijus # ref: http://okmij.org/ftp/Perl/Scheme-in-Perl.txt
19:32 * PerlJam idly wonders if mjd knows oleg
19:33 geoffb I know Damian's rep.  Don't know abigail's.
19:33 geoffb Is Oleg a genius or just wierd?
19:34 autrijus geoffb: abigail is known for exploiting illdocumented perl5 bugs into japhs.
19:34 geoffb ah!
19:34 autrijus er, I mean, features.
19:34 autrijus geoffb: oleg is a genius who is also just weird.
19:34 geoffb heh
19:34 geoffb Well, I think the world needs more of those
19:35 geoffb Is he a prof like Damian used to be?  Or just has a lot of time on his hands?
19:35 autrijus I think he is working on a day job but apparently does have lots of time on his hands.
19:36 geoffb nod
19:39 PerlJam geoffb: peruse perlmonks for posts from Abigail  :)
19:40 geoffb PerlJam, oh dear, something else to read.
19:40 * geoffb turns to look at his bookshelves
19:40 geoffb Oy
19:40 geoffb Someday . . . .
19:41 geoffb Those that fail to learn history are doomed to repeat it.  Those who learn history don't have time to.
19:41 autrijus short lyf; long craft, lerne;
19:41 luqui has quit IRC ("Leaving")
19:42 geoffb autrijus, nodnod
19:42 * geoffb constantly has problems explaining to people the massive amount of self-guided continuing education necesary to stay vaguely current in this craft
19:44 autrijus it's easy to stay current if your river is narrow enough ;)
19:44 PerlJam geoffb: I've decided to mostly content myself with vaguely knowing what's going on by occasional participation.
19:44 autrijus unfortunately, PL is a huge river.
19:45 geoffb PerlJam, nod.  I do that for some things.
19:48 rantanplan_ has joined #perl6
19:52 autrijus hm, based on the things luqui are working on, he is probably at the stage of "Post-doc Haskell programmer" now
19:52 autrijus soon he'll progress into "Tenured professor"
19:52 autrijus # ref: http://www.willamette.edu/~fruehr/haskell/evolution.html
19:53 Juerd s/files/questions/
19:53 Juerd (I'm not sending a followup to three lists :)
19:53 Juerd )
19:54 rantanplan_ has quit IRC (Remote closed the connection)
19:55 GeJ has quit IRC ("Client exiting")
20:00 PerlJam Juerd: WRT the pugs repository ... is it automatically updated (i.e., as changes show up on http://svn.openfoundry.org/pugs, they quickly appear on feather)  ?
20:03 G2 has joined #perl6
20:03 ajs has quit IRC (Nick collision from services.)
20:04 autrijus PerlJam: the svk remo in my home dir is synced every 60 sec
20:04 ajs_ has joined #perl6
20:07 thomason has joined #perl6
20:07 PerlJam I wonder if it would be worth it to get a similar deal for parrot.
20:08 autrijus nod
20:08 autrijus and of the main perl6 repo, those are in //mirror/perl6/doc/trunk
20:09 autrijus if someone wants to set up a parrot mirror alongside it in either //mirror/parrot using robrt's bootstrap, or by hand, please feel free -- my ~/.svk/local is a+wrx
20:09 * PerlJam *really* needs to push himself to start using svk more
20:10 * autrijus finishes reading perl5/*
20:10 autrijus ...excluding PIL2JS which would take another half day.
20:11 autrijus ...but including theory.pod over many times
20:12 autrijus my brain is threatening to overload, so I'm going to take a shower and try to journal down something.
20:20 ezra_ has joined #perl6
20:24 G2 has quit IRC ("oops")
20:30 dduncan has left
20:33 G2 has joined #perl6
20:37 G2 has left "See you all tomorrow."
20:39 PerlJam has quit IRC ("*poof*")
20:39 PerlJam has joined #perl6
20:43 eric256 any ideas why -n as an ARG doesn't work?
20:44 eric256 ie....pugs example.p6 --n works, but pugs example.p6 -n  does not
20:44 eric256 by works, i mean @ARGS.perl.say outputs --n in the first one, but nothing in the second
20:45 autrijus obviously, bug. write a test :)
20:45 geoffb autrijus, is your top journal intentional?
20:45 eric256 okay...just checking. ;)
20:45 geoffb It looks like a thread reply . . . .
20:45 * eric256 has doubts about what is obvious and what is not. ;)
20:46 eric256 if i'm in a     for @ARG {  is there any way to get the next element in the list ? ... would be very helpfull ;)
20:47 PerlJam eric256: for zip(@ARG,0..) -> $a, $i { ... }
20:47 PerlJam er, that should be 0...
20:47 eric256 zip hangs on infinite lists currently
20:48 PerlJam eric256: alternatively, you could use for zip(@ARG,[@ARG[1..@ARG.elems],undef]) -> $curr, $next { ... }
20:48 PerlJam (assuming I've got the syntax right)
20:49 eric256 i've been using for 0 .. +@ARGS - 1 -> $i{
20:49 eric256 to get inxeds
20:49 eric256 indexs even
20:49 PerlJam well, that'll work too
20:49 PerlJam Oh, I guess mine has an obiwan error
20:50 eric256 @ARGV Y 0... -> $elem, $index will be a welcome idiom....if someone overloads Y to mean Zip
20:50 eric256 ;)
20:50 eric256 why don't we just use regular old Y agian?
20:51 fglock__ eric256: "Y" works as zip
20:52 iblech eric256: for @ARG.kv -> $i, $a { my $next = @ARG[$i + 1]; ... }
20:52 eric256 iblech: nice
20:53 eric256 any ideas where or how i would test that autrijus?
20:53 iblech eric256: Probably t/pugsrun/
20:54 Juerd PerlJam: It appears to be something with public write access
20:54 eric256 yea i was looking in there to see..all examples seem related to actual pugs command lines...guess i can create a script that jsut @ARGS.perl.say and compare the output.
20:54 Juerd PerlJam: There is no daemon syncing, but if you "svk up" once, the local repository is updated for all users
20:54 Juerd PerlJam: Perhaps autrijus can provide you with more details
20:54 * PerlJam keeps forgetting that .kv is blessed upon @arrays
20:55 Juerd PerlJam: Since the pugs building script uses the local svk stuff, it is updated at least once every 15 minutes
20:55 iblech PerlJam: It is :) And .pairs .keys .values is as well
20:56 autrijus geoffb: no, I think use.perl is confused
20:56 eric256 so at least i could just do @ARGV.keys and get the indexes with no -1 crap
20:56 autrijus I blame slash. rm'ing
20:56 autrijus geoffb: thanks for the reminder btw.
20:56 geoffb autrijus, ah. and np.
20:57 autrijus it's a reply to luqui's "conflicted"
20:57 svnbot6 r7565 | iblech++ | * t/unspecced/evaluation_order.t: Added some more tests
20:57 svnbot6 r7565 | iblech++ |   (e.g. (die "first")[die "second"] etc.)
20:57 svnbot6 r7565 | iblech++ | * Pugs.Eval: Fixed evaluation order in array and hash access.
20:57 svnbot6 r7565 | iblech++ | * PIL2JS: PIL::PApp: Fixed evaluation order of (die "first")(die "second").
20:59 eric256 does Test.pm have any builtin handling for running commands and capturing output?
20:59 eric256 or should i jsut follow the pugsrun examples?
21:00 autrijus eric256: follow pugsrun for now, although I'm surprised there were no qx tests
21:00 autrijus so some qx tests would be appreciated too
21:00 meppl is there an description to use c++-moduls or is it possible?
21:00 evalbot_7564 has quit IRC (Remote closed the connection)
21:01 evalbot_7565 has joined #perl6
21:01 autrijus meppl: no-one has attempted it before
21:01 meppl okay
21:01 meppl thx
21:01 autrijus meppl: if you want to use p6 to script C++, try spidermonkey
21:01 autrijus and see if they have ways of C++ scripting
21:02 autrijus so we can use 'pugs -C JS' to manipulate them
21:02 autrijus IIRC adobe did exactly that
21:02 autrijus but not sure if there are code for it
21:02 fglock__ has left "Fui embora"
21:03 * autrijus proceeds to import 3.5G of songs into the shiny iPod Nano thing.
21:03 meppl no, but
21:03 meppl thank you very much
21:03 meppl ;)
21:03 autrijus :)
21:06 autrijus (to qualify: "exactly that" = JS scripting C++ via spidermonkey.  not "use p6 to script acrobat")
21:06 autrijus although it'd be nice
21:09 * Juerd does not even have 3 GB of music
21:11 kolibrie has quit IRC ("leaving")
21:12 PerlJam Is there an rpm for SVN::Simple::Edit?
21:16 PerlJam Or anyone have a clue why I'm getting this error on my FC4 box:  
21:16 PerlJam Can't load '/usr/lib/perl5/site_perl/5.8.6/i386-linux-thread-multi/auto/SVN/_Delta/_Delta.so' for module SVN::_Delta: /usr/lib/perl5/site_perl/5.8.6/i386-linux-thread-multi/auto/SVN/_Delta/_Delta.so: undefined symbol: svn_swig_pl_get_current_pool at /usr/lib/perl5/5.8.6/i386-linux-thread-multi/DynaLoader.pm line 230.
21:16 PerlJam (and others like it)
21:16 Qiang has quit IRC ("home")
21:16 integral is it linked against the right version of the subversion libraries?  (eg. did you upgrade svn but not SVN::whatever?)
21:17 dolmen has joined #perl6
21:18 PerlJam AFAIK,  I'm current with all rpms for FC4.
21:18 PerlJam (not that the subversion bindings to perl can't be broken though)
21:19 integral hmm,  FC4 doesn't have some bug tracking system you can check for this stuff?
21:19 pasteling "stevan" at 67.186.136.119 pasted "Is this correct usage of but" (18 lines, 320B) at http://sial.org/pbot/13627
21:21 svnbot6 r7566 | iblech++ | * t/syntax/list_quote_whitespace.t: skip test on non-vanilla-Pugs (eval() is needed).
21:21 svnbot6 r7566 | iblech++ | * t/subroutines/loopscope.t: Added two more tests dealing with an explicit $_.
21:21 svnbot6 r7566 | iblech++ | * t/subroutines/dollar_underscore.t: Added a comment why PIL2JS fails on this
21:21 svnbot6 r7566 | iblech++ |   test and why PIL2JS might actually be correct.
21:24 iblech has quit IRC ("sleep; night all!")
21:26 evalbot_7565 has quit IRC (Remote closed the connection)
21:26 evalbot_7566 has joined #perl6
21:27 autrijus stevan: doesn't the BUILD want "next;" ?
21:27 stevan autrijus: no, the BUILDALL will take care of that
21:28 stevan I am trying to make a class which counts it's instances
21:29 ezra_ has left
21:29 stevan the classic class method example
21:29 stevan you can do it easily with a subclass of Class
21:29 stevan but I thought maybe it would work with Roles and but as well
21:30 stevan nothingmuch: ping
21:30 nothingmuch pong
21:30 stevan stupid adium ....
21:30 PerlJam stevan: looks okay to me.  Except I'm not sure about your use of "our" for $.count
21:30 stevan PerlJam: yes, that seems to be confusing
21:31 stevan I am of the opinion that anything in a Role is dumped into the consuming class
21:31 nothingmuch PerlJam: i didn;'t agree either
21:31 PerlJam stevan: Also, remember that roles are composed into classes, so you may have potential conflicts with $.count, .count(), and .BUILD()
21:31 nothingmuch IMHO 'our $.count' is $Countable::count'
21:31 nothingmuch and 'has $.count' is assimilated as instance variable on the metaclass (that is, a class scoped variable, unique to each class)
21:31 stevan PerlJam: the "but" should avoid that,.. because "but" creates an anon-class first
21:32 nothingmuch PerlJam: IIRC roles that don't trust each other will be name mangled
21:32 nothingmuch so that $.count can be defined in any number of roles, and assimilated into the same class - the attr is private to the role
21:32 PerlJam stevan: yeah, but it's an anonymous class that's a clone of the original (which may have those members)
21:32 nothingmuch or maybe you use '$:count'
21:32 nothingmuch anyway, that shouldn't be a problem
21:32 PerlJam nothingmuch: oh, perhaps so.
21:33 nothingmuch the conflict should only happen with the method count
21:33 stevan PerlJam: I was under the impression is was a anon-class which is a subclass of the original actually
21:33 stevan the result would be the same as the cloning
21:33 stevan (thats how the eigenclass stuff works)
21:34 stevan A but Countable is basically sugar for
21:34 stevan ::CountableA = class { does Countable; is A }
21:35 stevan at least I think that is right :/
21:35 stevan so the count() would not conflict so much as it would override anything in A
21:36 eric256 autrijus: from back log....what is a qx test regarding pugsrun?
21:37 autrijus eric256: er, no, another test testing the qx// construct
21:39 eric256 ahh.. you had me pretty confused. hehe
21:39 nothingmuch javascript makes webdevelopment almost fun when it's encapsulated in e.g. HTML::Prototype
21:39 nothingmuch the results are so much more satisfying
21:41 autrijus eric256: sorries :)
21:41 iblechbot has quit IRC (Connection timed out)
21:42 eric256 hmmm -n is the only one that doesn't work. odd
21:43 leo__ stevan: (generated classes) ::CountableA - do you have any clue about the lifetime of such classes?
21:43 autrijus eric256: I suspect -p too
21:43 stevan leo__: I would expect that ::CountableA could be stored in the ::* package, which means it would live forever
21:43 stevan or at least until the GC took it away
21:44 leo__ live foreve simplifies things for Parrot, GCing classes isn't really simple
21:45 stevan leo__: I think only when you do: my class { ... } do they need to be GCed
21:45 stevan but that should be an instance of Class, and so clean-up-able like any other instance in the system
21:46 stevan class Foo {} should be sugar for Class.new(:name<Foo>)
21:46 leo__ instances aren't a problem, but a Class get's a type number, registered into an array of type namess
21:48 leo__ stevan: nm - not so important know, but I've to consider that case eventually - thx for the input
21:48 svnbot6 r7567 | eric256++ | Added tests for passing args to script.  Currently any pugs args are being caught even if they happen after the script name and should be applied to the script.
21:48 svnbot6 r7568 | eric256++ | Script needed for new Args tests.
21:48 PerlJam stevan: wouldn't it be logical for them to have the same lifetime as the variable to which they are "attached"?
21:48 stevan leo__: no problem :)
21:49 stevan PerlJam: yes, but saying ::CountableA implies stashing in the global ::* package
21:50 eric256 i have no idea how to test qx since it doesn't work yet. ;)...or does it?
21:50 * PerlJam wonders if there will be any destruction issues (guaranteed order for instance) with anon classes.
21:50 autrijus eric256: it doesn't work yet :)
21:50 stevan my ::CountableA = A but Countable;
21:51 stevan I dont know if that is real syntax or not
21:51 PerlJam eric256: pretend that it works and write the test that way, but wrap it in an eval.
21:51 PerlJam stevan: it seems reasonable-ish to me.  I'd expect A to have :: too though.
21:51 eric256 PerlJam...i meant more that i don't know what to expect from it...just plain string that matches STDOUT of the test script? and do you have a suggested t directory?
21:51 stevan PerlJam: yes, that is probably correct :)
21:52 evalbot_7566 has quit IRC (Remote closed the connection)
21:53 PerlJam eric256: oh, I'd do something like  verify that qx(echo -n foo) is the same as "foo"  or something like that.
21:53 evalbot_7568 has joined #perl6
21:53 PerlJam I'm still unclear as to when the :: are needed and when they are not.
21:53 stevan PerlJam: yes, me too
21:53 eric256 PerlJam on win32 that equals -n foo though ;)
21:54 PerlJam eric256: well s/echo -n foo/pugs -e 'print foo'/ then  :)
21:54 Cryptic_K has quit IRC ("Leaving")
21:54 PerlJam er, pugs -e 'print "foo"'
21:55 PerlJam or whatever the appropriate quoting is for Win32
21:56 eric256 my point was that the quoting and everything would be different on each system.. that was part of my problem...but i can just make a generic script that returns what its called with, but i still have to find the pugs.exe which might or might not be in the path..... hince my original delima ;)
21:57 PerlJam eric256: so make a separate test for each platform.
22:00 integral has anyone else built pugs on feather recently?  I've just tried and got a "PIL2JS needs the Class::Rebless module from CPAN", and /usr/local/bin/pugs is a about 200 revisions behind
22:02 autrijus integral: the "Rebless" thing is fixed within the 200 revs
22:03 eric256 integral ... there was a change in the compiling of pugs and i don't think it worked
22:03 wolverian has there been p6l discussion on adding .tail and .head (naming not important)?
22:03 eric256 i was actualy just reading Juerd's email on the list and find that my name got attached to that "yea!" lol. hopefully he is around
22:04 integral hmm, seems I needed to svk pull, not just svk update, so I'll try that now
22:04 eric256 .tail and .head would be easy enough to do no your own wolverian
22:04 wolverian eric256, yes.
22:04 eric256 sub head (@array) { return @array[0] }
22:04 wolverian eric256, that's not my question, though :)
22:05 eric256 lol. my point is they are simple enough to be in a list util library or soemthing
22:05 integral how efficient is tail?  could it return something lighter weight than a copy of the array?
22:05 eric256 Juerd: ping
22:06 wolverian eric256, yes, I know they are. are they confusing enough to not put in the core?
22:07 eric256 ....try that agian. i didn't understand the question
22:09 wolverian eric256, oh: I kind of like the functional approach to manipulating list. thus .tail instead of [1...]. is that too confusing or unnecessary to put in the core? (ah, I said "not" on my previous line. sorry!)
22:09 integral if head works on lists, surely (@array) is the wrong prototype?
22:10 wolverian method tail { @_[1...] }
22:10 eric256 i would think then that maybe you want a library of functional helpers... i just don't think everything needs to be in the core. maybe i'm wrong,  look at php before moving things to core
22:10 eric256 yes integral it wasn't a good example and for some reasons lists and arrays are the same to me regardless of how hard i try! lol
22:10 wolverian eric256, I don't want _everything_ in the core. :) but thanks, it's clear to me that you don't at least see any use for them in the core. that's good information.
22:11 integral here's a data point: GHC's Prelude just reexports stuff from elsewhere, so stuff should go into a module first
22:11 wolverian of course. with "core" I don't mean "don't modularise it!" :)
22:12 eric256 actualy i see a use for them..just not in the core.  simpler is better.  use Functional; at the top of your script would mean tons to someone reading it, gives them a visual que that the rest of your script is going to be more functional in nature.
22:12 wolverian eric256, that's a good point.
22:12 eric256 of course that might be a miscue if you just want head and tail. ;)
22:13 wolverian we have import lists..
22:16 theorbtwo has quit IRC (Remote closed the connection)
22:16 eric256 true. /me anxiously awaits wolverian's example using his homebrew head and tail
22:16 wolverian hehe. a friend asked, that's all. :)
22:16 eric256 i would at least suggest an example implementation before bringing it up on the list.  in developing the example you might become enlightened and have something more to share, if not you will have code  to point at and say...this is why i think this way
22:17 dduncan has joined #perl6
22:17 wolverian I'm not sure how to specify a list invocant
22:18 wolverian oh, they turn into Arrays automatically, right?
22:18 eric256 integral implies not. ;)
22:19 wolverian right
22:19 wolverian but the array must be slurpy
22:19 wolverian and then it will allow itself to be called as $scalar.last too
22:19 Juerd eric256: pong
22:19 wolverian method *tail (*@foo) { @foo[1...] }
22:20 thepler has quit IRC ("Leaving")
22:20 integral you want: tail(func()) to call func in list context, but @array is an item thing I thought?
22:20 Juerd eric256: pong
22:20 Juerd uh oh, duplicate pong! :)
22:20 wolverian integral, @array is context(...) I think
22:21 wolverian but that still allows this: "foo".tail
22:21 integral erk, I hate perl6.
22:21 wolverian wouldn't it be nice of Strings were Arrays.. :)
22:22 integral I suppose the only reason for stuff like is context is to sell P6BP where we find out that we shouldn't use it. :-P </troll>
22:22 wolverian anyway, anyone else have a candidate implementation? :)
22:23 elmex has quit IRC (Read error: 110 (Connection timed out))
22:26 eric256 hey juerd
22:27 eric256 do you need to linke to my auto directory so that people get the updated version or did you do that all ready? i would check but its mid build
22:35 Juerd eric256: ls -l /usr/local/bin :)
22:35 eric256 huh?
22:36 eric256 ahh
22:36 eric256 hmmm...it says its linked...but it still runs a different version
22:36 eric256 ahh. nm
22:37 eric256 okay if 15min or so pugs should be all better on feather
22:38 eric256 and now parrot should be working agian too
22:38 integral cool
22:38 eric256 well in 15 minutes they will both work agian +-15minutes ;)
22:40 penk has joined #perl6
22:40 eric256 integral++ for pointing that out ;)
22:46 eric256 integral try pugs on feather now... should work
22:50 integral yep, it does.  thanks for that :-)
22:52 eric256 np
22:53 eric256 i run my own copy in my home directory so i didn't notice that one was outo f date
22:54 leo__ eric256++   # $ parrot --version   ... (r9462)
22:56 * eric256 scrolls through TSa's mail list message.....long...very long in a subject i'd already been lost on...
22:57 eric256 we need someone to summarize just the Sane Less Insane pair topic...maybe water it down a bit
23:00 leo__ eric256: I think TSa didn't get the subject 'Sane (less insane) pair semantics'
23:00 leo__ and the word sane seems to be missing in his dict
23:01 wolverian oh. method *tail ( *[ $head, *@tail ] ) { @tail } that oughta work, I think - or does it need 'is context(..)'?
23:01 eric256 did you try it wolverian?
23:01 wolverian no. :)
23:01 eric256 lol
23:01 eric256 ?eval method *tail ( *[ $head, *@tail ] ) { @tail }; "hello world".tail
23:01 evalbot_7568 Error:  unexpected "[" expecting parameter name
23:01 eric256 ?eval method *tail ( *$head, *@tail ) { @tail }; "hello world".tail
23:01 evalbot_7568 []
23:02 wolverian that should die, I think
23:02 eric256 i don't think you can define it functionaly like that.  maybe you can. i dunno
23:02 eric256 ?eval method *tail ( $head, *@tail ) { @tail }; "hello world".tail
23:02 evalbot_7568 Error: No compatible subroutine found: "&tail"
23:02 wolverian pugs doesn't support list unpacking apparently (or whatever you want to call it)
23:02 eric256 ?eval method *tail ( $head, *@tail ) { @tail }; (1..5).tail
23:02 evalbot_7568 Error: No compatible subroutine found: "&tail"
23:02 wolverian heh.
23:02 eric256 ?eval method *tail ( *@tail ) { @tail[1..] }; (1..5).tail
23:02 evalbot_7568 Error:  unexpected "[" expecting word character, "::", term postfix, operator, postfix conditional, postfix loop, postfix iteration, ";" or "}"
23:03 wolverian @tail[1...]
23:03 eric256 ?eval method *tail ( *@tail ) { @tail[1...] }; (1..5).tail
23:03 evalbot_7568 ()
23:03 eric256 lol
23:03 eric256 dunno
23:03 wolverian that's.. interesting
23:04 eric256 5 oclock..time to bolt
23:04 eric256 later
23:04 eric256 has left
23:05 wolverian wow, theory.pod looks nice
23:05 autrijus wolverian: it _is_ nice.
23:05 autrijus how to reconcile that with dynamism though, is part of what making my brain want to explode. :)
23:06 wolverian sure. it also makes me appreciate the separation of type and implementation declarations in Haskell
23:07 wolverian (although that's more generic than here)
23:07 Ikarus is now known as Ikarus[zleep]
23:08 wolverian I wonder if I'm the only one who prefers reading POD in vim over perldoc..
23:09 mugwump I have set my emacs to use a big font for POD headings :)
23:11 saorge_ has joined #perl6
23:12 wolverian I just like the colours :)
23:13 theorbtwo has joined #perl6
23:19 justatheory has joined #perl6
23:22 autrijus wolverian: I usually use pod2html :)
23:22 wolverian autrijus, that doesn't have colour, does it?
23:24 autrijus no, but it has variable sized fonts :)
23:24 autrijus (and hyperlinks)
23:25 autrijus stevan: dconway wants to know how "class F { method new { ... } }   class G is F {}" works
23:26 dolmen is there a "Best Practices for Darcs" document for the Perl6 project ?
23:26 autrijus dolmen: er, uhm, no, and to be honest, our darcs mirror is just a convenience device for people who does not wish to install svn/svk
23:27 autrijus and as such provides very little best practices for the mirror -- no changelogs, bad tagging, read onliness
23:27 autrijus onlyness
23:27 dolmen oh, I thought it was the other way: svk the mirror
23:27 saorge has quit IRC (Connection timed out)
23:27 * clkao grins
23:27 autrijus no, svn.openfoundry.org/pugs/ is the main
23:31 autrijus stevan: and in ruby, class methods like "def Person.blah" does affect the subclass in the usual C3 way.
23:31 autrijus er, I mean, regular-dispatch way.
23:31 autrijus (C3 is python.)
23:33 Juerd wolverian: You are not the only one.
23:35 autrijus stevan: I think parallel inheritance in the eClass chain does not look like avoidable
23:35 autrijus but maybe I'm missing something. hm.
23:35 wolverian Juerd, good to hear that.
23:42 justathe1ry has joined #perl6
23:48 svnbot6 r7569 | autrijus++ | * Checking in the "unadapted" version of "Larry was a mariner"
23:48 svnbot6 r7569 | autrijus++ |   to facilitate brainstorming and discussions.
23:49 evalbot_7568 has quit IRC (Remote closed the connection)
23:49 * autrijus proceeds to send allison a committer bit.
23:49 evalbot_7569 has joined #perl6
23:49 justatheory has quit IRC (Read error: 110 (Connection timed out))
23:49 joepurl has quit IRC (Read error: 110 (Connection timed out))
23:49 Juerd autrijus: You mean there are still people without? :)
23:49 autrijus Juerd: you may be surprised :)
23:49 autrijus for example, guido has one
23:49 autrijus but larry had not
23:50 autrijus there is something very ironic about this.
23:50 Juerd Is this the Guido I think it might be?
23:50 autrijus yup.
23:50 geoffb Guido?  Really?  Has he ever committed?
23:50 Juerd Good to have him on board.
23:50 autrijus no, it was during ingy's oscon talk
23:50 autrijus larry invited guido
23:50 autrijus so I sent invitation to them both
23:50 autrijus guido took it; larry did not.
23:50 autrijus hmmmm.
23:51 Juerd Why did Larry not take it?
23:51 Juerd Did he specify?
23:51 autrijus I have no idea. separation of concerns?
23:51 autrijus he mentioned during hackathon that he wishes to be somewhat distanced from day to day implementations, just so he can judge proposals fairly
23:51 Juerd Seems counterproductive to me
23:52 autrijus well, I'm not sure about that.
23:52 Juerd I find that people who have actually worked with Perl 6 have a better mental map of what is sane and what is not.
23:52 autrijus of @Larry, luqui and chromatic are doing great and shipping things bothways nicely.
23:53 Juerd And someone who uses pugs, should practically be a committer, because they will find bugs :)
23:54 Juerd Speaking of mental sanity, I think I should stop trying to understand tsa and his posts.
23:55 autrijus mm, "mugs of pugs bugs"
23:55 Juerd He does usually have some good point hidden inside lots of complex misassumptions :)
23:55 autrijus ...that tugs hugs and hugs rugs...
23:55 Juerd It just takes a lot of effort for me to find them
23:55 autrijus er I mean, tugs jugs...
23:56 * autrijus should clearly finish journaling and get some sleep.
23:56 Juerd wear ear plugs
23:56 autrijus mmm hlaghs
23:56 Juerd hmmm
23:57 Juerd pugs drugs.
23:57 Juerd *shrugs*
23:57 Juerd good nugs, eh, night
23:57 autrijus gugs nugs
23:57 geoffb night, Juerd
23:58 wolverian fu.. erm..
23:59 PerlJam autrijus: would you happen to know why I get an error when trying to svk sync the parrot sourcet tree?  I'm doing "svk sync //mirror/parrot -s 9463" and it's saying "HTTP Path Not Found: REPORT request failed on '/parrot/!svn/bc/0/trunk': path not found.
23:59 * geoffb starts yet another profiling run at $work, with yet more profiling hooks turned on, hoping that this time he will find the info needed to make the problem clear
23:59 justatheory has joined #perl6
23:59 Amnesiac has joined #perl6
23:59 PerlJam I'm not sure why it appears to be trying to retrieve what looks like version 0
23:59 autrijus PerlJam: you want $svk for that, but I think you shouldn't mirror all revisions in general; Robrt should have provided a repodump
23:59 autrijus I mean, #svk
23:59 Cryptic_K has joined #perl6

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

Perl 6 | Reference Documentation | Rakudo