The Return of the Journal : pugs.blogs.com/ | pugscode.org | pugs.kwiki.org | paste: paste.lisp.org/new/perl6 or sial.org/pbot/perl6
Set by GammaRay on 31 December 2005.
00:13 Bobby_D joined 00:14 Bobby_D left 00:32 frederico joined 00:35 Khisanth joined 00:39 TexHexx joined
TexHexx did you guys already know that lilo is corrupt? he is abusing donations and setting k-lines for fun 00:39
Juerd Why do people keep trying this? They know they'll be collectively ignored :) 00:40
Oh wait, this isn't ignoring.
00:40 FieldySnuts joined
Juerd Sorry; pretend I didn't say a thing. (Though ignore me not, please.) 00:40
TexHexx [01:22] <masf> you are a person with very doubtfull intensions mister Lewin 00:42
[01:23] <lilo> yours are quite clear and inappropriate
[01:23] <masf> stop your hobby psychology crap on me
[01:23] <lilo> I'm sorry, there's nothing I can do at this point
[01:23] <masf> there is nothing you _want_ to do
[01:23] <lilo> you've tied my hands
[01:23] *-psyBNC* Sun Jan 22 18:23:29 :User deb () got disconnected (from clarke.freenode.net) Reason: Closing Link: unixlovers.info (K-lined)
stop donating for Robert Lewin's hobby and fun! 00:43
00:43 Daga joined 00:44 FieldySnuts left, spb joined
TexHexx stop donating for Robert Lewin's hobby and fun! 00:44
hachi wait.. I'm on freenode? how did that happen 00:46
Alias_ wtf, spam-bots? 00:47
theorbtwo hachi: Um, this channel has always been on freenode.
00:47 dduncan joined
hachi I'm just being sarcastic 00:47
hey alias, is my threatnet bot still running?
Alias_ what's it called? :)
theorbtwo Sorry. My sarcasim-detector seems to be on the fritz lately.
Juerd Alias_: They're pathetic enough to do it manually.
hachi would have been kuiki-ed
where the hell did it go 00:48
Alias_ nope
hachi theorbtwo: irc doesn't have a way for me to send OOB sarcasm values
Alias_ You didn't put the cron-restart on it did you
I told you it would die from time to time
hachi I put the cron in
TexHexx stop donating for Robert Lewin's hobby and fun!
hachi heh 00:49
Juerd Who saw that one coming?
theorbtwo Thank you, Robert Lewin.
Juerd How the hell can one stop doing something they've never done, though?
dduncan so I'm now setting up my dev tools following the OS upgrade 00:50
hachi we can't stop here, this is bat country!
dduncan svk installed without a hitch
and I copied my .svk dir over from the old system
Juerd I don't like freenode and wouldn't donate. I'm here because channels are here :)
dduncan and issuing pulls just worked
there's an issue with ghc though
is it normal to have to modify my path on a new system for calling 'ghc' to work? 00:51
I think I need to do that now, but I don't recall having to do it the last time, back 9 or so months ago
Juerd dduncan: Depends on many things.
Mostly your definition of normal :) 00:52
hachi oh cute, hey alias... apparently this 'nohup' thing needs write access somewhere
Alias_ hmm
dduncan on my new X 10.4.4 system, the path is: /bin:/sbin:/usr/bin:/usr/sbin
Juerd nohup. Another tool I've never needed.
dduncan but no 'ghc' binary is in those places
hachi I just setsid()
dduncan rather it is in /usr/local/...
Juerd dduncan: That's a rather limited and ununixish path
wolverian wow, in java +, - etc. are built into the language syntax, so there is no way to type something "anything that supports + and -"
now, back to hell, thanks 00:53
dduncan so what's the best way to make calling 'ghc' just work?
Juerd wolverian: Java is a very awkward language.
wolverian Juerd, I'm finding that out now.
Juerd wolverian: It has very funny yet sad quirks
wolverian if I want static typing I'll just use Haskell. this is crazy
Juerd wolverian: It's said to be fully OO by its fanatics, yet it also has variables that aren't objects.
dduncan in any event, a clean call of Makefile.PL fails for not finding ghc; it expects 'ghc' to be in my path
wolverian (except now, since I _have_ to use Java. meh)
Juerd wolverian: The funniest thing, though, is that it has switch/case, but *only for numbers* 00:54
dduncan the Makefile.PL of Pugs that is
I can add that to my path, or put an alias in bin
wolverian Juerd, yeah. because that can be optimised for speed. heh.
Juerd wolverian: And who needs to dispatch based on strings, anyway :)
wolverian not humans! 00:55
Juerd I can't recall having used anything switch/case-like with numbers, since my Visual Basic time.
dduncan just looking at ghc manual now ...
00:55 spb left
Juerd And that was because win32api so often uses numeric values to indicate status... 00:55
Oh, $! == ENOSPC and stuff I do sometimes use in switchlike blocks. But it's rare. 00:56
Juerd doesn't often use string based switchlike thingies either, because hashes of coderefs are so nice.
But Java doesn't have that either.
wolverian all these <Foo<Bar>, Baz<P<T>>> are very much hurting readability
Juerd What's that? 00:57
wolverian generics
class Foo<T> { T bar () { return new T() } }
Juerd In general, I find that bracketing operators hurt readability, and should be used with care only.
wolverian new Foo<Integer>().bar(); // a funny way to construct an Integer 00:58
dduncan I'll just add /usr/local/bin to my path; that should work
wolverian Juerd, I much prefer perl6's []
Juerd, class Foo[T] { method bar (--> T) { T.new } }
er, s/\[T\]/[::T]/ 00:59
Juerd wolverian: I like [] better than <> too
wolverian I even like the ::T - it visually shows what is a type
i.e. exactly why we have sigils :)
Juerd Yes, sigils rock.
Though I'm not pleased with how the new sigils work.
Especially long lived twigils. 01:00
wolverian hm?
ah, the scope issue
theorbtwo That's why MS uses Hungarian notation... but MS overdoes it.
Juerd I love them for short scopes.
theorbtwo: And does it the wrong way.
wolverian anyway, now I can't declare this class as generic against numbers, but only a particular number type. 01:01
Juerd I love "cbFileContents" kind of hungarian notation: c == count, b == bytes, cb == size, expressed in bytes.
wolverian even though that is in no way required - it's just that Java sucks.
Juerd I hate "numFileSize" kind of hungarian notation: I can very well decide that it's a number myself.
And whether something is floating point or integer, I don't care. A compiler can tell me when I guessed wrong. 01:02
I care more about the unit of the number.
Are we expressing "duration" in seconds (unixlike) or in days (windowslike)? 01:03
Incidentally, I also hate it when people write multiplications the wrong way around
theorbtwo I hate lp. When's the last time you used a short pointer? Can't we just shorten lp to p?
Juerd When seeing $duration = 60 * 24, I will assume it means 60 days, expressed in hours. 01:04
When seeing $duration = 24 * 60, I will asume it means 1 day, expressed in minutes.
That weird guy Joel Spolsky wrote a good article on hungarian notation once 01:05
theorbtwo Similarly, lpzwstr. You end up with 52 lpzwstr variables, and spend more time thinking and writing lpzwstr then anything useful.
Juerd Or it was part of an article.
theorbtwo The joel-on-software guy?
Juerd Yea
Oh, I remember. It was an article I generally disagreed on, but had a good explanation of how hungarian notation was meant embedded in it. 01:06
www.joelonsoftware.com/articles/Wrong.html
"But then something kind of wrong happened. 01:07
The dark side took over Hungarian Notation."
Call me sensationalist, but I like that writing style.
mlh_ he's a very good writer 01:08
Juerd Not everyone agrees, and I can see why 01:09
But I like it
I just often disagree with what he writes :) 01:10
Khisanth have you read his books as well? 01:12
Juerd No
01:20 hcarty joined
dduncan path change done, 'make' is working on the clean pugs 01:23
Juerd Battery 1: discharging, 0% 01:32
It used to indicate time left too.
But apparently it isn't so sure anymore.
... 01:35
Still there :)
01:56 _maydayjay_ joined 01:59 luqui joined 02:07 beppu_ joined 02:09 trym_ joined
dduncan make successful, now running first smoke of pugs under my new OS 02:16
of r8776
first few test items appear to be completing in about the right amount of time
buu trym_: No you aren't. 02:19
trym_ im now doubting myself, thanks to you. all my self confidence is gone
02:20 stevan_ joined 02:24 _maydayjay_ joined 03:13 stevan_ joined 03:18 hcarty left 03:29 feng123 joined
meppl guten morgen 03:50
03:57 xern joined 04:19 revdiablo joined
dduncan smoke of 8776 on darwin/haskell done 04:38
05:01 Amnesiac joined
audreyt ingy: perlcabal.org/~autrijus/tmp/kwid.pl 05:19
# pure perl5 implementation of Text.Parser.Kwid
should be fast and general-purpose enough
ingy audreyt++ 05:20
05:20 _maydayjay_ joined 06:31 Daga left 06:51 xinming joined 06:55 GeJ joined 07:05 elmex joined 07:19 iblechbot joined 07:45 Alias_ joined, nothingmuch joined
nothingmuch hola 07:45
GeJ hola nm 07:51
nothingmuch waits for someone to ask why he's already back 07:53
Alias_ You're back? 07:54
nothingmuch aye
no IRC in the outdoors
GeJ supposed to do 5 days of hiking, no? 07:55
nothingmuch aye
first day was wonderful
good pace
nice food
good sleep
rain didn't bug us
then we met some kid on the trail, who was all "i am an expert"
he said we should definately not go on the road but stay with the stream despite there being no trail there 07:56
we had no clue
turns out this is plausible advice in the summer, when the stream is dry
after 5 hours of skipping rocks, swinging from trees, drying to pass trough vines and branches at ~1km an hour
we realized there's no way in the world we're actually going to finish this bit of trail 07:57
and there's no where to raise a tent
GeJ filthy hobbitses, they lied to us
nothingmuch so we started walking in the water
which is like, a big mistake generally
we made it out of there
but our feet were dead
i still can't walk on my toes from all the blisters 07:58
07:59 dduncan left
GeJ ouch 08:00
nothingmuch ayew
nevermind
we'll do the regular trail again someday
08:15 pdcawley joined 08:41 \xe6var joined 09:00 bsb joined 09:08 metaperl joined
metaperl Juerd: ping? 09:09
anyone setup an svn repo on feather.perl6.nl? 09:21
09:25 iblechbot joined
azuroth tried svk, metaperl? 09:29
\xe6var you can't host repositories with svk? 09:33
audreyt \xe6var: svk is just a svn client :) 09:35
(and a p4 client and a cvs client)
Debolaz A lousy cvs client though. :) 09:38
audreyt yup
09:40 Arathorn joined 09:51 kane_ joined 09:53 arcady joined 10:02 kane_ joined
metaperl azuroth: no, i have not tried svk 10:03
azuroth oh wait. set up an svn repo, as in host one? or just ...connect to one? 10:06
metaperl I want to setup one on feather
i've gotta get something to drink
azuroth ahh, sorry. I thought you might've been talking about hacking on the pugs repository from feather 10:07
10:09 G2 joined
metaperl oh no 10:10
10:13 rantanplan_ joined 10:45 DaGo joined 10:50 fabinnn joined 10:53 fabinnn left
Juerd metaperl: pong 11:20
metaperl Juerd: I was trying to do an svn import from my local box to feather... 11:21
is that possible?
11:35 r0nny joined 12:03 drbean joined 12:24 iblechbot joined 12:27 Bit-Man joined 12:31 lypanov joined 12:43 rodi joined 12:51 nothingmuch joined 12:57 penk joined 13:03 chris2 joined 13:14 sahadev joined 13:25 wilx joined 13:31 dada joined 13:32 Limbic_Region joined 13:33 kolibrie joined 13:45 sysfault joined, sysfault left 14:25 saper joined 14:32 Qiang joined 14:44 G2 left 15:05 binary42 joined 15:08 vel__ joined 15:09 Eimi joined 15:14 Amnesiac joined
Juerd rafl: Any word from your friend who shipped the package? 15:26
metaperl: I don't know. Why would it not be? 15:27
rafl Juerd: I guess he'll be here in two hours.
metaperl Juerd: the svn import was rejected
Juerd metaperl: What has that to do with feather? 15:29
rafl: Okay
pdcawley Juerd: re feather; might as well let my account lapse. 15:31
I'm simply not using it. 15:32
Juerd pdcawley: The question was, but many people haven't noticed that, *why* the box is used less :) 15:33
I'm not looking for people to give up their accounts :)
pdcawley In my case, mostly because I've stopped any active work with parrot and pugs; I'm making a living doing Rails programming at the moment -- perl 6 involvement limited to hanging on irc and the mailing lists and writing the summaries. 15:34
Juerd I was just wondering if something was wrong; there doesn't seem to be
pdcawley: Okay, but also not a feather sourced reason
pdcawley Indeed.
Juerd Thanks 15:35
theorbtwo I think there's just less perl6 development going on, or possibly that more people are just develing on their own boxes.
Juerd theorbtwo: At least half of the responses I got so far can be abstracted as lack of tuits.
theorbtwo I never much saw the value in sshing somewhere else when I've got a perfectly servicable box under my desk.
Juerd Perl people fare better in commercial life now than half a year ago, apparently. 15:36
theorbtwo: I understand that; feather was mostly meant for people without such boxes :)
Though many people do find it useful to have a central place for Perl 6 development, and like that svk is so fast when used locally on feather.
theorbtwo Hm. 15:37
15:38 hexmode joined
\xe6var pdcawley: you write the p6l list summaries? 15:38
pdcawley Me and Matt Fowles, yes.
\xe6var I loved that comment about the // operator 15:39
pdcawley Umm... which comment was that?
\xe6var / or err, that it should be called the Jagger-Richards operator, because you can't always get what you want, but you might find that you get what you need 15:40
$x = shift err 'oh noes';
pdcawley I don't think that one was mine. 15:41
Sadly.
\xe6var ;)
15:41 chris2 joined
Juerd Hm, Matt actually had a funny joke in a summary? :) 15:44
gaal audreyt: ping 15:55
16:04 putter joined, stevan_ is now known as stevan
stevan Yo putter! 16:04
(morning|afternoon|evening|middle_of_the_night) everyone :) 16:05
putter audreyt: Anarchaia chneukirchen.org/anarchaia/archive/...01/17.html has an entry "As seen on #perl6ā€¦, a very good description of Perl 6, IMO.", linking to pugs.blogs.com/pugs/2006/01/as_seen_on_perl.html . So there _is_ interest... :)
hi stevan :) 16:06
hey stevan, a question,
stevan hey putter, an answer (maybe)
putter lol
16:06 DaGo joined
putter is there any specced syntax for the bottom-up bits of Grammars? Aside from the minimally specced rxmumble:<w> 16:07
ie,
stevan putter: not that I know of, that is still very much in the hand-waving stage at this point 16:08
putter grammars are (oh so) happily hybrid top-down + bottom-up engines,
ah
stevan although it is not an area i have much interest in so I may be wrong
putter I dont usually read p6l/c, and google wasnt turning much up, but I wondered if something concrete was buried in there somewhere. 16:09
stevan putter: you never know, but I have not heard about it
putter ok, thanks :) 16:10
stevan putter: pdcawley is maybe a good person to ask, he was around about a half hour ago
putter pdcawley: ping?
pdcawley pong
Um... nothing ringing any bells here; luqui/Luke Palmer probably knows.
seen luqui 16:11
jabbot pdcawley: luqui was seen 6 days 1 hours 49 minutes 52 seconds ago
stevan luqui is back in classes IIRC
putter ok, thanks!
stevan so he will probably not be around much
putter: you could always ask the question on p6l :)
putter could do. 16:12
gaal seen audreyt
jabbot gaal: audreyt was seen 6 hours 34 minutes 33 seconds ago
putter stevan: have you noticed... anything... odd about the interaction of inheritance and multimethods? Reason for asking is the rules stuff feels similar. One wants to say rule expr infix(:left(1000)):<|> {...}, but it's common to have say exprA and exprB which mostly use the same operators. But the only mechanism 16:18
we have for reuse is package's kids, so one goes down a path of rule exprA {{ExprA::mumble()}} grammar ExprA is ExprCommon {...} 16:20
stevan putter: I am not sure what odd interaction you mean. 16:21
Juerd upgrades feather
Let me know if anything broke
stevan putter: my experience is that most object systems are either focused on one or the other (generic functions vs. message passing) 16:22
putter so now one is dealing, instead of with a flat hemogenous namespace, instead with a grammar which is a bag of nested other grammars and roles, top-down rules, and other stuff. Which the current inheritance doesnt seem well set up to support
Thoughts?
Juerd Leeching at 6 MB/s. I love this connection
stevan putter: my knowledge of grammers is limited,.. but ...
I would prefer multi-methods to not be inside namespaces 16:23
because they really should be top-level things
putting them in a namespace is only useful in the sense that they are modularized
but in terms of their dispatching,.. i can see little use for it
but then again,.. since a multi name can be duplicated (I mean thats what they are after all), then it almost doesnt make any sense to put them into a namespace 16:24
multi Foo::bar and multi Bar::bar are not related in anyway
multi-methods seem more like you standard functional language "pattern matching" 16:25
stevan wonders if putter is furiously typing another long response :)
stevan encourages putter to hit the enter key every once in a while
lypanov lol
putter re "not related in any way", err, but calling bar() will get you one or the other (or perhaps another), depending on the relation of the package, which contains the call, to Foo and Bar. no? 16:26
:)
stevan putter: yes, its all related to the package 16:27
s/related to/related by/
but this IMO, impedes the usefulness of multi-methods
the CLOS/Ada95/Dylan generic function approach is really nice
16:27 marmic joined 16:28 bsb joined
stevan generic functions are essentially a generalization of message passing 16:28
and so can be really powerful,
putter so packaged multis are potentially useful. Foo::bar {... default...} pkg Foo { pkg Hee { multi bar (); ...}}
stevan but when constrainted by namespaces, can be less so
putter 's least favorite thing about CLOS (one of) is the globalness of multis 16:29
stevan putter: I am not saying they are not useful, only that they not as useful as they could be
putter a question
stevan putter: well the LISP package system is very different from Perls
and unreleated to CLOS
putter iniside Hee abouve, is Hee::bar independent of Foo::bar, or do their cases combine?
stevan AFAIK they are independant 16:30
unless Hee.isa(Foo)
in which case the method dispatching will find the most appropriate one
based on the other args supplied
or based on the "distance" of the invocant 16:31
putter both could be useful. but we dont really currently have a way of saying "I want this multi to inherit these cases from that multi, redefine this case, and undef that case, and ...". We dont have an algebra on multi cases.
16:31 nnunley joined
stevan putter: I am not sure about the algebra part, I think luqui started something with Class::Mulitmethods::Pure 16:31
but I am not sure how far he got
and if he is still exploring it 16:32
pdcawley boggles at the 'bless' spat in p6l...
16:32 G2 joined
stevan pdcawley: sorry that was my fault, and not at all what I intended 16:32
putter It was, err, curious, wasnt it. Is it still going on?
stevan putter: but I think the "overriding some, inheriting some" part is going to be tricky
pdcawley grins, I'm just glad I'm not writing the summary this week.
stevan LOL
pdcawley robkinyon vs. the world! 16:33
stevan my intention with that thread was not that we should get rid of bless, but that we should rectify its inconsistency and define it more completly
pdcawley Indeed.
putter are roles defined recursively? role A{role B{}} role C does role A { role B? {}} ?
\xe6var why have it at all?
pdcawley seen robkinyon? 16:34
jabbot pdcawley: robkinyon was seen 2 days 19 hours 36 minutes 38 seconds ago
stevan pdcawley: robkinyon is actually my coworker :)
pdcawley Heh.
stevan :)
the man is nuts,... but thats part of the reason we hired him :)
putter so that's 3 people for NE P6 Users Group...:)
stevan and really its my fault,.. I hooked him up with some Ruby books and have been preaching OO/metamodel stuff in his ear for a few months 16:35
pdcawley It was when he started claiming that *real* OO languages don't have references that I started wondering when he'd turned into Humpty Dumpty from Alice's Adventures Through The Looking Glass
putter assuming coworker == geographically colocated...
stevan putter: nope, robkinyon is in the mid-west.. we are a virtual company
putter ah well
stevan pdcawley: IIRC all those ruby methodmakers are manipulating the underlying metamodel right? 16:36
pdcawley Um... I've still not read the art of the metaobject protocol... 16:37
16:37 rodi joined
putter stevan: or simply evaling 16:37
pdcawley It depends on the methodmaker...
stevan true
pdcawley Some are adding hooks, some are evalling, some are including modules.
stevan well they /could/ be done by messing with the metamodel
pdcawley I'm not entirely sure how monkeyable with the Ruby metamodel is.
stevan pdcawley: I am pretty sure you can add methods to a class dynamically, and I know you can get at the metaclass without too much trouble 16:38
putter yes
pdcawley Oh, yes, they're definitely adding class methods dynamically.
putter (there was ambiguity whether you meant "manipulating the ...mm" as "use mm" or "change mm") 16:39
"use mm" common (though less than it might be because eval works so well). "change mm"... I can't immediately think of a case.
16:40 elmex joined
stevan putter: manipulate includes "use", "change" as well as plain old "look at" (aka introspection) 16:40
putter "look at" >> "use" >> "change" (ordered by frequency of use)
stevan changing the mm is dark magic in any language though,.. and not as common 16:41
yes, exactly
I am not sure how possible it is to subclass Class in ruby though
putter re dark magic, not always, especially prototype-based systems with "dispatcher is just a normal method".
stevan but I suppose adding singlton methods to your class's metaclass would accomplish the same thing since it creates the eigenclass 16:42
putter: yes, but prototype systems dont have a metaclass so much
and are much more straightforward in their structure
putter oh, before I forget, is role inheritance recursive? 16:44
ie, with nested roles? 16:45
stevan putter: uhm
not sure what you mean
code example?
putter ole A{role B{}} role C does role A { role B? {}} ?
stevan ah
hmm
I dunno,.. you mean inherit subroles?
I am not sure 16:46
thats a good question actually
not even really subroles,.. but sub-namespaces
because B is realy A::B::*
s/B::*/B/
\xe6var Odin-: oi 16:47
Odin- \xe6var: Ojjjj!
putter yeah. which makes sense really. role C does role A { role B {}} === role C does A; role C::B does role A::B; 16:48
stevan hmm
16:49 Amnesiac joined
stevan you might want to p6l that one 16:49
putter though that gets fuzzier if its modules or packages which are embedded
stevan it is as intuitive as it is unintuitive 16:50
so it is hard to say
there is also a distinction between role A { my role B {}} and role A { role B {}} 16:51
putter re multimethod "cases" (I forget what the jargon is), I ran into it most recently doing the "try to assemble a p6 prelude out of pieces" thing. where I really wanted to be able to say, on a "case" by "case" basis (no pun intended) what "cases" made up a particular multi. right now, all we have is "merge in all cases (with flakey first-def-wins overwriting) and "blow the whole thing away". 16:52
ooh, good point
stevan why did you want to specify the cases for a multi? 16:53
just dont include them if you dont want them
nothingmuch hola stevan
hola putter
stevan is a little confused re: the context
heya nothingmuch :)
putter: are you thinking something like Haskell? 16:56
the where "clause" ?
or is it "case"
stevan haskell-fu is very weak
16:58 nnunley_ joined 17:03 nnunley_ is now known as recover 17:04 recover is now known as nnunley 17:16 lampus_ joined 17:27 bsb left 17:41 putter joined
putter hi guys. sorry. lots of nifty network analysis tools... and nothing to say "the hub powercord was knocked out of the wall". sigh. 17:42
stevan: re why include if you dont want, well, in part, because we dont currently have a A does(:exceptfor(...)) B. best you can currently do is create role Bexceptions and do A does B does Bexceptions, thus causing conflicts and dropping the parts you dont want. but that's still on the basis of names, not 17:48
signitures. there is no way at present to have a role which defines say multi foo(default case), and multi foo(a specific case), and only get one of them. 17:49
17:49 justatheory joined
putter which basically means to assemble a multi, it has to be done in one stage (since you cant undo decisions made by an intermediate stage), operating on one "case" per role (which just sucks). 17:52
It looks like the following never reached the net...
so what does that make, 3 p6l posts? is/does on roles/classes with embedded pkg/mod/rol/cls; multi "cases" as first-class objects and multis as bags of "cases"; and p6 syntax for the operator precedence parts of Grammars. sigh.
re ruby Classes, I believe one can Class2 is Class, fiddle with Class2's methods, and Int2 = Class2.new(), etc. 17:53
the reason for the interest in p6 syntax for Grammar{}s is all(?) existing rules engines have hardcoded the volumous rules stuff. but except for a tiny tiny core, it all can (should?) be defined in p6. | & <actions> term/letter, most everything. after all, these can be lexically overridden in user code. but without a specced syntax, noone has tried...
hi nothingmuch 17:54
stevan putter: I think that is how multis are looked at
bags of variants
and I think they should have a .meta too 17:55
which allows access to the @variants
putter that would be nifty
stevan putter: you should sketch out a wishlist MOP for multis
putter :) 17:56
for a couple of years, I almost usenet-posted a "Dear Santa, I want a programming language which..."
stevan LOL 17:57
now is your chance,..just s/Santa/@Larry/
putter lol :)
17:59 justathe1ry joined
rafl Juerd: My flatmate is an asshole. 18:01
putter hmm, so one can temp @variant[1] = undef; ... Can one temp splice(@variant,2,2) sigh, "2" used instead of pred(2) because my pred(2) key is dying ;) 18:02
lypanov rafl: mine is too
rafl: he leaves shit all over the place
and then expects me to clean up!
rafl Juerd: He "forgot" to send it... twit!
Juerd rafl: Oh!
lypanov notes he lives alone
rafl Juerd: I'll send it tomorrow. I'm really sorry for that!
lypanov wonders if all flatmates stem from the same genetic root
Juerd rafl: It's okay. The end result is great, yet unexpected -- I get to buy a new camera AND have my photos!
rafl Juerd: Why will you buy a new one? 18:03
Juerd rafl: I more or less considered the old one lost, and started looking for a nice replacement. Wanted a very compact camera for a while, ixus-like.
And today I more or less decided to just get one. My mind is set to it. 18:04
rafl Juerd: That's.. decadent.
Juerd I guess so.
rafl Juerd: I can recommend an IXUS 50. :-)
robkinyon seen pdcawley 18:05
jabbot robkinyon: pdcawley was seen 1 hours 26 minutes 15 seconds ago
Juerd I'm currently in great doubt. Panasonic FX9 and Canon IXUS 55 are the two contestants.
rafl diff ixus50 ixus55
robkinyon pdcawley: Maybe I went a little overboard, but there is a definite meme issue when dealing with how references and OO are perceived of in P5
Juerd rafl: 2.5" screen rather than 2.0", and a few minor fixes in the casing 18:06
rafl: In image quality, flash, etcetera, it's the same.
18:06 bernhard joined
rafl Juerd: Does the 55 still have a "seeker" or whatever this is called? 18:06
Juerd It does. View finder.
I don't see what use one is. I never use it with digital cameras. 18:07
BBL # leaving for diner
dinner
Hm. diner or dinner?
afk
putter 18:08
-++
webmind the view finder on the ixus is actually rather crap imho
and I don't use it.. but the concept is nice
rafl Juerd: Well. Considered you will buy a new one and we will meet in a month, shall I really send your old one tomorrow or is it enough to bring it with me next month?
Juerd rafl: Hm - could you send the CF? There are some (old) portraits of my dad on it, and shortly after we took those, the originals got coffee spilled on them. 18:10
rafl: The camera itself, indeed, doesn't matter much in terms of speed. I'm going to sell it when I have it, but that can easily wait a month. 18:11
afk
theorbtwo dinner: The last major meal of the day. Diner: a type of resturant -- originally designed to be built off-site, and shipped to location as the back of a truck.
rafl Juerd: So should I send the CF or shall I upload your pictures somewhere? 18:12
theorbtwo (But now generally refers to any sort of resturant with the type of food served in that kind of resturant.
Odin- theorbtwo: Don't you just love how the language with the most words never seems able to have them adequately different? 18:13
18:21 rantanplan_ joined 18:22 justatheory joined
nnunley 2/names 18:23
Ugh.
putter stevan, pdcawley: thanks for your help 18:28
&
18:36 rantanplan_ joined 18:39 nothingmuch joined 18:47 typester joined 18:50 marmic joined 19:02 rantanplan_ joined
Juerd rafl: Oh, if you have means of reading the data and don't mind uploading them, please put them on feather 19:08
19:32 justatheory joined 19:48 Khisanth joined
rafl Juerd: translate -i "if you have means of" 19:58
Juerd rafl: If you can do it, i.e. have the bandwidth 20:04
20:04 Amnesiac_ joined
rafl Juerd: I can do that over night. Does your cam use normal SD cards? 20:10
Juerd No, CF 20:11
CompactFlash
And it can be used via USB with gphoto2
rafl Juerd: I don't have a CF reader.. 20:16
Juerd: So I'll send the card tomorrow, OK? 20:18
Juerd ok 20:19
rafl Juerd: preconditioned the new bass guitar I ordered last week doesn't arrive before. ;-) 20:21
Juerd :P 20:27
20:27 Lartuv joined
gaal I'm just looking at the online Contents for ATTaPL, and I notice it has a chapter on a module system. This, together with a footnote in TaPL saying modules in OCaml are very powerful and more useful than most common "modularity" units in other languages, makes me think I should order a copy of the book :-) 20:34
stevan gaal: IIRC OCaml's module system is based on SMLs module system which is very powerful 20:37
you might find some resources about both online too
gaal: the coolest part about them (IMO anyway) is the Functors, which basically bring polymorphism to them 20:38
gaal has this got anythign to do with what functor means in haskell? 20:39
stevan I dont know haskell functors so I cant say 20:40
gaal fmap :: (a -> b) -> f a -> f b
with two laws 20:41
fmap id == id
fmap (f . g) == fmap f . fmap g
stevan hmm,.. no not really releated
gaal the idea being to generalize map. 20:42
so, give me a clue/pointer to .*ml functors? 20:43
stevan pulls down the ML book and looks ... 20:46
20:47 dduncan joined
stevan Okay the ML module system has 3 basic components 20:49
(BTW - I am mostly quoting from the book,.. so if I am wrong,.. so is the book :)
3 parts == structure, signature, functor
20:50 mayall joined
stevan they are conceptually similar to the things in the core language 20:50
20:50 frederico joined
stevan structure == value 20:50
signature == type
functor == function
a functor is a parametric structure 20:51
theorbtwo So what's the difference between a functor and a... ah, thank you.
stevan a functor can take a signature as a parameter, and as long as the structure conforms to that signature, its cool
so you can get module polymorphism that way
BTW - structure is basically a module 20:52
not a C struct
20:52 Amnesiac_ is now known as Amnesiac
gaal OK 20:52
stevan from the book: "If structure B depends upon structure A, and we wish to replace A by another structure 'A, we could edit and recompile the program. That is fine if A is obsolete. 20:54
But if A and 'A are both useful, such as structures for floating point arith in diff precisions
ML lets us declare B to take a structure as a paramter. We can then invoke B(A) and B('A), possibly at the same time. 20:55
</ end_plagarism >
however, I am not sure about OCaml, because ML does not have OO it might be different 20:56
theorbtwo That doesn't sound much different from, say, C++ templates.
You can pass types to functions-that-return-types, and get out types. 20:57
stevan yes, I think it is conceptually very similar
except for the OO part, because ML has no OO :) 20:58
gaal OCaml does ;-)
stevan there was a paper not long ago about how you can "do" OO with ML using the module system
which does not suprise me 20:59
20:59 Shachaf joined
stevan you have the polymorphism, and structures can "hide" things so you have some kind of encapsulation, and I suppose inheritance could be faked in some way 20:59
I dont recall how they did it though 21:00
gaal TaPL explains how to do it in \-calc...
21:02 Amnesiac_ joined
gaal well, in the mini lang they create there, which does have records 21:02
for every class myClass you create a myClassRep structure 21:05
and the class is created with a function from myClassRep to myClass 21:06
21:06 KingDiamond joined
gaal that also lets you have super 21:06
the constructor is () -> myClass 21:07
() -> a is a useful trick :)
21:13 lypanov left 21:14 lampus_ is now known as lampus 21:16 Limbic_Region joined 21:19 Amnesiac_ is now known as Amnesiac 21:34 KingDiamond joined 21:39 mayall_ joined 22:04 SamB joined 22:06 vel__ left
Qiang ping rafl 22:11
rafl Qiang: pong 22:13
Qiang hey, rafl . mind me asking you few question on creating debian package?
rafl Qiang: Go ahead. 22:14
Qiang k. i have this package requires libstdc++2.10-glibc2.2, and looks like sarge doesn't have it by default.
22:14 qwacky joined
Qiang now i don't know if it's worth it to put this package as dependency or just a notes to user that they have to install libstdc++2.10-glibc2.2 22:15
rafl Qiang: It's not worth upgrading libc.
Qiang: Get the source package of your app and compile the .deb against sarge.
Qiang: This works for all cases where the build-dependencies are available in sarge. 22:16
Qiang yeah. i build this one on my debian unstable, if i buid it for stable, there maybe chance it won't work for unstable.. 22:17
i am just started to making debian package for our workplace.
rafl That's the nature of Debian package and the reason why Debian provides three branches.
Qiang: If your're workplace uses more than one branch you will most likly need to recompile the packages for each of them. 22:18
Qiang: But there's pbuilder that will let you create a toolchain for a given branch and compile stuff inside.
Qiang hm. okay. i just didn't realize it .. :0
our build is pretty simple.. just use dpkg --build 22:19
with the control and postinst file .. 22:20
rafl That's.. dirty!
Qiang i wouldn't know. guess as long as the pkg work..
rafl It's much harder to compile a package for multiple branches if you don't have a proper source package. 22:21
Qiang yeah. i am sure i barely touched it.. 22:22
when you say 'it's not worth upgrading libc" , why is that? 22:23
rafl That can cause lots of problems during upgrades for example.
Qiang i was just thinking make the libc dependency is problematic.. as user may have newer libc installed in the future. how to test that and how to make sure the newer libc work for our pkg.. 22:24
looks like i better make the package for stable too. maybe it will work for unstable. ;-) 22:26
rafl The dependencies of Debian packages are usually on a minimum version of a package.
22:27 justatheory joined
Qiang thanks for the info.. rafl. 22:28
rafl Qiang: np 22:36
22:37 Limbic_Region joined 22:42 drbean joined 22:51 Kattana joined 22:56 mayall_ left 23:13 wilx joined 23:20 putter joined
putter fyi, audreyt has a new blog entry up :) 23:20
wolverian new? that's old :) 23:22
putter stevan: which coincidentally touches briefly on this morning's conversation. not much light, but some more search words for p6l googling...
wolverian: 2006.01.24? that's tomorrow ;)
(and the end of the longest inter-blog gap since the blog move:) 23:23
wolverian hm, true, I read it yesterday (23.) :) 23:24
putter :) 23:25
23:37 wilx joined
putter & 23:50