pugscode.org | temporary feather address: perl6.wall.org | sial.org/pbot/perl6 | ?eval [~] <m oo se> | We do Haskell, too | > reverse (show (scanl (*) 1 [1..] !! 4)) Set by allbery_b on 24 March 2007. |
|||
00:14
wilx joined
00:22
diotalevi left
00:44
cygwin-guy joined
00:52
rissy joined
00:54
thorat joined
|
|||
svnbot6 | r15908 | Darren_Duncan++ | ext/(Locale-KeyedText|Set-Relation)/ : replaced any +@ary with @ary.elems | 00:54 | |
Aankhen`` | Heh, I keep pronouncing @ary in my head like "unary". | 00:55 | |
PerlJam | Aankhen``: you're weird :) | 00:56 | |
Aankhen`` | 'Tis true. :-D | ||
avar | "at-ari" :) | 01:02 | |
01:05
Aankhen`` joined
|
|||
specbot6 | r14374 | larry++ | Eliminated STATUS in favor of normal dispatch to :foo pair-handling methods. | 01:05 | |
01:15
Aankhen`` joined
01:21
nperez joined,
LCamel joined
01:27
LCamel joined
01:56
diakopter joined
|
|||
diakopter | is someone around with commitbit invite rights? | 02:36 | |
geoffb | diakopter: still here? | 02:53 | |
diakopter: it turns out I still have (rather dusty) invite rights | 02:54 | ||
03:01
zgh joined
03:04
amnesiac joined
|
|||
geoffb | @tell diakopter: Since you left before I could ask, I just substituted _ for the . in his username to get the account name | 03:05 | |
lambdabot | Consider it noted. | ||
Aankhen`` | avar: Atari, eh? | 03:31 | |
03:47
justatheory joined
03:48
bonesss joined
04:18
forsaken joined
04:25
esstone joined
04:26
reZo joined
04:27
reZo is now known as rissy
04:30
bonesss joined
04:32
bonesss joined
05:07
bonesss joined
05:13
devogon joined
05:51
SubStack joined
06:13
BooK_ joined
|
|||
dduncan | I've noticed that Pugs doesn't seem to handle pod properly when it occurs inside a multi-line hash value definition; it tries to interpret =pod as a function call to &pod ... this happens when the pod block is inside "my $foo = { 1 => 2, };", but not when it is in "my $foo = { 1; };" ... presumably the latter is being parsed as a block and the former as a hash | 06:16 | |
now, pod is supposed to be able to exist within a multi-line expression, is it not? | 06:17 | ||
pasteling | "dduncan" at 24.69.53.198 pasted "pod inside multiline hash definition has Perl parse failure" (11 lines, 67B) at sial.org/pbot/24216 | 06:19 | |
06:29
penk joined
|
|||
dduncan | well, I added a test for that problem | 06:53 | |
svnbot6 | r15909 | Darren_Duncan++ | added test t/syntax/parsing/pod_in_multi_line_exprs.t since the presence of POD in certain sections of Perl code causes Perl parse failure, but shouldn't | 06:54 | |
06:54
mdiep joined
|
|||
pasteling | "evalbot_r15908" at 194.145.200.126 pasted "Pugs build failure" (358 lines, 19.9K) at sial.org/pbot/24217 | 06:57 | |
07:02
franck__ joined
07:15
mdiep joined
07:23
jisom joined
07:32
SubStack joined
07:59
penk joined
08:16
xinming joined
08:31
xinming joined
08:35
xinming joined
08:53
VanilleBert joined
|
|||
OwlEye | good morning :) | 08:56 | |
08:59
dunstabulos joined
|
|||
masak | OwlEye: morning | 09:04 | |
09:05
SubStack joined
09:25
dunstabulos joined
09:30
elmex joined
09:31
chris2 joined
09:32
iblechbot joined
09:36
the_dormant joined
09:37
orafu joined
09:38
buetow joined
09:40
buetow joined
09:57
xinming joined
10:00
VanilleBert left
|
|||
svnbot6 | r15910 | Darren_Duncan++ | ext/QDRDBMS/ : added new file lib/QDRDBMS/Engine/Example/Operators.pm ; large update to PhysType.pm | 10:04 | |
10:13
riffraff joined
|
|||
riffraff | hello | 10:13 | |
chris2, did you apply for the SoC ? If you were not choosen this year I'm going to start a riot | 10:14 | ||
chris2 | i didnt | ||
i dont really have time | |||
riffraff | ah eveything is fine then | 10:16 | |
chris2 | but i wasnt chosen last year :-P | 10:17 | |
riffraff | yeah I remember, but I though it was okay because you're a damn youngster so you have time :) | 10:18 | |
10:34
Belaf joined
10:49
dduncan left
10:53
riffraff joined
11:09
the_dormant joined
11:34
DarkWolf84 joined
11:36
Limbic_Region joined
11:43
mr_ank joined
12:07
lisppaste3 joined
12:08
larsen_ joined
12:09
jerrylee joined
12:38
jerrylee joined
|
|||
masak | ?eval for ="README".open { .say } | 12:41 | |
12:41
evalbot_r15894 is now known as evalbot_r15910
|
|||
evalbot_r15910 | Error: Unsafe function 'Pugs::Internals::openFile' called under safe mode | 12:41 | |
masak | to whom it might concern: the above error message is as of now also given by commandline pugs | 12:42 | |
surely that's not intended? | |||
moritz | no, it isn't :( | 12:45 | |
12:48
OwlEye joined
|
|||
masak | moritz: it is at times like this that I wish I were more intimate with the internals of pugs | 12:50 | |
so that I could just go to the right file, fix, recompile and svn up | |||
err, svn ci | |||
maybe I could pretend to have the requisite knowledge and just sorta stumble upon the flaw | 12:51 | ||
masak tries that | |||
12:52
reZo joined
12:53
reZo is now known as rissy
|
|||
masak | ok, so I'm just thinking out loud here trying to pin down the bug | 12:56 | |
the unsafe function 'Pugs::Internals::openFile' is in src/Pugs/Prim.hs:1059 | 12:57 | ||
though my guess, on second thought, is that Pugs never even gets to that | 12:58 | ||
somewhere there is an enumeration of unsafe functions | |||
and somehow that is triggered now because pugs thinks it's in sage mode | |||
s/sage/safe/ # misspelling not intended | 12:59 | ||
lumi | Do other unsafe functions not work, either? | 13:01 | |
masak | lumi: good question. if you name one, I'kk try it out | ||
s/kk/ll/ # obviously something wrong with my keyboard today | |||
lumi | use | 13:03 | |
masak | seems to work fine here | 13:04 | |
?eval use DOM | |||
evalbot_r15910 | Error: *** Unsafe function 'use' called under safe modeā¤ at -e line 16, column 7-51 | ||
masak | it dies here, but not on my machine | ||
lumi | I'm not really sure what comes next | ||
13:05
Psyche^ joined
|
|||
lumi | ?eval exit 1 | 13:05 | |
evalbot_r15910 | Error: Unsafe function 'exit' called under safe mode | ||
masak | also works here | ||
lumi | So probably open is iffy | ||
moritz rebuilds pugs | |||
masak | lumi: yes | 13:06 | |
?eval system("echo hi") | 13:08 | ||
evalbot_r15910 | Error: Unsafe function 'system' called under safe mode | ||
masak | ...and that worked too over here | ||
so, what makes openFile the exception? | |||
riffraff | sorry, how do I, in perl6, get all the matches of a regex in a string? I mean like something("hello", /./ ) #-> <h e l l o> | 13:12 | |
moritz | riffraff: with comb | 13:14 | |
?eval "hello".comb(/./) | |||
evalbot_r15910 | ("h", "e", "l", "l", "o") | 13:15 | |
lumi | :ov, apparently | ||
moritz | ?eval /./.comb("hello") | ||
lumi | I don't know if it's implemented | ||
evalbot_r15910 | Error: No such method in class Regex: &comb | ||
riffraff | mh.. my english is not good enough to undestand why this is called comb, but thanks :) | 13:16 | |
moritz | combine? | ||
lumi | ?eval "hello" ~~ m:ov/./ | ||
evalbot_r15910 | Match.new(ā¤ ok => Bool::True, ā¤ from => 0, ā¤ to => 1, ā¤ str => "h", ā¤ sub_pos => (), ā¤ sub_named => {}ā¤) | ||
masak | riffraff: it's probably from the verb "to comb through something"="to search something thoroughly" | ||
riffraff | oh cool | 13:17 | |
thanks | |||
lumi | Or :exhaustive | ||
masak | np | ||
13:17
Psyche^ is now known as Patterner
|
|||
lumi | riffraff: See S5, :ex :exhaustive :ov :overlap are the modifiers | 13:18 | |
masak | now, it turns out that in Pugs.Internals.Global, there's a variable defined called safeMode | ||
the strange thing, and where my search by all looks of it sadly ends, | |||
is that this global is by definition very much set to False on my box | |||
(it depends only on the envvar PUGS_SAFEMODE, which is undefined) | 13:19 | ||
and yet I get this error with openFile | |||
anyone else get it? | |||
lumi | I'm rebuilding Pugs, I'll check when it's done.. | ||
masak | goodness | ||
I mean, good | 13:20 | ||
moritz | masak: rebuild will soon be finished.. | 13:23 | |
masak | it's nice to have other hares here to discuss with while the rabbits are sleeping | 13:24 | |
lumi | What's the difference between hares and rabbits? | 13:25 | |
masak | eh, that didnt make much sense... s/hare/turtle/ | ||
moritz is immune to figurative speech | |||
masak | sorry, it's a metaphor $larry used the other day | ||
apparently, the hares are those coding away at lightning speed | |||
lumi | Better than ants and grasshoppers, I guess | 13:26 | |
masak | :) | ||
while tortoises do things slowly but constantly | |||
riffraff | is there something like <alpha>+ builtin? <word> seems reasonable, but it looks that it sucks too much resources | ||
talking of regexn, again | |||
(nothin about it in S5, afaict) | |||
lumi | Okie, a fresh Pugs on feather seems to not have your thing | 13:27 | |
moritz | there is <ident> or something | ||
lumi | masak: That was to you, sorry | ||
moritz | pugs> "/etc/passwd".open | ||
{handle: /etc/passwd} | |||
masak | riffraff: have you checked S05? feather.perl6.nl/syn/S05.html | ||
moritz | masak: no problem here | ||
masak | moritz: well, that's reassuring in a way | 13:28 | |
I'm also recompiling here | |||
maybe I had an old version installed system-wide | |||
lumi | But it doesn't seem to like paths at all | ||
masak | lumi: that's part of what's being discussed now on p6l I guess | ||
lumi | Actually it seems to just not work | ||
riffraff | masak, yes, doing that, no luck. Now checking A05 | 13:29 | |
lumi | pugs: "AUTHORS".open: openFile: does not exist (No such file or directory) | ||
Oh uh, this is actually just my stupidity, sec | |||
masak | lumi: which means that it does not throw an unsafe-error, at least | ||
moritz | lumi: what does "AUTHORS" ~~ :e says? | ||
masak | moritz: it asks whether the file exists | 13:30 | |
lumi | Reading the error I realize I didn't have -e | ||
moritz | masak: I know... | ||
lumi | So, it works with no error | ||
masak | ah, ok, so now it works here too | ||
sorry for kicking up a fuss over nothing :/ | 13:31 | ||
riffraff | mh.. <ident> in Exegesis 5.. but gets _ too. It seem I'll stick qith <alpha>+ :) | ||
lumi | masak: Your safe mode error went away? | ||
masak | moritz: oh, so your question was not about the semantics but over what happens on my machine? sorry | ||
lumi: yup | |||
guess they fixed it | |||
:) | |||
moritz | riffraff: rule word { <alpha>+ } | ||
lumi | The Perlgods? | ||
riffraff | eheh yes | 13:32 | |
moritz | masak: right, np | ||
masak | lumi: yeah. those perlgods sure are fast | ||
riffraff: normally in these cases, "_" is considered alphanumeric or quasi-alphanumeric for some reason | 13:33 | ||
moritz | I have a problem with the debian buils of pugs... | ||
they include Perl6::Perldoc.pm, and I'd like to exclude them... | |||
because that module is on CPAN as well, and may be installed seperately | |||
any ideas how to exclude them? | 13:34 | ||
riffraff | I can see the reason for that, but in my case it is not good | ||
moritz | or to build a separate package for them | ||
masak | moritz: making last-minute changes to Makefile? actually I don't know what the SOP is in this type of case | ||
& # spring sun is calling | 13:36 | ||
13:38
xinming joined
13:48
BooK joined,
Jedai joined
14:01
rissy joined
14:06
diakopter joined,
ortmage_ joined,
rissy joined
14:10
fglock joined
14:20
the_dormant joined
14:28
eden_c joined
14:32
Belaf joined
|
|||
fglock | does ' sub *say {xxx} ' mean: ' &*say := {xxx} ' or: ' &*say ::= {xxx} ' | 14:40 | |
xinming | fglock: Maybe compile time binding. | 14:43 | |
fglock | xinming: ok, this means that BEGIN { say() } would use it immediately | 14:44 | |
but does it affect the other parts of the compiler? | |||
the real question is, | |||
is there a separation between the running compiler and the compile-env? | 14:45 | ||
(separate namespaces) | |||
xinming | I think TimToady should answer the question. :-P Sorry, I don't know | 14:47 | |
fglock | xinming: ok | 14:48 | |
14:54
OwlEye joined
15:09
dunstabulos joined
15:15
ajs joined
15:35
mr_ank joined
15:38
kanru joined
15:49
jamhed joined
|
|||
TimToady | fglock: not sure what you're asking, but within a given compilation unit the code does not care whether it is running at compile time or run time. The compilation unit is exempt from having to specify COMPILING:: to refer to the currently compiling scope. | 15:49 | |
and when it starts up at run time, the comp unit has a snapshot of what the comp unit ended with at compile time. | 15:51 | ||
16:04
amnesiac joined
16:08
rashakil__ joined
16:13
justatheory joined
16:27
Belaf_ joined
16:42
jaam joined,
jaam left
16:50
forsaken joined
16:52
the_dormant joined
17:01
fglock joined
17:08
fglock joined
|
|||
fglock | TimToady: re snapshot, is it COW or an alias? for example, what happens to the compiler error messages if BEGIN modifies 'say' | 17:09 | |
17:14
Yappo is now known as Yahoo,
Yahoo is now known as Yappo
17:23
bonesss joined,
Psyche^ joined
17:38
Psyche^ is now known as Patterner
17:40
Belaf_ is now known as Belaf
17:44
fglock joined
17:45
fglock_ joined,
weinig is now known as weinig|away
|
|||
fglock_ | ?eval my $a = 3; $a[10] | 17:45 | |
evalbot_r15910 | \undef | ||
fglock_ | ?eval my $a = 3; $a[10][10] | ||
evalbot_r15910 | Error: Can't modify constant item: VUndef | ||
fglock_ | ?eval my $a; $a[10][10] | 17:46 | |
evalbot_r15910 | \undef | ||
fglock_ | is this a pugs bug, or spec? | ||
TimToady | bug, rvalues should not be attempting to autovivify | 17:48 | |
on *say, I think that every compilation unit starts off with a clean GLOBAL space when compiling. | 17:49 | ||
at run time, however, only the main program gets to keep its snapshot of GLOBAL | |||
so the main program can use BEGIN to set *say, but non-main would have to use INIT. | 17:50 | ||
alternately, nobody gets to set *say except the prelude, or anybody gets to set *say, and we have a problem managing transactions. | 17:51 | ||
fglock_ | clean GLOBAL meaning, the compiled-code '*say' is freshly compiled, rather than a snapshot of the current runtime | ||
TimToady | a module has to be precompilable without knowing what context it will be used in. | 17:52 | |
(unlike in P5) | |||
meaning, at the point of starting to compile a module, * is whatever the prelude gives you, and nothing else. | 17:53 | ||
however, for multis, I think the main application has to have control over what is or is not in * | 17:54 | ||
multis can be added or deleted at run-time, but onlys can be assumed to be permanent over their scope. | 17:55 | ||
fglock_ | there is the compiler-side prelude, and there is the code-under-compiling prelude (with separate *say instances) | ||
TimToady | I don't see the distinction you're trying to make | 17:56 | |
fglock_ | I wished I could upload my diagram :( | ||
TimToady | well, send me a link when you figure out how | 17:57 | |
fglock_ | Compiler is: GLOBAL+Namespaces+Pads; contains %Env | ||
%Env contains it's own GLOBAL+Namespaces+Pads | |||
TimToady | why? | 17:58 | |
fglock_ | one sec | ||
BEGIN { ... redefine say } ... syntax error -- the syntax error is printed with the Compiler::GLOBAL::say, rather then from %Env::GLOBAL::say | 18:01 | ||
or: %Env only contains pads, and all GLOBAL and namespaces are shared between compiler/compiled | 18:03 | ||
TimToady | first, I doubt the compiler should be printing errors with a redefinable routine like "say". | 18:04 | |
but leaving that aside | |||
I think it's strange to have more than one GLOBAL namespace | 18:05 | ||
and the user will assume they have only one. | |||
the basic problem is that different comp units will end up with different ideas about GLOBAL | |||
and I think the main comp unit has to win there, for some definition of "win" | 18:06 | ||
at the moment I'm happy with just throwing away the module's idea of GLOBAL after the module is compiled | |||
it just has to run with whatever GLOBAL the main program provides. | |||
(exception: modules imported by the prelude) | 18:07 | ||
rather than just throwing away a module's GLOBAL, it might be possible to try to mesh them like a Palm resync, but that gets complicated. | 18:09 | ||
18:09
eden_c joined
|
|||
TimToady | an intermediate solution would be to just check for obvious conflicts and warn them if two module's GLOBAL sections seem to conflict | 18:09 | |
we also have modules that may or may not be the main program, so we'd have to keep the GLOBAL around for when they run as main, and ignore/warn/mesh when not main. | 18:10 | ||
in general, for setting multis an INIT would be good enough if there's already an appropriate global proto | 18:11 | ||
as long as you don't need the multi at compile time | |||
fglock_ | ok - how about other globals, compiler's $X::y is the same as compiled's $X::y | ||
TimToady | globals have to be global | 18:12 | |
fglock_ | so both GLOBAL and globals are not included in %Env | 18:13 | |
avar | does this mean the core ops are immutable at compile time? | ||
fglock_ | no, it means they are mutable | 18:14 | |
avar | storing say in Compiler:: = immutable? Or %Env? | 18:15 | |
fglock_ | they are shared by the compiler and the code-under-compilation | ||
only compiler-lexical versions are immutable | 18:16 | ||
globals are not protected | 18:17 | ||
TimToady | perhaps we can have "multi *say (*@_) is export {...}" and then importing say to the main scope installs the module's multi in main's global space, which persists into the runtime. | 18:21 | |
fglock_ | yes | ||
18:23
rindolf joined
|
|||
rindolf | Hi all. | 18:23 | |
I wonder: do we really need irc.perl.org any more? | |||
offby1 | I -think- that's the domain name I use to connect ... | 18:24 | |
eden_c | that's where I get support for Catalyst and DBIC | ||
fglock_ | TimToady: feather.perl6.nl/~fglock/kp6-environment.jpg | 18:25 | |
avar | irc.perl.org has a distinct community. Merging IRC networks hasn't been so successful in the past if you're thinking of telling people to use freenode:) | 18:26 | |
fglock_ | ignore the "$Env=Main.clone" - fixing | ||
offby1 | "2007-14-04"? The fourth day of the 14th month in 2007? | 18:27 | |
18:27
claes__ joined
|
|||
avar | fglock_: anyway, you could join #perl on irc.freenode.org to discuss this. A bit more on topic there than in the p6 chan:) | 18:27 | |
ook | |||
fglock_ | iso-something | ||
avar | rindolf, not fglock_ :) | 18:28 | |
fglock_ | :) | ||
iso-8601 | 18:29 | ||
offby1: no, you are right | 18:32 | ||
fixing | |||
TimToady | it's a nice compromise: USians like it because it puts the month first, and non-USians like it because it's the "correct" order in reverse. and everyone likes it because it sorts better. | 18:34 | |
rindolf | avar: well I think that people who connect to irc.perl.org because they think this is the proper network to discuss Perl and then join #perl will be heavily disgusted. | ||
TimToady: hi. What's up? | |||
TimToady | the sun is up, but not out. | 18:35 | |
though literally, the sun is out, but not in... | |||
fglock_ | I fixed a few things on the picture, please reload | ||
TimToady | it seems to be confusing compile time with run time. the $env arrow is at run time, not compile time | 18:37 | |
well, it's at use time, which is run time for the module. | |||
offby1 is pedantic about date formats ... and about noting the time zone whenever displaying a time! | |||
fglock_ | the picture only shows the compiler; the compiled-code-runtime is later | 18:38 | |
TimToady | so, are the Zulus in the Zulu time zone? | ||
fglock_ | I'll try to include that | ||
TimToady | at the time the module is compiled there is no $env arrow. | ||
18:38
tuna joined
|
|||
TimToady | it is likely the main is not compiled yet | 18:39 | |
18:39
lb joined
|
|||
fglock_ | thinking... | 18:40 | |
TimToady | maybe you want to draw it more like a protocol negotiation between two entities over time. | ||
fglock_ | I've been seeing it like this: | 18:41 | |
BEGIN blocks execute as if they were a coroutine | |||
while the compiler is running | |||
the parser also executes as a coroutine | 18:42 | ||
the parser side-effects modify the coroutine pads and globals | |||
in the picture, yellow is plain p6, and blue is the coroutine | 18:43 | ||
TimToady | ok, I was misreading the blue as a module compile | 18:44 | |
It's not really coroutines | 18:45 | ||
the only thing running is the compiler. | |||
but the parser can generate closures to be executed by the compiler. | |||
fglock_ | (it's a snapshot of the memory, during compilation) | ||
yes | 18:46 | ||
TimToady | and those closures are special in that they do not have to say COMPILING:: | ||
fglock_ | (the closures are blue) | ||
s/are blue/execute inside blue/ | |||
TimToady | maybe you're trying to put too many dimensions in at once. | ||
maybe not | 18:47 | ||
but in that case I still don't see what the $env arrow is doing. | 18:48 | ||
fglock_ | what does COMPILING:: points to? the closures lexical environment? | ||
I think my $env is "COMPILING::" | |||
TimToady | it points to the lexical scope currently being parsed and compiled | ||
fglock_ | yes, it is | 18:49 | |
I should change that | |||
rindolf | TimToady: I'm sorry that I didn't contribute to punie yet. | ||
TimToady: like I said I had high aspirations of making it into a fully-functional Perl 5 compiler someday. | 18:50 | ||
TimToady | er, I didn't know/didn't remember you were supposed to be. :) | ||
rindolf | TimToady: oh. | ||
TimToady | so don't sweat it... :) | ||
rindolf | TimToady: I sent it to a few mailing lists. But it could have been lost in confusion. | ||
avar | fglock_: What are your plans with mp->kp->..? It seems to be pretty easy to add another emitter. | 18:51 | |
fglock_: As you're doing with parrot | |||
18:51
jisom joined
|
|||
rindolf | Having read CatB, Joel-on-Software, and other stuff, I've become extremely paranoid of an open editor window. | 18:51 | |
I usually prefer hacking on some existing code. | |||
offby1 | afraid you'll jump out of it? | ||
rindolf | As you people may know, I'm now working on t/TEST -> Test::Harness -> Test::Run which was originally written by TimToady for perl1. | 18:52 | |
It was pretty hairy when I started with it. | 18:53 | ||
offby1: well, if it's a very short task it's OK. | |||
offby1: but if you tell me to do something big... then it's too intimidating. | |||
offby1: I wasn't always like that. | |||
When I started as a programmer I always thought of big pie-in-the-sky projects. | 18:54 | ||
offby1: have you written your own CMS, yet? | |||
Because I did. | 18:55 | ||
fglock_ | TimToady: please reload | ||
rindolf | TimToady, avar: can I pick your brain about Perl/XS and the perl5 internals? | ||
offby1 scratches his head | |||
fglock_ | avar: current plan is to "finish" kp6, getting closer to Perl6 | 18:56 | |
[particle] | fglock: hackathon still ongoing? | ||
fglock_ | [particle]: yes, but we can't commit from here | 18:57 | |
behind a proxy or something | |||
[particle] | :( | ||
fglock_ | [particle]: kp6->parrot seems more possible than mp6->parrot, so the focus has changed a bit | 18:58 | |
[particle] | what makes kp6 friendlier for perl6/parrot? | ||
fglock_ | [particle]: AST transformations | ||
[particle] | will you target perl6 or past? | 18:59 | |
avar | rindolf: Sure, what are you working on there? | ||
[particle] | s/target/emit/ | ||
18:59
the_dormant joined
|
|||
fglock_ | [particle]: not sure yet, will probably work on both - but perl6 seems to be more fun | 18:59 | |
18:59
sorear joined
|
|||
avar | If parrot is a viable target for kp6 that's very interesting indeed:) | 19:00 | |
fglock_ | TimToady: I pointed COMPILING:: to the current lexical scope; $Env holds the root closure | 19:01 | |
19:02
lichtkind joined
|
|||
rindolf | avar: I'm trying to write a concentrated guide for that. DocBook/XML, Public Domain with useful SVG illustrations, etc. | 19:03 | |
TimToady | I think of the arrows as pointing the other way, arrows of reference rather than data flow... | ||
avar | rindolf: nice, you can /query and stuff:) | 19:04 | |
rindolf | Instead of the current perlembed, perlxstut, etc. | ||
avar: will /msg be fine? | |||
avar: I'm behind a NAT. | |||
avar | yes.. | ||
rindolf | avar: OK. | ||
avar | here is fine too:) | ||
TimToady | rindolf: it takes me a long time to transition back to thinking about P5 internals, so in general I'd rather not unless it's in large batches. | 19:05 | |
rindolf | TimToady: OK, no problem. | ||
fglock_ | hmm - I'll just use plain lines | ||
rindolf | I think it was a week ago that I attended a very successful Ruby-Israel meeting. | ||
19:06
OwlEye joined
|
|||
rindolf | Most of the Rubyers came from Perl or Python, I think. | 19:06 | |
They made some classical mistakes, but I've pointed them to the right direction. | |||
TimToady | I've been saying that Ruby was the real competition for Perl for about ten years now... | 19:07 | |
moritz | why not python? | 19:08 | |
offby1 | yeah! do tell | 19:09 | |
offby1 pulls up a chair | |||
TimToady | Ruby is trying to take over the TMTOWTDI niche. Python isn't. | ||
offby1 scratches his head again, but this time in a different spot | 19:10 | ||
rindolf | Well, some of the Rubyers had some misconceptions about Perl. | 19:13 | |
Especially the ones without any real experience with it. | |||
TimToady: I still think Perl is the best solution for UNIX system scripts. | 19:14 | ||
But that's a small niche. | |||
Khisanth | because there are only a handful of UNIX installations in the world? ;) | 19:17 | |
moritz | 4, to be a bit more specific ;-) | 19:19 | |
rindolf | Khisanth: no. | ||
offby1 | hmm, is there a simple way to get the output of "localtime" rendered as a string, like perl5's "asctime"? | ||
19:19
sorear left
19:22
TDDPirate joined
19:26
TDDPirate left
|
|||
fglock_ | I hope this is more clear: feather.perl6.nl/~fglock/kp6-environment.jpg | 19:27 | |
19:28
SCalimlim joined
19:29
OwlEye joined
19:32
Limbic_Region joined
19:51
offby1` joined
19:55
fglock joined
20:00
ROBO-chessguy joined
20:04
perlbot joined
20:07
perlbot joined
20:08
Aankhen`` joined
20:11
diakopter joined
|
|||
svnbot6 | r15911 | diakopter++ | fixing syntax error. :| | 20:11 | |
r15911 | diakopter++ | watch this space: perlcabal.org/syn/S26.html | |||
diakopter waits for pugs build failure notice, again. | 20:13 | ||
20:16
offby1` is now known as offby1
20:26
fridim joined
20:27
dduncan joined
|
|||
diakopter | does anyone know how often/when smartlinks.pl is scheduled to run on feather? | 20:28 | |
or is it called by an svn commit hook script? | |||
20:42
dduncan joined,
Aankhen`` joined,
rindolf joined,
bonesss joined,
forsaken joined,
Polar joined,
evalbot_r15910 joined,
devbot6 joined,
jql joined,
devbot6` joined
|
|||
moritz | I think I read something about a regular update | 20:42 | |
20:43
devbot6` is now known as devbot6,
silug joined
20:44
Polar joined,
Aankhen`` joined
20:56
forsaken joined
21:04
the_dormant joined
21:36
the_dormant joined
21:49
the_dormant joined
21:51
dmq joined
21:55
Limbic_Region joined
21:56
ortmage_ joined
|
|||
offby1 | ?eval "Yes, I'm here" | 22:06 | |
22:06
evalbot_r15910 is now known as evalbot_r15911
|
|||
evalbot_r15911 | "Yes, I\'m here" | 22:06 | |
offby1 | ?eval localtime | ||
evalbot_r15911 | \Time::Local.new(("day" => 15), ("hour" => 0), ("is_dst" => Bool::True), ("min" => 7), ("month" => 4), ("picosec" => 248012000000), ("sec" => 1), ("tz" => 7200), ("tzname" => "CEST"), ("wday" => 1), ("yday" => 104), ("year" => 2007)) | 22:07 | |
offby1 | so how can i get that rendered as Sat Apr 14 15:07:27 PDT 2007 ? | ||
avar | ?eval ~(localtime) | ||
evalbot_r15911 | "<obj:Time::Local>" | 22:08 | |
offby1 | mm hmm | ||
avar | ?eval "" ~~ localtime() | ||
offby1 | what's ~(do) ? | ||
evalbot_r15911 | Bool::False | ||
offby1 | :-) | ||
avar | I'm trying to stringify:) | ||
eval "{localtime()}" | |||
?eval "{localtime()}" | |||
evalbot_r15911 | "<obj:Time::Local>" | ||
offby1 | stubborn, ain't it. | ||
avar | yep | ||
geoffb | ?eval my $time = localtime; $time.ymd | ||
evalbot_r15911 | Error: No such method in class Time::Local: &ymd | ||
geoffb | ?eval my $time = time; $time.ymd | 22:09 | |
offby1 | how do I ask what methods an object supports? | ||
evalbot_r15911 | Error: No such method in class Rat: &ymd | ||
22:09
perlbot joined
|
|||
geoffb | ?eval my $time = localtime; $time.HOW.perl | 22:09 | |
evalbot_r15911 | "\\Class.new((\"is\" => (\"Scalar\",)), (\"name\" => \"Time::Local\"))" | ||
Jedai | ?eval time().HOW | ||
evalbot_r15911 | ^Num | ||
geoffb | ?eval my $time = localtime; $time.WHAT.perl | ||
evalbot_r15911 | "::Time::Local" | ||
geoffb | grrr, now I need to actually go and read the docs, sigh | 22:10 | |
offby1 | I too was trying to avoid that :-) | 22:11 | |
geoffb | ?eval my $time = localtime; $time.HOW.methods.perl | ||
evalbot_r15911 | Error: No such method in class Class: &methods | 22:12 | |
22:12
perlbot joined
|
|||
geoffb | ?eval my $time = localtime; $time.methods.perl | 22:12 | |
evalbot_r15911 | Error: No such method in class Time::Local: &methods | ||
geoffb | Well, I think that's correct syntax, just unimplemented | ||
22:13
tibbetts joined
|
|||
moritz | is .WHO.foo the same as .^foo? | 22:14 | |
offby1 | Who, or why, or where, or WHAT ... is the sultan of SWAT? | ||
geoffb | .^foo is the same as .HOW.foo | 22:15 | |
moritz | and .WHY always returns 42? *g* | 22:16 | |
22:16
mako132 joined,
perlbot joined
22:24
diakopter joined
|
|||
dduncan | audreyt was going to integrate the new metamodel, but had to deal with issues at home ... but presumably once that is done, the .HWO and whatever should just work | 22:24 | |
22:28
LimbicRegion joined,
LimbicRegion is now known as Limbic_Region
|
|||
diakopter | @messages | 22:29 | |
lb | You don't have any new messages. | ||
offby1 | dduncan: you mean, with no special effort on behalf of the class' implementor? | 22:30 | |
implementer | |||
dduncan | what I mean is that the meta-model methods should all work for the system-defined data types | ||
and have reasonable defaults for user-defined ones | |||
offby1 | sounds good | ||
dduncan | you would have to, eg, do something yourself to make your own class act like a "value" type for example | 22:31 | |
eg, you have to define your own .WHICH to make your class return something useful for an immutable object rather than something like its memory address, which is for mutable objects | |||
I'm waiting to use that stuff myself | 22:32 | ||
meanwhile, I'm giving my value classes "which" methods that I can invoke for similar purposes, such as to implement a set of objects | 22:33 | ||
that is implemented using the "which" value as a hash key and the object as the value | 22:34 | ||
22:34
perlbot joined
|
|||
dduncan | or more generally, I'm using that to implement a relation data type that effectively can have multiple keys for the same values | 22:34 | |
22:35
perlbot joined
|
|||
dduncan | if you look at ext/QDRDBMS/lib/QDRDBMS/Engine/Example/PhysType.pm, you can see what I'm talking about | 22:35 | |
note that my which() includes the class name in the serialized value, so that the right thing happens if you put different types of objects in the same hash | 22:36 | ||
afaik, Pugs' WHICH doesn't do this, or at least that doesn't show up when printing the WHICH value | 22:37 | ||
I think the current WHICH of Pugs just returns the value itself | |||
22:37
perlbot joined
|
|||
Juerd | Who maintains trac on feather? | 22:45 | |
It should be optimized somehow | |||
dduncan | dunno | ||
offby1 | if every object can display its methods and stuff on demand, that would imply that it'd be relatively easy to write an IDE with "Intellisense" | 23:16 | |
avar | you still need to figure out what the object is an instance of, which requires parsing/compiling.. | 23:18 | |
TimToady | I think offby1 is counting all that under "and stuff". | 23:20 | |
23:34
deq` joined
23:36
esstone joined
23:46
offby1` joined
23:48
offby1` is now known as offby1,
mako132 joined
|