openfoundry down, fallback: svn.perl.org/perl6/pugs/trunk/ | -Ofun: xrl.us/hxhk | pugscode.org | pugs.kwiki.org | paste: paste.lisp.org/new/perl6 or sial.org/pbot/perl6 Set by autrijus on 4 November 2005. |
|||
autrijus | theorbtwo: also if you are working on Cgen, misc/Blondie/ may be inspirational | 00:01 | |
RTS = runtime system, which carries the ability to eval string | 00:02 | ||
theorbtwo | That'd be... hard. | ||
I was thinking that'd be pretty well dead last -- is it needed for simple stuff? | |||
Right now, I'm at can't-start-yet stage, because I can't get PIL for Prelude.pm. | 00:03 | ||
autrijus | hm. | 00:05 | |
theorbtwo | Yeah, I probably shouldn't consider this a blocker yet. | ||
autrijus | try taking the FIRST away and desugar it? | ||
theorbtwo | Odd; there's only one FIRST and I just changed it, but I still get the same error. | 00:10 | |
autrijus | did you rebuild pugs? | 00:11 | |
I think it's taking its own compiler space FIRST | |||
since prelude is inlined | |||
now it really shouldn't do that. | |||
theorbtwo | Oh. I modified a copy of prelude. | ||
Hold on a sec, let me try another trick or two first. | 00:12 | ||
OK, renaming the file and changing the module declaraton at the top don't help, will try editing the main copy and recompiling. | 00:13 | ||
Oh -- I'm not using a quite-current SVN snap; should I change to the fallback repo? | |||
svnbot6 | r6477 | autrijus++ | * Squash an empty import warning for precompiled preludes. | ||
autrijus | change to fallback please | ||
I may have a fix for you in a bit | |||
(shower, bbiab) | |||
dduncan | actually, what I think I'll do first is ... | 00:14 | |
an in-memory database that can be dumped to and reloaded from disk in the form of perl code | |||
it won't be very fast, but it should be suitable as a proof of concept | 00:15 | ||
theorbtwo | Eh, dduncan? | ||
dduncan | the perl code wouldn't be very complicated, just hashes of arrays of ... | ||
I'm just saying what I'll probably do prior to writing a MySQL client | 00:16 | ||
theorbtwo | Oh! | ||
I forgot that you were writing a DBI. | |||
dduncan | the easiest thing to do in my mind is just make a database in perl | ||
talking to other ones can come after this is known to be working | |||
Pugs' testing needs should be largely met either way | 00:17 | ||
Juerd | Will it be a straight port, or are interface suggestions welcome? | 00:18 | |
If the latter, please study DBIx::Simple | |||
dduncan | suggestions are always welcome, though I have an idea what I want to do ... it will be influenced by existing things but not be a straight port of them | 00:19 | |
theorbtwo | Allo, scook0. | 00:20 | |
dduncan | the native interface will be a SQL AST, so I don't have to parse SQL internally, but a SQL parser can be wrapped around it for people that prefer that way of doing things | ||
scook0 | hi | ||
dduncan away to the mailbox ... | 00:21 | ||
theorbtwo | dduncan: I'm not sure if that'd mean more work or less. | ||
I suspect that means many backends are going to have to put the AST back down into actuall SQL. | 00:22 | ||
autrijus | theorbtwo: I have a fix for you now. will commit in a bit | 00:23 | |
theorbtwo | How do you svn switch from the native repo to the perl.org one? Plain switch wants to contact the original repo, --relocate complaigns about mismatching uuids... | 00:24 | |
autrijus | svn can't do that -- need svk | ||
theorbtwo | Oh. | 00:25 | |
theorbtwo just rm -rfs the directory, and will reget from the right repo with svk. | |||
dduncan | just to clarify, my very first perl 6 database related thing that works will be completely self-contained; it *is* the back-end ... | 00:26 | |
for very simple relational databases, coding up an implementation is actually quite easy, easier than interfacing to other dbs | |||
mainly this is a proof of concept, to test that a front end works correctly, while limiting the number of points of possible failure, for testing | 00:27 | ||
autrijus | theorbtwo: you can get svk with just syncingc the [h]ead | 00:28 | |
dduncan off to the mailbox | |||
theorbtwo feels like a rank n00b. | 00:30 | ||
svnbot6 | r6478 | autrijus++ | * theorbtwo notes that FIRST {} blocks did not | ||
r6478 | autrijus++ | desugar into anything that passes PIL compilation, | |||
r6478 | autrijus++ | as it's useing a Stmt in LValue position. | |||
r6478 | autrijus++ | Fixed by desugaring using ternary if. | |||
theorbtwo | HTTP Path Not Found: REPORT request failed on '/perl6/!svn/bc/1/pugs/trunk': '/perl6/!svn/bc/1/pugs/trunk' path not found | ||
autrijus | this is with [h]? | ||
theorbtwo | Yep. | ||
autrijus | very weird. | ||
maybe try -3 or something | |||
theorbtwo | First-time using, took defaults for everything. | 00:31 | |
autrijus | default is [a] | ||
theorbtwo | Well, everything except that. | 00:32 | |
Hitting up-enter from the shell prompt is now working, though. | |||
autrijus | mm, can't reproduce it here :/ | ||
ok... | |||
then svk pull from it | |||
to get the latest change | 00:33 | ||
that should fix prelude comp for you | |||
theorbtwo | (Didn't ask me how much to get, though, and seems to be getting everything.) | ||
autrijus | I'll go shower for real :) | ||
theorbtwo | Have fun. | ||
nothingmuch | autrijus: ping | 00:40 | |
autrijus | nopong | 00:47 | |
(about to sleep, so try to be brief :)) | |||
...timeout? | 00:56 | ||
oh well. good night lambdacamels, see you tomorrow :) | |||
autrijus waves & | |||
nothingmuch | not yet | 00:57 | |
theorbtwo | Goodnight, autrijus. | ||
autrijus | nothingmuch: for pads chip is the guy you want to ask | 00:58 | |
nothingmuch | one short thing | ||
i skimmed the doc and wasn't sure | |||
autrijus | I merely confirm the sanity, and the ability for codegen to gen it | ||
nothingmuch | are they statically resolved? or dynamically at runtime by hashing? | ||
because if they could be made into an offset table, that would be performance happy | |||
autrijus | you are asking impl, not spec, then | ||
the spec doesn't say really what :outer will be turned to by PIR | 00:59 | ||
nothingmuch | just whether the spec seems to be vague enough to allow it | ||
autrijus | yeah | ||
nothingmuch | ah, ok | ||
autrijus | impl is leo's domain. | ||
& | 01:03 | ||
rafl_ wants to comment on S22 but is too lame to check out yet another repository.. :-/ | 02:00 | ||
autrijus: Could Module::ScanDeps be extended to give me the required version if a script does 'use Foo::Bar 1.00;'? | 04:36 | ||
'-Ofun: xrl.us/hxhk | pugscode.org | pugs.kwiki.org | paste: paste.lisp.org/new/perl6 or sial.org/pbot/perl6' | 05:06 | ||
nothingmuch | obra: ping | 05:50 | |
obra: what size delay should I expect from replies to rt.cpan.org? please answer with my nick so I can backlog | 05:51 | ||
obra | hey | 05:54 | |
nothingmuch: we greylist. so at least 5 minutes. but depends on your MTA | 05:55 | ||
nothingmuch: also, we go through perl.org for spamfiltering | |||
nothingmuch | ah | ||
in that case i won't suspect failure yet | 05:56 | ||
thanks =) | |||
good night | |||
06:03
rafl_ is now known as rafl
|
|||
dduncan | well, it appears that the usual server is up again | 06:41 | |
geoffb | *yawn* | 08:19 | |
gaal | say "Hello, world!" | 08:22 | |
xinming | ?eval multi sub infix:<+> ( $a, $b ) { "$a $b" }; "good"+"afternoon"; | 08:36 | |
evalbot_7842 | "good afternoon" | ||
christopher | Why can't I write [=] ($a, $b, $c) 3; to initialize a whole array? | 10:36 | |
svnbot6 | r6479 | autrijus++ | r7891@not (orig r7842): rafl | 2005-11-05 07:02:24 +0100 | 10:41 | |
r6479 | autrijus++ | r19201@ata: rafl | 2005-11-05 06:53:22 +0100 | |||
r6479 | autrijus++ | * My ideas on S22. | |||
r6479 | autrijus++ | r19202@ata: rafl | 2005-11-05 07:01:46 +0100 | |||
r6479 | autrijus++ | * Some more S22 thoughts. | |||
christopher | sorry, that should be [=] $a, $b, $c, 3; same question. | 10:47 | |
autrijus | iblech: svnbot6 can point back to openfoundry | 10:50 | |
christopher: because assignment is not (yet) an infix operator. | |||
hm, wait, but it is :) | |||
autrijus looks | 10:51 | ||
looks like an easy fix... fixing | 10:52 | ||
christopher | autrijus: so it's not wrong; just a bug? or unimplemented? | ||
autrijus | fixed | 10:53 | |
will commit in a bit | |||
christopher: write a test for it? | |||
in t/operators/reduce-metaop.t | 10:54 | ||
christopher: do you have a committer bit? | |||
christopher | cool, thanks. No, I can't commit. | 10:55 | |
autrijus | okay, your email addr please | ||
(for sending the committer bit) | 10:56 | ||
christopher | autrijus: malon at mit dot edu | 10:57 | |
autrijus | sent. welcome aboard :) the svn repo at svn.openfoundry.org/pugs is back -- please add yourself to AUTHORS and commit a metaop.t | ||
christopher | Do you recommend [=] ($a, $b, $c)>>.foo 3 to initialize member variables at once? | 10:58 | |
autrijus | other than the slight problem of >>.method not yet implemented, sure, why not | 10:59 | |
though the vanilla | |||
.foo = 3 for ($a, $b, $c) | |||
is maybe more readable | |||
svnbot6 | r7841 | stevan++ | Perl6::ObjectSpace : me-- | 11:00 | |
r7842 | rafl++ | r19201@ata: rafl | 2005-11-05 06:53:22 +0100 | |||
r7842 | rafl++ | * My ideas on S22. | |||
r7842 | rafl++ | r19202@ata: rafl | 2005-11-05 07:01:46 +0100 | |||
r7842 | rafl++ | * Some more S22 thoughts. | |||
r7843 | autrijus++ | [Massive backport from svn.perl.org now openfoundry is back] | |||
autrijus | :D | 11:01 | |
(excess flood)++ # spared the channel of a total replay | |||
svnbot6 | r7845 | renormalist++ | Emacs Mode for Perl6: | 11:07 | |
r7845 | renormalist++ | The formerly forked "cperl6-mode.el" is now reintegrated | |||
r7845 | renormalist++ | into cperl-mode.el based on its latest version 5.10. | |||
rafl | Hello renormalist | 11:15 | |
nothingmuch | obra: ping | 11:23 | |
rafl | autrijus: Was it intentional to remove my thoughts on S22 or did that happen by mistake? | 11:24 | |
autrijus | rafl: it happened by mistake | 11:26 | |
I did a co --import from svn.perl.org | |||
so it overwrote the only openfoundry change meanwhile | |||
mea culpa, fixing | |||
done :) thanks for noticing | 11:27 | ||
rafl | Thank you | ||
svnbot6 | r7846 | autrijus++ | * rafl's thoughts on S22, accidentally removed during merge from svn.perl.org. Sorry. | 11:29 | |
renormalist | hi rafl | 11:30 | |
I just have to go with my wife and child around the block. Will be back in 1h. :-) | |||
rafl | renormalist: OK, see you. | ||
svnbot6 | r7847 | renormalist++ | - Forgot contact and usage. (cperl-mode) | 11:34 | |
r7848 | autrijus++ | * Parse for [=] per request from christopher. | 11:40 | ||
r7848 | autrijus++ | However, the lvalue context is not properly restored, so | |||
r7848 | autrijus++ | it does not currently work yet. | |||
theorbtwo | So [=] $a, $b, $c, 5 would set $a..$c to 5? | 11:44 | |
christopher | why not just $a? | ||
sorry, I was going on to the next question. | |||
yes. But if you did ([=] $a, $b, $c, 5) = 3; then $a alone would become 3. | |||
autrijus | that is correct. | 11:45 | |
though this borders on obfu :) | |||
theorbtwo | The last one certianly does, at least. | ||
autrijus | brb... *ponders more about PIL2 * | 11:46 | |
svnbot6 | r7849 | iblech++ | Usual svn props. | 11:52 | |
gaal | ?eval sub foo(Int $p1) { } foo("this should be an error, not a coercion, right?") | 11:53 | |
evalbot_7848 | Can't exec "./pugs": Permission denied at examples/network/evalbot//evalhelper.p5 line 46. | ||
gaal | ?eval sub foo(Int $p1) { } foo("this should be an error, not a coercion, right?") | 11:54 | |
evalbot_7849 | undef | ||
gaal | ?eval sub foo(Int $p1) { say "got: $p1" } foo("this should be an error, not a coercion, right?") | ||
evalbot_7849 | got: this should be an error, not a coercion, right? bool::true | ||
gaal | That can't be right. | ||
What *ought* to happen? | 11:56 | ||
svnbot6 | r7850 | malon++ | Tests for assignment as a reduction operator [=] | 11:58 | |
gaal | ?eval sub foo($p1) { say "alive" } foo(1, 2, 3) | 12:00 | |
evalbot_7850 | Error: No compatible subroutine found: "&foo" | ||
gaal | good. | ||
?eval sub foo($p1) { say "alive" } foo(1) # sanity | 12:01 | ||
evalbot_7850 | alive bool::true | ||
theorbtwo | Woo, prelude PIL (p5), pretty-printed. (Thank you, demerphq, for data-dump-streamer, which BTW gets deep recrusion warnings dumping that.) | 12:22 | |
autrijus | gaal: this is same as | 13:33 | |
my Int $p := "Foo"; | |||
I'm pretty sure that it triggers coerce:<as> | |||
and as such should be a warning and 0 | 13:34 | ||
not "Foo" | |||
otoh until the "types" milestone, I don't really have a rigorous understanding of static vs runtime typing rules :) | 13:35 | ||
theorbtwo: nice to hear! | |||
svnbot6 | r7851 | autrijus++ | * Repair PIR codegen; use "new .Continuation" instead of | 14:10 | |
r7851 | autrijus++ | the old style "newsub" op. Suggested by Leo. | |||
Juerd | One thing I've noticed is that once non-Perl6 things start taking time again, it's very hard to follow development, even superficially... | 14:12 | |
I skip most of the p6l discussion, the irc chatter, the commit logs.. | 14:13 | ||
Thank God (That's Autrijus) there's Autrijus's journal | |||
autrijus | :D | 14:14 | |
to be fair, luqui and obra and allison has all been blogging as well. | 14:15 | ||
# planet.pugscode.org | |||
Juerd | I know, but: | ||
- I'm mostly interested in non-technical updates, as I don't understand things anyway, at the current level | 14:16 | ||
autrijus | nodnod | ||
Juerd | - Luke's journal is hard to grok because it's almost verbatim (I read it sometimes, but not much stays in my head) | ||
- IRC logs are nice for archival, not for reading :) | 14:17 | ||
This leaves your journal as my favourite way of staying more-or-less up-to-date | |||
autrijus | :) | 14:20 | |
there's the weekly summary, though | |||
theorbtwo wonders if anybody has created a livjournal feed from that yet. | |||
Juerd | autrijus: They're hardly summaries. | 14:21 | |
TBH, one can learn almost as much by looking at Subject: lines | |||
theorbtwo | Nope. | ||
autrijus | I don't know... it helps me a lot :) | ||
Juerd | They used to be very good. Now, they read more like indexes than summaries | 14:22 | |
theorbtwo | I'm off for a walk; later. | 14:23 | |
Juerd | Me too | 14:24 | |
autrijus | same, actually :) | 14:29 | |
rafl | renormalist: ping | 14:31 | |
svnbot6 | r7852 | autrijus++ | * inline Continuation support is broken on switch and CGP cores | 14:34 | |
r7852 | autrijus++ | in Parrot -- dies with "Illegal register number"; switch to | |||
r7852 | autrijus++ | computed goto core for -B Parrot. | |||
r0nny_ | yo | 15:20 | |
15:33
wilx` is now known as wilx
|
|||
Steve_p | Hey...where might the most up to date docs for say() be? | 15:34 | |
Perl6::Bible? | 15:35 | ||
masak | Steve_p: well, &say is just &print with a newline thrown in | 15:36 | |
i'm not sure if there's anything more to document :) | |||
Steve_p | There's a bit more to how it works with objects, especially IO-based object IIRC | 15:37 | |
masak | Steve_p: I can't find it in S29 | 15:39 | |
Steve_p | Hmmm | ||
OK, I'll follow what's in Perl6::Say | 15:40 | ||
r0nny_ | ping? - is there a wiki for duscussion of special perl6 module collections ? | 16:01 | |
rafl | What are special perl6 module collections? | 16:02 | |
r0nny_ | casue i got a nice idea for a data serialisation/deserialisation framework should be cappable of handling multiple languages | ||
languages as in xml, yaml and so on | |||
rafl | Isn't yaml already a language that's suitable to serialize almost anything? | 16:04 | |
r0nny_ | yeah | ||
but xml is widely used, too | |||
also it should be cappable of replacin the .perl method | |||
rafl | You can serialize xml with yaml. | ||
r0nny_ | where is the need of serializing xml with yaml, if the app needs xml ??? | 16:05 | |
and in webstuff they use xml for async comunication | 16:06 | ||
so a serializer cappable of xml isnt the worst idea | |||
even if xml is bad vodoo, its common (unfortunately) | 16:07 | ||
rafl | Where is the need of serializing something with xml when the app needs yaml? | ||
r0nny_ | there is ne need | ||
so u dnet need to use this posibility | |||
u just need to be cappable to do | 16:08 | ||
bacasue the next gerneration of web will massively use xml | |||
Khisanth | hmm is throwing gasoline on yourself and setting yourself on fire really a good idea just because it is popular to do so? :) | 16:09 | |
rafl | So what's special now? Simply write an XML serializer. | ||
r0nny_ | Khisanth: i know what u mean | ||
Khisanth | yes, what makes it special? | 16:10 | |
r0nny_ | pecial as in give the people forced to put themself on fire fire-resistent clothes | 16:11 | |
rafl | Is that desirable? | 16:13 | |
r0nny_ | u dont need to give it to people put themsolf on fire by their own will | 16:14 | |
Khisanth | but it doesn't make it special | 16:15 | |
r0nny_ | well - if u do next-gern webapps, u have to deal with xml - so i'd like to see different ways of serializing data with the same api | ||
hmm | |||
rafl | I don't see why an XML serializer is good for that. But well.. simply write it and check it in. Lets see what it can do afterwards. | ||
r0nny_ | maybe special just was the wrong word | ||
it should be one of the modules shiped directly with perl6 | 16:16 | ||
rafl | Write it and ask those guys who are responsible for the Perl 6 distribution. | 16:18 | |
r0nny_ | ok | 16:19 | |
Khisanth | that sounds like a pretty far off discussion to take place | ||
r0nny_ | then im going to investigate how to use perl6 to get informations on its data structures | ||
17:26
dbrock`` is now known as dbrock
|
|||
Juerd | Today I bought and read (skimmed) Perl Best Practices | 18:07 | |
Most of the rules I already practice | |||
Some I find very silly or even a bad idea | |||
Some inspired me and will probably change how I code | 18:08 | ||
And there are some rules that I find contradictory | |||
But it's a good book, anyway | |||
geoffb | Juerd, I think you just had the Standard PBP Response (tm). :-) | 18:12 | |
Juerd | I'm a bit afraid that people who have read this book will never love Attribute::Property because it breaks at least 3 rules on the outside and at least a dozen on the inside | 18:18 | |
But none of the arguments for the rules it breaks apply... (That is, the outside rules. The source could be much clearer, of course.) | 18:19 | ||
geoffb | ?eval my ($q, $r) = (10 / 7, 10 % 7); | 18:23 | |
evalbot_7852 | (\10/7, \3) | ||
geoffb | ?eval my ($q, $r) = (int(10 / 7), int(10 % 7)); | ||
evalbot_7852 | (\1, \3) | ||
geoffb | ?eval my ($q, $r) = (int(10 / 7), int(10 % 7)); "$q $r" | ||
evalbot_7852 | "1 3" | ||
geoffb | ?eval my ($a, $b) = (10, 7); my ($q, $r) = (int($a / $b), int($a % $b)); "$q $r" | 18:24 | |
evalbot_7852 | "1 3" | ||
geoffb | ?eval my ($a, $b) = (10, -7); my ($q, $r) = (int($a / $b), int($a % $b)); "$q $r" | ||
evalbot_7852 | "-1 -4" | ||
geoffb | ?eval my ($a, $b) = (-10, 7); my ($q, $r) = (int($a / $b), int($a % $b)); "$q $r" | ||
evalbot_7852 | "-1 4" | ||
geoffb | ?eval my ($a, $b) = (-10, -7); my ($q, $r) = (int($a / $b), int($a % $b)); "$q $r" | 18:25 | |
evalbot_7852 | "1 -3" | ||
geoffb | good, at least that matches P5 . . . | 18:26 | |
svnbot6 | r7853 | autrijus++ | * Parrot 0.3.1 doesn't allow set_addr for Closure, so use | 19:27 | |
r7853 | autrijus++ | newclosure instead. | |||
r0nny_ | how can i get the hash conains the list of member-name=>menber-value ? and the data-type ? | 19:37 | |
autrijus | elaborate? | 19:38 | |
r0nny_ | it tells it doesnt know this one | 19:39 | |
autrijus | post some code example? | ||
r0nny_ | rafb.net/paste/results/FRdIwR73.html | 19:40 | |
whad did i wrong ? | 19:42 | ||
anyone ? | 19:43 | ||
autrijus | er | ||
I did not mean ".elaborate" | 19:44 | ||
you want to dump the attributes | |||
is that the idea? | |||
r0nny_ | yeah | ||
autrijus | say $baz.perl; | ||
is one | |||
if you want it in hash notation | |||
say %$baz.perl | |||
r0nny_ | i want them in another way | ||
autrijus | is another | ||
if you want to control it | 19:45 | ||
for %$baz.for %$baz.kv -> $k, $v { say "$k: $v" }; | |||
err | |||
for %$baz.kv -> $k, $v { say "$k: $v" }; | |||
something like that | |||
r0nny_ | i want to try writing a generic data serialisation framework can read/write perl data, yaml, yml, and so on | ||
autrijus | try the "for" above | ||
gaal | souldn't $baz.kv work too? | ||
s/s/sh/ | 19:46 | ||
r0nny_ | it wont do | ||
ok - how can i get the data type ? | |||
autrijus | gaal: no, that would be calling kv on the obj | 19:47 | |
which doesn't have such method | |||
the % is a cast | |||
r0nny_: you can use .ref | |||
r0nny_ | direct method ? | ||
gaal | oh it's an *object* | ||
ok | |||
autrijus | r0nny_: yeah, like $v.ref | 19:48 | |
r0nny_ | hmm | 19:49 | |
now i need to find a way to deal with cyclic data | |||
rafl | I guess you can use =:= for that. | 19:52 | |
r0nny_ | =:= ? | ||
rafl | See S03 | 19:53 | |
r0nny_ | nice | 19:55 | |
gaal | I found two amusing ROT-13 pairs today. One is amusing because it's English: "irk".rot13 => "vex" | 19:58 | |
the other is amusing because it's Perl: "gnat".rot13 => "tang" :-) | |||
r0nny_ | hmm | 19:59 | |
does anyone know a good way to find cyclic data structures ? | 20:00 | ||
Khisanth | there are a module or two that does that | 20:01 | |
r0nny_ | wich ones ? | ||
(and are they perl6) | 20:02 | ||
Khisanth | search.cpan.org/~lds/Devel-Cycle-1....l/Cycle.pm | ||
rafl | r0nny_: Simply remember all things you've seen so far and use =:= to check whether the underlying variable is the same. Then you can replace that with a reference to the first occurence. This doesn't discover cycles, but it breaks them up. | 20:04 | |
r0nny_ | hmm | 20:05 | |
i think i will take a look at the perl5 modules, and port them | 20:06 | ||
masak | i have leafed through A05 again, and (again) i realize that perl6 rules are way cool | 20:09 | |
is there an implementation somewhere? | |||
(even a half-finished one) | |||
r0nny_ | afaik the recent pugs version is cappable of them | ||
(if u use a recent parrot) | 20:10 | ||
masak | r0nny_: ok, i'll give it a try | ||
rafl | Look at t/rules | 20:11 | |
What is the 'but' keyword for? | 20:23 | ||
autrijus | S12 | 20:25 | |
"does" is destructive mutator, "but" is the nondestructive (functional) one | 20:26 | ||
svnbot6 | r7854 | autrijus++ | * Accomodate Parrot trunk's PGE::Hs change (r9802) | 20:30 | |
r7854 | autrijus++ | to capture the PGE_String form in Matches. | |||
autrijus | PGE shift/reduce parser support is now in Pugs. | 20:31 | |
obra | ooh | ||
Khisanth | but is it in Parrot yet? :P | ||
autrijus | sure is, because that's where we got it from :) | ||
pugs> ('a*' ~~ /<p6rule>/)<p6rule><expr><type> | 20:32 | ||
"postfix:*" | |||
('a*' ~~ /<p6rule>/)<p6rule><expr>[0]<value> | |||
"a" | |||
etc | |||
you can walk the tree in p6 | |||
just as in PIR | 20:33 | ||
Khisanth | oO | ||
what is ('a*' ~~ /<p6rule>/)<p6rule><expr><type> suppose to mean? | 20:34 | ||
autrijus | the match object returned by matching the string 'a*' | ||
against the builtin named rule <p6rule> | |||
is a match object that has a named "p6rule" | |||
which contains an expr submatch, of type "postfix:*" | 20:35 | ||
with one positional part, a literal "a" | |||
the <p6rule> matches a perl6 rule string :) | |||
Khisanth | well I was mainly confused by the <p6rule><expr><type> part :) | 20:39 | |
now it just looks like it's accessing a hash? | |||
autrijus | yeah | ||
that's exactly what it is | 20:40 | ||
?eval 1 ~~ /1/ | |||
evalbot_7853 | Error: cannot cast from VUndef to Pugs.AST.Internals.VCode (VCode) | ||
frederico | ? say "test"; | 20:44 | |
liz6 | frederico: you mean: | 20:45 | |
?eval say "test"; | |||
evalbot_7853 | test bool::true | ||
liz6 | ? | ||
frederico | yes | ||
liz6, I'm only want to see the bot working. thanks | |||
svnbot6 | r7855 | autrijus++ | * Much improved pretty printing for VMatch objects. | 21:19 | |
r7855 | autrijus++ | This allows a convenient dump of a Match tree in the | |||
r7855 | autrijus++ | Pugs interactive shell. Try this for some AST fun: | |||
r7855 | autrijus++ | pugs> 'ab*|c' ~~ /<p6rule>/ | |||
r7855 | autrijus++ | pmichaud++ for doing all the shift/reduce parser work | |||
r7855 | autrijus++ | behind this feature. :) | |||
autrijus | hmm, L~R broken Makefile.PL | 21:26 | |
by introducing File::Spec ;) | |||
oh well, I guess I'll still keep those. | 21:27 | ||
svnbot6 | r7856 | autrijus++ | * Parrot embedding was broken by Limbic_Region's File::Spec | 21:31 | |
r7856 | autrijus++ | change in Makefile.PL -- repaired the confusion between dot | |||
r7856 | autrijus++ | and commas, although File::Spec is still kept. | |||
autrijus | okay, PGE and eval PIR on both embed parrot and external parrot passed | ||
just in time for Parrot's monthly release :) | 21:32 | ||
svnbot6 | r7857 | gaal++ | Article for The Perl Review (WIP). | 21:33 | |
r7857 | gaal++ | Your suggestions are welcome! My intended audience: Perl 5 programmers who | |||
r7857 | gaal++ | haven't necessarily been following the Perl 6 process. The main focus is | |||
r7857 | gaal++ | getting people interested with things that work now, without overwhelming | |||
r7857 | gaal++ | theoretical discussion. | |||
rafl | autrijus: Great. parrot packages for Debian are also ready so I can release the next pugs in Debian with perl5 and parrot embedding. :-) | 21:34 | |
autrijus | rafl: wonderful :) | 21:36 | |
ooh, gaal article | |||
liz6 | where in the tree can I find that article? | 21:37 | |
eric256 | ?eval 'ab*|c' ~~ /<p6rule>/ | ||
autrijus | apparently docs/articles/tpr.pod | ||
eric256: I don't think evalbot is running on a machine with rules support | |||
?eval 'ab*|c' ~~ /<p6rule>/ | |||
evalbot_7857 | Error: cannot cast from VUndef to Pugs.AST.Internals.VCode (VCode) | ||
eric256 | how do i get rules support on feather? i manage the build there | 21:38 | |
liz6 | hmmm.. I don't seem to have a docs/articles... | ||
autrijus | liz6: svn up | ||
eric256: perlcabal.org/~autrijus/tmp/tmp.txt for output | |||
eric256: you need trunk parrot | |||
rafl | eric256: Ah, good. How about migrating from 'make; make install' to the Debian packages of pugs and parrot? | 21:39 | |
autrijus | accessible somewhere in PATH | ||
that's all | |||
oh right, feather is debian, talk to rafl, never mind me :) | |||
eric256 | lol | ||
autrijus | liz6: svk pull, even | ||
eric256 | rafl are the debian packages avail every 15mins? | ||
autrijus | there's a debian/ file in pugs | 21:40 | |
directory, even | |||
rafl | eric256: No, but it's not a problem to migrate your compile scripts to compile and install Debian packages. Where can I find them? | ||
gaal | hi | 21:42 | |
eric256 | but if Debian packages aren't up to date then whats the point of converting the scripts? | 21:43 | |
/home/eric256/auto | |||
gaal | please tell me I'm not the only one who accidentally selects an entire web page in the browser because I hit ^AA to switch to a shell... | 21:44 | |
svnbot6 | r7858 | autrijus++ | * wizards.p6 - optional params are now ($param?), not (?$param). | ||
geoffb | eric256, I believe rafl is saying "build fresh debian packages during build cycle, and install them" | 21:45 | |
eric256 | ahh. that would make more sense. | ||
geoffb | eric256, :-) | ||
svnbot6 | r7859 | gaal++ | ?$optional -> $optional? in tpr.pod too | 21:47 | |
eric256 | looks like i just needed to export the path to parrot.. so i tried that and we'll see how it works out next build ;) | ||
autrijus | gaal: I never did that because firefox interprets "A" as a search for me | ||
(and sometimes I have the autoselect extension on) | 21:48 | ||
eric256 gets impatient and forces a build. ;) | |||
autrijus | mugwump: you okay if I rm docs/class/ ? | 21:49 | |
it's a wonderful start, but by this time it's outdated | |||
eric256 | so how does 'ab*|c' ~~ /<p6rule>/ generate and object anyway? and does that mean we can make rules that build objects somehow? | ||
gaal | I should just map ^Aa to alt-tab or something. or better, raise the shell window. | ||
autrijus | eric256: yes and yes. | 21:50 | |
it generates and object by running PGE in parrot land, which yields parrot objects, which are serialized, which are then imported to pugs land | |||
gaal | autrijus: what's outdated? | ||
autrijus | gaal: docs/class/ | ||
gaal | ah | ||
autrijus | eric256: however we are currently only treating parrot objects as hash | ||
which is just as well -- we don't yet have obj meth call support in embed anyway | |||
rafl | eric256: Yes, that's what I mean. Where are those scripts? | 21:51 | |
autrijus | fortunately, pmichaud's design has it so all attributes are straight data | ||
so it's not that hard to walk the generated hash | |||
rafl | eric256: We don't need to use the packages if you don't like that, but fresh packages for Debian every 15mins are a good thing though. | 21:52 | |
autrijus | eric256: to write a rule that builds object, write a method that returns objects -- but this requires either a working parrot embedding with objcall support (like we did for p5) | ||
or a working parrot target backend (which depends on lexpad) | |||
or porting PGE to perl6 | |||
(or to hs, that is) | |||
eric256 | ralf that would be fine i think. as long as they don't take too long to build. its on feather at /home/eric256/auto | ||
autrijus | all are interesting directions, but I'll do them after OO/PIL2 :) | 21:53 | |
rafl | eric256: They take approximately as long as a normal build and install plus some seconds to put everything in packages and install them. | ||
eric256 | autrijus...sounds cool . like we'll be able to right a dataformat rule and just matching it will build the object or hash at least | ||
autrijus | eric256: yes. although with rules alone you can only build object trees, not walk or transform them | 21:54 | |
eric256 | still sounds cool. alot different than just straigh old regexp | 21:55 | |
autrijus | to do the walk/transform part, luqui ported the hs UUAG system to perl5 on CPAN as Language::AttributeGrammar -- he also started porting it to p6, and allison ported it to parrot | 21:56 | |
to me, as an avid XML::Twig user, AG feels like Anything::Twig ;) | |||
eric256 | ?eval 'ab*|c' ~~ /<p6rule>/ | ||
evalbot_7859 | Error: cannot cast from VUndef to Pugs.AST.Internals.VCode (VCode) | ||
eric256 | why is that error different than the interactive one? | ||
autrijus | ?eval 1 ~~ 2 | ||
evalbot_7859 | bool::false | ||
autrijus | ?eval 1 ~~ // | 21:57 | |
evalbot_7859 | Error: cannot cast from VUndef to Pugs.AST.Internals.VCode (VCode) | ||
autrijus | ?eval 1 ~~ m:p5// | ||
evalbot_7859 | pugs: *** cannot cast from VUndef to Handle (VHandle) at Prelude.pm line 197, column 24-45 Prelude.pm line 221, column 13-25 Prelude.pm line 278, column 5-54 Prelude.pm line 61, column 30-59 | ||
autrijus | ?eval 1 ~~ m:p5:// | ||
evalbot_7859 | Error: unexpected ":" expecting word character, block construct, term postfix, operator, ">>=:=<<", ">>eqv<<", ">>!=<<", ">>==<<", ">><=<<", ">>>=<<", ">>~~<<", ">>!~<<", ">>eq<<", ">>ne<<", ">>lt<<", ">>le<<", ">>gt<<", ">>ge<<", ">><<<", ">>><<", "\187=:=\171", "\187eqv\171", "\187!=\171", "\187==\171", "\187<=\171", "\187>=\171", "\187~~\171", "\187!~\171", "\187eq\171", "\187ne\171", "\187lt\171", "\187le\171", "\187gt\171", "\187ge\171", "\18 | ||
autrijus | sigh | ||
I think the rx_ macros putter made in Prelude.pm is somehow not working in evalbot | |||
it seems to be an evalbot thing not a pugs thing | |||
eric256 | how do i tell if it has parrot linked (or whatever you call it) | ||
autrijus | you can use ldd | 21:58 | |
eric256 | autrijus i get the same error on the command line in interactive mode | ||
autrijus | but either way should work -- we don't really need embed parrot | ||
eric256 | ohh you just need it in the path while running..i though i needed it in the path while building | ||
parrot executable is in the path on feather | 21:59 | ||
whooo... feather pugs is at 7755...100 commits behind? | 22:00 | ||
?eval $?PUGS_VERSION | |||
evalbot_7859 | \"Perl6 User\'s Golfing System, version 6.2.10, October 10, 2005 (r7859)" | ||
rafl | autrijus: Do we have an svk mirror parrot on feather? | ||
autrijus | rafl: we do | 22:01 | |
see perlcabal.org/~autrijus/ | |||
rafl | "Let me know if you'd also like mirrors for ponie, perl 6 design repo, and/or parrot." | ||
autrijus | er sorry. | ||
p6 design repo is //mirror/p6 | 22:02 | ||
I don't think we have parrot, no. maybe just use svn for that? | |||
eric256 | eval bot isn't running the general pugs build on feather../me goes to investigate | 22:03 | |
rafl | I think it would be useful to have a parrot mirror. Some users have parrot svn copies in their homes. | ||
autrijus | okay. | 22:04 | |
eric256 | hmm svk on it locked for somereason | ||
autrijus | I'll set one up | ||
rafl | autrijus: 4 as far as I see. I'd be the 5th. | ||
autrijus | eric256: sync.pl updates every 60 secs | ||
rafl | autrijus: Thanks. | ||
eric256 | autrijus: on the autobuild co svk said locked, i had to do svk cleanup, now it should work | 22:06 | |
autrijus | that's fine... I'm downloading parrot svk boot | ||
eta 2min -- brb | |||
eric256 just realizes...does that mean i could pass a perl6 file to that rule and get something cool and usefull back? | 22:10 | ||
Juerd | Poll: | ||
Given an email link and a contact form, which would you use? | |||
liz6 | s/and/or/ ? | 22:11 | |
eric256 | contact form | ||
Juerd | liz6: No, both are an option | ||
eric256 hates email links because they always open outlook instead of gmail.. ;) | |||
Juerd | eric256: ... | 22:12 | |
eric256: Get Firefox and the extension that uses gmail for mailto: links | |||
Your vote is counted regardless, though :) | |||
liz6 | contact form | ||
eric256 | i especial hate when they are label "contact us" but its an email link | 22:13 | |
liz6 | eric256: agree | ||
Juerd | Okay, thanks for your votes. Any specific reasons? | ||
Why does a contact form feel better? | |||
liz6 | because it will guide you in your question | ||
and feels more "professional" to me... | |||
eric256 | i just don't like having my browser open an external program without asking.. and like liz is suggesting when it does i just stare at it with no idea what exatcly to say (most the time). | 22:15 | |
Juerd | It's funny, though, that most people say they prefer contact forms (I don't), while in my own experimentation, I've received more feedback providing just an email address. | ||
eric256 | of course maybe thats a problem with my browser and not the link. dunno. ;) | ||
rafl | eric256: Why aren't the pugs modules installed on feather? | ||
eric256 | pugs modules? | ||
Juerd | rafl: Just the binaries are copied. | 22:16 | |
liz6 | juerd: providing an email address is always good | ||
eric256 | providing an email adress.. and proving a mailto: linke are differnt, i don't mind the former | ||
Juerd | liz6: Certainly. But the question here was which one you'd use, if both options were present. | 22:17 | |
gaal | Juerd: I always prefer an email, which I use with my mail client to send the message. This way I have a copy for future reference. | ||
Juerd | So far, it's almost 50/50 across channels | ||
rafl | eric256: FindBin.pm, etc. | ||
Juerd: I know. I want to know the reason for that. | |||
Juerd | So I think it's safe to say that anyone who has a professional website should have both. | ||
autrijus | eric256: you can, once we transcribe Pugs.Parser into something PGE understands | ||
Juerd | rafl: I didn't want to pollute the system without packages | ||
eric256 | Juerd: definitly | ||
liz6 | juerd: yep | 22:18 | |
autrijus | eric256: although, pmichaud says he'll have the basic expressions done in a couple weeks | ||
in which case you can do "'some p6' ~~ /<perl6>/' | |||
eric256 | oh so p6rule isn't complete yet? | ||
autrijus | p6rule is complete | ||
but it only matches a "rule" | |||
not a "perl 6 program" | |||
Juerd | rafl: The debian packages weren't there yet when I built this script. I'm sure that patches are welcome, but remember that it must be automated. | ||
eric256 | ohh.. /me thought p6rule = rule to parse p6 | ||
but that makes since | |||
autrijus | yeah, it's a bit confusing :) | ||
dduncan | so, unless there are any major commits pending in the next hour, I'll smoke the current Pugs now | 22:19 | |
Juerd | Perl 6 Rules! | ||
That alone sounds MUCH better than "Perl 6 Regexes!" | |||
eric256 | dduncan FYI... feather smokes every 6 hours | ||
autrijus | "Perl 5 already Regexed the world. Perl 6 will Rule the world" | ||
dduncan | is it a darwin box | ||
rafl | Juerd: OK. | 22:20 | |
eric256 | nope ;) | ||
dduncan | then this isn't completely redundant | ||
anyway, its possible that all the darwin smokes over the last couple weeks were me ... I've been doing it every 2 days or so, including last night | |||
eric256 | dduncan. definitly not. just wanted to make sure you knew. since it takes quite a while | ||
Juerd | rafl: eric256 can get sudo access to dpkg if needed | ||
dduncan | smoke takes about 50 mins on my machine | 22:21 | |
Juerd | I have no idea how sudo would work non-interactively, though | ||
dduncan | now that it seems to be precompiling Test and/or using both cpus | ||
before that, it took about 100 mins | |||
eric256 | both cpus...show off | ||
dduncan | more likely its just the prelude though ... | ||
rafl | Juerd: It will. I don't use interactive questions using debconf or somethng like that. Even if I would it could be told to use the defaults and not to ask. | 22:22 | |
Juerd: I only need to wait for the parrot mirror.. | |||
dduncan | last I checked, despite setting number of CPUs to 2 in the config, top only showed a single Pugs running at once | ||
I will recheck that now | |||
right, it is smoking now ... | 22:23 | ||
and top shows two perl processes but only a single pugs process running | |||
is setting cpus to 2 in the config supposed to do 2 pugs processes? | 22:24 | ||
svnbot6 | r7860 | rafl++ | r19238@ata: rafl | 2005-11-05 23:21:11 +0100 | ||
r7860 | rafl++ | * Debian: build-depend on libparrot-dev instead of libparrot$(SOVERSION)-dev to | |||
r7860 | rafl++ | have less work on new parrot releases. | |||
dduncan | smoke killed and will restart ... not due to that commit though | 22:26 | |
but it will be included | |||
I meant, when smoke_concurrent=2, are there supposed to be 2 pugs processes? | 22:29 | ||
smoke begun again ... | |||
rafl | Juerd: Hm. How can we install packages using sudo non-interactively? | 22:31 | |
Juerd | rafl: That's for whoever wants to do it, to find out | ||
r0nny_ | rafl: sudo can be set up, not to ask for a password | ||
Juerd | r0nny_: That won't happen, though. | 22:32 | |
rafl | Indeed. | ||
Juerd | rafl: An alternative is to use a suid binary, catered to a specific need, limited to a specific group. | ||
rafl | Juerd: How about allowing eric or me to use only 'dpkg -i' without a pw? | ||
Juerd | rafl: I wouldn't know how. If you do, make it happen :) | 22:33 | |
rafl | User_Alias AUTOBUILDERS = eric256, rafl \n Cmnd_Alias DEBINSTALL = dpkg -i \n AUTOBUILDERS ALL = DEBINSTALL should work | 22:39 | |
eric256 | if regexs..i mean rules.. build these objects isn't that going to severly slow down the process? | ||
rafl | Juerd: Not sure if Cmnd_Aliases can have whitespaces | ||
Juerd: Oh, a NOPASSWD: DEBINSTALL at the end is missing. | 22:40 | ||
Juerd: Look at /usr/share/doc/sudo/examples/sudoers | |||
svnbot6 | r7861 | autrijus++ | * Work around PGE's bug in not grokking zero-width rules | 22:48 | |
r7861 | autrijus++ | (reporte to p6[ic]), by special casing that // matches | |||
r7861 | autrijus++ | always at position 0 with length 0. It's useful anyway | |||
r7861 | autrijus++ | because split(//, $string) can be fast without launching | |||
r7861 | autrijus++ | Parrot. | |||
r7861 | autrijus++ | * Also, fix m:g// and m:P5:g// support so they won't loop | |||
r7861 | autrijus++ | on zero-width matches. (Previously s:g// and s:P5:g// | |||
r7861 | autrijus++ | was fixed in the same fashion.) | |||
autrijus | (monthly release)++ # forces me to fix parrot interop bugs every month | 22:50 | |
Juerd | rafl: No, sorry, I'm not really into looking at things right now. If you have root access and can make things happen, please do so. I'll learn what you did when you've done it | 22:54 | |
rafl | Juerd: OK. | ||
autrijus | rafl: svk ls /parrot/mirror/trunk | 22:57 | |
of course, you need to cp or ln-s ~autrijus/config to your ~/.svk/ | |||
rafl | autrijus: Thank you. | 23:02 | |
rafl installed parrot Debian packages and removes /usr/local/bin/parrot if there are no objections. | 23:04 | ||
autrijus: /parrot/mirror/truk | 23:07 | ||
autrijus: Err. path /parrot/mirror/trunk does not exist. | 23:08 | ||
D'OH. Typo. | |||
autrijus | ... | ||
:) | |||
rafl | pugs depend on drift now, doesn't it? | 23:24 | |
autrijus | no it does not. | 23:26 | |
rafl | autrijus: This happens on svk pull when using your svk mirror, btw for parrot or pugs: Permission denied: Can't open '/home/autrijus/.svk/parrot/db/revprops/9765.tmp': Permission denied | ||
autrijus | rafl: fixing | ||
Juerd | autrijus: What do you use tcpxd for? | ||
autrijus | Juerd: SubEthaEdit | ||
Juerd | ok | 23:27 | |
autrijus | Juerd: see://perlcabal.org/ works iff that happens | ||
so I leave it running | |||
Juerd | I can't run mac osx inside linux for some reason | ||
And my new Linux installation is so shiny and stable that I don't want to reset the uptime :) | |||
autrijus | we can do gobby instead :) | 23:29 | |
which only requires one single port | |||
much easier to forward | |||
Juerd | Oh, I don't mind about the tcpxds | ||
Just wondered | |||
What is gobby? | |||
autrijus | subethaedit for gtk that works. | 23:30 | |
gobby.0x539.de | |||
?eval 0x539 | |||
evalbot_7861 | 1337 | ||
autrijus | ;) | ||
Juerd | Is it not compatible with see? | ||
autrijus | no, because see shuffles serialized objc objects | ||
or was it cocoa objects. | 23:31 | ||
Juerd | Ah | ||
Are there reasons to stick to see? | |||
It's a bit platform limited :) | |||
autrijus | well, for one, see has cursor highlighting in scrollbar and edit area | 23:32 | |
rafl | autrijus: I get this error when running /usr/bin/perl -Iinc util/drift.pl src/Pugs/PIL2.hs-drift > src/Pugs/PIL2.hs: | ||
autrijus | for another, gobby/osx is very hard to build | ||
rafl | runhugs: Error occurred | ||
ERROR - Unable to open file "/home/rafl/autobuild/pugs/util/../../DrIFT/src/DrIFT.hs" | |||
autrijus | rafl: svk up | ||
r7862 should cure that | |||
Juerd | autrijus: Ok | ||
autrijus | also, permission problem should be fixed now | ||
rafl | autrijus: Works, thanks. | 23:35 | |
svnbot6 | r7862 | autrijus++ | * regen PIL1/PIL2 using latest DriFT. | ||
autrijus | cool | 23:37 | |
autrijus discovers properly idented AST tree is a good way to inflate journal's length | 23:38 | ||
(just posted today's) | |||
autrijus praises caffeine-free sugar-free coke | 23:40 | ||
I wish they have that in taiwan :) | |||
svnbot6 | r7863 | autrijus++ | * VICTUALS: note that caffeine-free diet coke is preferred | 23:41 | |
r7863 | autrijus++ | over caffeineful ones for me. | |||
geoffb | . . . known as 'CFDC' amongst those overwhelmed by so many coke variants (I can currently think of nearly a dozen variants . . . and I may be missing some) | 23:43 | |
rafl | feather is soo slow currently.. :-( | 23:51 | |
autrijus' darcs and eric's ghc are stealing both cpu power and memory from me.. :-) | 23:52 | ||
svnbot6 | r7864 | autrijus++ | * When generating precompiled prelude, strip away comments | ||
r7864 | autrijus++ | and doc sections while preserving number to speed up parsing. | |||
autrijus | rafl: renice :) | 23:53 | |
rafl | I thought about apt-get install slay :-) | 23:54 | |
autrijus | oh wow, very useful bofh tool | ||
rafl | Indeed. One of my favourites.. | ||
geoffb | autrijus, in r7864 comment, did you mean "while preserving *line* number"? | 23:55 | |
autrijus steps away, very slowly, from rafl | |||
geoffb | heh | ||
autrijus | geoffb: yes, oops | ||
geoffb | ok, cool. | ||
autrijus | brb, shower | 23:57 |