Please test pre0: pugs.blogs.com/pre0/Perl6-Pugs-6.2.12.tar.gz | paste: sial.org/pbot/perl6 | pugs.blogs.com | pugscode.org | pugs.kwiki.org Set by audreyt on 12 June 2006. |
|||
Juerd | rafl: Too bad | 00:03 | |
00:04
shachaf joined
|
|||
rafl | Juerd: I also won't be at YAPC::EU. | 00:13 | |
Juerd: If you won't visit some german rock festivals I think the next thing where we'll meet is 23C3. | |||
Juerd | rafl: How dare you :) | 00:17 | |
You weren't at the austrian perl workshop either :) | |||
Or the dutch one | |||
rafl | I'm broke. | 00:18 | |
Juerd | Explain the rock festivals then :) | ||
rafl | No, the rock festivals explain why I'm broke. | ||
Juerd | Heh | ||
Do you have a job? | 00:19 | ||
rafl | I even had two talks accepted for froscon.. oh well. | ||
Kind of, yes.. | |||
I do some hosting and webdevelopment for some people, I administrate a pool of Debian machines and I work at a professorship at university. | 00:20 | ||
Juerd | I see. Adminning debian machines doesn't pay well. They're way too stable :) | 00:29 | |
rafl | The local admins always fuck things up, so there's enough work to do. Unfortunately it isn't payed very well. | 00:31 | |
"Hey, we need $that.. oh, it isn't in sarge. Oh, well.. let's install it from unstable!" | 00:33 | ||
Juerd | The solution is to run unstable, not stable. | 00:38 | |
I have sid in production on at least a dozen machines | |||
rafl | Which would cause much work. For example if md decides to break udev again. | 00:39 | |
Juerd | Never had trouble with that | ||
But then, I try to avoid udev. | |||
rafl | We're taling about desktop machines which I administrate.. | ||
Juerd | I think such stuff is scary for servers. Hard coded device nodes have worked well for decades; why would we need change now, for machines that keep their configuration for years? | 00:40 | |
Ohhh | |||
That's very different indeed. | |||
rafl | Also the recent xorg 7.0 transition broke a lot of things in unstable. Way too much trouble for me. | ||
Juerd | I associate debian with servers, because I use ubuntu on workstations :) | ||
rafl | Which ubuntu branch? | ||
Juerd | I've been using Ubuntu/Kubuntu for over a year now, and love it. | 00:41 | |
ubuntu/kubuntu, current and previous versions | |||
But in general, I upgrade machines when I get the chance | |||
rafl | The stable branch, that is. You would have similar problems when using their unstable branch. | ||
Juerd | Of course | 00:42 | |
But their stable branch isn't as painful as debian's | |||
...for desktops | |||
Though I use the n+1 versions on my laptop and mac mini | |||
rafl | If you had the same local "admins" as I do, it probably would. | ||
Juerd | And must say that they manage to keep it relatively stable. | ||
rafl | Beside that, I'm a Debian developer.. I'm sure there's a policy document that forbids me to use Ubuntu ;-) | 00:43 | |
Juerd | Hehehe | ||
I'm a Debian fanboy, but Ubuntu's just too attractive for me to resist. | 00:45 | ||
rafl | At least half of Debian hates doko and therefor Ubuntu because the touble with the python transition nowadays :-) | ||
Juerd | What's doko? | ||
rafl | Who's doko? Matthias Klose [email@hidden.address] | 00:46 | |
Python Maintainer and ubuntu employee | |||
Juerd | Sigh | ||
I don't choose my software based on the people who make it. | |||
What's the python transition? | 00:47 | ||
rafl | doko was quite busy with ubuntu stuff recently, while the new debian py policy was made. | ||
00:47
gaal joined
|
|||
rafl | Also he isn't willing to maintain an important package, such as python, in a group. | 00:47 | |
Juerd | Ubuntu depends heavily on python | 00:48 | |
Weird that they would be unwilling | |||
rafl | So other people worked on the transition. Most of it was nearly finished and then he poped up with his own "ubuntu solution" (python-central), which doesn't work together with the other solution people made while he was busy with ubuntu (python-support) | ||
Not they (ubuntu), but he (doko) didn't want to maintain py in a group inside Debian. | 00:49 | ||
Then some changes to the dh_python script in debhelper were needed so someone did a non-maintainer upload of debhelper and now Joey Hess, the debconf maintainer, is pissed as well.. | |||
Lots of fun. | |||
If you haven't had a good flamewar recently read lists.debian.org/debian-python.. | 00:50 | ||
Did I mention the mass-bug-filing against hundreds of py-packages about migrating to the new policy even if that policy isn't agreed on yet? | 00:51 | ||
00:53
hikozaemon joined
|
|||
Juerd | Heh | 00:54 | |
I'm off to bed | |||
The lag is too much to irc normally anyway | |||
(lag between home and feather) | |||
Furnabceoy | n8 | 00:55 | |
rafl | Good night, Juerd | ||
Juerd | Good nigh | ||
t | |||
rafl | The lag between my brain and my fingers is too high as well.. | 00:56 | |
00:56
shachaf joined
01:04
weinig|work_ is now known as weinig
01:14
nothingmuch is now known as artichoke,
artichoke is now known as nothingmuch
01:45
neoesque joined
|
|||
svnbot6 | r10843 | fglock++ | v6.pm - pass 01-sanity/07-tailcall.t, 07-range.t, 07-isa.t | 01:45 | |
02:01
coumbes joined
02:12
cjn joined
02:13
weinig is now known as weinig|sleep
02:15
hcarty joined
02:16
hcarty left
02:18
mako132_ joined
|
|||
meppl | gute nacht | 02:26 | |
02:32
shachaf_ joined
02:37
coumbes joined
02:53
mjk joined
|
|||
dduncan | I see that the changelogging has caught up to the present, and that smokes are more or less at 100% ... | 02:54 | |
is there an ETA for a preflight or release? | 02:55 | ||
02:55
shachaf_ is now known as Shachaf
|
|||
dduncan | eg, before or after the YAPC::NA hackathon? | 02:55 | |
02:55
shachaf joined,
Mapper joined
|
|||
dduncan | I'm thinking before is better, but whatever | 02:56 | |
03:13
amnesiac joined
03:21
Furnabceoy is now known as FB|hl2
03:48
justatheory joined
04:02
stephanepayrard_ joined
04:18
SamB joined
04:21
kanru joined
04:54
frederico joined
05:11
iblechbot joined
05:17
jiing joined
05:18
frederico joined,
stephanepayrard_ joined,
neoesque joined,
xerox_ joined,
dduncan joined,
_calvin_ joined,
weinig|sleep joined,
hlb joined,
visq joined,
cognominal_ joined,
rw-rw-r-- joined,
amv joined,
Grrrr joined,
knewt joined,
viirya joined,
qmole joined,
TimToady joined,
Zemyla joined,
scw joined,
OuLouFu joined,
ZuluOne joined,
EarleMartin joined,
meppl joined,
Bleadof joined,
iood joined,
pdcawley joined,
lambdabot joined,
buu joined,
xern joined,
nnunley joined,
clkao joined,
f0rth joined,
PerlJam joined,
Shabble joined,
notsri joined,
leo joined,
pmichaud joined,
ingy joined,
wolverian joined,
Juerd joined,
audreyt joined,
webmind joined,
chip joined,
gugod joined,
TimToady joined
05:31
Skyddsman joined
05:40
neoesque joined
05:48
jiing_mIRC joined
06:03
tup joined
06:06
renormalist joined
06:31
jiing_ joined
07:00
elmex joined
07:07
Aankhen`` joined
07:15
drrho joined
07:23
theorbtwo joined
07:27
buetow joined
07:28
dduncan left
|
|||
renormalist | In case anyone is awake: How do I know whether I need a "make clean" to rebuild Pugs after svn updates? I would like to continuously recompile my Pugs (once a day or so) but don't want to wait that long everytime. | 07:31 | |
Is it e.g. only needed if I change config like PUGS_EMBED or so? | |||
Aankhen`` | Shouldn't be needed even then, since Makefile.PL will create a new Makefile... | 07:36 | |
Then again, I'm not the expert. | |||
07:43
christopher joined
|
|||
renormalist | m'kay | 07:47 | |
Skyddsman | renormalist: make clean is an incantation of the devil and should never be invoked. | 07:51 | |
07:52
elmex joined
|
|||
svnbot6 | r10844 | cmarcelo++ | * Judy.Map2 using JudyL. Instantiate MapM. | 07:53 | |
r10844 | cmarcelo++ | * Some code reorganization (ie. more files =P). ReversibleHashIO is too similar | |||
r10844 | cmarcelo++ | to Refeable, but Refeable has (will have) freeRef. Need to think more about it. | |||
07:54
iblechbot joined
|
|||
renormalist | I remember problems without make clean after big svn updates. Maybe it's an ancient experience I no longer have to remember. | 07:55 | |
07:57
theorbtwo joined,
SM_ax joined
|
|||
Skyddsman | renormalist: Needing a "make clean" after a sync is like needing an engine rebuild after filling your gas tank. | 08:01 | |
ZuluOne | That's a bit of a far-fetched analogy. However, I'm willing to accept that needing a make clean after a sync is like the dependency information in the Makefile being broken. | 08:02 | |
Skyddsman | ZuluOne: Not that far fetched, really. I means that the manufacturer didn't know what they were doing when they put it together, yah? | 08:04 | |
s/I/It | |||
ZuluOne | changing some of the code is hardly filling the gas tank | 08:05 | |
closer to replacing the carburettor (if I can spell) | |||
I suspect there should be more e's. | |||
apparently not | 08:06 | ||
Skyddsman | ZuluOne: Sub fuel injectors for the carb, and we're talking about the same thing. Swap out the fuel injectors and the car computer will notice delta in fuel consumption, o2 consumption, and adjust accordingly. | 08:07 | |
ZuluOne: But source updates should be more like the variations seen between Premium and the cheap stuff. | 08:08 | ||
ZuluOne | Well, my knowledge of car mechanics has just underrun, but nm. | ||
Skyddsman | ZuluOne: Mine too. :P | ||
ZuluOne: I was bluffing. | |||
ZuluOne | In that case, I accept your original statement. | 08:09 | |
Skyddsman | ZuluOne: What I really meant to say was that a make clean should never really be required, unless you happen to be the guy tinkering with make. :) | 08:10 | |
ZuluOne | of course | 08:11 | |
Skyddsman | And, just to be an ass, it was a simile, not an analogy. Sorry for that. | 08:15 | |
ZuluOne | If you are using it to argue that the situation with make is unreasonable, then it is an analogy. | 08:16 | |
Now if you'll excuse me, time to set off for work. | 08:17 | ||
08:20
elmex joined
08:21
dakkar joined
|
|||
christopher | renormalist: Not an ancient experience for me. | 08:21 | |
I needed it recently, but it may have been due to upgrading Parrot to 0.4.5. | |||
although iirc it was actually Haskell package errors I was getting before the make clean | 08:23 | ||
Skyddsman heads off to bed | |||
08:26
lisppaste3 joined
08:40
stephanepayrard_ joined
08:47
QtPlatypus joined
09:07
pdcawley joined
09:30
scook0 joined,
lollan joined
09:46
tup joined
09:59
bjoern_ joined
10:03
dakkar joined
10:24
gaal joined
10:59
kane_ joined
11:09
TimToady joined
11:24
mako132_ joined
11:29
nothingm1ch joined
|
|||
gaal meows | 11:31 | ||
greetings from Hoboken, NJ | |||
wolverian purrs | |||
audreyt purrs | |||
hi gaal | |||
gaal | hola! | ||
how's MS-land treating you? | 11:32 | ||
audreyt | so. any new movement on the YAML front? | ||
oh, excellently | |||
emeijer gave me an outof print functional programming book by Wadler and Bird | |||
he says that's his brainwashing weapon to convert MS people to FP | |||
gaal | audreyt: I committed the cleanups I wanted to (xerox++ for helping a blind man) but didn't fine the emit_yaml problem cause | 11:33 | |
audreyt | k | ||
gaal | er, didn't find it, either | ||
ooh | |||
audreyt | url to the context (minimal test case etc) again? | ||
gaal | ?eval Pugs::Inetnernals::emit_yaml(42) | ||
evalbot_10746 | Error: No such method in class Int: "&Pugs::Inetnernals::emit_yaml" | ||
gaal | brb | 11:34 | |
?eval Pugs::Internals::emit_yaml(42) | |||
audreyt | also attempted to drag the LINQ people to #perl6... not sure when they'll show up | ||
evalbot_10746 | Error: Unsafe function 'Pugs::Internals::emit_yaml' called under safe mode | ||
11:34
chris2 joined
11:35
dakkar joined
|
|||
audreyt | but more importantly, that was the first time I explained the entire compilation flow, calling convention, object model, etc, in on coherent setting :) | 11:35 | |
and we compared that against the MSIL model, and so it's much less fuzzy now in my head | |||
meppl | guten morgen | 11:37 | |
gaal | oops back # futon folding to ward cats | 11:38 | |
excellent! I wonder if they can pick something up from us too? | |||
hey isn't it ridiculously early where you re? | 11:39 | ||
audreyt | yup, I just woke up | ||
and yes, we talked a lot about how p6 exposes those multilevel dynamicness | 11:40 | ||
parse-time evaluation, doubly-closed closures in inner functions, dynamic binding in the form of contexts, etc | |||
so maybe some of them will creep into the next LINQ. maybe. :) | 11:41 | ||
gaal waits for a Microsoft Moose | |||
audreyt | Microsoft Ergonomic Optical Moose | 11:42 | |
"Moose, it's the new Mouse" | |||
gaal | # forum2.org/moose/moose14.html | ||
audreyt | yeah. we also figured out a way to embed moose-ish things in MSIL settings, but probably not going to work on CLR targetting in the near future | ||
P5 targetting is clearly more fun and involves far less hacks, compared to mono targetting | 11:43 | ||
looking at emityaml now | 11:44 | ||
gaal | brb again | 11:45 | |
11:46
nothingmuch joined
|
|||
svnbot6 | r10845 | renormalist++ | cperl-mode.el | 11:48 | |
r10845 | renormalist++ | * fixed highlighting bug in subs | |||
r10845 | renormalist++ | * "proto" routine modifier | |||
11:56
weinig|sleep is now known as weinig|working
11:59
dakkar joined
12:16
Odin-LAP joined
12:17
lisppaste3 joined
12:34
frederico joined
|
|||
svnbot6 | r10846 | audreyt++ | * Prelude.pm: Mark non-closure prelude functions as primitive | 12:42 | |
audreyt | gaal: fixed | 12:43 | |
12:43
DebolazX joined
|
|||
DebolazX | Should the latest trunk of parrot and pugs be able to work together? | 12:44 | |
svnbot6 | r10847 | audreyt++ | * expose Pugs.hs's filterUserDefinedPad in Pugs.AST and have | ||
r10847 | audreyt++ | Pugs.Prim use it to weed out $*OUT etc. | |||
12:44
bpphillips joined
|
|||
DebolazX | I'm getting the error message "error:imcc:syntax error, unexpected DOT" when trying to execute a program that prints Hello World. | 12:46 | |
audreyt | what's the program? | 12:47 | |
can't just be 'say "Hello World"' :) | 12:48 | ||
DebolazX | pugs -e 'print "Hello World!\n"' -BPIR | ||
This is not release, this is svn trunk. | 12:49 | ||
audreyt | checking | 12:53 | |
12:53
Ymmv joined
12:57
neoesque joined
12:59
christopher joined
|
|||
Aankhen`` | I'm getting a somewhat different error. | 13:00 | |
*** | |||
unexpected end of input | |||
expecting "\\", "$/", "$!" or "'" | |||
at -e line 1, column 7 | |||
Aankhen`` wonders if the DOS prompt messed it up. | 13:01 | ||
Ah, yes, it was the DOS prompt. | |||
dakkar | cmd.exe? | ||
Aankhen`` | Now I'm getting the same error as DebolazX. | ||
dakkar: Yup. | 13:02 | ||
dakkar | it does not understand sinle quotes | ||
Aankhen`` | At line 6 of the generated PIR file, if that helps. | ||
Aankhen`` nods. | |||
audreyt | fixed. committing | ||
DebolazX | Line 6 here too btw. | ||
13:04
Limbic_Region joined
|
|||
svnbot6 | r10848 | audreyt++ | * Debolaz++ pointed out that newer parrots doesn't load PerlArray | 13:08 | |
r10848 | audreyt++ | etc by default, so we need to declare we are in the "perl" HLL | |||
r10848 | audreyt++ | group for things to work. | |||
r10849 | audreyt++ | * err, forgot to gen main program | |||
stevan | gaal: hello and welcome to my country,.. please don't hold New Jersey against us ;) | 13:09 | |
although Hoboken is a pretty cool place | |||
kolibrie | ah, yes, gaal, welcome to the US | ||
svnbot6 | r10850 | audreyt++ | * detypo | ||
stevan | heya kolibrie, you packed yet? | ||
kolibrie | last night | 13:10 | |
stevan | wow,.. now that planning | ||
kolibrie | I'm flying to Chicago tomorrow | ||
stevan | :) | ||
kolibrie | never traveled with a laptop before, any pointers? | ||
stevan | yeah,.. keep it in your carry on,.. and make sure it is well protected in the bad | 13:11 | |
s/bad/bag/ | |||
kolibrie | anything special for security? | ||
stevan | hmm,.. nope | ||
I have never had an issue | |||
kolibrie | okay | ||
stevan | the usually want you to take it out and send it through seperate from your other carry on | 13:12 | |
kolibrie | when are you travelling? | ||
stevan | Sunday evening | ||
kolibrie | cool | ||
stevan | I still need to pack :) | 13:13 | |
but I got *lots* of time | |||
kolibrie | lots | ||
stevan | :) | ||
kolibrie unfortunately still has to think about $work today, and deadline | 13:14 | ||
stevan | yeah me too | ||
actually my $deadline is post-YAPC,.. which is even more of a PITA | 13:15 | ||
kolibrie | mine was yesterday, I think, but nobody is watching | ||
they'll notice if it's not in production till after I get back, though | 13:16 | ||
svnbot6 | r10851 | audreyt++ | * Chase parrot churn: maybe_flatten is now 0x40 not 0x10 | 13:18 | |
13:20
xerox_ is now known as xerox
|
|||
svnbot6 | r10852 | audreyt++ | * even more parrot churn and mg number chase | 13:22 | |
audreyt | DebolazX: r10852 should fix it wrt parrot 0.4.5+ | ||
I raised the dep to that | 13:23 | ||
so it's fine to ignore older parrots for now | |||
thanks for reporting the churn | |||
13:25
neoesque joined
|
|||
DebolazX ups. | 13:26 | ||
clkao | audreyt: do you remember where your old bbs-thread analyzer is? | 13:28 | |
audreyt | clkao: amazing question, that | 13:30 | |
no ;) | 13:31 | ||
clkao | audreyt: i was really surprised yesterday our old old code actually works ;) | ||
audreyt | heh. you hacking on ebx again? | 13:32 | |
making telnet BBSs a svk backend? | |||
clkao | no, i was just playing with ournet::bbs to extract some local archive | ||
audreyt | ah. | ||
13:36
FB|hl2 joined
13:39
iblechbot joined
13:43
rzoz joined
|
|||
DebolazX | I'm using an installation local to my home directory which may explain this particular problem but trying to execute it with the PIR backend directly from pugs doesn't work. However, compiling to PIR and executing with parrot seems to work perfectly now. :) | 13:45 | |
Also, is this supposed to error?: pugs -e 'my $i; for (1 .. 100) { $i++ }' -CPIR > hello.pir ; parrot hello.pir | 13:47 | ||
"Name '$OUTER::i' not found" and a few other bugs. | |||
DebolazX admits lack of perl 6 knowledge. | 13:48 | ||
No, wait, I read that wrong, that was the only error. | 13:49 | ||
14:05
cognominal joined
14:08
hexmode joined
14:10
stephanepayrard_ joined
|
|||
svnbot6 | r10853 | audreyt++ | * CodeGen.PIR: DebolazX++ reported that our new OUTER:: resolution | 14:16 | |
r10853 | audreyt++ | doesn't play well with PIR codegen yet. before we figure out a | |||
r10853 | audreyt++ | good outer_sub call in PIR, just pretend there's no shadowing. | |||
14:20
fglock joined
|
|||
fglock | is it ok to use Perl::Tidy for formatting p6.pm output? | 14:26 | |
audreyt | sure, why not | 14:28 | |
obra | . o O { Better than B::Deparse } | 14:29 | |
14:33
ludan joined
14:35
Aankhen`` joined
|
|||
svnbot6 | r10854 | fglock++ | v6.pm - perl5 output is perltidy'ed | 14:43 | |
sahadev | ?eval my @a = 1..3; for @a -> $n {say $n} for @a, sub($n) {say $n} | ||
evalbot_10746 | Error: unexpected end of input expecting comment, term postfix, operator, ",", block construct or term | ||
fglock | 'Unmatched right curly bracket at 01-sanity/04-if.tc' - for no apparent reason | 14:44 | |
sahadev | s06 says the two forms (for @a -> $n {..} and for @a, sub($n) {..}) are equivalent | 14:45 | |
the second one expects more input in pugs (r10852) | |||
xerox | "more input" ? | 14:47 | |
sahadev | pugs> for @a, sub($n) {say $n} | ||
....> | |||
fglock | audreyt, ingy: the bug is Module::Compile related (I installed M::C from CPAN) | 14:48 | |
Aankhen`` | ?eval <foo bar> | 14:49 | |
evalbot_10746 | ("foo", "bar") | ||
audreyt | sahadev: yup, it's currently not handled | ||
the parser will take the comma as still in the "for" array | |||
for 1,2,3 -> { ... } | 14:50 | ||
vs | |||
for @a, sub { ... } | |||
I don't know how to disambig | |||
sahadev | audreyt: ok | ||
xerox has the synchronize pugs repo and build it spree! | |||
audreyt | so maybe S06 is bad ;) | ||
maybe it should say it's the same as | |||
dakkar | why the comma? | ||
audreyt | xerox: woot | 14:51 | |
xerox | Oh, I have got fps but it compiles its own. Is it right? | ||
audreyt | &statement:<for>(@a ; sub {...}) | ||
xerox: maybe. it uses the bundled fps if your fps doesn't have .Lazy | |||
fglock | 04-if.tc works if I remove the M::C header | ||
theorbtwo | Why shouldn't we just declare the sub being part of the for arglist the right interpretation? | ||
xerox | I'm sure its pretty recent, but okay. | ||
sahadev | it works without comma: for @a sub($n) {say $n} | 14:52 | |
?eval my @a = 1..3; for @a -> $n {say $n} for @a sub($n) {say $n} | 14:53 | ||
evalbot_10746 | OUTPUT[1 2 3 1 2 3 ] undef | ||
xerox | Is it "working"? | ||
audreyt | theorbtwo: that's what I think, yeah | ||
sahadev: yeah, that's correct | |||
sahadev | "works" == prints the expected output | ||
audreyt | theorbtwo: I think it's simply a typo in S06's comments | ||
xerox | Ah, they are not nested. | 14:54 | |
audreyt | so let's just fix that | ||
audreyt commiteth | |||
theorbtwo | Ah, whoops, missed that bit. | ||
audreyt | fixed in S06 r9717 | 14:55 | |
sahadev | audreyt++ | ||
are the synopses and other docs part of pugs distribution? I am reading from Perl6::Bible (0.30) | 14:58 | ||
and, i don't find them in my copy of pugs source | 14:59 | ||
audreyt | docs/Perl6/Spec/ | 15:00 | |
sahadev | hmm, i only see: Concurrency.pod CPAN.pod Documentation.pod Functions.pod | ||
in docs/Perl6/Spec/ | |||
fglock | later & | 15:01 | |
svnbot6 | r10855 | fglock++ | v6.pm - Emitter/Perl6/Perl5.pm doesn't try to prettify the code | ||
15:02
prefiks joined
|
|||
audreyt | sahadev: svn up to r10856 | 15:02 | |
and rerun makefile.pl | |||
svnbot6 | r10856 | audreyt++ | * update the docs/Perl6 syncer | ||
audreyt | (or cd into docs/Perl6 and run it) | ||
should give you Subroutine.pod etc | 15:03 | ||
sahadev | ah! much better. thanks! | ||
xerox | Seq present undeer both Data and Pugs ? | 15:04 | |
Ops. | |||
15:06
justatheory joined
|
|||
xerox | Why is the DeepSeq module present under both Data and Pugs? | 15:06 | |
15:08
tup joined
15:13
ludan joined
15:15
Ymmv joined
15:21
hexmode joined
15:32
geoffb joined
15:33
prefiks joined
|
|||
xerox | multi sub evalfile (Str $filename: Str :$lang = 'Perl6') | 15:41 | |
What is the syntax of the arguments? | |||
audreyt | evalfile("foo.p6", lang => 'Perl6') | 15:42 | |
evalfile("foo.p6", :lang<Perl6>) | |||
xerox | I am not understanding the meaning of the `:' in the argument list. | ||
Specifically why they compare at both the end of `$filename:' and at the beginning of `:$lang'. | 15:43 | ||
15:50
coumbes joined
|
|||
particle_ | the one at the end of filename seperates required (left) and optional (right) | 15:52 | |
the one before $lang means if the 'lang' arg is set, store it's result in $lang inside the sub | 15:53 | ||
see S06 (dev.perl.org/perl6/doc/design/syn/S06.html) for more | 15:54 | ||
16:17
iblechbot joined
16:18
coumbes joined
|
|||
ingy | fglock: what's the bug exactly? | 16:21 | |
fglock | ingy: when I run the .tc file, I get | 16:22 | |
Unmatched right curly bracket at 01-sanity/03-equal.tc line 7 | |||
ingy | in which test suite? | 16:23 | |
fglock | Pugs-Compiler-Perl6$ perl -Ilib 01-sanity/03-equal.t | ||
ingy | ok, thanks | 16:24 | |
fglock | run it twice, so that it run the .tc | ||
geoffb | From audreyt's blog of a day or two ago, it sounds like P6 -> P5 compile is working. Is it 100% at this point (meaning any of Perl 6 that Pugs supports will run on P5)? I've got a big mess of P5 code of various sizes that I'm itching to try porting .... | ||
16:24
buubot joined
|
|||
fglock | geoffb: the parser is almost ok, but there is much work to do in the runtime | 16:24 | |
geoffb | (I just don't have the tuits to spare to port something knowing it won't work.) | ||
fglock, much work == months away? | 16:25 | ||
fglock | see the 01-sanity dir - most tests are working | ||
geoffb: it is just 3 days old - meybe 1 month more | |||
xerox | A baby! | ||
geoffb | Ah. Did you guys do a rewrite of the existing P5 backend from way back? | 16:26 | |
(complete rewrite, I meant) | |||
fglock | yes | ||
geoffb | Ah, OK. | ||
Sigh ... I was getting all excited to see my graphics code running happily in P6. (I'd done a port before, but it was based on P5 embedding and was REALLY SLOW) | 16:27 | ||
fglock | is it a module? | 16:28 | |
geoffb | The code I'd ported before was a demo program; but I also have an engine with a pile of modules that I want to port. | 16:29 | |
Of course, it had extensive source filtering to try to get P6-like .... | |||
fglock | you should try the examples in 01-sanity - they compile to almost plain p5 | 16:30 | |
geoffb | (And another set of source filters to build a mini-language in another place, but that's probably fodder for a real grammar) | ||
Ooh, that's very cool to hear! | |||
particle_ | fglock: how much of PCR is based on perl6/parrot, and how much was developed in isolation? | 16:31 | |
and how can these implementations be brought together? | 16:32 | ||
geoffb | Hmmmm. I've got a new dev system since the last time I compiled pugs -- is someone still maintaining the debian packages? I could use that to get the build-depends, rather than tracking down everything manually like the first time. | ||
fglock | particle_: it is an independent implementation | ||
particle_ | fglock: they seem to be in similar states | ||
fglock | particle_: they have 'perl6' in common :) | 16:33 | |
pugs is much more advanced | |||
particle_ | sure | 16:34 | |
fglock | and parrot has more cools things, like continuations | ||
and typed variables | |||
particle_ | but perl6 -> pir and perl6 -> perl5 are in similar states | ||
via PCR | |||
it'd be nice to exchange information | 16:35 | ||
eg. assignment is not yet working for p6->pir, but is for p6->p5 | |||
so, explaining the approach, how it was done, could help | |||
fglock | the old perl5 backend had more features, but it is _slow_ | ||
particle_ | that sort of information exchange | ||
fglock | we are all in #perl6, and we share a lot of advice, sure | 16:36 | |
but most implementation problems are backend-specific | 16:37 | ||
particle_ | yes, but the architecture should be the same (excluding backend impl details) | ||
s/architecture/algorithms/ | 16:38 | ||
i guess what i'm saying is | |||
if the approach to solving the problem is written down | |||
in plain <localized_language> | |||
the implementations can all be based on that canonical representation | 16:39 | ||
xerox | Since the parser is almost done, does it mean that the `make your syntax'-party can start? | ||
particle_ | xerox: you can look at that sideways, and say that party has started already | 16:40 | |
it's just that 'your syntax' := perl6 syntax | |||
xerox | `:=' meaning? | ||
theorbtwo | Is an alias of/for. | 16:41 | |
xerox | If it is assignment I regret! | ||
16:41
snowstalker joined
|
|||
xerox | Crazy question; is it possible to do "use strict_type_system;" or something along the lines? | 16:42 | |
fglock | xerox: yes, you can create your own language using this infrastructure | ||
particle_: we are trying to use the same algorithms when possible | |||
particle_ | great | ||
i must have missed some of the chatter | 16:43 | ||
fglock | the transition lrep -> PCR was mostly a rewrite of the parser | 16:44 | |
(added a precedence parser) | 16:45 | ||
particle_ | just like parrot/perl6 | 16:46 | |
particle_ updates pugs and downloads Moose | 16:47 | ||
xerox | Moose Moose Moose? | 16:48 | |
particle_ | hrmm, can i use 'cpan' to install a devel version of Moose? | ||
i guess i need to dl it seperately :( | 16:49 | ||
xerox | Moose Moose Moose? (: | ||
fglock | particle_: there is the #moose channel | 16:52 | |
particle_ | good to know. on freenet? | 16:54 | |
16:54
Ymmv joined
|
|||
fglock | the pod says: "The #moose channel on irc.perl.org" | 16:55 | |
17:04
FB|hl2 is now known as FurnaceBoy
|
|||
particle_ | could perl::tidy be optional for PCP6? | 17:18 | |
Aankhen`` | Is either "P5" or "Perl5" allowed as a regex modifier, or is it only "Perl5"? | 17:19 | |
17:19
shachaf joined
|
|||
particle_ | i think :P5 works | 17:19 | |
fglock | particle_: sure - would you add a patch? :) | ||
particle_ | fglock i can work on that, yes | 17:20 | |
Aankhen`` | It does work, and so does "perl5", but I'm not sure whether that's the intended behaviour or just a leftover. | ||
particle_ | first i need to get PCP6 working | ||
aanhken: audrey used it in slides last night, if that makes you feel better ;) | |||
particle_ checks the docs | |||
Aankhen`` | It does, thanks. ;-) | 17:21 | |
stevan wonders if PCP-6 is stronger than plain old PCP | |||
particle_ | from S05: The extended syntax (/x) is no longer required...it's the default. (In fact, it's pretty much mandatory--the only way to get back to the old syntax is with the :Perl5/:P5 modifier.) | ||
Aankhen`` | Ah, cool. | ||
particle_ | what's the nopaste variant for this channel? | 17:22 | |
paste? | |||
stevan | paste: sial.org/pbot/perl6 | ||
particle_: if you install the devel version of Moose,.. you will also need to install the latest devel version of Class::MOP | 17:23 | ||
pasteling | "particle_" at 144.81.84.131 pasted "PCP6 failure" (15 lines, 835B) at sial.org/pbot/17926 | ||
stevan | the fact that CPAN.pm does not handle devel versions makes this a real PITA | ||
particle_ | yes, it does | 17:24 | |
audrey installed it on my laptop last night | |||
stevan | cool | ||
particle_ | i want to get my desktop up to speed | ||
there's also a Scalar::Util patch | |||
since i have perl 5.8.7 | |||
stevan | there is actually a new Moose just released this morning,.. but its nothing important,. just some small tweaks | 17:25 | |
fglock | particle_: did you run 'make' on Pugs::Compiler::Rule? it needs make to run properly | ||
particle_ | fglock: where's the makefile? | ||
fglock | Pugs-Compiler-Rule/Makefile.PL (not Pugs-Compiler-Perl6) | 17:26 | |
particle_ | ah | ||
fglock | some Pugs::Compiler::Rule parts are written in lrep, which depends on 'make' to work | 17:27 | |
particle_ | the dependency chain grows... | ||
fglock | it will be rewritten in v6.pm, so that we'll get a dependency problem anyway | 17:28 | |
the Rule grammar is a Perl 6 grammar | |||
particle_ | same as parrot/perl6 | ||
fglock | it's 'metacircular' | ||
particle_ | well, a little different | 17:29 | |
but similar | |||
fglock | yes - that's something parrot got from lrep :) | ||
particle_ | >perl -Ilib hello_world.pl | 17:30 | |
hello, world | |||
yay! | |||
fglock++ | |||
fglock | particle_: see hello_world.plc | ||
particle_ | yep, open in vim now | ||
how is the checksum generated? | 17:31 | ||
fglock | it is handled by Module::Compile | 17:32 | |
particle_ | ah. | ||
fglock | see lib/v6.pm | ||
audreyt ingy magic :) | |||
s/ /&/ | 17:33 | ||
17:33
buetow joined
|
|||
particle_ | i have trouble with this <<perl v6.pm -e "some perl 6 code">> | 17:35 | |
from v6.pm | |||
fglock | perl -Ilib lib/v6.pm -e 'some code' ? | ||
particle_ | Pugs-Compiler-Perl6\lib>perl v6.pm -e"<hello>.say" | ||
parsing error in Expression: ...... at ../lib/Pugs/Grammar/Perl6.pm line 14 | |||
You may not specify any filenames when a source array is given | |||
fglock | it needs a semicolon - it's a grammar bug :( | 17:36 | |
particle_ | i see. so, still fails "you may not..." | ||
fglock | I'm not sure if <> works properly - untested | ||
particle_ | s/so/no/ | ||
fglock | testing | ||
it works if you put it in a file - maybe a Module::Compile problem? | 17:39 | ||
the command line extension is just one-day-old - not much tested | |||
oh, and it works without the semicolon :) | 17:40 | ||
perl -Ilib -e ' use v6-pugs; <hello>.say ' - doesn't work either | 17:41 | ||
particle_ | i was hoping perl -Mv6-pugs -e'...' would work, but that hack's not available with -M i guess | 17:42 | |
fglock | but it works if you put it on a file | ||
particle_ | no p6 one-liners for now... i can live with that! | ||
Aankhen`` | stevan: I am happy to report that Moose gives me that nice tingly feeling all over. :-D | 17:43 | |
xerox | A01 talks about one-liners. | ||
fglock | particle_: "any filenames..." - it is a Perl::Tidy message | 17:45 | |
so maybe not difficult to fix - will look | |||
Perl::Tidy needs to see an empty @ARGV | 17:46 | ||
particle_ | ah | ||
another reason to make it optional :) | |||
stevan | Aankhen``: thanks :) | 17:51 | |
Aankhen``: that could be a rash though,.. M??se are wild animals,. and who knows where they might have been | |||
Aankhen`` | stevan: Uh oh. | ||
stevan | Aankhen``: check out Moose::Autobox as well | 17:52 | |
svnbot6 | r10857 | fglock++ | v6.pm - fixed Perl::Tidy view of command line args | 17:53 | |
Aankhen`` checks. | |||
fglock | perl -Ilib lib/v6.pm -e '<hello>.say;' - works again | ||
17:54
coumbes joined
|
|||
fglock | perl -Ilib lib/v6.pm --compile-only -e '<hello>.say;' | 17:55 | |
audreyt | |||
(no plus-plus?) | 17:56 | ||
Aankhen`` | stevan: Ah, sweet stuff. | ||
stevan | aautobox.pm is not that scary once you get to know it :) | ||
although I am not yet crazy enough to use it in production | 17:57 | ||
Aankhen`` nods. | |||
I misplaced my time machine, else I'd have lent it to you. :-( | |||
stevan | :) | ||
particle_ | use your space machine to find it :) | ||
Aankhen`` | particle_: I think that folded in on itself. | 17:58 | |
If I recall correctly, this folding happened a few seconds after I asked it to locate a girl who'd go out with me. | 17:59 | ||
fglock | particle_: --compile-only shows the perl5 code :) | ||
Limbic_Region | Aankhen`` - finding a girl to go out with you should not have caused space to fold in on itself. Asking to a find a girl that you WANT to go out with that would indeed go out with you should have resulted in a singularity though | 18:01 | |
particle_ | fglock: almost... | ||
Aankhen`` | Good point. Maybe I misunderstood my question. | ||
particle_ | >perl -Ilib lib/v6.pm --compile-only -e"<hello>.say" | 18:02 | |
parsing error in Expression: ...... at lib/../lib/Pugs/Grammar/Perl6.pm line 14 | |||
use Pugs::Runtime::Perl6; | |||
use strict; | |||
stevan signs up for Limbic_Region's "Girlfriends & Physics 101" class | |||
bjoern_ | sounds good. well, except for the physics. | 18:03 | |
fglock | particle_: please add a ';' until I fix the grammar... | 18:04 | |
particle_ | oh, heh. | ||
i knew that | |||
where's the grammar? | |||
fglock | the statement grammar is misplaced at Pugs::Grammar::Operator - but it would be easier to just add a ';' to the source, in v6.pm (with a XXX comment) | 18:05 | |
Limbic_Region | stevan - good choice, the Wives and Physics curriculum is the standard variety sucking blackhole of death | ||
Limbic_Region ducks from SWMBO | 18:06 | ||
stevan | :) | ||
fglock | or to fiddle with the lexer, in Pugs::Grammar::Expression | ||
18:06
dasein joined
|
|||
particle_ | yeah. but first, a test | 18:07 | |
fglock | statements are currently mixed up with expressions, but they should be at separate levels | ||
particle_ | have you done any writing about this? or is the code/tests the documentation? | 18:08 | |
fglock | the writing is scattered around in lrep, Pugs::Compiler::Rule, irc logs, TODO files - it need some organization | 18:09 | |
a gobby session would be nice | 18:10 | ||
snowstalker | fglock, gobby? | 18:12 | |
fglock | snowstalker: darcs.0x539.de/trac/obby/cgi-bin/trac.cgi | 18:13 | |
particle_ | www.softpedia.com/reviews/linux/Gob...6804.shtml | ||
snowstalker | aah ok, i've heard about subethaedit but didn't know about gobby :) | 18:14 | |
fglock | bbiab & | ||
/bbiab | 18:19 | ||
fglock reads chromatic reply to perl6-compiler re backends | 18:22 | ||
'the most complete implementation' - that's not the point (and not true) | 18:23 | ||
'Some people believe' is a bit harsh | 18:24 | ||
particle_ | i don't see that as harsh | 18:25 | |
fglock | I could add a parrot emitter to PC-P6 - that would take a couple of days with a little help | 18:26 | |
particle_ | i could help | 18:27 | |
in fact, i'd love to | |||
fglock | particle_: open lib/Pugs/Emitter/Perl6/Perl5.pm - and s/perl5 code/parrot code/ | 18:29 | |
prefiks | ?eval $_='abc'; .\ say | ||
evalbot_10746 | Error: unexpected "\\" expecting ".", subroutine name, array subscript, hash subscript or code subscript | ||
fglock | you'll need some runtime routines - you can reuse the ones emitted by pugs (for example) | 18:30 | |
then add the new backend as an option to Pugs::Compiler::Perl6.pm; and maybe a teak of v6.pm to call parrot | 18:32 | ||
particle_ | i'll copy it to PIR.pm | ||
fglock | s/teak/tweak/ | 18:33 | |
prefiks | fglock: what is needed to switch PCP to ratchet rules implementation? | ||
fglock | particle_ plus-plus (I can't see the plus symbol today) testing [ ] | ||
prefiks: copy the files locally, and see what breaks - there are a few differences in the implementations, but most things should work | 18:35 | ||
however, most of the slowness today is load-time, due to not precompiling the p6 grammar | 18:36 | ||
(we are only running short programs) | |||
particle_ | fglock: currently perl6/parrot does perl6->parse->PAST->POST->PIR | 18:37 | |
it's possible, that PCP6 could look like perl6->parse->PAST | 18:38 | ||
then use the parrot tool chain for the rest | |||
ZuluOne | ooh | ||
have just remembered I was going to ask | |||
What is the result of a disallowed cast? Does it throw an exn? | |||
Couldn't find it in synopses. | 18:39 | ||
fglock | particle_: sure, high level is best | ||
particle_: you can reuse the Pugs::Compiler::Perl6.pm code to write a test-pir.pl | |||
18:39
coumbes joined
|
|||
fglock | what is the format parrot uses for PAST - yaml? | 18:40 | |
Aankhen`` | Yaml, yaml. | 18:41 | |
xerox | expand_acronym("YAML") | ||
fglock | yet another markup language | ||
xerox | Why is a markup language spread all out inside Pugs? | 18:42 | |
18:42
cognominal joined
|
|||
fglock | it's a way to represent internal binary structures as plain text | 18:42 | |
Aankhen`` | Because it rolls off the tongue! | 18:43 | |
ZuluOne | so do peas, but that's no reason to base a compiler on them | ||
:-> | |||
Aankhen`` | ZuluOne: Have you tried? | ||
xerox | fglock - I see, is it foreseen as good for something specific, or is it done JustForFun ? | ||
ZuluOne | only garden, not mushy | 18:44 | |
Aankhen`` | ZuluOne: Tsk, tsk. | ||
stevan proudly displays his mashed potatoe based interpreter | |||
fglock | particle_: later on, we can try PAST->Perl5 :) | ||
bpphillips | fglock: actually YAML == "YAML Ain't Markup Language" (source en.wikipedia.org/wiki/YAML) | ||
stevan | my next step is to add peas | ||
particle_ | fglock: no PAST and POST are in TGE syntax | ||
18:44
pmurias joined
|
|||
particle_ | TGE is parrot tree grammar engine | 18:44 | |
pmurias | hi | ||
particle_ | see /compilers/tge/ and t/compilers/tge/ in the parrot repo | 18:45 | |
pmurias pmurias is installing gentoo on his laptop, and he has to finish today... | |||
xerox | Anyone got an example of a YAML outcome of some source file? | 18:46 | |
prefiks | top dir of pugs - config.yml | ||
fglock | once we get PAST, and rewrite PC-P6 to v6.pm, it won't matter anymore in which backend it runs | ||
prefiks | ups osrry | ||
fglock | bpphillips: thanks | 18:47 | |
this is still a month or two away | 18:48 | ||
xerox: META.yml in pugs base directory | 18:50 | ||
particle_: I think TGE can be used to process the PC-P6 match tree - all you need is to dump it to a file | 18:53 | ||
xerox | fglock - It looks like Cabal files! | ||
18:54
Odin- joined
|
|||
fglock | xerox: yaml is just a specification for things people were already using anyway :) | 18:55 | |
xerox | I am noticing :-) | ||
But it is really used for spit out parsed/compiled bits? | |||
fglock | xerox: try - pugs -h | 18:56 | |
particle_: ping | 18:57 | ||
particle_ | here | ||
ETOOMANYTHREADS | 18:58 | ||
particle_ joins some work & real life threads | |||
fglock | I think TGE is powerful enough to process the match tree that PC-P6 uses internally, and to generate PAST from it | ||
xerox | fglock - Is it there any source I can try to compile? | ||
particle_ | fglock: great, i expected as much | ||
parse tree -> TGE | |||
xerox | examples/ ! | 18:59 | |
fglock | xerox: pugs -CPIL1-YAML -e ' "hi!".say ' | ||
xerox | Bang! | 19:00 | |
gaal is back from a morning in manhattan. fun! | 19:01 | ||
particle_ | fglock: how does that change things for me? i assume i'll no longer be modifying the emitter code | ||
svnbot6 | r10859 | audreyt++ | * Pugs.Parser.Operator: Re-implement the "state" FIRST block translation | ||
r10859 | audreyt++ | hack via a partial rewriting of all assignment forms: | |||
r10859 | audreyt++ | state $x = 1; | |||
r10859 | audreyt++ | becomes | |||
r10859 | audreyt++ | state $x; | |||
r10859 | audreyt++ | FIRST { $x = 1; } | |||
r10859 | audreyt++ | Currently it's only extended to "=" and ".=", because I'm not sure | |||
r10859 | audreyt++ | what "initializer" really means in S02 (in particular for :=). TimToady? | |||
particle_ | manhattan++ | ||
fglock | particle_: all you need is | ||
$self->{ast} = Pugs::Grammar::Perl6->parse( $self->{source} ) | |||
xerox | gaal - Howdy! | ||
gaal | yo! | ||
fglock | $ast = Pugs::Grammar::Perl6->parse( $self->{source} ) | ||
actually | |||
$ast = Pugs::Grammar::Perl6->parse( $source ) | 19:02 | ||
whatever | |||
gaal | audreyt++ # emit_yaml | ||
particle_ | then feed the $ast out to TGE | ||
lumi | Hi Gaal | ||
gaal | hey lumi | 19:03 | |
fglock | $self->{ast}() - is the part that you need | ||
$ast->() - sorry | |||
xerox | What does '::' divide up there? | ||
particle_ | np, i'd figure out that part | ||
xerox | ...or connect, if you want (: | ||
particle_ | xerox: namespaces | ||
gaal | xerox: akin to A.Haskell.Module | 19:04 | |
xerox | And what about the final '->' ? | ||
gaal | perl 5 method invocation | 19:05 | |
xerox | Is it sage to read Apocalypse, & co. nowadays to get a grasp of p6? | 19:06 | |
gaal | xerox: read the Synopses. | ||
fglock | particle_: the tree emitted by Pugs::Grammar::Perl6 is not an 'ast' as the one emitted by pugs - you'll may need to do some further work on it | 19:07 | |
particle_ | xerox: dev.perl.org/perl6/doc/synopsis.html | 19:08 | |
fglock: i'll spit it out and have a look. Data::Dumper best? | |||
fglock | xerox: please note that Pugs::Grammar::Perl6 is written in perl 5 (perl 6 uses a dot for method calls) | ||
xerox | Gotcha. | 19:09 | |
fglock | particle_: just uncomment the 'die' in Emitter/Perl5 line 37 | ||
particle_ | btw parrot/perl6 has --target and --dump options, so you can say --target=[parse|PAST|POST|PIR] | ||
ZuluOne | in examples/vmethods/math.p6, are the is_even and is_odd functions the wrong way around or is it just me? | ||
multi sub is_even (Int $value:) { $value % 2 == 1; } | 19:10 | ||
particle_ | ...and --dump dumps each phase one by one | ||
ZuluOne | and ditto with s/1/0/; s/even/odd/; | ||
fglock | someone could add those options to v6.pm :) | ||
particle_ looks for someone | 19:11 | ||
particle_ covers the mirrors ;) | |||
fglock: see the tree, thx | 19:12 | ||
fglock | ZuluOne: yes, it looks wrong | 19:13 | |
particle_: the tree format is a bit unstable, as the grammar gets fixed | 19:14 | ||
particle_ | sure, understood | ||
ZuluOne | Further evidence, I quote from examples/output/vmethods/math: | ||
fglock | for example - ';' is always parsed as a list operator, even if it is between statements | ||
ZuluOne | 5 is even | ||
8 is odd | |||
particle_ | perhaps you can build perl6/parrot | ||
fglock | ZuluOne: odd | 19:15 | |
ZuluOne | even | ||
fglock | :) | ||
particle_ | and run ..\..\parrot perl6.pbc --target=parse | ||
to get an idea of the parrot ast | |||
fglock | particle_: trying... | 19:16 | |
particle_ | note method calls don't work yet | ||
so <<say "hello world">> will probably be a better example | |||
audreyt | fglock: I took the AST draft we did via gobby the other day | 19:20 | |
and worked out a much more complete graph with MS/CLR people yesterday | |||
I'll try to translate it to english in Chicago | 19:21 | ||
hopefully with pmichaud and TimToady | |||
fglock | audreyt: so we can have a unified AST format soon? | ||
audreyt | I certainly hope so, it's long overdue | 19:22 | |
PerlJam | one AST to rule them all and in the darkness bind them? | 19:23 | |
audreyt | one possibility is to use PCR or PGE to run rules | ||
instead of Parsec | |||
and get the AST building part embedded inside the rules with miniperl6 | |||
particle_ | audreyt++ | 19:24 | |
audreyt | <- that "Some people" chromatic mentioned | ||
(I just replied to him) | |||
particle_ | @audreyt | ||
lambdabot | Unknown command, try @list | ||
PerlJam | yes, audreyt++ | ||
audreyt | fglock: I need to type down the meeting notes etc | 19:27 | |
19:27
Ymmv joined
|
|||
audreyt | the outline we based on is perlcabal.org/~audreyt/tmp/P6AST.jpg | 19:27 | |
fglock | @audreyt as in @larry :) | ||
audreyt | right, everyone knows that I'm just an Asian consortium | ||
;) | |||
FurnaceBoy | better than consort ? | 19:28 | |
audreyt | maybe a consortium is the chemical element all consorts are made from | ||
FurnaceBoy | hahaha | ||
fglock | btw: is there an easy way to convert from 'pos' to 'line' when reporting syntax errors? | 19:29 | |
audreyt | well if you have the original string around | 19:30 | |
fglock | maybe Match sould provide this as a method | ||
audreyt | that's just a tr///\n etc | ||
fglock | should | ||
ok | |||
audreyt | Parsec keeps pos+line as part of its state | ||
so makes parsing a bit slower | |||
but access much faster | |||
you can also cache it | |||
timtowtdi | |||
gaal | just noticed that YAML::Syck's LoadFile uses a Perly file slurp. Would it make sense to load the file in c, bypassing IO layers and stuff, for speed? | 19:31 | |
ZuluOne | which reminds me, is tr/// supposed to work in {P6,Pugs}? | 19:32 | |
audreyt | gaal: yes. commits welcome | ||
ZuluOne: it's renamed to .trans | |||
ZuluOne | aha | ||
audreyt | see S05 | ||
the implementation is given out in src/perl6/Prelude.pm | |||
line 389 as a Str method | 19:33 | ||
gaal | I'm on it | ||
fglock | re: P6AST.jpg - also add some 'meta' info, like 'pos' and 'comment'? | ||
or you just assume the source file is around | 19:34 | ||
audreyt | fglock: I this this is not parse tree anymore | 19:35 | |
so while each node can also carry annotation to the original parse tree | |||
they are result objects | |||
the pos lives in the match object | |||
comments too | |||
so you need to retrieve those from the match tree | |||
not the semantics tree | |||
ZuluOne | thanks | 19:36 | |
gaal | hey is for @list, CODE no longer valid? | ||
audreyt | gaal: indeed because I can't make it work | ||
gaal | (following recent S commit) | ||
audreyt | statement_control:<for>(@list ; CODE) maybe | ||
consider | |||
gaal | okay, i'll update the peek talk slides then :-) | ||
audreyt | for 1, { 2 } { 3 } | ||
gaal | (have an "option comma" :) | 19:37 | |
audreyt | is that a loop then a statement level bare | ||
or is that two terms to be looped with {3}? | |||
gaal | *nod* | ||
couldn't it be stipulated to mean option #1, and if you want 2 you need parens? | 19:38 | ||
for (1, {2}) {3} | |||
looks reasonable to me, how often do you want to iterate over immediately specified closures? | 19:39 | ||
audreyt | the thing is that whenever you see opening { | 19:41 | |
in the cond part | |||
it's immediately taken to mean the boyd | |||
so it has to parse as #1 | 19:42 | ||
gaal | cond part!? this isn't an if, it's a for | ||
fglock | audreyt: match tree == syntax; ast tree == semantic ? | 19:44 | |
audreyt | fglock: yeah I think | ||
gaal: I can't see a reason why for needs to be parsed diffferently than if. | 19:45 | ||
Limbic_Region | don't you love how she always sounds like she knows what she is talking about except when she isn't sure | 19:46 | |
audreyt | they are the same thing, control-wise, now | ||
fglock | or maybe not - match tree == raw data; ast tree == objects | ||
audreyt | fglock: the thing is the match tree carries the ast tree around | ||
Limbic_Region: mmm? :) | |||
Limbic_Region | audreyt - just when you were telling fglock to retrieve things from the match tree not the syntax tree | 19:48 | |
then when he asked to confirm what those 2 things were - you caveated your response with "I think" | |||
gaal | huh? if takes 1 or 2 control blocks. for takes one. always. | ||
audreyt | Limbic_Region: oh. but I really think that :) | 19:49 | |
gaal: if takes optional else | |||
Limbic_Region would be scared to think of audreyt as a military leader | |||
audreyt - I just meant that I bet a lot of people don't question even your musings - just accept that it is right | |||
SamB thinks fglock sounds like a syscall | 19:51 | ||
19:52
regex joined
|
|||
fglock is called back | 19:52 | ||
gaal | audreyt: what is else syntactically? | ||
audreyt | gaal: I'm checking in a unification. | 19:53 | |
a sec | |||
19:53
perlbot joined
|
|||
audreyt | Limbic_Region: that would be a very bad thing... I think TimToady actively try to discourage people do that | 19:54 | |
gaal | k. in the meanwhile: where has the implementation of Load moved to? is it LoadYAML/LoadJSON in perl_syck.h? | 19:55 | |
19:55
coumbes joined
|
|||
audreyt | gaal: "else" is syntactically a subrule of "if" | 19:55 | |
gaal just doesn't question audreyt's moosings. | |||
audreyt | gaal: it's in perlsyck.h | ||
gaal | so they are parsed differently :) | ||
audreyt | line 349 | ||
gaal | yeah okay | ||
audreyt | yes, but for/while/until/given/when shoudl parsesame | 19:56 | |
gaal | uh, educate me about XS please: how come this function accepts a char *? | ||
audreyt | tyepmap | ||
gaal | does XS translate a scalar to a c buffer automatically? that's insane | ||
hmm | |||
wait, how could that even work in the general case? (embeded NULs e.g.) | 19:57 | ||
audreyt | can't | ||
CString carries no guarantee | 19:58 | ||
but with Load we don't care | |||
fglock | it's reasonably easy to change v6.pm to P6AST.jpg - except for a few parts | ||
gaal | I know c strings don't, that's why I'm asking how XS permits itself to exposes that | ||
sure | |||
svnbot6 | r10860 | audreyt++ | * Unify parsing of for/while/until/given/when. They are all | ||
r10860 | audreyt++ | subject to the brace-terminating rule that governs "if" now | |||
r10860 | audreyt++ | as specified in S03, and all of them takes a (maybe pointy) | |||
r10860 | audreyt++ | sub literal as body. | |||
audreyt | gaal: see r10860 | 19:59 | |
because TimToady wants | 20:00 | ||
while f(...) -> $x { ... } | |||
as well as | |||
if g(...) -> $x { ... } | |||
and same for given/when/for | |||
fglock | else -> $x {...} ? | ||
audreyt | why not? :) | 20:01 | |
if f(...) { ... } else -> $x { ... } | 20:02 | ||
"if it's false, I want to know how it's false" | |||
pmurias | is there any documentation for typemaps besides perlxs? | ||
gaal | er, what is $x? | ||
audreyt | gaal: the actual value | ||
gaal | i mean what value is bound to it? | ||
from the cond? | |||
audreyt | yeah | ||
gaal | that's useful | ||
audreyt | yup | 20:03 | |
fglock | is it bound to $_ otherwise? | ||
like in a for | |||
pmurias | if f(...) &sub would also work then? | ||
particle_ | and $x is lexically scoped inside the if | ||
gaal | that would be surprising | ||
audreyt | pmurias: it's not a literal, so no, I don't think | ||
gaal | particle_: that $x would be lexically scoped is certain | 20:04 | |
audreyt | fglock: no, I don't think if/unless should bind to $_ | ||
gaal | like any pointy block | ||
audreyt | that's another thing that set them apart | ||
particle_ | gaal: agreed. # no question mark | ||
gaal | fglock: I agree, otherwise C< if .valid { say } would be surprising | ||
particle_: oh ACK | 20:05 | ||
gah, I forgot about the acute pleasures of portable c code | |||
fglock | just checking how far the unification can go | ||
audreyt: re 'it's not a literal' - is this just for historical reasons? | 20:07 | ||
20:07
Aankhen`` joined
|
|||
fglock | it could work if you added a semicolon | 20:07 | |
audreyt | or you can call statement_control:<if>() as a function | 20:08 | |
if f(...) {sub($_)} | |||
pmurias | i don't understand the semicolon statement , example please | 20:09 | |
20:09
miyagawa joined
|
|||
fglock | if f(...) ⊂ - but I was just asking | 20:09 | |
ZuluOne | how is "\x{abcd}" spelt these days? Can't find it anywhere. | 20:10 | |
particle_ | "\x[beef]" | 20:11 | |
is one spelling | |||
i think S03 | |||
no, sorry S02 "Literals" section near bottom | 20:12 | ||
svnbot6 | r10861 | audreyt++ | * implement: | 20:13 | |
r10861 | audreyt++ | if 3 -> $x { say $x } | |||
ZuluOne | aha | 20:14 | |
I just read right past it twice. | |||
particle_ finally gets gobby installed | 20:15 | ||
svnbot6 | r10862 | audreyt++ | * revert the unification for the duration of my Galois talk -- | ||
r10862 | audreyt++ | will finish the ->$x change after that | |||
20:18
Stoffie joined
|
|||
particle_ | audrey: see chip's response to 'lexical lookup and OUTER' on p6i? | 20:18 | |
Stoffie greets | |||
particle_ | am i right that OUTER:: starts the lexical lookup one scope up? | ||
audreyt | ZuluOne: the specs are fractal :) | ||
particle_: sure | 20:19 | ||
particle_ checks his specs | |||
okay, so OUTER::OUTER:: is senseless | |||
audreyt | why? | ||
particle_ | i'm sorry | ||
not senseless | |||
audreyt | my $x = 3; { my $x = 5; { say $OUTER::OUTER::x } } | ||
particle_ | right | ||
but not necessary for my $x = 3; { { say $OUTER::x } } | 20:20 | ||
above should print '3' | |||
ZuluOne | audreyt: In that the closer you look at them the more complexity you see? | ||
audreyt | ZuluOne: yes | ||
particle_: sure | |||
particle_ | zuluone: back away from the monitor | ||
audreyt | actually just ask evalbot | ||
?eval my $x = 3; { { say $OUTER::x } } | 20:21 | ||
evalbot_10746 | OUTPUT[3 ] Bool::True | ||
particle_ | i'm gonna copy those two lines back to chip, thx | ||
audreyt | woot | ||
ZuluOne | Why doesn't C<for =$*IN { s:P5:g/stuff/otherstuff/; ... } do what I want? | 20:22 | |
20:23
Stoffie is now known as Stoffie_
|
|||
ZuluOne | s/\}/}>/ | 20:23 | |
audreyt | let's see... | 20:24 | |
ZuluOne | It tells me Can't modify constant item: VStr "stuff" | ||
audreyt | yeah. | ||
for =$*IN -> $_ is rw { ... } | |||
gets you that | |||
trying to find if it's pugsbug or specerr | |||
pugsbug. S04. | 20:26 | ||
write a test? | |||
gaal gets irritated enough at implementing slurp in c that he quits his procrastination and goes back to writing slides | |||
particle_ | writing slides... you must be desperate! :) | 20:27 | |
ZuluOne | hold on | ||
audreyt | I am actually writing the slides on the big screen now | 20:28 | |
Limbic_Region | gaal - isn't writing slurp in C insanely easy? . o O ( unless of course you want it to behave sanely) | ||
ZuluOne | am now eating ice cream so ENOHANDS | ||
audreyt | anyway, the talk is about start :) | ||
bbiab... | 20:29 | ||
gaal | Limbic_Region: it is when I have my choice of tools. #include <glib.h> g_file_get_contents(...) | ||
but implementing that portably is just a lot of manual labor | |||
Limbic_Region | gaal - right, behaving sanely and all | ||
gaal | nothing very tricky, mind you, just very dull | ||
20:29
cognominal joined
|
|||
audreyt | ZuluOne: ok. do write a test -- it's part of this oil-for-food^Wtest-for-fix program | 20:30 | |
:) | |||
gaal: pass fd to syck | 20:31 | ||
void syck_parser_file( SyckParser *, FILE *, SyckIoFileRead ); | |||
gaal | I like programming in c from time to time, it reminds me of the tons of yak hair Perl has shaved off for me | ||
audreyt: hmm but that means not reusing LoadYAML | |||
basically duplicating it -- either that or fiddling around with macros some more | 20:32 | ||
eh, no, cpp isn't reentrant | |||
20:32
Stoffie_ is now known as Stoffie
|
|||
ZuluOne | audreyt: on it now | 20:33 | |
but it might take a while | |||
20:33
Stoffie left
|
|||
gaal | proof that Perl 6 is still a while off: Perl 6 is so useful, and should save so much time, if it were to be released in the future all programs would have already been finished before they were started. | 20:34 | |
20:36
Stoffie joined
20:46
snowstalker left
20:47
bpphillips left
|
|||
particle_ & # fish fry | 20:48 | ||
ZuluOne | audreyt: It is already tested. t/statements/for.t line 186 | 20:54 | |
svnbot6 | r10863 | fglock++ | v6.pm - no problem if you don't have Perl::Tidy installed | 20:57 | |
ZuluOne | Oh, another reason the synopses are fractal: it takes many iterations to produce good-looking approximations to the theoretical true language spec. | 20:59 | |
21:06
ruz joined
|
|||
svnbot6 | r10864 | fglock++ | v6.pm - added Makefile.PL | 21:12 | |
r10865 | fglock++ | v6.pm - Makefile.PL 'recommends Perl::Tidy' | |||
21:14
jdv79 joined
|
|||
jdv79 | sial.org/pbot/17931 | 21:14 | |
any ideas? | |||
gaal | jdv79: when's the last time you built your pugs? try make clean | 21:21 | |
jdv79 | i checked out maybe 4 hours ago and built it for the first time | 21:22 | |
21:29
Limbic_Region joined
|
|||
fglock ponders whether to send v6.pm to cpan | 21:31 | ||
21:38
fglock left
21:45
weinig|working joined
21:46
weinig|working is now known as weinig
|
|||
audreyt | jdv79: run "perl Makefile.PL" | 21:55 | |
and see if there's fps error | |||
gaal | beh. in spork::kwiki, how do I italicize a string with a "/" in it? | 22:01 | |
/like, for example, I with this came with an on/off switch/ | |||
whee, I typo with a lisp | 22:02 | ||
audreyt | \/ ? | ||
not sure | |||
〹 | |||
? | |||
gaal | / does't work | ||
audreyt | use another unicode / ? | ||
on-off switch? | |||
obra | seen nothingmuch | ||
jabbot | obra: nothingmuch was seen 23 hours 38 minutes 25 seconds ago | ||
jdv79 | it seems to be ok | 22:03 | |
gaal | well the real string is "flaky/per-platform" :) | ||
audreyt | flaky & per-platform? | ||
flaky 'n' per-platform? | |||
kolibrie prepares for departure to yapc & | 22:04 | ||
jdv79 | sial.org/pbot/17932 | ||
there's the perl Makefile.PL output... | |||
gaal | "insidious" :) | ||
bon voyage kolibrie | |||
audreyt | jdv79: and what "make" says now? | ||
22:05
coumbes joined
|
|||
jdv79 | my box is slow, just a moment:) | 22:06 | |
22:08
Stoffie joined
|
|||
svnbot6 | r10866 | Sage++ | Converging audrey's changes with the new tree model. | 22:10 | |
r10867 | Sage++ | Converging audrey's changes with the new tree model. translate and translate-sage currently the same. | 22:13 | ||
jdv79 | finally, sial.org/pbot/17933 | 22:19 | |
does one have to build twice before it works - self referential anywhere? :) | 22:21 | ||
audreyt | er, you do have to run Makefile.PL before make | 22:25 | |
trying to fix that problem now with Cabal designer SyntaxNinja | |||
svnbot6 | r10868 | audreyt++ | * revert completely -- moral of the story: don't commit before a talk | 22:28 | |
jdv79 | what i did is co from the repo and ran perl Makefile.PL , make, make install | 22:30 | |
the standard, or so i thought | |||
22:32
lisppaste3 joined
|
|||
audreyt | mm strange | 22:35 | |
22:49
dduncan joined
|
|||
jdv79 | don't worry about it - pugs builds, last time i tried, on my personal box which is fedora | 22:52 | |
this is a work box running RH | |||
its just a little odd | |||
23:44
bjoern_h joined
23:49
bjoern_h is now known as bsh,
Mithenks joined
|