Pugs t-shirts www.cafepress.com/pugscode | Pugs 6.2.9 released | pugscode.org | pugs.kwiki.org | paste: sial.org/pbot/perl6 | www.geeksunite.net Set by stevan on 15 August 2005. |
|||
QtPlatypus | Is Page 7 of the state of the onion supposed to be the same as page one? | 04:30 | |
04:44
khisanth_ is now known as Khisanth
|
|||
geoffb | netflix++ # Never stand for another cliffhanger | 05:13 | |
chocolate++ # While I'm giving out karma . . . . | 05:24 | ||
autrijus | rehi | 06:18 | |
this Takahashi method is giving me much trouble | |||
geoffb | hi, autrijus | ||
autrijus | turns out it really wants to be boil down to six 5-minute chunks | 06:19 | |
each only deliver _one_ message | |||
sofar: | |||
Perl is ergonomic / CPAN is versatile | |||
Perl 6 is powerful / Pugs is expansive | |||
People are enjoyable / Plans are for real | |||
not sure "enjoyable" is the right word | |||
anyway, the idea is to style each of 6 as a lightning talk | |||
obra | "Takahashi method"? | 06:20 | |
autrijus | with a few (3-5) points each to support it | ||
obra: www.rubycolor.org/takahashi/thinkin.../img0.html | |||
also the cpan module | |||
dduncan | what is a Takahashi method? | ||
autrijus | Acme::Takahashi::Method | ||
dduncan | the only Takahashi I know is a famous manga artist | ||
obra | It's a pity there isn't a good english-language writeup ;) | 06:21 | |
autrijus | obra: "big letters zoomed to extreme" | 06:22 | |
each slide only carry max 1 sentence | |||
dduncan | yes indeed | ||
autrijus | ideal for brainwashing | ||
obra | Got It | ||
Makes sense. | |||
Live demos are better. | 06:23 | ||
dduncan | as I recall, aren't there a good half million Chinese characters, where each is a sentence of its own, or a place name? | ||
autrijus | not much chance for 30min talk sadly | ||
obra | Japanese examples don't teach westerners well. | ||
autrijus | dduncan: no, each is a "word" | ||
dduncan | yes | ||
autrijus | problem with live demo is it's bound to fail ;) | ||
dduncan | how un-fortunate | 06:24 | |
obra | :P | ||
geoffb 's favorite case of that (not witnessed in person, sadly): Apparently Oracle, when trying to explain how using network computers tied back to massive backend servers over the net would result in vastly higher uptime than distributed PCs, did a live demo -- in which the network failed, killing all the NCs | 06:25 | ||
dduncan | so its not just Bill Gates demos that have spectacular failures | 06:27 | |
or at least that one with a hardware demo | |||
obra | Demos Fail | ||
dduncan | yes indeed | 06:28 | |
obra | Compilers Don't. | ||
Catchphrases stick in your mind. | |||
dduncan | which is why, a demoer has "another plan" | ||
geoffb | I used to work with Hasso Plattner, the programmer amongst the founders of SAP -- he was famous for walking into any room with a cool new thing and making it fail by his mere presence. He didn't even hold it against the engineers -- he knew it was his fault. | ||
obra | Takahashi Method is difficult. | ||
gaal | morning. | 06:29 | |
dduncan | morning | ||
geoffb | (That was not an attempted name-drop, BTW, just to point out that seemingly all obscenely rich founders of software companies have that destructive aura thing going_ | ||
morning, gaal, dduncan | 06:30 | ||
dduncan | I hope that doesn't happen to me | ||
QtPlatypus | geoffb: Its like the oppisite of the enigear effect. Intermitent faults self rectifiy in the presence of the people who know how to fix them. | ||
geoffb | NODNODNOD | ||
Amazing how that works | |||
QtPlatypus | And as soon as they are off sight it goes back to not working. | 06:31 | |
gaal | seen iblech | ||
geoffb | I get that whenever I finally decide go to the doctor for something low-level but annoying | 06:32 | |
obra | autrijus: I feel like "people are enjoyable" should become "people are the audience" | ||
geoffb | gaal, iblech is committing but not online of late, sadly | ||
obra | "coding is about people" | ||
geoffb | If he's young enough, it may be school year desires to get sleep and finish homework . . . . | 06:33 | |
dduncan | and as one of my college instructors often said, "assembly is fun" | ||
autrijus | obra: yes, that's close, but I want one word | ||
geoffb | dduncan, oh yeah | ||
gaal | geoffb: right, forgot that for a bit | ||
obra | people are key? it's about people? e | 06:34 | |
autrijus | People are our raison dāĆŖtre ? | ||
obra | what's the talk part actually saying? | ||
autrijus | it's introducing the social aspects. | 06:35 | |
@Larry, lambdacamels, community dynamics | |||
gaal | we X for people? | ||
geoffb | People are paramount? | ||
obra | code is speech / pugs is a discussion ? | ||
gaal | Perl is for People? | ||
geoffb | Perl: Consensual Insanity | 06:36 | |
autrijus | Perl 6 is powerful | ||
Pugs is expansive | |||
People are insane | |||
Plans are for real | |||
I like this | |||
obra | s/insane/crazy/? | 06:37 | |
autrijus | sure | ||
dduncan | perl-people | ||
obra | since crazy can have more positive aspects. | ||
gaal | bizarre? | ||
obra | what do you mean by "expanisve"? | ||
autrijus | is there someting crazier than crazy? | ||
geoffb | Along which axis? | ||
obra | zany? implies whimsy. | ||
dduncan | yes, sanity | ||
gaal | psychotic, but we don't wanna go there i think. | 06:38 | |
geoffb | LOL | ||
autrijus | obra: "open, liberal, accepting, multiple fronts, anarchistic, rich" | ||
geoffb | .oO(be vewwy vewwy quiet, the children are sleeping . . .) |
||
gaal | you can zoom through that list, no? | ||
autrijus | rich as in lots of angles to jump in | ||
gaal: yes | |||
GeJ | good morning gentlemen | ||
obra | people are alive | ||
autrijus | good! | 06:39 | |
dduncan | good morning gentle one | ||
autrijus | obra++ # alive is the ultimate insanity | ||
geoffb | morning, GeJ | ||
GeJ | wacky? | ||
autrijus | okay, alive it is. | ||
obra | when do you give this talk? | ||
autrijus | 24 hours from now | ||
obra | in talinn? | ||
dduncan | thats what your journal says | ||
geoffb | Wow, autrijus is ahead of schedule then | ||
autrijus | yeah | ||
www.galois.com/cufp/ | 06:40 | ||
obra | only $2000 to fly in for it | 06:41 | |
but now, &sleep | 06:42 | ||
geoffb | well, at least he's lurking then . . . | ||
obra | good luck with the talk, autrijus | ||
geoffb | night, obra | ||
autrijus | thanks! | ||
"C is for Comprehensive" | 06:43 | ||
somehow doesn't ring as exciting as "P is for Practical" | |||
geoffb | agreed | ||
gaal | <cool compelling creative crackin' ...> | 06:44 | |
geoffb | ...crack-pipe-smokin'... | 06:45 | |
Khisanth | PC? | ||
dduncan | probably mentioned here already, but I noticed the webalized version of Larry's new onion talk is up ... the one I and some of you saw in person | ||
autrijus | hm, what's that saying? | 06:46 | |
"the only good indian is a dead indian?" | |||
something like that | |||
trying to adopt it in the CPAN context, eg "Best kind of coding is no coding at all" | |||
but worded in a more catchy way | |||
gaal | the best program is one you don't have to write? | ||
that's less catchy actually | 06:47 | ||
autrijus | yeah | ||
CPAN is the super glue; super glue is addictive | |||
mmm not quite catchy | |||
gaal laughs | |||
geoffb | Someone has a longer quote . . . not so soundbite catchy, but more generally true ... something along the lines of "You are finished not when there is nothing left to add, but when there is nothing left to take away." | 06:48 | |
autrijus | Antoine de Saint-ExupƩry | 06:49 | |
geoffb | With the accent no less. | ||
autrijus | Syntactic Aspartame: Shorthands without Bloat | 06:52 | |
autrijus ponders the metaphor | |||
geoffb | I like it, but Bloat is a tad blunt | 06:53 | |
autrijus | suggestions? | ||
geoffb | "All the flavor, none of the calories?" | ||
"The zero calorie shorthand?" | |||
autrijus | problem is "calorie" carries no CS meaning | 06:54 | |
while Bloat has well estabished engineering meaning | |||
geoffb | "Guilt free sweetness?" | ||
nod | |||
gaal | cruftless shorthands? | ||
nah.. | |||
autrijus | cruft has no food meaning :p | 06:55 | |
hm, I wonder if anyone will get it with I put "-Ofun" on a slide | |||
geoffb | Many, I think | ||
autrijus | it stays then | ||
geoffb | Can't come up with a better aspartame comment | 06:56 | |
sigh | |||
autrijus | Manipulexity vs. Whipuptitude: Abstractions are sexy, Shorthands are comfortable | 06:57 | |
gaal | i'll never be a copywriter... :) | ||
Whipuptitude? is that prototypability? | |||
autrijus | yeah | ||
larry's word, not mine | |||
gaal | "prototypability without the liability" | 06:58 | |
geoffb | I can never remember if Larry has both t's or just the second one | ||
autrijus | also maybe not "comfortable" | ||
gaal: he used both | |||
er | |||
geoffb: he used both | |||
on different occasions | |||
geoffb | ah, explains my confusion | 06:59 | |
gaal | is that in the onion talk? i'm reading it now | ||
geoffb | The OSCON 2005 one? | ||
autrijus | no, was in an earlier | ||
gaal: dev.perl.org/perl6/talks/2000/als/ | |||
geoffb | What I got out of that one (the OSCON 2005 Onion) is that his kids are talented. | ||
dduncan | the new one is at www.perl.com/pub/a/2005/09/22/onion.html ; I'm reading it now | 07:00 | |
some of you are even mentioned by name | |||
Khisanth | ah that is finally up? | ||
Larry should have used a bigger head :) | 07:01 | ||
dduncan | it is so up | ||
autrijus | it's also far out | ||
dduncan | and don't forget, Larry's daughter drew all those character cards | ||
she told me herself | |||
QtPlatypus | Larry's daughter is a pritty good artist | 07:02 | |
dduncan met Larry's whole family an hour prior to the evening's events, when very few people were there | |||
QtPlatypus | Though did anyone else wish to play that spy game. | 07:03 | |
geoffb | I certainly did | ||
xinming_Beijing wishes to see Larry. :-) | 07:04 | ||
geoffb | He's not that impressive in person. | 07:05 | |
Or at least, I didn't find him so. | |||
Khisanth | or in picture form! | ||
QtPlatypus | In photoes he looks like Doug Winger a little | ||
(Warning googleing for Doug Winger is NSFW) | 07:06 | ||
dduncan | Larry is certainly not an over bearing person | ||
Khisanth | is he calling Python evil? :) | ||
dduncan | he's certainly slinging a few at Python | ||
geoffb | I think all of the dynamic language designers like to tease each other | 07:07 | |
dduncan | Python and Perl in particular, have a little friendly rivalry going on | ||
they certainly use polar opposites to expouse a virtue of their side | 07:08 | ||
geoffb | nodnod | ||
dduncan | eg, "there's more than one way ... " vs "there's only one way ..." | ||
QtPlatypus just doesn'y understand why python doesn't have declare before use testing. | 07:09 | ||
dduncan | what does that mean? | ||
... | |||
QtPlatypus | use strict `vars`; | 07:10 | |
dduncan | or do you mean that all variables spring into use on first reference | ||
that's odd | |||
I know PHP is that way, but I thought Python was more strict | |||
Khisanth | weird but only for Python :) | ||
dduncan | I've never used Python, but I always got the impression it was uber-strict | 07:11 | |
on purpose | |||
it actually cares about indent whitespace | |||
Khisanth | so does Haskell... in some cases :) | 07:12 | |
QtPlatypus | dduncan: As haskell does | ||
dduncan | so you say ... I've never written Haskell either | ||
geoffb | More language foolishness has happened because of bad answers to "I never want to make another bug like that again . . . " | ||
autrijus | second sketch up - feel freeo to hack | 07:13 | |
svnbot6 | r7111 | autrijus++ | * Second sketch at Zurich airport | ||
autrijus | I'll board in <1hr | ||
dduncan | and I'll bed before that | 07:14 | |
gaal | i think the reason significant whitespace works in haskell is that it's so terse, and it helps it stay terse. | ||
autrijus | and also in Haskell it's optional | ||
Khisanth | it IS kinda nice to have more or less uniform code between various coders | ||
autrijus | (and rational | ||
) | 07:15 | ||
Khisanth | on the other hand wouldn't Lisp do better in that category? :) | ||
gaal | autrijus: unwrapping pugs turned out to be hard. i'm really inclined to revert the frontend, though i'm not happy about it. | 07:17 | |
what do you think? | |||
(hard = exec in haskell is worse than in perl5; and even in perl5 it didn't work well on windows) | |||
autrijus | uh, why? I thought pugs has Prim exec | 07:18 | |
shouldn't that be just that? | |||
gaal | let me look, but haskell doesn't even *have* a standard exec, even not in posix. | ||
autrijus | executeFile | 07:19 | |
it's in our Compat | |||
gaal | ugh, exec calls executeFile, which is execvp or ve or one of those | ||
and it doesn't work on windows. | |||
autrijus | code in a shim? | 07:20 | |
have it do a system | |||
and then exitWith the error code | |||
should be easy | |||
gaal | don't think it'll work with the console | ||
for interactive programs | 07:21 | ||
autrijus | I think it does, since PAR uses that trick | ||
try rawSystem in System.Cmd | |||
gaal | okay, thanks | ||
autrijus | np :)) | ||
gaal++ | |||
that will also get us exec() for free | |||
on win32 as a prim | |||
gaal | say that when it works :) | 07:22 | |
i'm none of larry's children's agents! | |||
my personality is not reducible to a card: [gaal] does not compile | 07:25 | ||
autrijus | it means you are already in Weak Head Normal Form | ||
(i.e. irreducible) | |||
gaal | weak head sounds about right | 07:26 | |
though normal doesn not | |||
dduncan | I think Larry clearly names 3 of the 16 with individuals ... Autrijus (Ace), Damian (Le Chat), and himself (Wu-Li); the last one was a mock mistaken reveal | 07:27 | |
gaal | hah, i was hardly expecting to have a card *for* me, dduncan :) | 07:28 | |
dduncan | its more that Larry said the 3 real people were examples of those 3 roles | 07:29 | |
you can probably find yourself too | |||
I can sort of find myself | |||
gaal | what kind of a spy can't find themselves? har. | 07:30 | |
dduncan | in my case, I probably identify with "Miss Engles", the librarian | ||
Khisanth | gaal: a great one! | 07:31 | |
gaal | nah, i think a great spy can't be found, like | ||
hey, where's foo!? | |||
ah, there she is. | 07:32 | ||
(that's my cat. and no, no relation.) | |||
dduncan | can any of you identify a specific character that you seem the most like (you can give both an honest and made up answer, but say which is which) | ||
Khisanth is only one page 2 | 07:33 | ||
dduncan | I personally find a lot to identify with in Miss Engles | ||
gaal is amused to be thrown into taxonomical confusion by larry wall of all people | 07:34 | ||
dduncan | Khasanth, that one is the 3rd person, which you get to on page 5; Autrijus/Ace is on page 4 | ||
s/a/i/ | 07:35 | ||
Khisanth | I am at "Though offhand, I can't explain how I missed seeing Ruby. So anyway, I ended up with "Pearl" instead." | ||
that one is actually easy to explain, words was probably sorted alphabetically :) | |||
dduncan | in some ways, this is all funnier in person ... but the text does capture some of the humor | 07:36 | |
dduncan thinks maybe we should make a sign-up wiki of sorts where each member of the Perl community signs up under the personality they most self-identify with | 07:37 | ||
or, people could sign others up too | 07:38 | ||
gaal would like to see dduncan after work :) | |||
dduncan | well, you know where I live | ||
gaal | actually, i don't, but hey! we have this YAPC coming up in February.... :) | 07:39 | |
dduncan | all the info's there if you know how to use WHOIS | 07:40 | |
gaal | all pugs hackers welcome. | ||
dduncan | I own about 30 domains | ||
autrijus | gaal: on the swiss air magazine I read a few articles about Tel Aviv | ||
it looks like a very happening place :) | |||
gaal | if i don't know it, it can't be wrestled out of me in torture! | ||
aye, that it is | |||
autrijus | boarding now. :) *wave* | 07:42 | |
dduncan | regarding YAPC, I don't know yet ... on one hand, I'm deeper in the hole than before after borrowing for OSCON ... on the other hand, I just interviewed today for a paid full time job that I figure I have a good chance at | ||
dduncan *wave* | |||
geoffb | have a good flight | 07:43 | |
dduncan | if I get said job, I may have a new influx of money leading to a possible YAPC attendence | ||
gaal | have a nice flight! | ||
dduncan | gaal, are you going to it? | ||
spinclad | good wings | ||
dduncan | oh, and have a nice flight | ||
don't let your wings get tired | 07:44 | ||
gaal | dduncan: i'm helping to organize it (the one in .il that is) | ||
dduncan | I'd still be interested in meeting autrijus ... more difficult now that he's sworn off the US | 07:45 | |
maybe another YAPC will be in Canada? | |||
gaal | autrijus is coming to YAPC::Israel :-) | ||
dduncan | oh, that one | ||
gaal | as is Larry :-) | ||
dduncan | I've never been out of NA in my life | ||
gaal | now's your chance, bring a friend | 07:46 | |
dduncan | such a trip is probably excessive for such a short term, but maybe in a few years after the debt's completely gone | ||
NA is cheaper | |||
gaal | it probably is... unless you have to pay for a hotel, when it starts getting very expensive fast | 07:47 | |
Khisanth | all the magical cruft has been moved out and replaced with new ones :) | ||
dduncan | autrijus must have a lot of money, to keep making all these international trips each year ... or a sponsor | ||
at OSCON, I shared a hotel with 3 people, so the whole week cost me about $220 | 07:48 | ||
room | |||
driving was my travel, total cost around $100 | |||
the event was the expensive part | 07:49 | ||
I anticipate that any YAPC turns that on its head | |||
cheap event, expensive travel | |||
gaal | yeah, the ticket for the conf is less than $100 | ||
dduncan | yes, no problem there ... the travel is the biggest issue, I think | 07:50 | |
gaal | actually, it's less than USD 65 | ||
dduncan | that's cheap travel ... for you | ||
gaal | travel from the States is around $700 from NY | 07:51 | |
dduncan | I live in Victoria, BC, Canada | ||
gaal | oh, $65 is the event, essentially free | ||
i think it's around $700 from toronto too, how much is the domestic flight? | 07:52 | ||
dduncan | it seems that www.yapc.org/ doesn't mention the 2006 events yet | ||
gaal | OSCON is immensely expensive, isn't it. | ||
dduncan | yes | ||
after discounts, it was $1700 CDN for me | 07:53 | ||
gaal | www.perl.org.il/YAPC/2006/ | ||
yikes, that's like what, 1300 USD? | |||
dduncan | 1350 USD | ||
that's after 15% early reg discount and 15% user group discount | 07:54 | ||
in future years I will qualify for alumni discount, which I guess is 25% or so | |||
so thats CDN 1700 for conference, and CDN 400 for travel and hotel | |||
because it was this close to where I live | 07:55 | ||
gaal | ouch. the commercial conf business is a different world | ||
dduncan | indeed | ||
this said, anyone who gives a 45 min talk gets in free ... I anticipate doing that next time I go | |||
gaal | we're scampering to get venue donations and stuff | ||
k, i need to hack a bit... later? | 07:56 | ||
dduncan | laters | ||
tomorrow | |||
gaal | bye! | ||
dduncan | note that the 1700 included the 2 tutorial days; if not for them, it would have been around 40% less ... CDN1000 or so for the conference proper | 07:59 | |
which was 3 days | |||
szabgab | I wonder what is the status of other front ends for Pugs | 08:10 | |
gaal | szabgab: font ends or backends? you mean compile p6 -> javascript for example? | 08:11 | |
szabgab | I am not really folowong the development but I receall there was some reorganizations | ||
so tehre can ba Python front end | |||
dduncan | you typing real fast? | ||
szabgab | O mean Python-> PILS or whatever that would be called | ||
gaal | compile python to p6? that'd be nice, but i don't know anyone working on it. | ||
szabgab | dduncan: I try but I should not :-) | 08:12 | |
dduncan | your spelling implies something along the lines of too fast for good | ||
gaal | AFAIK the only other language that turns into a pugs AST is yuval's Blondie | ||
szabgab | not to p6 I think but to the internal tree, it is called PILS, I think. Right ? | ||
gaal | but that's highly experimental stuff | ||
PIL | 08:13 | ||
szabgab | AST ? PIL ? | ||
gaal | it's not short for Pilsen :) | ||
szabgab | ah, :-( | ||
dduncan | but it is an acronym | ||
gaal | PIL, Pugs Intermediate Language | ||
gaal goes back to yak shaving | |||
szabgab | yeah, I think I wanted to write PILs | ||
So the question is how easy or difficult it would be to work on Python to PIL ? Maybe on a Hackathon in February ? | 08:15 | ||
OK, who knows what will be working by then. | |||
gaal | this is quite a new direction | 08:16 | |
geoffb | g'night all | 08:17 | |
gaal | it'll probably be much easier to write python -> parrot bytecode | ||
(or some other mutual VM) | |||
szabgab | I am trying to think what could be convincing for some Pythonists to join Pugs and maybe our hackathon? | ||
gaal | nothing comes to mind | 08:18 | |
but it's an interesting notion :) | 08:19 | ||
Khisanth | for demonstrating PIL's flexibility? | ||
szabgab | In the last Python meeting I attended (and actually on earlier discussions as well) there is not much interest in the Python community towards Parrot | ||
gaal | they get python -> js etc. for free | ||
szabgab | gaal++ | 08:20 | |
gaal | but it's quite an undertaking. | ||
Khisanth | that can probably be done more easily without getting PIL involved :) | 08:21 | |
GeJ | implementing python on parrot, hum... isn't this what pirate is for? | 08:25 | |
Khisanth | there are already multiple implementations of python, I am sure another wouldn't hurt :) | 08:26 | |
GeJ | Pirate is a generic parrot compiler, but isn't there a sub-project (Dutchman or something) for a python frontend? | ||
dduncan | nap time! | 08:36 | |
09:25
wilx` is now known as wilx
10:03
frey_ is now known as lao
|
|||
gaal | rehi | 10:08 | |
dada | hi gaal | 10:10 | |
gaal: did you convince putter to drop the pugs script? ;-) | |||
gaal | dada: autrijus convinced me to add exec to pugs ;-) | 10:11 | |
i got basic support working, committing soon | |||
dada | all's well, that ends well | 10:13 | |
gaal | it ain't over yet... we have to see it actually works where we need it | 10:14 | |
gaal needs coffee | 10:15 | ||
?eval multi sub x(@args) {"array"} multi sub x($str) {"scalar"} x("which am i?") | 10:17 | ||
evalbot_7111 | 'scalar' | ||
gaal | hmm, good, but that's not what i'm seeing here :-( | 10:18 | |
dada | what do you see? | 10:19 | |
gaal | i have a few facades in the Prelude | 10:20 | |
the one that accepts a scalar is supposed to split on whitespace and create an argv from that | |||
(similar to what p5 does) | |||
but i don't think that's being called | |||
svn up and try for yourself | 10:21 | ||
brb, coffee | |||
svnbot6 | r7112 | gaal++ | exec Compat for win32. Works, but not perfectly yet. | 10:24 | |
dada | hm? | 10:29 | |
what should I try exactly? | |||
gaal | Saeco++ # cheap but excellent espresso machines | ||
dada: pugs_bin -e "exec('/windows/system32/cmd.exe /c echo moose')" etc. | 10:30 | ||
dada: pugs_bin -e "exec('cmd')" does in fact work | 10:31 | ||
oh, oops, i forgot to exit! :) | |||
nothingmuch | hola luqui | 10:34 | |
pipe-ookoo-pipe | |||
that's a nice alt nick | |||
luqui | hola | 10:35 | |
isn't though... :-/ | |||
s/t/t it/ | |||
dada | gaal: harrr! | ||
luqui | oh boy, my laptop gets to update 2000 revisions of pugs. fun. | 10:36 | |
dada | NMAKE : fatal error U1073: don't know how to make 'pugs.exe.bat' | ||
gaal | touch it. | ||
i don't know who added that, must have been from the batch file wrapper attempts. | |||
dada | the Makefile is borked | 10:37 | |
gaal | is it? | ||
dada | C:\data\perl\bin\perl.exe -Iinc -MExtUtils::Command -e cp pugs.exe C:\da | ||
da\pugs\blib\script\pugs.exe | |||
oops | |||
that should be pugs, not pugs.exe | 10:38 | ||
gaal | yes, because '$pugs' is set with _bin at the top of Makefile.PL | ||
not sure it's worth fixing as we're unwrapping anyway. | |||
wha--? | 10:44 | ||
?eval "asdf zxcv qwer".split(rx:Perl5/\s+/) | |||
evalbot_7112 | ('asdf', 'zxcv', 'qwer') | ||
gaal | ?eval sub d($x){$x.split(rx:Perl5/\s+/)} d("qwer asdf zxcv") | 10:45 | |
evalbot_7112 | ('qwer', 'asdf', 'zxcv') | ||
gaal | ?eval sub d($x){my @arr = $x.split(rx:Perl5/\s+/)} d("qwer asdf zxcv") | ||
evalbot_7112 | ['qwer', 'asdf', 'zxcv'] | ||
gaal | um | 10:46 | |
Juerd | d() is probably in item context. | ||
?eval sub d { want } d | |||
evalbot_7112 | 'Scalar (Any), LValue' | ||
Juerd | Yep. | ||
Still, the list returned in the first case is weird and wrong | 10:47 | ||
gaal | i'm getting something unsplit in @arr | ||
Juerd | Lists can't *exist* in non-list context :) | ||
?eval sub d { want } list d | |||
evalbot_7112 | 'List (Any), LValue' | ||
Juerd | ?eval sub d { want } item d | ||
evalbot_7112 | 'Scalar (Any), LValue' | ||
Juerd | ?eval sub d { want } item ~d | 10:48 | |
evalbot_7112 | 'Scalar (Any)' | ||
Juerd | Str. | ||
Context isn't done yet? | |||
gaal | that's not the problem i'm seeing | ||
i think | |||
i'm doing: | |||
my @args = $string.split(rx:Perl5/\s+/); | |||
but @args is being populated with one unsplit string. | |||
luqui | ?eval sub d { say want }; my @a = d; | 10:49 | |
evalbot_7112 | List (Any) [bool::true] | ||
luqui | hmm.. | ||
gaal | looks like i'm going mad, but i have the debug prints to prove i'm not :) | 10:52 | |
luqui | yeah, that is odd | ||
what is the sig of split in prim.hs? | 10:53 | ||
QtPlatypus is looking at module HTTP::Server::Simple "Does module imply class?" | 10:54 | ||
gaal | split has some magic to allow both argument orders | 10:55 | |
trying the other form now | |||
luqui | QtPlatypus, I think it's the other way around | ||
but Larry's big on his tagmemics, so it's possible | |||
gaal | luqui: so split has lots of Prim sigs | 10:56 | |
anyway calling it in non-OO form doesn't help either. | |||
luqui | hmm | ||
yeah, and they all return Lists | 10:57 | ||
gaal | yup | ||
let's see what the fasttrack version does | 10:58 | ||
svnbot6 | r7113 | luqui++ | Added my theory proposal. Hopefully this isn't too far off from the final draft, | ||
r7113 | luqui++ | but I want to have the lambdacamels look it over first. | |||
luqui | fasttrack? | ||
gaal | (the one that thunks to haskell's `words`) | ||
luqui | ahh | ||
gaal | (and `thunk` in the api sense, not the closure sense) | ||
precompilation must be made faster :-) | 10:59 | ||
so, my stereo's off. what should i remedy that with>? | 11:00 | ||
nnunley | Power. More power. | 11:01 | |
gaal | ah, but of what sort? | 11:02 | |
wow, the built-in haskell words version works. | |||
scary. | |||
dada: pin | 11:09 | ||
!!g | |||
svnbot6 | r7114 | gaal++ | exec: | 11:10 | |
r7114 | gaal++ | * exit when successful, duh | |||
r7114 | gaal++ | * use a form of split that actually works (split should be fixed though!) | |||
gaal | split.t has this note: | 11:12 | |
4073 broquaint # XXX - this needs to be updated when Str.split(Str) works again | |||
4073 was a while ago, anyone handle this lately? | |||
also: | |||
seen broquaint | 11:13 | ||
gaal resists yakshaving digressions :/ | |||
QtPlatypus | Has someone updated Test.pm after the ?? change. | 11:34 | |
gaal | sure | 11:35 | |
make sure you aren't using an old one installed in your system | |||
PERL6LIB should be blib6/lib | 11:36 | ||
QtPlatypus nods "thanks" | 11:40 | ||
gaal | np :) | ||
GeJ | 6.2.10 could be 6.28.0??? | 11:54 | |
wow... | |||
gaal | haskell idom help wanted! any lambdaheads about? | 11:58 | |
luqui | hello | ||
luqui isn't fluent in haskell, but can probably figure it out | |||
gaal | heya! i have something that wants to be a guard expresion, but the conditions are monadic. nopaste coming up. | ||
pasteling | "gaal" at 192.115.25.249 pasted "prettify this" (7 lines, 213B) at sial.org/pbot/13265 | 11:59 | |
gaal | is it simply a matter of purifying it by introducing unsafePerfomIO? | 12:00 | |
(i keep writing unsafePerlform...) | |||
luqui | hmmm | 12:01 | |
gaal | usually monadic compuations stop at the first failing one | ||
i want the reverse | |||
stop at the first successful one. | |||
luqui has an idea | 12:02 | ||
gaal braces himself | |||
luqui | hmm, can I just paste it on top of yours | ||
n/m | |||
gaal | hmmm? | ||
luqui fights with his browser window a bit | 12:03 | ||
luqui then thinks a little, realizing that his idea wasn't as conceptually simple as he thought | 12:04 | ||
gaal | i'll ask on #haskell. they're sure to give me conceptually simple ideas! | 12:05 | |
luqui | I was going for syntactically simple :-) | ||
gaal | ;-) | ||
luqui | but I need a function that takes (a -> IO b) -> IO (a -> b) | 12:06 | |
gaal | hoogle? | ||
luqui | it was taking forever to load | ||
and it doesn't index much | |||
but I'm looking now | |||
now I'm curious | 12:07 | ||
gaal | !? why does e.g. floor show up there? | ||
Juerd | Does pugs even know void context yet? | 12:08 | |
Or is what I'm doing absolutely futile because it just doesn't exist? :) | 12:09 | ||
luqui | ?eval sub d () { say want } d; d; d | 12:14 | |
evalbot_7114 | Void, LValue Void, LValue Scalar (Any), LValue bool::true | ||
gaal | luqui: we've stumped them? :) | 12:18 | |
luqui | seems so | ||
I might be on to something with MaybeT | 12:19 | ||
but you might as well write it as cascaded ifs | |||
gaal | indeed | ||
QtPlatypus | How did 3 calls to say result in four outputs" | ||
luqui | ?eval 4 | 12:20 | |
evalbot_7114 | 4 | ||
luqui | zero calls to say resulted in one output | 12:21 | |
but I think you were misreading the output | |||
?eval sub d () { say "{", want, "}" } d; d; d | |||
evalbot_7114 | , want, , want, , want, bool::true | ||
luqui | er | ||
oh yeah | |||
?eval sub d () { say "[", want, "]" } d; d; d | 12:22 | ||
evalbot_7114 | [Void, LValue] [Void, LValue] [Scalar (Any), LValue] bool::true | ||
QtPlatypus nods | |||
pasteling | "luqui" at 67.165.197.242 pasted "Monadic guard" (7 lines, 194B) at sial.org/pbot/13266 | 12:26 | |
luqui | s/case/return $ case/ | ||
gaal | luqui: thanks; does this perform fileExists on both first? | ||
s/does/doesn't/ | 12:27 | ||
dada | gaal: "pugs" by itself seems to be working fine now | ||
luqui doesn't know anything about evaluation order :-) | |||
gaal | really? cool! | ||
dada | gaal: I mean the pugs.bat incarnation | ||
luqui | lazy languages scare me in that respect | ||
gaal | dada: very nice | ||
your work? | |||
luqui: mind if i ask on haskell? | 12:28 | ||
luqui | nopers | ||
gaal | or ask yerself! | ||
luqui doesn't really care | 12:29 | ||
luqui is just trying to find a way to keep from doing n bindings before an n-line case test | |||
gaal asked. | |||
dada | even pugs -e "say <hi>" (with a space) works | 12:30 | |
gaal | dada: who fixed this, you? i didn't notice any commits about this | ||
dada | no, I didn't :-) | ||
someone added a pugs.bat to the rep | |||
gaal | svn praise shows it's putter :) | 12:31 | |
dada | he did the right thing :-) | ||
gaal | he has some polyglot code on his homepage already :) | ||
putter++ putter++ putter++ | |||
shame that i missed this commit though | 12:32 | ||
Juerd | 14:15 < luqui> ?eval sub d () { say want } d; d; d | 12:34 | |
14:15 < evalbot_7114> Void, LValue Void, LValue Scalar (Any), LValue bool::true | |||
aha | |||
Stupid me. | |||
Thanks :) | |||
pasteling | "luqui" at 67.165.197.242 pasted "Monadic guard" (10 lines, 310B) at sial.org/pbot/13267 | 12:35 | |
gaal | luqui: #haskell that! | 12:37 | |
luqui | what are we asking? | ||
gaal | i dunno, for a review? it looks like it works but isn't idiomatic | 12:38 | |
but maybe like ski said that can be hidden in a function | 12:39 | ||
never mind - i'll focus on getting my actual code working now :) | |||
thanks! | |||
luqui | :-) | 12:40 | |
gaal, btw, you can align them | 12:42 | ||
apparently the $ at the end lets you do that | |||
svnbot6 | r7115 | luqui++ | Minor edits, noticed a bug in the proposal and wrote it down so I can think about it. | 12:49 | |
gaal | luqui: got another minute? this all has to be in Maybe, but I'm finding that confusing. | 13:25 | |
luqui likes Maybe | |||
sure | |||
pasteling | "gaal" at 192.115.25.249 pasted "some more lifting necessary" (29 lines, 1.2K) at sial.org/pbot/13271 | ||
gaal | (the current snippet is obviously wrong in findHelper (x:xs); for one thing the fileExists should be liftIO'ed (right?) | 13:27 | |
) | |||
luqui | hang on. I read haskell at about ten characters per minute :-) | ||
gaal | yeah, and that's a little hairy | 13:30 | |
the basic idea is that we want to find an appropriate file in a search path | |||
luqui | it seems like findHelper should be :: [[FilePath]] -> IO (Maybe FilePath) | ||
gaal | with a little extra complication of having two alternate names in each node in the path list | 13:31 | |
hmmm | |||
luqui | I don't see you needing to lift at all here | 13:32 | |
gaal | lesseee | ||
findHelper [] = Nothing => .... IO Nothing? | 13:33 | ||
luqui | findHelper [] = return Nothing | ||
gaal | ah yesofcourse | ||
luqui never realized how insanely much signatures help readability | 13:34 | ||
having the signature separate from the definition is a big win | |||
luqui thinks about perl :-) | |||
svnbot6 | r7116 | fglock++ | * perl5/Array - changed stringification, join.t passes 5 more tests | 13:38 | |
gaal | luqui: there's a problem with the otherwise clause: | ||
| otherwise -> findHelper xs | 13:39 | ||
Couldn't match `String' against `Maybe FilePath' | |||
s/clause/guard/ | |||
luqui | that's... weird | ||
oh | 13:40 | ||
you can't return an IO something | |||
so you have to factor the return inside the case | |||
gaal | only in the first two? | ||
luqui | right | ||
gaal tries | 13:41 | ||
that worked. thanks a lot :) | |||
luqui | sure | ||
luqui really likes haskell because it seems that if something type checks then it works | 13:42 | ||
at least as long as you keep your functions small | |||
gaal | that's only because nothing ever typechecks! | ||
luqui | which is consistent with software in general | ||
nothing ever works! | |||
gaal | yup. btw that comonad thing is utterly frightening. | 13:43 | |
luqui | quite | ||
fortunately, haskell is not a language in which it can work :-) | 13:44 | ||
gaal | the thread i found ended in suspense | ||
# www.mail-archive.com/haskell-cafe@h...02749.html | |||
luqui | ski has some commentary on the haskell wiki | 13:45 | |
he says that a linear type system would allow them | |||
but you get a noninvertible "zero type" otherwise... whatever that means | |||
gaal | it's the frequency of the phrase "whatever that means" that unsettles me | 13:46 | |
luqui | heh | ||
I figure I'll start to get it once I get my second PhD in mathematics | |||
:-) | |||
gaal | maybe it only works for odd primes. | 13:48 | |
luqui | maybe it only works for 2, like fermat's theorem | 13:49 | |
gaal | it's likely. you never know what strain of getting a third math PhD might do to you. | 13:51 | |
yay! -B works on win32 from within pugs! | 13:55 | ||
luqui | cool | ||
gaal | just to check that the interactive mode isn't hopelessly b0rked | ||
(what a nice pat on the back that i need to install a module of my own from CPAN to do that!) | 13:56 | ||
Juerd | munin++ | 13:57 | |
Easy to write plugins for | |||
gaal | spectacular, it does work. @prereqs_for_taking_over_the_world.shift; | ||
Juerd | munin.convolution.nl/local/feather....ssize.html | ||
Not the most interesting graph yet | |||
But it works :) | |||
luqui | Juerd, the size of the executable? | 14:00 | |
Juerd | "This graph shows the size of the stripped pugs executable." | ||
The description is below the charts | |||
luqui | heh | ||
reading is for chumps | |||
Juerd | You read IRC | 14:01 | |
luqui | maybe I listen | ||
Juerd | You like data to be pushed to you, rather than pulling it? If so, you're the perfect victim for advertisements :) | ||
No, you're not listening to IRC | |||
There are several ways to tell :) | |||
15:57 < gaal> spectacular, it does work. @prereqs_for_taking_over_the_world.shift; | 14:02 | ||
Isn't that $gaal.goals{'take over the world'}.prereqs.shift? | 14:03 | ||
gaal | no, it's global to pugs hackers. | ||
Juerd | heh | ||
gaal | take over the world = global (sorry! :-) | 14:04 | |
Juerd | Anyway - does anyone know how to fetch just the number of the current revision, without having any local copy? (svk or svn) | ||
I think that'd be an interesting thing to chart | |||
gaal | you mean of your current executable? or what's the latest commit in the official repository? | 14:05 | |
Juerd | It can be seen as a DERIVE counter: it'll plot the difference | ||
The latter | |||
svnbot6 | r7117 | gaal++ | `-B backend` can now be handled by the main pugs executable again. | ||
r7117 | gaal++ | next step is to remove the perl5 wrapper. | |||
Juerd | The executable and my working directory lag with 15 minutes | ||
This is a 10 minute thing, so it has a possible lag of 5. | |||
It can be more even | 14:06 | ||
gaal | you could webscrape it... | 14:07 | |
svn.openfoundry.org/pugs/ has the revision in the header | 14:08 | ||
it's not a very great way, but if you don't have a real svn/svk client... | |||
Juerd | Ah, this is perfect | 14:09 | |
Thank | |||
s | |||
gaal | you're most welcome. nice graphs :) | 14:10 | |
could someone who's on unix please see if exec still works for them? | |||
and if `pugs_bin -B JS` starts an interactive shell? | 14:12 | ||
Juerd | if exec works? | ||
The exec syscall? | |||
Or the pugs function? | 14:13 | ||
Or...? | |||
luqui | wow, I totally cannot understand BlowNose in #haskell | ||
fglock | gaal: I get "src/Pugs/Compat.hs:62:82: Not in scope: type constructor or class `ExitCode'" when starting compilation - but it may be a problem here | ||
gaal | Juerd: the exec builtin in pugs. It's been refactored. | ||
fglock: no, it's very likely my bug. sec. | |||
Juerd | You have a feather account... | 14:14 | |
exec works | |||
(on feather) | 14:15 | ||
gaal | fixed | ||
Juerd: yes, just realized that | |||
fglock | gaal: src/Pugs/Compat.hs:65:9: Not in scope: `try' | ||
svnbot6 | r7118 | gaal++ | unbreak build on non-Windows systems. fglock++ | ||
gaal | hmmm. | 14:16 | |
ook, sec | |||
evalbot runs on windows? interesting | 14:19 | ||
or: how come Juerd's pugs compiles but fglock's doesn't? | 14:20 | ||
?eval $*OS | |||
evalbot_7118 | \undef | ||
Juerd | Oh, I didn't try building | ||
gaal | ?eval $?OS | ||
evalbot_7118 | \'linux' | ||
Juerd | If pugs doesn't build, the old executable stays in place. | ||
See ~juerd/auto/*.out and *.err | 14:21 | ||
gaal | ?eval $?PUGS_VERSION | ||
evalbot_7118 | \'Perl6 User\'s Golfing System, version 6.2.9, August 3, 2005 (r6945)' | ||
gaal | heh. | ||
luqui | woah, 6945? | 14:23 | |
is that the last time a .hs file was changed, or is it because pugs is failing to build? | |||
gaal | dunno. i think there have been r lies in the past | 14:24 | |
luqui | build is failing | 14:27 | |
gaal | working on it, luqui. | 14:28 | |
scook0 | luqui: I read through your theories doc -- it's very ... intimidating | 14:29 | |
but also very interesting | |||
luqui | thank you and thank you... | ||
luqui wonders how he could make it less intimidating | |||
scook0, are you referring to the new one that I committed today? | 14:30 | ||
scook0 | luqui: aye | ||
though I'd read the old one as well | |||
luqui | okay good, that's the one I'm working on :-) | ||
scook0 | the new one is much more far-reaching than I expected | 14:31 | |
is it all the TaPL kool-aid? :) | |||
luqui | I mostly came up with all this before I even opened TaPL | ||
I walked home from school every day last week (about an hour walk) | 14:32 | ||
scook0 | oh | ||
luqui | walking is good for thinking, so I just thought about it the whole time | ||
but it was hard not to touch everything | |||
oh, this would be cleaner if lists just worked like this instea | 14:33 | ||
!!d | |||
oh, it would be a lot nicer if everything were a multi already *bangs self on head before Larry has a chance to* | 14:34 | ||
scook0 | luqui: "When you extend a union, you create a superset (but still a subtype)." | 14:36 | |
how does that work? | |||
luqui | The next sentence explains that... | 14:37 | |
if B does A (in union land), then B is a superset of A, but B can be used wherever A can | |||
but maybe that's not true, given the XXX at the end of the theories section | 14:38 | ||
patterns are posing a little difficulty wrt factories. I hope I can work it out, because the role/factory duality is so beautiful | 14:39 | ||
scook0 | I'm just worried about what happens when someone expects a Tree, and you give them an Annotation | ||
luqui | well, you'll be pattern matching, right? | ||
so the Tree patterns just fail | |||
hmmm... but then you don't get a complete traversal. | |||
maybe this is what the XXX is referring to mathematically | |||
luqui 'll be walking home today, too, so I'll try and get this worked out | 14:40 | ||
speaking of which, I ought to be heading off to school | 14:41 | ||
thanks for your comments scook0 | 14:42 | ||
scook0 | and I should be heading off to bed | ||
integral | wow, this stuff is really neat. luqui++ | ||
scook0 | luqui: no problem | ||
luqui | thanks :-) | ||
scook0 | I'll read it again tomorrow with a fresh brain | ||
bye | |||
luqui | bye | ||
wolverian | heh, some pretty funny trolls over at /. on state of the onion | 14:46 | |
svnbot6 | r7119 | gaal++ | fix build for real. | 14:55 | |
gaal | okay, i think we can remove the wrapped pugs now. what's the cleanes way, revision control-wise, to do this? | 15:17 | |
this doc: | |||
# svnbook.red-bean.com/en/1.1/ch04s04...4-sect-4.2 | |||
describes how to do it when you're rolling back *one* revision. | |||
but apart from 6946, there have been a few more that we want to undo | 15:18 | ||
it's not a very big change so i don't mind doing it manually, but i also want to know the "right" way. | |||
(actually, it's just svn rm pugs and a few edits to Makefile.PL to do this manually) | 15:19 | ||
integral | iirc it's svn merge -r 1235:1234, which unapplies changset 1235 to the working copy | 15:39 | |
eric256 | so does anyone konw where i should look for the code to go back to embeding the source of prelude.pm if you don't compile it? | 16:04 | |
nothingmuch | PING 1127491752 131736 | 16:09 | |
GeJ | nothingmuch: pong | 16:10 | |
nothingmuch | pong? | ||
GeJ | --- Received a CTCP PING 1127491752 131736 from nothingmuch | ||
nothingmuch | oh | ||
nothingmuch didn't know that was user visible | |||
i thought that was between the IRC server and me | |||
nothingmuch suspected his internet connection died | 16:11 | ||
sorry | |||
GeJ | no problem... I don't think it made my BP quota explode the limit | ||
gaal | eric256: look for gen_prelude | 16:15 | |
brb | 16:18 | ||
eric256 | which gen_prelude? or in which file... | 16:22 | |
ods15 | nothingmuch: you didn't notice the like hundrend of ping replies from every user here? | ||
gaal | eric256: there's a src/gen_prelude.hs that actually does get built - it's a remnant of the old system | 16:28 | |
look for how the precomp prelude is initted - Run.hs:159 | |||
eric256 | yea....i just don't know how to get from that to being able to compile without prelude but still have it loaded when i run pugs_bin.exe | ||
gaal | you need something very similar, that uses the unprecomp prelude | ||
if you browse the history for Run.hs you'll find it | 16:29 | ||
well, the *configuration* for this should be via config.yml | |||
there was once an option, inline_prelude or something similar | |||
this all happens at build time | 16:30 | ||
eric256 | yea. | ||
gaal | so the build system can decide to put the prelude as a string, and have pugs do eval on that. | ||
eric256 | maybe i'll just go find my feather acount. lol | ||
wolverian | now I know why I haven't learned haskell yet. I just haven't been looking at small, practical examples. | 16:31 | |
(the haskell wiki helps with this.) | 16:35 | ||
gaal | wolverian: Prim.hs too | ||
Khisanth | hrm my main problem is finding something to do with it :) | 16:36 | |
err a problem to solve with it | |||
gaal | find something you want pugs to do :) | 16:37 | |
wolverian | pugs is a bit scary to me. | 16:39 | |
gaal | aye, but Prim is often a good start because it has relatively simple things | 16:41 | |
Khisanth | something a bit smaller! | ||
gaal | like wrapping a functionality provided by haskell builtins in a way that's suitable for perl | ||
Limbic_Region | if you haven't read Larry's State of the Onion 9 - do so | 16:52 | |
autrijus and pugs are talked about in a good way | |||
eric256 | where would we read that at? | 16:56 | |
Khisanth | perl.com | ||
it also calls Python evil :P | |||
eric256 | he doesn't get right to any point does he? :) | 17:00 | |
GoCooL | When they say "Pugs is a Perl6 implementation", what exactly does that mean? | 17:02 | |
eric256 | it means pugs can interpret scripts that fit the Perl6 language specification | 17:03 | |
geoffb | For varying definitions of "fit" and "specification | ||
" | |||
eric256 | well ......sorta. ;) both the spec and the interpreter arn't complete though | ||
wolverian | I'd like to see a formal spec | 17:12 | |
eric256 | he speaches are allways....well...interesting. lol | 17:16 | |
gaal | eric256: going okay? | 18:05 | |
eric256 | i haven't tried antyhing | 18:08 | |
ended up swamped with real work | |||
gaal | i know how that goes :-) | 18:10 | |
elmex | ? | 18:34 | |
wolverian | is there a low-precedence version of + (numeric context)? | 18:52 | |
fglock | ?eval +"10" ~ "20" | 19:02 | |
eric256 | how do i broswe a files history on the SVN repository...isn't there a web url i can use | 19:40 | |
nm found it through the recent commits link | 19:44 | ||
rt.openfoundry.org/Foundry/Project/...;rev2=4216 seems to be the change related to making it include Prelude....but is that compiled or just inlined? | 19:46 | ||
fraxtal | I just downloaded the win32 binary of pugs from www.jwcs.net/~jonathan/perl6/, but the zip file doesn't seem to contain the pugs binary. Anyone know what's up with that? | 20:37 | |
gaal | fraxtal: do you have a pugs_bin.exe? | 20:55 | |
fraxtal | gaal: No. All I have is a parrot.exe | ||
gaal | and a perl script called pugs? | ||
fraxtal | I don't think so | 20:56 | |
but which directory would that be in? | |||
gaal | looks like a packaging error | ||
fraxtal | It's not in the top level and there is no bin folder | ||
gaal | not sure, i never looked at that install | ||
we've changed the way pugs itself is loaded recently (and might change it again soon) | 20:57 | ||
fraxtal | hmm | ||
gaal | but you should have had a pugs and possibly a pugs.bat | ||
not sure where, in that package. | |||
how new is it? | |||
fraxtal | 9/20/2005 | 20:58 | |
gaal | that version would have some problems on win32, but could conceivably have worked. | ||
i suppose you should wait a few more days for a newer, unbroken package to come up, | 20:59 | ||
fraxtal | ok | ||
i'll keep my eye on it | |||
gaal | or if you're impatient, compile a pugs yourself :) | ||
eric256 | if you can get it to compile..../me is seriously considering putting more memory in just to be able to painlessly compile pugs | 21:06 | |
gaal | 256MB of RAM == better than 100MHz of CPU | 21:10 | |
up to some limit :) | |||
actually it's negative. you need the *least* amount of RAM that you'll actually used (taking spares into account), and put the rest of your money in other things (CPU, faster disk...) | 21:11 | ||
but everybody on this channel knows that :) | |||
eric256 | i'm continously amazed by the lack of humor some people display on PM....and it nearly always is an anonymous monk | 21:25 | |
wolverian | for some reason I want $foo.chars to return a list of characters | 21:36 | |
same for .bytes etc. | |||
@foo.elems would be confusing. :) | |||
wilx | Byte and character is not always the same. | 21:38 | |
Juerd | wolverian: So do I. | 21:46 | |
wolverian: All of these should behave following the same pattern: | |||
void context: nothing (duh!) | |||
item context: return number | 21:47 | ||
list context: return elements | |||
There is also no good reason for @foo.elems, as @foo already behaves as we need. | |||
eric256 | TSa seems to make my head hurt....i've totaly lost track of that thread or even who is advocating what. lol | 21:55 | |
22:15
kgftr|honeymoon is now known as kgftr|konobi
|
|||
landover | may i ask a newbie question? | 23:03 | |
as though i am the newbie programming coming to perl6? | 23:04 | ||
rantanplan_ | Perl6 is still envolving. So if you are a newbie i recommend learning Perl5 instead. | ||
landover | err new to perl6 | 23:05 | |
rantanplan_ | Ah, ok. :). | ||
landover | but i have some questions that maybe due to a lack of some education in higher level comp science | ||
regarding threading | |||
or should i say multi-threading in general | |||
i get the concept of multi-threading of the fact that its like forking but without a new pid | 23:06 | ||
but | |||
rantanplan_ | I think any Perl6 implementation does not yet support threading. But maybe i can help you. | ||
landover | well let me break down my idiotic obnoxious questions into something that i hope is a readable format | 23:07 | |
1) Multi-threading when is good to use and when is it bad to use? | |||
2) How does multi-threading impact big(0) along with speed in general? | 23:09 | ||
wilx | Heh. | ||
I doubt anybody is going to answer. | |||
landover | is that dumb? | 23:10 | |
wilx | Your questions are too unrelated and broad. | ||
landover | ah | ||
well to narrow it down my question is that is there a way currently in any language to make all functions appear to be running in their own process i know this may not make sense but for what i am doing i need little "agents" so to speak | 23:11 | ||
without having to Fork for each little agent | |||
like if you have a perl6 or perl5 subroutine, and lets pretend the subroutine ran a task if i wanted a thousand or so tasks to run at the same time | 23:12 | ||
rantanplan_ | I would not use 1000 threads within the same program. | ||
landover | right | ||
this is hypothetical of course | 23:13 | ||
but you also wouldnt have 1000 pid's as well i assume correct? | |||
rantanplan_ | I would recommend a single thread and single process which is using select or something. | ||
landover | meaning how can i have 1000 things run in parallel without using threads or pid's | ||
i tried poe but it cant do everything that i wanted it to do and rather than hunt around the vast info of non-truth i figured i would ask some experts in the field | 23:14 | ||
rantanplan_ | On UNIX and UNIX like OSes you may use select or similar. Dont know about Windows. | ||
wilx | Or non-blocking or async I/O. | ||
landover | i know this may sound confusing but i am trying to build functios that are miniature turing machines | 23:15 | |
so basically have a daemon that listens on a socket async correct? | |||
for fun i was trying to see if i could take a mathmatical algorithm and break it down via small turing machines | 23:16 | ||
rantanplan_ | If you know C, take a look at libevent. This seems to be nice stuff. | ||
landover | that would run in parrallel | ||
<< knows a little C but was trying to stick with something that was interpreted like perl etc | |||
point being though ok so your saying that its something that i would have to do at the OS level in terms of either async /non-blocking socket connections | 23:17 | ||
or use something like C etc | |||
rantanplan_ | Yes. Or use Perl5. (Which is offtopic too). -> perldoc -f select | 23:18 | |
landover | k thanks i understand its not a perl6 topic but i have been trying to find a language that will let me build small turing machines that run in parallel and rather than re-invent the wheel i figured i'd ask those that are more intelligent than myself | 23:19 | |
rantanplan_ | Yeah, Perl5, Python, Ruby, Lisp, Haskell .. would be all fine i think. Or even Lisp. But i recommend Perl5 (because i know it the best). | 23:21 | |
So do it in the language you know the best. | 23:23 | ||
landover | ya i know perl5 pretty well although there is still new things im learning every day | 23:24 | |
ok now i have a big question though regarding perl6 | |||
is strictly typed optional in perl6? | 23:25 | ||
kgftr|konobi | yup | ||
rantanplan_ | But strict is standard in Perl6. I ve read. | 23:26 | |
Ah strictly typed. | |||
Never mind. | |||
Didnt read ;). | |||
I meant "use strict". | |||
landover | right my concern about the strictly typed is what are the true benefits of typed versus untyped in general? Being as though Ive only worked in smalltalk, perl, javascript, and python I dropped strictly typed languages because they were more time consuming to create things in how do you think this will effect me in the long term? | 23:28 | |
rantanplan_ | Strictly typed makes the programm runs faster. And it also prevents bugs in the source code. | 23:30 | |
s/runs/run/; |