Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2007-01-10

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:13 weinig is now known as weinig|food
00:42 weinig|food is now known as weinig
00:57 TimToady fg
00:57 TimToady oops :)
00:58 TimToady well, as long as I'm here, anyone have any opinions on the floor vs euclidian divmod debate?
01:00 * allbery_b has no horse in that race, but notes that Haskell provides both (divMod and quotRem)
01:02 b00t joined perl6
01:16 bcorn joined perl6
01:16 theorbtwo joined perl6
01:28 davidm123 joined perl6
01:44 hexmode joined perl6
02:02 bucky joined perl6
02:03 hexmode joined perl6
02:05 diotalevi left perl6
02:09 hexmode joined perl6
02:13 autark joined perl6
02:47 demy joined perl6
02:47 demy left perl6
02:49 asey joined perl6
02:49 theorbtwo joined perl6
02:51 weinig is now known as weinig|zZz
02:52 dduncan TimToady, regarding your question, the only opinions I have in that regard at the moment is that Int/Int should result in an Int result, Num/Num should be num, and those 2 operators should perhaps look different so that users can easily tell what is going on
02:54 TimToady Int/Int --> Int doesn't avoid Least Surprise for most people.
02:55 TimToady most people will expect Int/Int --> Num because that's how math works
02:55 SamB yeah. except broken people!
02:55 TimToady well, grade school math...
02:56 TimToady however, separating out different operators will probably be okay
02:56 SamB well, maybe in elementary school, the answer has to be an integer too, but you never run into any problems where that doesn't happen?
02:57 finchely joined perl6
02:57 mako132_ joined perl6
02:57 TimToady true, they teach remainders before they teach fractions...
02:58 TimToady well, gotta decommute &
02:59 davidm123 getting this very same problem in building perl6 under cygwin..http://aspn.activestate.com/ASPN/Ma​il/Message/perl6-internals/3364906 .  I patched _LIB_VERSION', but miniparrot fails
02:59 davidm123 (correction: parrot not perl6)
03:01 Psyche^ joined perl6
03:13 Psyche^ is now known as Patterner
03:22 mako132_ joined perl6
03:22 mbradley joined perl6
03:23 justatheory joined perl6
03:25 GabrielVieira joined perl6
03:35 asey joined perl6
03:39 demy joined perl6
03:39 demy left perl6
03:43 demy joined perl6
03:43 demy left perl6
03:55 frankg joined perl6
03:58 johnjra joined perl6
03:59 b00t joined perl6
04:13 nipra joined perl6
04:13 leed joined perl6
04:47 lyokato joined perl6
04:49 mjk joined perl6
05:33 jdv79 left perl6
05:33 sunnavy joined perl6
05:37 nperez joined perl6
06:15 BooK_ joined perl6
07:00 nipra_ joined perl6
07:04 TimToady_ joined perl6
07:09 bsb left perl6
07:19 dem2 joined perl6
07:20 dem2 left perl6
07:33 Juerd feather users:
07:33 Juerd 2007-01-10
07:33 Juerd Please clean up your home directory, as we're running out of storage
07:33 Juerd space on the machine that hosts the data backups. If you could remove that 6
07:33 Juerd months old Pugs or GHC tree that you no longer touch anyway, that would be
07:33 Juerd great. Maybe there are things that you can gzip?
07:36 dduncan left perl6
07:41 iblechbot joined perl6
07:44 Aankhen`` joined perl6
07:46 gaal Juerd: done (cleared O(128MB))
07:49 marmic joined perl6
07:53 dduncan joined perl6
07:55 Southen joined perl6
08:03 deq` joined perl6
08:12 sunnavy joined perl6
08:23 mj41_ joined perl6
08:24 lisppaste3 joined perl6
08:25 nipra_ is now known as nipra
08:36 devogon joined perl6
08:58 elmex joined perl6
09:08 buetow joined perl6
09:14 andara joined perl6
10:08 chris2 joined perl6
10:18 fglock joined perl6
10:27 fglock audreyt: would you send me the graffle file for http://pugs.blogs.com/photos/v​isiolization/mp6bootstrap.html - I'll draw one for kp6
10:28 ruoso joined perl6
10:32 gaal parser combinators in smalltalk: http://gbracha.blogspot.com/20​07/01/parser-combinators.html
10:35 fglock why does 'combinator' mean?
10:38 fglock what
10:38 andara left perl6
10:43 fglock ah, the article defines it
10:45 yves joined perl6
10:46 seano joined perl6
10:50 svnbot6 r15022 | fglock++ | kp6 - added ast transformation engine to spec
10:52 andara joined perl6
11:00 audreyt fglock: http://perlcabal.org/~audreyt/tmp/lrep.graffle
11:00 rgs hi audreyt
11:00 audreyt greetings rgs
11:00 rgs so you're going to be in Nice starting next week-end ?
11:00 audreyt yes
11:00 audreyt and stay till the next
11:00 audreyt are you going to be present on the 2nd weekend as planned?
11:01 rgs no, but I think I can make it on monday and tuesday
11:01 rgs 15, 16 (before the conference iirc)
11:01 audreyt ack
11:01 audreyt my talk is 17th though
11:01 audreyt that means I better finish slides before you arrive
11:01 audreyt otherwise you'll find me in JIT mode :)
11:02 rgs I'll let you know
11:02 rgs BTW, I just resigned from $work, so things are a bit difficult to plan
11:02 audreyt ah.
11:02 svnbot6 r15023 | fglock++ | mp6 - finished ast-traversal module
11:02 audreyt are you going to be in.tw?
11:04 rgs for OSDC ? no
11:04 audreyt k
11:05 sunnavy_ joined perl6
11:05 andara hi audreyt! I'm going to Nice too. Looking forward to your talk
11:05 audreyt so are your place close to the conf hotel (Plaza)? is that plan that we hack at hotel?
11:05 audreyt andara: me too, I havn't started thinking about my talk
11:05 audreyt so I also look forward to it
11:05 audreyt ;)
11:05 * rgs looks up plaza hotel
11:06 andara audreyt: cool. BTW, could you please point run.pugscode.org to feather.perl6.nl:8080/runpugs/ ?
11:06 audreyt andara: sure, will do so now
11:06 rgs it's very close
11:06 rgs nice is a small city
11:07 audreyt cool
11:07 andara audreyt: great, thanks!
11:08 rgs http://www.flickr.com/photos​/rgarciasuarez74/225906267/ <- my place, an old building which is now an historical monument
11:09 audreyt ...wow :)
11:10 audreyt so I arrive at 13th and will start working on slides upon landing
11:11 audreyt there are conferences too at 15th and 16th
11:11 audreyt but I'd like to drop by and visit and hack w/ you at timeslots convenient to you, if that's okay
11:11 audreyt otherwise you can come to the hotel too :)
11:11 rgs I'll have nothing else to do
11:12 gaal audreyt: moose
11:12 audreyt gaal: antlr
11:12 gaal fglock: a function that manipulates functions
11:12 gaal audreyt: so i had a question about caching compilations
11:12 gaal can't persistently memoize parseProgram because what to do with the env?
11:13 audreyt each parseProgram theoretically gets the same clean env
11:13 gaal not the case today, I tihnk
11:13 audreyt no, not at all
11:13 audreyt unless you count Test.pm.yml
11:13 audreyt we have preliminary "linking" technology
11:13 audreyt but it's not the case for normal "use" resolution
11:14 audreyt which is of course wrong...
11:14 gaal so opEval should by rights first construct a clean env, parse onto it, and merge the result to the current env? that will give us a momoization point
11:15 audreyt exactly so
11:15 audreyt aka standard linking
11:15 gaal ok; so in fact Env param should be dropped from parseProgram to ensure this
11:15 audreyt exactly so.
11:15 gaal cool
11:17 gaal and mergePads or unionPads (i forget the name) can be wrapped in a reusable new "link" function
11:17 audreyt yup.
11:17 audreyt we already do that for .pm.yml loading
11:17 audreyt what we need to do is to convince "use" to always go thru that route
11:18 audreyt but not neccessarily with .yml
11:18 TimToady joined perl6
11:18 audreyt i.e. the .yml part can wait until the merge env thing works
11:18 gaal if we hook into opEval it'll always happen
11:18 audreyt then we worry about proper deserialization
11:18 audreyt aye aye.
11:19 gaal great, i'll resume this after work then
11:25 audreyt cool
11:25 audreyt I need to catch some sleep... bbl
11:34 fglock joined perl6
11:35 fglock audreyt, gaal: thanks
11:35 buetow joined perl6
11:41 seano joined perl6
11:45 svnbot6 r15024 | fglock++ | kp6 - rename 'Visitor.pm' to 'Traverse.pm'
11:51 pasteling "evalbot_r15023" at 194.145.200.126 pasted "Pugs build failure" (375 lines, 20.9K) at http://sial.org/pbot/22252
11:54 andara joined perl6
11:56 xpika joined perl6
12:00 svnbot6 r15025 | fglock++ | kp6 - added proof-of-concept traverse script
12:03 iblechbot joined perl6
12:27 fglock ?eval my $s=''; for 1..3 { $s ~= $_; eval ' LEAVE { $s ~= 42 } ' }; $s
12:27 evalbot_r15025 \"123"
12:27 fglock ?eval my $s=''; for 1..3 { $s ~= $_; LEAVE { $s ~= 42 }  }; $s
12:27 evalbot_r15025 \"142242342"
12:48 weinig|zZz is now known as weinig
12:51 pasteling "fglock" at 201.35.169.13 pasted "a possibly saner implementation of BEGIN blocks run-time side-effects" (29 lines, 442B) at http://sial.org/pbot/22254
12:52 fglock luqui: please see http://sial.org/pbot/22254
12:53 fglock it would be nice to use this, because it has no impact on performance
12:57 luqui joined perl6
12:57 fglock luqui: hi :)
12:58 luqui hello fglock
12:59 kanru joined perl6
13:01 lumi joined perl6
13:03 fglock luqui: I found that I can use closures to init lexicals at any pad level - see http://sial.org/pbot/22254
13:03 fglock it's much cleaner
13:04 Limbic_Region joined perl6
13:06 luqui hmm, I wonder why we didn't see that before...
13:13 fglock it comes from the background refactoring process in the brain - it's a low priority process
13:17 sunnavy joined perl6
13:22 elmex joined perl6
13:22 svnbot6 r15026 | fglock++ | kp6 - added a note on pad accessors
13:51 dduncan left perl6
13:53 gnuvince joined perl6
14:04 vel joined perl6
14:18 [particle] joined perl6
14:25 Steve_p joined perl6
14:29 Alias__ joined perl6
14:36 finchely left perl6
14:45 vel joined perl6
14:51 kanru joined perl6
14:51 weinig is now known as weinig|bbl
14:55 iblechbot joined perl6
14:59 Odin- joined perl6
15:03 ruoso joined perl6
15:08 xpika left perl6
15:21 hexmode joined perl6
15:27 fglock joined perl6
15:37 bonesss joined perl6
15:41 [particle] how big (kb, #files) is the pugs test suite?
15:41 [particle] don't have svk, so it's hard for me to measure
15:43 allbery_b 20.5k, 2138 files in my pugs/t
15:43 allbery_b that's not excluding .svn though, whoops
15:43 [particle] is that an svn working copy?
15:44 allbery_b 759 files
15:44 allbery_b yes
15:59 [particle] thanks
16:00 gaal actually it's more like 1.7MB :)
16:00 allbery_b hm right, du defaults to 512-blocks on here and I didn't exclude the svn foo etc.
16:00 [particle] gaal: where are BEGIN/END blocks stored in pugs ast?
16:00 allbery_b and probably did other things wrong
16:00 [particle] 627 files?
16:01 gaal [particle]: begin is folded in, and leaves no trace in the ast
16:01 gaal END gets pushed to a @*END magical
16:01 [particle] same for check/init?
16:02 gaal hm i think so let me look
16:03 gaal yes indeed. see vcode2checkBlock etc. in Pugs.Parser cicca ln. 1091
16:03 gaal *circa
16:03 [particle] kthanks
16:03 gaal sure
16:03 [particle] we'll soon have that functionality in past
16:04 gaal yay
16:04 gaal <3 "we will .. in past"
16:06 fglock is p6 supposed to support this: my @a[10] = 20;
16:06 gaal sure
16:06 thepler joined perl6
16:06 gaal oh, with a my... not sure :) but i think so. :-)
16:07 fglock lexiacally 'shadow' a data structure's element
16:07 fglock lexically
16:08 [particle] gaal: so, the result of begin is converted to ast and injected?
16:09 nothingmuch does lexical scoping even make sense here?
16:09 nothingmuch i mean, pads are shadowed lexically because they are an opaque data structure
16:09 gaal the result of a begin is a value. it might have had other enviromental side effects, but basically yes, it's folded to a context and injected to the compunit's ast
16:09 nothingmuch it has no addressible origin
16:09 fglock ?eval my $s; my @a=1..5; { my @a[2]=42; $s= ~@a; }; $s
16:09 evalbot_r15026 \"  42"
16:09 gaal srry bbiab..
16:10 tewk joined perl6
16:10 svnbot6 r15027 | andara++ | [runpugs]
16:10 svnbot6 r15027 | andara++ | -release of what was the 'devel' version, v0.3.0
16:10 svnbot6 r15027 | andara++ | -window/tab close now terminates session. Thanks diakopter.
16:10 svnbot6 r15027 | andara++ | -for those who didn't use the devel version: it's much faster now
16:15 fglock I need to modify an array element lexically
16:17 fglock that's for implementing things like: my multi infix:<+> {...}
16:17 fglock lexical modifications to the global grammar
16:18 fglock hmm - it could be local'ized instead, by resetting to the old value on LEAVE
16:18 svnbot6 r15028 | seano++ | Another "99 problem", perl5-style.
16:19 GabrielVieira joined perl6
16:19 fglock GabrielVieira: ola
16:20 GabrielVieira fglock flavio my master! :)
16:20 fglock heh
16:29 kolibrie fglock: but that is 'temp' - I don't know how 'my' should work in your example, or if it is even legal, because the array was already 'my'-ed
16:29 fglock hmm - @P6::Grammar::infix{'+'} needs to dispatch from the caller's pad POV
16:30 TimToady I think it probably parses (my @a)[2]
16:31 TimToady and that hides the outer @a
16:31 fglock yes
16:32 fglock I'm now trying to find out how 'my multi infix:<+> is parsed ... {...}' interacts with '@P6::Grammar::infix{'+'}'
16:32 TimToady fglock: yes, you have to keep track of the grammar the user thinks they're using.
16:33 fglock is it a kind of shadow over the global value
16:34 TimToady the macro part shadows, but has the same effect of dispatching to a normal multi
16:34 TimToady and a normal "my multi" just hides that "long name"
16:35 mbradley joined perl6
16:35 TimToady in other words, my multi infix:<+> doesn't have to do anything to the infix table if it's already there.
16:36 fglock got it
16:36 TimToady the infix table just turns $a + $b into infix:<+>($a,$b) and then normal multi takes over
16:36 fglock and the parser executes in the current block's compile-time context
16:36 TimToady so don't need to temporize table for that.
16:37 TimToady as we used to say with P5, a local at compile time is a my at run time
16:37 TimToady or something like that
16:38 TimToady if you do add a new infix, then you have to compile-time temporize something
16:38 TimToady whether it's the whole infix table, or a shadow mask...
16:39 TimToady or, I suppose, if you change the associativity or precedence of +
16:40 TimToady course, it does hurt anything except performance to temporize unnecessarily.
16:40 TimToady (in theory)
16:41 TimToady s/does/doesn't/
16:41 buetow joined perl6
16:41 TimToady obviously I need my coffee...
16:42 fglock thanks - I got the idea
16:46 ashleyb joined perl6
16:49 nipra joined perl6
16:52 GabrielVieira fglock pvt?
16:56 GabrielVieira2 joined perl6
16:59 buetow joined perl6
17:00 Lunchy joined perl6
17:18 andara left perl6
17:18 maquis joined perl6
17:21 fglock joined perl6
17:28 fglock joined perl6
17:37 seano joined perl6
17:56 GabrielVieira joined perl6
18:01 justatheory joined perl6
18:02 fglock p6hack + $work is a bit confusing :)
18:12 diotalevi joined perl6
18:15 TimToady yes, especially if $work->perl5()
18:16 wolverian I considered trying to use perl6 for my data structures course project, but perhaps haskell is more realistic at this point
18:16 wolverian (fortunately the graders don't really care that much about the language, so I don't have to use java)
18:18 weinig joined perl6
18:18 fglock actually, right now, work = drawing comics for our web page :)
18:22 luqui wolverian, haskell might throw them for a thunk
18:22 luqui data structures in haskell are a little... different :-)
18:23 wolverian true enough. :)
18:25 luqui \f -> f 1 2   -- oh yeah, that's just the tuple (1,2)
18:26 fglock I've been switching between p6/p5 too often lately - it's no longer a problem
18:27 seano joined perl6
18:33 TimToady that's the problem with Haskell--you have to say "oh yeah" on just about every line...
18:34 TimToady every function is a brain pretzel
18:34 luqui eh, no, just the fun ones
18:34 * allbery_b is gradually getting past that point
18:35 masak will computers be doing programming in the future, I wonder
18:35 luqui a lot of, say, pugs is pretty everyday code, once you grok the (many) haskell idioms
18:35 luqui masak, either no, or they are already
18:35 allbery_b masak: they've been predicting that since the 50s or earlier :)
18:35 luqui (define your terms!)
18:36 masak luqui: I don't mean metaprogramming, or other such things
18:36 TimToady computers are doing most of the programming these day; problem is you have to specify the problem for them in a higher level language
18:36 masak I mean the whole thing, from innovation via design to implementation
18:36 jabbot joined perl6
18:36 masak TimToady: I don't mean compilation either
18:36 masak (seems I'm mostly defining what I _don't_ mean :)
18:37 TimToady my point is that "innovation" is open-ended
18:37 luqui innovation is the hard one
18:37 masak TimToady: point taken
18:37 TimToady once computers can do part of it, the def changes
18:37 luqui perhaps someday programming will be something like what automated proof checkers are...
18:37 luqui er, proof generator
18:37 luqui s
18:37 luqui you can tell the computer "prove this"
18:37 luqui and it will crank and crank (for many many hours for even the simplest things :-)
18:37 luqui and then say "here you go"
18:38 luqui but a computer has no idea what is interesting to prove
18:38 masak I think a computer doing large parts of a human's programming project would pass my definition
18:38 TimToady trouble is, for lots of useful problems you need a computer the size of the universe.
18:38 luqui masak, then I think yes
18:38 masak ok, next question: will they have coding standards? will they care?
18:38 masak will the standards be anything like human standards?
18:39 masak will different computers prefer different languages? the same languages as humans?
18:39 TimToady my son Aron is currently off at a conference where they're trying to figure out if the universe has coding standards.  :)
18:39 masak probably in 50 years these questions will seem as naive as a person from the year 1900 asking questions about today's programming languages :)
18:40 TimToady well, if we're lucky bitrot will have expunged these irc logs by then...
18:40 masak TimToady: the biological part of the universe certainly doesn't, so far as we know anyway
18:40 luqui to be sure :-)
18:40 luqui (to the "in 50 years" comment)
18:41 TimToady well, but nothing is better at innovation than biological systems
18:41 luqui touche
18:41 TimToady see H5N1
18:41 wolverian it's so very slow though :)
18:42 TimToady we sincerely hope H5N1 is slow
18:42 wolverian I meant biological systems in general, as compared to silicon.
18:42 wolverian (okay, I've read too much egan.)
18:42 TimToady it's the price of cheating
18:43 luqui hey, a few billion years is no time to wait when comparing how long it takes to break a 4096 bit rsa key
18:43 cdfh_ joined perl6
18:44 TimToady the fastest way for biology to deal with that is to invent a species that can deal with it.
18:44 luqui I wonder if nature could innovate a way to do that faster than brute force could..
18:45 TimToady unfortunately nature likes to observe its own qubits
18:46 TimToady but nature has provably produced a species that would like to avoid watching 4096 qubits for "long enough"
18:46 luqui provably?  which one?
18:46 luqui oh
18:46 luqui duh
18:46 * luqui feels smrt
18:47 allbery_b heh
18:47 TimToady the sme species tht would like to mke computers smrter thn themselves.
18:48 Gothmog_ luqui: It would take long to brake with the current knowledge, but it's not even proven that prime factoring is NP-hard, let alone the P/NP problem.
18:48 luqui details, details
18:49 Gothmog_ Just wanted to quibble a bit. ,-)
19:00 ozo_ joined perl6
19:03 elmex joined perl6
19:14 fglock just checking - when I say 'my multi infix:<+> {..}' is it 'OUTER' to the parser?
19:14 awwaiid isn't factoring np-complete?
19:15 * awwaiid reads wikipedia to find out that it isn't
19:17 GabrielVieira2 joined perl6
19:18 wolverian awwaiid, it is believed to be in NP but not NP-complete
19:18 masak I kinda imagine that computers would have the same reasons for wanting to program in HLLs as we humans do
19:18 awwaiid lazy bastards
19:18 masak :)
19:18 masak I mean, it hides complexity for us, it should for them too, right?
19:20 awwaiid yes... but what is our motivation for hiding complexity if it isn't limited ability to hold it all in our minds at once... I imagine a super-brain (smart enough to hold the entire compiler in their mind instantly) would find actually _using_ a compile pointless.
19:20 awwaiid we have a mind-body problem, they will have a mind-othersoftware problem
19:21 [particle] i don't find calculators useless
19:22 masak awwaiid: they would also have limited ability to hold it all in their minds at once... the limits might be farther away, but they'd be there
19:22 TimToady fglock: I don't know what you mean by "OUTER".  are you asking what the global ramifications of "my multi" are?
19:22 diakopter joined perl6
19:23 awwaiid masak: good point
19:23 wolverian just build more computronium.
19:23 mbradley joined perl6
19:24 wolverian I wish humans ran on extensible hardware.
19:24 masak wolverian: they do
19:24 masak my glasses are an extension to my eyes
19:24 wolverian I meant human minds.
19:24 wolverian but, point. :)
19:25 masak well, my mind uses my eyes as hardware...
19:25 wolverian right.
19:25 fglock TimToady: I mean, the parser sees the lexical declaration
19:25 wolverian it's like buying a new webcam versus buying a better CPU
19:26 TimToady leaving aside the infixness, any "my multi" is used only within dispatches originating from that lexical scope.
19:26 TimToady the scope of the infix "macro" is the same.
19:27 masak wolverian: what is like buying a new webcam versus buying a better CPU?
19:28 [particle] hrmm, will @?BEGIN, @?END be available?
19:28 wolverian masak, getting glasses versus mind-augmentation.
19:28 TimToady when you're building the candidate list for a particular multi dispatch, it goes outward in the scopes and finds any candidates whose long name is not hidden by an inner scope
19:28 fglock I think what I mean is, the whole grammar is inside the scope
19:28 TimToady finally it adds in all the global multies
19:28 wolverian (the latter is what I meant with "extensible hardware")
19:28 TimToady logically, yes
19:28 wolverian although I wonder what psychedelics are analogous to.
19:28 TimToady reverts to previous grammar at }
19:28 fglock rather than being a simple external module
19:29 masak wolverian: ah. ... yes.
19:29 TimToady yes, you generally have to construct an anonymous grammar
19:29 TimToady and that anon grammar may well be based on the OUTER:: anonymous grammar
19:29 TimToady the current grammar is also passed to eval, i think.
19:30 TimToady but not to require
19:30 TimToady so in the case of eval you need to remember the current grammar in $?GRAMMAR till run time
19:31 TimToady that anonymous grammar is where you probably want to store the modified infix etc. tables
19:31 fglock ok!
19:31 TimToady rather than just temporizing, or in addition to temporizing
19:32 masak wolverian: I don't think psychedelics necessarily have an equivalent in the computer world, though that's quite a bland answer, admittedly. the thing that psychedelics disturb (something along the lines of "a consistent conscious experience") doesn't have an analogue in the software world.
19:32 TimToady basically a GC problem; if anything refers to $?GRAMMAR you keep it around.
19:32 wolverian masak, right. yet, anyway. :)
19:33 TimToady multithreading seems to be related. :)
19:33 TimToady if this conversation is any clue
19:35 masak TimToady: :)
19:35 allbery_b <mike> I conjecture it is similar to a slight overvoltage </mike>
19:37 TimToady more like changing the damping characteristics of back-and-forth interactions, I suspect
19:37 TimToady maybe when computers can have epileptic fits, they can go psychedelic
19:38 TimToady anyway, moving from hard locking to STM may get us closer
19:39 TimToady next is PTM, psychedelic transcendental memory
19:39 masak *lol*
19:39 * masak would like to see an SPJ  paper on that
19:41 masak probably, there will never really be a stage where we'd say "well, now it seems that computers really program themselves"
19:41 masak either it'll never happen or it already happened, depending on one's definitions
19:42 fglock is a BEGIN block compiled, and then executed - or is it compiled/executed a statement at a time
19:43 masak but what we'll probably see increasingly is computers hooking up to each other and telling each other what to to, in increasingly complex and seemingly aware ways
19:43 PerlJam fglock: what an odd question.
19:43 masak fglock: is the difference noticeable in any way? do you have a code example?
19:44 PerlJam fglock: I've always thought it the former.  I guess thinking about the other is what strikes me as odd.
19:44 fglock PerlJam: I'm just checking - because I'm working on it right now...
19:45 TimToady BEGIN just compiles like a normal closure, but executes after final }
19:45 fglock it can have a BEGIN inside it, right?
19:45 [particle] executes as soon as possible
19:46 TimToady yes
19:46 TimToady but you don't need statement granulatity on you compiler pipeline
19:46 masak what about a BEGIN with an END in it?
19:46 TimToady closure granularity is good enough
19:47 fglock ok
19:47 TimToady the END doesn't care
19:47 TimToady still executes when the run-time is exiting
19:47 masak ah
19:47 masak reasonable
19:47 TimToady all END/CHECK/INIT do are push a closure on a queue
19:48 TimToady or whatever correct English for that is...
19:49 TimToady well, push or unshift, depending on the order used for that kind of block...
19:49 gaal "append"?
19:49 TimToady either that or the caller runs in the other order.
19:49 gaal or even "put"
19:50 TimToady pend this to that list
19:50 gaal app-END{}
19:50 justatheory joined perl6
19:50 TimToady perhaps just push everything and let the caller decide pop vs shift.
19:51 TimToady then the list always reflects lexical order, for which there is something to be said.
19:54 TimToady especially if people add new blocks with weird execution orders, like dependencies that have to be calculated at run time.
19:56 fglock TimToady: thanks for the explanations
19:56 fglock home &
19:57 GabrielVieira2 is now known as GabrielVieira
20:02 azazello joined perl6
20:11 svnbot6 r15029 | fglock++ | kp6 - updated spec; added some experiments with begin-blocks
20:15 masak fglock++ # moving stuff forward
20:39 davidm123 joined perl6
20:39 davidm123 left perl6
20:56 Aankhen`` joined perl6
21:05 jferrero joined perl6
21:08 bernhard joined perl6
21:14 mdiep_ joined perl6
21:48 diotalevi left perl6
22:03 Limbic_Region joined perl6
22:36 GabrielVieira2 joined perl6
22:53 polettix joined perl6
23:14 bonesss joined perl6
23:18 diakopter left perl6
23:21 hexmode joined perl6
23:26 justatheory_ joined perl6
23:34 mako132_ joined perl6
23:51 xpika joined perl6

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

Perl 6 | Reference Documentation | Rakudo