pugs.blogs.com | pugscode.org | pugs.kwiki.org | paste: sial.org/pbot/perl6 | <stevan> Moose... it's the new Camel ":P | .pmc == PPI source filters!
Set by Alias_ on 16 March 2006.
00:09 mako132_ joined 00:10 justatheory joined
rbysamppi Can you method-call a multisub? multi f (Int $x: Int $z) { ... }; f 2: 3 00:30
audreyt yes, but that's a fallback 00:33
if method dispatch fails
it pretends you did
f(2, 3)
instead
i.e. if 2.f() can't be found
(bbiab)
Arathorn hum 00:34
prelude compiling seems to be broken - on the range operator
in push @rv, (~ $start)..(~ $end);
(line 412 of src/perl6/Prelude.pm) 00:35
Arathorn investigates as best he can
00:41 macroron__ joined 00:45 dvorak joined
Arathorn whee, this is rather fun 00:49
losing the char '.' >> notFollowedBy (char '.') in #10167 is the kicker... 00:50
01:09 hexmode joined 01:13 FurnaceBoy_ joined
Arathorn bah, i don't understand parsec well enough 01:17
(assuming this is parsec)
aufrank Arathorn++ just for chasing it down :) 01:38
01:44 ruporama joined 01:47 oylenshpeegul left 01:48 dvorak joined 01:52 schneiker joined 01:53 weinig|away is now known as weinig|sleep
Arathorn Arathorn-- for not having a clue what he's doing, though 01:56
Arathorn defers in favour of playing with Judy, which has the advantage of being written in a language i speak :) 01:57
aufrank have you looked at the "Build a Scheme in 48 hours" tutorial?
it has a good parsec crash course
Arathorn will - although tomorrow, at this rate 01:58
02:03 dvorak joined 02:05 Khisanth joined 02:11 ruporama left 02:28 shachaf joined 02:35 Arathorn is now known as Arasleeps
schneiker I'd like to help with Perl6, but don't have much spare time. 02:41
In the course of searching for scattered Perl6 info,
I thought about starting a "perl.perl6.using"
group on Google Groups, with the following focus:
"Information exchange for using Perl 6.
The most useful info and resource links are added to a
weekly-updated "Using Perl 6 FAQ" posting. Topics include:
getting started with Perl 6, incremental migration from Perl 5,
developing Perl 6 tools, what early adapters are doing, etc.
Apparently I cannot do this directly through Google Groups.
I get this error message: "This group name is not suitable.
You cannot start a group name to be similar to a Usenet group."
However my newserver doesnā€™t show "perl.perl6.*" as part of
the Usenet newsgroup hierarchy (versus just in nttp.perl.org)
My search efforts haven't turned up any helpful info.
Information, feedback welcome.
02:49 sanxiyn joined
FurnaceBoy_ 'similar' though 02:49
who knows what their actual rules are. Try not using a '.'
just "Perl6 Users"
should be okay?
sanxiyn Interesting to see Pugs relicensing. I use this license myself: 02:50
sparcs.kaist.ac.kr/~tinuviel/fepy/COPYING
FurnaceBoy_ a.k.a. BSD
heh
FurnaceBoy_ is only joking
you could just say public domain
sanxiyn FurnaceBoy_: It's more fun this way. 02:51
FurnaceBoy_ more swearing involved, if that's your thing
sanxiyn Official homepage of WTFPL is here: sam.zoy.org/wtfpl/
FurnaceBoy_ I came across this one recently:
* ---------------------------------------------------------------------------- 02:52
* "THE BEER-WARE LICENSE" (Revision 42):
* [email@hidden.address] wrote this file. As long as you retain this notice you
* can do whatever you want with this stuff. If we meet some day, and you think
* this stuff is worth it, you can buy me a beer in return. Poul-Henning Kamp
* ----------------------------------------------------------------------------
schneiker "Perl6 Users" should be OK, but I'd like to see it grouped with other "perl.perl6.*"
FurnaceBoy_ impossible schneiker.
you could, however, propose an addition to Usenet.
that would be about 100x more difficult however.
Usenet is a tree owned by root and not world writable;-)
and I think the rules are there to prevent exactly what you propose 02:53
if you want to augment Usenet, go through that procedure, but it will take longer
sanxiyn FurnaceBoy_: alt.* hierarchy is easier to get in.
FurnaceBoy_ true.
but that wouldn't have the ring of officiality that schneiker seems to be pursuing. 02:54
sanxiyn FurnaceBoy_: Big 8 needs voting.
FurnaceBoy_ notes 'officiality' isn't a word. sorry.
yes, I know.
depends on whether he wants quick'n'easy, or Usenet :)
sanxiyn One can read www.eyrie.org/~eagle/faqs/big-eight.html and start the process. 02:55
schneiker I got Usenet to add comp.lang.ruby, years ago, but it took several months.
However perl.perl6.* does not appear to be part of actual Usenet hierarchy.
That's why I was puzzled.
FurnaceBoy_ whatever way you cut it, a random Google Group is easier. which is why there are a zillion of them.
sanxiyn File RFD to news.announce.newsgroups...
FurnaceBoy_ find its owners schneiker
but I warn you, this way will take work and commitment
compared to opening a random GG 02:56
the result may be worth it ...
are there no perl6 groups in perl.* ?
FurnaceBoy_ goes looking
sanxiyn I still prefer Yahoo! Groups to Google Groups actually.
FurnaceBoy_ only uses Usenet
sanxiyn FurnaceBoy_: I also use Gmane. 02:57
FurnaceBoy_ ck
worst web interface ever.
:_)
sanxiyn FurnaceBoy_: Well, it has NNTP too.
FurnaceBoy_ thanks Allah
I can;t believe nobody has called them on it
in all these years
maybe all the sane people just use NNTP
02:58 Quell joined
sanxiyn FurnaceBoy_: I only use search.gmane.org from the web interface. 02:58
FurnaceBoy_ schneiker, yeah, there seems an opening for a 'general' group under perl.perl6.*
sanxiyn (Which I found to work better than Google for some cases.)
FurnaceBoy_ you could probably find a way to propose one.
aufrank I'm pretty sure Larry mentioned something about being to able to help in getting that process off the ground 02:59
FurnaceBoy_ perl.perl6.using doesn't seem to have any precedent though... I mean 'using'
there must be a better word
aufrank but I could be imagining things
FurnaceBoy_ yes, TimToady could surely help
if anyone can
schneiker, pounce on TimToady about this
but I suggest a better word than 'using'
general has precedents in Usenet
schneiker FurnaceBoy: OK. I like general better. 03:01
FurnaceBoy: Recommended means to "pounce on TimToady about this"? 03:05
(I'm brand new to IRC, although I have been skimming logs for a while.)
03:07 hcarty joined 03:08 hcarty left
FurnaceBoy_ schneiker, you can ping him now, if he's asleep, wait till he's around here. ? 03:09
schneiker Thanks. 03:16
/quit
aufrank ok, I'm off for the night now too 03:23
bye all
03:23 q[uri] joined 03:35 wilx`` joined 03:54 coumbes joined
spinclad Arathorn: i've been pondering looking under the hood of JudyHS, seeing as it's described as implemented through Judy1 and JudyL 04:34
it seems the author doesn't see a natural or useful (or stable?) order to the keys, so doesn't provide iterators 04:36
but if one needs to iterate, in an arbitrary order, a hash order should work 04:38
so perhaps we may have something to contribute back to him...
otoh, Judy1 + JudyHS may be all we need, i haven't seen through this to the other side yet 04:40
04:51 H5N1 joined 04:58 innit joined, innit left 05:20 gaal joined 06:08 iblechbot joined 06:33 cmarcelo joined 06:54 Aankhen`` joined 06:59 ko1_away is now known as ko1 07:10 ko1 is now known as ko1_away 07:36 q[uri]_ joined 07:50 xinming joined 08:12 elmex joined 08:22 chris2 joined 08:30 FurnaceBoy_ joined, bernhard joined, larsen joined
svnbot6 r10170 | audreyt++ | * Massive parsing cleanup. 08:33
r10170 | audreyt++ | * Newly implemented parses:
r10170 | audreyt++ | @<foo> @123
r10170 | audreyt++ | %<foo> %123
r10170 | audreyt++ | map {...}, 1, 2, 3
r10170 | audreyt++ | map {...} 1, 2, 3 # is this form still kosher?
r10170 | audreyt++ | "$var\ .moose()"
r10170 | audreyt++ | * Fixed parsefails:
r10170 | audreyt++ | 1..2
r10170 | audreyt++ | "$var."
r10170 | audreyt++ | "$var.moose"
r10170 | audreyt++ | rule foo { ... \{ ... }
gaal what's @<foo> @123 ? 08:35
audreyt short for @($<foo>) @($123)
gaal what's that mean? 08:37
I got as far as @($<foo>)
audreyt @($<foo>) means @($/.{'foo'}) 08:38
@($123) means @($/.[123])
i.e. the 123rd capture
gaal okay, so what do the two mean juxtaposed? 08:39
audreyt they mean that I was too lazy to type \n 08:40
TimToady: is this form still kosher? 08:41
map {$_+3} 1,2,3,4
gaal thanks :)
audreyt np, sorry :)
TimToady: the only mention is in S03
@result = map { floor($^x / 2) }
grep { /^ \d+ $/ }
@data;
if it's not a typo, then it needs to be clearly documented that whitespace-follows-block-literal means comma 08:42
because you've specced that non-comma-follows-block-literal will no longer be arglist
(S12, "it will be considered to be the final argument")
so
map {moose}.blah # map({moose}).blah 08:43
map {moose} .blah # map({moose}, $_.blah)
map {moose}, .blah # map({moose}, $_.blah)
is the current pugs behaviour
and I wonder how correct it is
but I need to go take a nap. been in $hospital.bureaucracy for an entire day... 08:44
bbiab &
09:07 drbean joined 09:09 dakkar joined
dakkar is it possible that there are still problems re: Cabal and fps? 09:11
here (ghc 6.4.1, Cabal 1.1.3) I can't compile pugs (fresh checkout, svn head) 09:12
build_pugs.pl calls (I think) Setup, who then says Ā«Setup: cannot satisfy dependency fps-any 09:13
Setup: error reading ./.setup-config; run "setup configure" command?Ā»
Ā«ghc-pkg listĀ» shows the fps library...
09:53 KingDiamond joined
Juerd audreyt: I am glad we discussed the long dot on p6l, \. is much better than . . 10:05
theorbtwo It's even somewhat better then .:. 10:06
So it's now \\(<ws>|_)+\. ? 10:07
I'm not sure now if the _ idea was accepted or not.
dakkar am I the only one unable to compile pugs at the moment? (see above) 10:10
10:12 kanru joined 10:20 Arasleeps is now known as Arathorn
Arathorn morning folks 10:20
dakkar Arathorn: what was the error you got while building pugs, yesterday? 10:21
just Ā«can't find Data.ByteStringĀ», or Ā«can't read .setup-configĀ»?
Arathorn i had three - the .. parsefail which audreyt corrected in the night, FPS not being handled by Cabal correctly(?) (which audrey fixed at the time), and a "No instance for (Typeable1 Tree)" at src/Pugs/AST/Internals/Instances.hs:138, which i fixed by swiching to ghc 6.4.1 rather than ghc-cvs in debianland 10:24
10:24 cmarcelo left
dakkar yesterday I got Ā«can't find Data.ByteStringĀ», today I get Ā«Setup: error reading ./.setup-config; run "setup configure" command?Ā» 10:25
of course there is no .setup-config file...
fixed 10:27
argh
./Setup configure --user
Arathorn you shouldn't need to do that, though... 10:30
10:31 trampel joined
dakkar Arathorn: you tell it ;-) it's compiling now 10:33
Arathorn hehe 10:34
dakkar I just can't figure what I should change in the Makefile.PL to make it work without running Setup manually... 10:35
ok, now that it is compiled, I'll check the parsefails due to whitespace changes and fix the tests 10:38
?eval my $path="abc";$path ~~ s:perl5[^([a-z]:)][{uc$0}];$path; 11:15
11:15 evalbot_10165 is now known as evalbot_10170
evalbot_10170 Error: unexpected end of input expecting block, "\\", "$/", "$!" or ":" 11:15
dakkar parsefail? 11:16
(the code is from File::Spec::Win32)
11:19 coumbes left
dakkar ?eval my $path="abc";$path ~~ s:perl5[^a][A];$path; 11:20
evalbot_10170 Error: No such sub: "&a"
dakkar what?
?eval my $path="abc";$path ~~ s:perl5/^a/A/;$path;
evalbot_10170 \"Abc"
dakkar ?eval my $path="abc";$path ~~ s:perl5 [^a][A];$path; 11:21
evalbot_10170 \"Abc"
dakkar oh, now I get it
11:26 iblechbot joined
dakkar ?eval my $path="abc";$path ~~ s:perl5 [^([a-z]:)][{uc$0}];$path; 11:27
evalbot_10170 Error: unexpected end of input expecting block, "\\", "$/", "$!" or ":"
dakkar ?eval my $path="abc";$path ~~ s:perl5 [^([a-z]:)][{uc $0}];$path;
evalbot_10170 Error: unexpected end of input expecting block, "\\", "$/", "$!" or ":"
dakkar what's going on?
11:36 mako132_ joined
dakkar there's something very wrong in the pugs parser to parse regex... 11:37
clkao dakkar! 11:38
dakkar clkao! 11:39
I'm trying to fix the tests, but I found some strangeness in the rx parser (see above)
did the syntax of 'require' change recently? 11:40
'Junction of Something' does not parse (Ā«unexpected "o", expecting comment or variable nameĀ») 11:41
I should write down these problems... 11:42
clkao \. is ugly! 11:52
Arathorn just as ugly as .:, imo
especially as the : looked attached to the term it prefixed, rather than part of a longdot 11:53
dakkar this whole whitespace-sensitivity thing doesn't feel very DWIM to me...
audreyt dakkar: fixing
dakkar audreyt: which one?
audreyt s[][] 11:54
s!!! works
as does s////
but s[][] not
a sec
sorry for breaking it
dakkar oh, thanks
Arathorn the white-space sensitivity stuff feels amazingly unDWIM to me too :(
dakkar audreyt: s{}{} has the same problem, btw 11:55
audreyt sure
Arathorn we sacrifice compulsory brackets at the expense of our immortal souls...
11:55 dvorak joined
dakkar is there a more recent smoke table than the one audreyt linked to? 12:03
audreyt yes 12:07
see smoke.pugscode.org
m19s28.vlinux.de/iblech/stuff/pugs-...a4201.html 12:08
dakkar got it 12:09
audreyt s[][] fixed 12:11
committing
12:11 szbalint joined 12:14 kolibrie joined
svnbot6 r10171 | audreyt++ | * Parser: Allow nested begin/end pairs in regex body again: 12:19
r10171 | audreyt++ | rx[ [a-z] ]
r10171 | audreyt++ | however, the parser cannot currently distinguish between:
r10171 | audreyt++ | rx[ \[a-z] # should be valid
r10171 | audreyt++ | rx[ \\[a-z] ] # should be valid as well
r10171 | audreyt++ | as the escape codes are passed thru to the rules engine
r10171 | audreyt++ | without further manipulation. Thinking about how to solve this...
12:21 xerox_ is now known as xerox, r0nny joined
Juerd [mac mini]-- # sometimes refuses to eject, then requires reboot. 12:21
Sometimes being twice in 12 cd's alreday.
already.
Arathorn hope you have enough paperclips handy 12:22
Juerd Arathorn: No such emergency eject thingy.
audreyt: Well, \w characters that are escaped are special to the engine, while \W characters are special to the engine when NOT escaped. 12:23
audreyt: Also, \w characters are no longer valid delimiters
audreyt ah. point.
Juerd But I think there's, ultimately, no other solution than to have the full rule grammar embedded 12:25
'cause there's also rx<"...]...">]
s/</<[/
(That was a p5 regex ;))
dakkar pugs's build system is fragile... but I don't know enough to change it... 12:26
Ā«Wasn't able to find 'Syck_stub.o', abortingĀ»
audreyt oh no, not that again 12:27
which ghc version? is Syck_stub anywhere in dist/?
(it's really Cabal 1.0 that is very fragile.)
dakkar ghc 6.4.1, Cabal 1.1.3
audreyt yay, another different point version :/ 12:28
find dist |grep Syck_
dakkar and no, no stub anywhere in sight
audreyt ok. I think I can fix it.
dakkar it's still in src/
audreyt a sec
dakkar should I copy it? 12:29
audreyt well, to get it working, sure
I'll have a better (and saner) fix in a bit
cp the stub to dist/build/src/Data/Yaml/Syck_stub.o
dakkar oops
it's Syck_stub.c, no .o 12:30
audreyt I'm implementing the saner fix (move Data.Yaml.Syck to third-party)
which is good, as it allows D.Y.S. be used separately
dakkar ok, thanks again
audreyt np :) thanks for reporting 12:31
dakkar is great at finding obscure bugs
audreyt: while you are there, do you have any idea why I have to manually run Ā«./Setup configure --userĀ» to make it find fps? 12:32
audreyt I believe it's a Cabal 1.1.3-specific thing :/ 12:36
12:36 trampel left
audreyt try it again 12:37
dakkar ok, I'll do it by hand
nnunley audreyt: Could it be because the Pugs.cabal file doesn't refer to third-party?
audreyt nope, try 10172
nnunley: no... it's not that 12:38
dakkar: r10172 should fix that
(essentially by adding --user for you)
dakkar ok
I'm fixing a lot of whitespace-related parsefails, btw
svnbot6 r10172 | audreyt++ | * build_pugs: add --user. 12:39
audreyt yay
Juerd audreyt: I think the whitespace rules for . and .= should be the same, for consistency: no whitespace around .=, if it's also disallowed around .
audreyt dakkar++ dakkar++
Juerd Uglier, but easier to predict.
audreyt er, uhm, hm, I thought the other way around.
I see .= as infix
not postfix-method
Juerd Also, with .foo meaning $_.foo, I'd expect .=foo to mean $_.=foo; when it does not, it should probably not mean anything, and die with an appropriate error message.
audreyt: .= is based on . 12:40
Not on +=
The RHS of .= is not a normal expression
audreyt I think it is
Juerd It is, like .'s RHS, a method name.
i.e. bareword, or simple variable.
audreyt when the pugs parser sees
$_ .= ...... 12:41
it transforms it as
Juerd I don't reason from a parser's point of view...
audreyt $_ .= $_......
dakkar audreyt: r10172 fixed the '--user'. now I only have the Syck_stub problem
audreyt Juerd: I see your point
my Dog $fido.=new; 12:42
is what you mean
Juerd That, and other things.
audreyt I think it's a bit too draconian; we can easily fix the whitespace problem.
Juerd Mostly, I'm worried about confusion if they different whitespace rules exist.
I also think of it the other way around: if whitespace is allowed around .=, it should be allowed around .
audreyt it is a normal infix macro... I think
Juerd It's not a macro, I think.
audreyt whilst as . is strictly postfix
ok. we Think Differently 12:43
that's fine :)
Juerd It isn't just that $foo.=bar always translates to $foo = $foo.bar
svnbot6 r10173 | audreyt++ | * Beginning to implement HsSyck.
audreyt it'd make $foo.=bar in the same cate as $foo.+bar
instead of $foo += bar
dakkar in enum.t: enum <<:Alpha<A> Bravo Charlie Delta Echo>>
Juerd It could have to call the inline-optimized version of bar
Of which I forgot the syntax :) 12:44
dakkar gives a parsefail at the <A>
Juerd audreyt: I think that would be a good solution
dakkar changing it to enum <<:Alpha<<A>> Bravo Charlie Delta Echo>> works
audreyt dakkar: a bug. fixing
Juerd Gotta go; afk
dakkar ok, so I won't touch the test
audreyt fixed 12:45
committed
svnbot6 r10174 | audreyt++ | * Lexer: In 12:46
r10174 | audreyt++ | << < x > >>
r10174 | audreyt++ | do not commit on '<<' when we see inner '<'.
r10174 | audreyt++ | Reported by dakkar.
dakkar is 1..* still valid syntax?
audreyt it becomes valid syntax last week 12:47
havn't implemented term * yet
dakkar so I won't change the lazy_list test 12:48
12:48 hexmode joined
audreyt k 12:48
dakkar I'm changing a lot of lives_ok{...} to lives_ok {...} 12:51
is that needed, or am I manking some other problem?
masking
audreyt mm 12:52
I think it's always needed now
postfix {} is always hash deref
dakkar ok, so I fixed right 12:53
audreyt misses the old backtracking dwim days
svnbot6 r10175 | audreyt++ | * HsSyck.
audreyt dakkar++
dakkar is q:to/SOMETHING/ implemented?
clkao new commits keep coming while i am compiling
Arathorn that's a good thing, no? 12:55
dakkar there's something screwy in q:to... either the implementation, or the usage 12:56
12:59 Coke joined
audreyt both. 13:00
dakkar what type is the parameter to the :to adverb? a regex? a string? 13:01
clkao is pugs startup slower again 13:02
dakkar clkao: seems so
13:03 bernhard joined
svnbot6 r10176 | dakkar++ | r7940@nautilus: dakkar | 2005-11-12 17:54:58 +0100 13:03
r10176 | dakkar++ | local branch
r10176 | dakkar++ | r10192@nautilus: dakkar | 2006-05-01 12:59:37 +0200
r10176 | dakkar++ | long dot & whitespace fixes in tests
r10176 | dakkar++ | r10193@nautilus: dakkar | 2006-05-01 13:18:05 +0200
r10176 | dakkar++ | long dot & whitespace fixes in tests
r10176 | dakkar++ | r10194@nautilus: dakkar | 2006-05-01 13:50:32 +0200
r10176 | dakkar++ | long dot & whitespace fixes in tests
r10176 | dakkar++ | r10195@nautilus: dakkar | 2006-05-01 14:04:11 +0200
r10176 | dakkar++ | long dot & whitespace fixes in tests
r10176 | dakkar++ | r10196@nautilus: dakkar | 2006-05-01 14:12:00 +0200
r10176 | dakkar++ | long dot & whitespace fixes in tests
r10176 | dakkar++ | r10197@nautilus: dakkar | 2006-05-01 14:20:29 +0200
r10176 | dakkar++ | long dot & whitespace fixes in tests
r10176 | dakkar++ | r10200@nautilus: dakkar | 2006-05-01 14:39:12 +0200
r10176 | dakkar++ | long dot & whitespace fixes in tests
r10176 | dakkar++ | r10203@nautilus: dakkar | 2006-05-01 14:43:18 +0200
r10176 | dakkar++ | long dot & whitespace fixes in tests
r10176 | dakkar++ | r10204@nautilus: dakkar | 2006-05-01 14:45:00 +0200
r10176 | dakkar++ | wrong fix, revert
r10176 | dakkar++ | r10207@nautilus: dakkar | 2006-05-01 14:50:09 +0200
r10176 | dakkar++ | long dot & whitespace fixes in tests
r10176 | dakkar++ | r10208@nautilus: dakkar | 2006-05-01 14:57:42 +0200
r10176 | dakkar++ | long dot & whitespace fixes in tests
dakkar oops...
Coke GAH. 13:04
clkao grins
dakkar svk ci -l ...
i.e. svk push -l
Coke (worse for my client, since each of those commit lines turned into 3 lines. whoops. Need to fix that.)
xinming --verbatim
audreyt pugs startup should be fast enough
if you are playing with tests without "make install"
try
make ; ./pugs -Iblib6/lib t/foo/bar.t
dakkar xinming: yeah, my fault
clkao i was just doing ./pugs -e1
hurrah, you fixed js backend? 13:05
audreyt I fixed PIL2JS
clkao still got fatal to run the generated js
audreyt havn't really investigated codegen
yes
take a look?
dakkar ok, with that badly-described commit, all the parsefails in the test suite that were directly caused by whitespace-rulings should be fixed 13:06
svnbot6 r10177 | audreyt++ | * Sanity fix and warning removal for HsSyck API.
audreyt dakkar++ 13:08
dakkar now, make distclean;svk up;make
clkao how to tell javascript to carp::confess? 13:09
audreyt alert()? 13:10
audreyt has noidea
oh, you mean stack trace
doubly no idea.
dakkar clkao: you mean, die with a stacktrace?
clkao yes
i thought throw would do
dakkar looks in his JavaScript book
13:10 Qiang joined
xinming src/Pugs/Lexer.hs:232:24: Not in scope: `startRule' 13:11
Build failed: 256 at util/build_pugs.pl line 96.
make: *** [pugs] Error 2
audreyt: I got this while compiling
dakkar xinming: me too, trying after a make distclean
audreyt fixed 13:12
the Syck_stub nightmare is fixed too
there's no need to rm Syck every build, yay 13:13
gaal audreyt++
dakkar audreyt: you're faster than my compiler!
audreyt considering it's GHC, is't not very hard...
svnbot6 r10178 | audreyt++ | * Lexer: oops, typo. xinming++
audreyt gaal: MIT license okay with you for HsSyck?
audreyt notes Why The Lucky Stuff attached the MIT license for syck but called it the BSD license. 13:14
Arathorn clkao: Opera prints pretty stack traces by default - otherwise in Spidermonkey, if you're using exceptions properly, you can do, uhm...
13:14 Limbic_Region joined
dakkar clkao: I think that the side-effects of 'throw' are implementation-defined... 13:14
gaal audreyt: sure, as is sqlite non-
audreyt yay. gaal++
gaal also beer-license
clkao the problem is jsbackend things the JS::inline()-returned function requires one arg. how does it know?
gaal or wine-license 13:15
clkao s/function/sclosure
gaal or I'll let you crash at my place when you're at a conf or just touring-license
audreyt but I'm not fine with Syck's Death and Repudiation license
dakkar clkao: js functions have a quasi-signature attribute
audreyt "This software may not be used directly by any living being... f you are found to be a ghost or angel, you will be punished to the fullest extent of the law..." 13:16
clkao ya, i know, but the pil2js backend shouldn't know, because that's something not evaled yet
dakkar ???
audreyt fortunately it's dual-licensed.
gaal knows of no jusdictions that have laws against ghosts using software...
there used to be a zine back in the BBS days, Scream I think it was called 13:17
the author did some interesting experiments - one time he asked that people not read his stuff at a certain hour
he wanted a rest from being accessed
another issue was "torn"
with ascii-art ommisions\ 13:18
worked well in 80-char days :)
ooh I know, we can put in a moose license: "to use this library in your code, you must form a mental image of a moose. there, that wasn't so bad, was it?" 13:19
dakkar lol
Limbic_Region gaal - that would be very bad 13:20
apparently merlyn would not be able to use the library 13:21
gaal no moose no use!
Limbic_Region according to him - he can't picture things in his head
gaal hey, I never said he should form it in his head. if he drew a picture of a moose that would be cool also
Limbic_Region mental image isn't in one's head? 13:22
</PITA>
gaal (Who said license discussions had to be a drag? All you need to do to liven them up is to invent your own dra^H^H^H glorious license) 13:23
no, mental can be a Californian adjective
clkao audreyt: maybe as_js in PIL/PApp? 13:25
audreyt clkao: sorry, I'm still in syckland 13:26
maybe it's the END block causing problems... not sure
I wonder if PIL2JS can load the YAML representation instead
that can fix things 13:27
clkao *nod*
gaal bbl & 13:28
dakkar is ironing shirts
audreyt proceeds to (potentially) break everybody's build by committing the HsSyck "fix" 13:33
dakkar ok, rm -rf again ;-)
audreyt nono
no need to do that
just run perl Makefile.PL :)
dakkar really? great!
audreyt (but heh, if you feel like rm-rf ...)
lumi ghc is evil 13:34
svnbot6 r10179 | audreyt++ | * Move Data.Yaml.Syck to HsSyck in third-party. 13:35
dakkar src/DrIFT/YAML.hs:45:24: Not in scope: `nodeElem' 13:36
svnbot6 r10180 | audreyt++ | * Pugs.Run: more YAML fix.
audreyt dakkar: aww 13:37
dakkar: have you rerun makefile.pl?
xinming /tmp/ghc13730.hc:8:29: ../../syck/syck.h: No such file or directory 13:39
Build failed: 256 at util/build_pugs.pl line 96.
make: *** [pugs] Error 2
already run 'perl Makefile.PL'
dakkar audreyt: yes, I did
should I try in a fresh working copy?
audreyt rm -rf dist/build/Data 13:40
xinming: try that?
dist/build/src/DAta rather 13:41
xinming still fails...
Compiling Data.Yaml.Syck ( src/Data/Yaml/Syck.hs, dist/build/src/Data/Yaml/Syck.o ) 13:42
/tmp/ghc14393.hc:8:29: ../../syck/syck.h: No such file or directory
Build failed: 256 at util/build_pugs.pl line 96.
make: *** [pugs] Error 2
audreyt there really shouldn't be a src/Data/Yaml/Syck.hs anymor
13:43 aufrank joined
xinming make clean; perl Makefile.PL; make 13:43
audreyt rm -rf src/Data/Yaml/*
and then update again from svn?
xinming if this time fails, I think I'll checkout a fresh copy, as in svk, co doesn't need the connection. :-) 13:44
svnbot6 r10181 | audreyt++ | * rm -rf src/Data/Yaml/.
aufrank audreyt: can I bug you with an svk question?
dakkar aufrank: ask clkao, he wrote it 13:45
aufrank heh, he just showed up in the other channel. that's what I get for being impatient
sorry for the noise =\
audreyt that's fine :)
dakkar ok, after rm src/Data/Yaml/* it seems to compile
audreyt whew. 13:46
dakkar 'seems' only... 13:47
src/Pugs/PIL1/Instances.hs:1:0:
conflict: module `Data.Yaml.Syck' belongs to the current program/library
and also to package HsSyck-0.1
Coke is svk.elixus.org/ the best place to go for svk info?
dakkar Coke: yes, or the IRC channel
aufrank that and #svk 13:48
not #perl6, as I just proved ;)
Coke #svk on this server?
clkao yes
xinming Coke: yes, and IMO, you'd better have experience with svn. they are really simililar except svk rocks... :-)
audreyt dakkar: ./Setup unregister 13:49
svnbot6 r10182 | audreyt++ | * link in HsSyck.
Coke /me tries to build pugs again, and wonders if it'll work this time. 13:50
dakkar audreyt: where?
audreyt dakkar: toplevel pugs dir
this is if you had "make install" before
dakkar never did install...
audreyt aw.
hm. 13:51
I wonder why.
is there still any Syck related stuff in dist or src for you?
xinming collect2: ld returned 1 exit status 13:52
Build failed: 256 at util/build_pugs.pl line 193.
make: *** [pugs] Error 2
audreyt xinming: pull and try again
xinming bbl, do a fresh install
audreyt no need to do that
:)
just pull and "make" again should work 13:53
dakkar ./dist/lib/HsSyck-0.1/ghc-6.4.1/Data/Yaml/Syck.hi
./dist/lib/HsSyck-0.1/ghc-6.4.1/libHSHsSyck-0.1.a
./dist/lib/HsSyck-0.1/ghc-6.4.1/HSHsSyck-0.1.o
./dist/build/src/syck/syck.o
./dist/build/src/syck/syck_st.o
./dist/build/Data/Yaml/Syck.hi
which should I kill?
audreyt ./dist/build/Data/Yaml/Syck.hi
actually all three indist/build
dakkar same result after a 'make' 13:55
audreyt duplicated on feather. sec 13:56
xinming Could not find module `Data.Yaml.Syck': 13:57
use -v to see a list of the files searched for
(imported from src/Pugs/AST/Internals/Instances.hs)
Build failed: 256 at util/build_pugs.pl line 96.
make: *** [pugs] Error 2
svnbot6 r10183 | audreyt++ | * GHC-specific for now for HsSyck
xinming fresh copy... 13:58
audreyt xinming: that's fixed in 10184
run Makefile.PL again :)
14:00 jserv-- joined
svnbot6 r10184 | audreyt++ | * try again... 14:00
dakkar trying 14:01
xinming is considering if he should C-c and restart.... 14:02
audreyt dakkar: find dist |grep Instance | xargs rm
xinming: not if you were on 10184
14:02 hexmode joined
audreyt (which I think you were) 14:02
xinming yes, 10184 14:03
dakkar audreyt: 10184 works on a fresh checkout 14:04
apart from Ā«Generating precompiled Prelude, Test... user error (no parse: YamlNil)Ā»
which doesn't stop the process
on the non-fresh copy, even after romeving all Instance, still conflicts 14:05
audreyt weird. 14:07
14:10 theorbtwo joined 14:11 vel joined 14:22 marmic joined, xerox is now known as xerox__
dakkar ok, I'm stopping my work on pugs here, today. 14:23
svnbot6 r10185 | dakkar++ | long dot & whitespace fixes in tests 14:24
audreyt dakkar++ dakkar++ dakkar++
14:24 vel joined
xerox__ Why so? 14:25
dakkar there are still parsefails, but I can't figure them out: they don't seem to depend on whitespace
audreyt xinming: I guess dakkar means "for today" 14:33
not, like, he'll be gone tomorrow
er sorry
s/xinming/xerox/
14:34 dvorak joined
dakkar yes, you'll hear from me again ;-) 14:35
Arathorn hehe
14:37 justatheory joined 14:42 FurnaceBoy_ joined
svnbot6 r10186 | audreyt++ | * do not print "YamlNil" error message when there's no prelude. 14:48
audreyt ?eval 1+1 14:52
14:52 evalbot_10170 is now known as evalbot_10184
evalbot_10184 2 14:52
14:59 schneiker joined 15:00 FurnaceBoy_ is now known as FurnaceBoy
schneiker TimToady: What do you think about establishing Usenet comp.lang.perl6.general? 15:03
(I did the Usenet registration process for comp.lang.ruby years ago.)
I'd like to use it to accumulate material for a Perl6 Eary Adapter FAQ to be posted
there weekly, with info and useful links, etc.
audreyt people still use usenet? </troll> 15:04
Arathorn google killed usenet :( 15:05
audreyt (I think it's a good idea -- I did registraion for tw.bbs.religion.perl on, oh, 1996)
it's been nearly 10 years, wow.
schneiker Got to run to $work. 15:06
Will check back evening PDT (actually AZ MST).
audreyt: old habit, true, but also often handy way to focus searches.
Arathorn: Perl NGs still get quite a bit of traffic.
Arathorn schneiker: for sure. still, usenet could be much more alive if its archiving hadn't been butchered by google groups
FurnaceBoy actually I don't think that's entirely true 15:10
Google Groups would have given Usenet usage a large shot in the arm, 15:11
but you can argue the wrong type of users (more eternal September)
I see a lot of activity in the groups I hang in, anyway 15:12
audreyt the last time I followed usenet actively 15:13
was during the saga of Ellora at rec.game.roguelike.nethack
15:13 mkhl joined
audreyt that was a brilliant work. 15:13
avar Arathorn: I thought AOL killed Usenet when it started the September of forever? 15:14
Arathorn well, i'd argue that GG kills both markets - its UI was/is unusable for powerusers, and too daunting for AOLers
15:14 mkhl left
avar Arathorn: Why is it unusable? 15:14
Arathorn: I've used it twice or thrice with good results.
I managed to read & post to a popular newsgroup, google groups helped me to get from A to B => GG is good 15:15
Arathorn broken threading, frames, broken posting, broken message-list syncing, non-proportional fonts, obfuscated message headers, etc.
the latter 2 points got fixed over the years, of course
avar you might argue not great, but certanly not unusable.
Arathorn and *terrible* performance for searching
avar Arathorn: What do you suggest instead?
Arathorn which is hilarious, given how it's run by google :|
Arathorn built an alternative setup during the deja/GG hiatus called siliconarchive.net 15:16
which is very down atm, and never made it out of beta
but it was a damn sight better, imo ;)
15:17 macintsh joined
macintsh story of the day to make us all feel old 15:18
my brother was having some regex problems and I was helping him
at one point he mentioned that he was using sed
I said, "Oh, I thought this was perl"
his answer: "i thought sed just called perl"
Arathorn heh 15:19
audreyt maybe his system maps sed to psed
in which case that'd be true
Arathorn in other news, does anyone with Judy-fu have any idea why rafb.net/paste/results/y5uyuv89.html melts?
15:20 js0000 joined
audreyt $ ./a.out 15:21
Got PValue for 'a' as 0xffffffff
15:21 eric256 joined
Arathorn uhm 15:23
avar This would be a funny name if "PV" stood for "Perl Value" 15:24
Arathorn how about rafb.net/paste/results/9K870438.html ?
avar Since you could read PValue as (Perl Value)alue or (Perl)Value, or ...
avar hides 15:25
Arathorn hopes that this isn't dear ol' debian being crap
audreyt Arathorn: bar=foo is bad
15:26 chris2 joined
cognominal does use of $!foo short-circuit accessors? 15:26
audreyt JLI is a macro that has & before bar
cognominal: yes, that's the idea, though not the implementation
Arathorn: if you s/bar/foo/g all works
cognominal audreyt: thx
Arathorn right
Arathorn assumed that Pvoid_t's were, well, pointers to void types
and could be assigned around as such
thanks for checking it 15:27
audreyt np :)
JLI(PValue, foo, 'a'); 15:28
*PValue = 123;
and finally
fprintf(stderr, "Got PValue for 'a' as %i\n", *PValue);
is the usual usage
cognominal can we have both %.foo and @%.foo on a given class? 15:29
oops
I meant: can we have both %.foo and @.foo on a given class?
audreyt no. 15:30
cognominal that would preclude calling %.foo with array context?
audreyt actually
has %.foo;
is just
has $.foo is Hash;
i.e. it concerns the storage
the public-facing interface remains constant 15:31
if you have declared
has $.foo;
you can use %.foo freely in your method body
and vise versa
cognominal so that is for module name space, not instance name space that sigils are part of the name. 15:32
audreyt $.foo is really just short for self.foo :)
(it used to be ./foo)
cognominal reading meijer, I think that would be nice to support something like my @?a (array with 0 or 0 element), @+a (array with more than one element) and so on 15:33
audreyt my @a is (Array where .elems < 1) 15:34
my @a is (Array where .elems < 2)
cognominal that would slightly complexify the current type system but would give support for sp,e feaire of xml schemas
audreyt I think constraint types can already do that 15:35
cognominal ho, so we alrady got that semantically
audreyt albeit checked at runtime
not compile time
for compile time checking, a great deal more thought is needed
cognominal Meijer system does not seem complecated as type system go.
audreyt it's not. it's at least not dependent typing. 15:36
cognominal It seems to be a slight complexification of perl that know only about scalar, hash and arrays
Limbic_Region and globs and formats 15:37
cognominal no I don't thinks it really as complex as dependant typing
audreyt I do wish to work out more 6.2831 (typesystem) details
with Erik during the Redmond hackathon
but for now my brain is still on 6.28 :)
cognominal you mean Eriki meijer?
audreyt yeah
cognominal cool
audreyt going to visit him June 19~24
the week before YAPC::NA
and give a talk there 15:38
maybe also visit more lambdafolks nearby, e.g. @ galois.com
cognominal he seems both knowledgeable and practical about type systems.
and Perl is all about practicalyity
audreyt Erik's design has many things in common with perl6 design :) 15:39
rafl Juerd: Could you please send my PBP to me?
cognominal I noticed...
eric256 wishes he could manage all the travling audreyt does. ;) ...or even half 15:40
audreyt actually, June 15~16 I'll be @ Oslo 15:41
so it's like, three time zones
in 72 hours
tw -> eu -> tw -> us
never tried that before; may or may not work :) 15:42
TimToady audreyt: foo {...} 1,2,3 is wrong, needs a comma.
audreyt then S04 needs updating. I'll do that.
TimToady k
audreyt er I mean S03.
TimToady k2
audreyt so what about 15:43
foo {...} ,1,2,3
that's fine right?
TimToady I'd be okay with not making it fine, but if you're okay with making it fine, that also works...
audreyt I think making it fine is slightly less surprising :) 15:44
foo({...}.moose) 15:45
is still fine, right?
it's just
foo {...}.moose
is parsed differently
particle_ will 'my $foo= $bar;' do what it does in perl5, or am i stuck with using ' = ' for assignment in p6?
TimToady { } terminates list if next thing is . yes
audreyt particle_: until someone defines postfix =, you should be fine 15:46
wolverian output as lines? :)
15:46 jsiracusa joined
avar Can one add stuff like "s[]{}g" to perl 6? I.e. define a function that looks like that sort of op? 15:46
audreyt sure, it's called a macro 15:47
avar (replacement, or y///)
15:47 wilx`` joined
avar is the macro aware of what sort of quote delimiters you used? 15:47
TimToady the macro gets control of the parse right after the macro name.
particle_ audrey, does my example extend to all assignment ops? 15:48
audreyt particle_: it extends to all infix-that-may-clash-with-postfix.
including but not limited to assignment
TimToady S02 discusses this.
avar TimToady: And I presume quote delimiters are not parts of the name?;)
particle_ ah, i'll have a look there.
TimToady not unless you've defined the name to include them. 15:49
macro regognition is not predicated on ident recognition.
it's just "longest token".
svnbot6 r10187 | audreyt++ | * Parser: The Perl5ish form
r10187 | audreyt++ | map { $_ + 1 } 1, 2, 3, 4;
r10187 | audreyt++ | is now history. Always write:
r10187 | audreyt++ | map { $_ + 1 }, 1, 2, 3, 4;
r10187 | audreyt++ | expect major smoke breakage.
eric256 just got used to leaving the quote off in p5 ;) 15:50
audreyt hm. is rx:P5:{} legal? 15:52
TimToady basically map {...} 1,2,3 was the last vestige of P5 indirect object syntax.
audreyt the "rx:P5 {}" form is a bit visually nondistinct.
TimToady I think using space consistently to indicate "this is not an adverb arg" is better than space-or-colon. 15:53
audreyt okie.
TimToady frees up :{} to mean something else too
audreyt yields to TimToady's judgement 15:54
eric256 supppose most the time in p6 you are going to say @a.map { } or @a ==> map { } any way or even map { } <<== @a ....unless i missed the demise of the pipes ;) 15:55
audreyt the pipes is alive and well and I even understand what they are doing now :) 15:56
wolverian ponders about >>=
15:56 gilimanjaro joined
audreyt ponders about using that to redefine macro infix<;>. 15:56
TimToady dakkar: in q:to/foo/ the /foo/ is *not* an argument to :to
audreyt infix:<;>, even.
eric256 are pipes implemented in pugs yet? 15:57
audreyt no. I'll have to implement Capture first
eric256 will pipes only work with functions that expect a list/array as their last arg? 15:58
audreyt not so; it can work with anything :)
say(int <== 1); 15:59
eric256 so it just starts filling in the functions arguments starting where the user left off?
audreyt normally, yes. 16:00
the function can choose to distinguish between "pipe batches" using @@foo
in their signature
eric256 ahhh. cool.
audreyt but otherwise, yes, it's asif the function args just gets extended
eric256 thinks p6 is giong to have so many new features its going to take years to figure it all out ;) 16:01
TimToady "pipe batches"++
audreyt that's okay, same for p5
eric256 not a problem at all...just exciting ;)
audreyt TimToady: better than "parallel arguments"? :)
Juerd rafl: email me your address again please
rafl Juerd: Aye 16:02
TimToady I think of them as "multidimensional slices", but pipe batches is a user-friendlier term.
cognominal $object = $class.bless: {k1 => $v1, k2 => $v2 }; # is this correct?
rafl Juerd: Done
TimToady and indicates the laziness of them better. 16:03
audreyt cognominal: looks fine
cognominal that would be a third way to initialize
16:03 beppu joined 16:04 weinig|sleep is now known as weinig
Arathorn gah - if foo = bar doesn't work in judyland, how on earth /do/ you assign a JudyL around? does anyone know anywhere else more appropriate where i can ask judy q's? 16:04
audreyt Arathorn: you assign JudyL around by assigning &foo around 16:05
TimToady cognominal: as long as you realize that $class probably isn't one...
audreyt I think
cognominal TimToady: I may be dense, but I don't get what you mean 16:06
TimToady $class is just a class indicator--something that can be used to find the real class.
audreyt cognominal: Dog.bless(...) works
but also does
$fido.bless(...)
cognominal ok
TimToady Dog is not a class, but an undefined prototype object.
Arathorn puts &foo in a PPvoid_t, then, and tries that...
TimToady but it still has .meta
rw-rw-r-- <bad-joke>why, did fido sneeze?</bad-joke>
audreyt (where "undefined prototype object" means simply that it has .defined set to false, and throws exception on attribute slot access) 16:07
TimToady at least for Dog attributes...
audreyt right.
TimToady .defined(Mammal) might be true at the same time. 16:08
audreyt you mean .Mammal::defined?
or defined(x, y) is another form now? 16:09
(x: y), even
TimToady I was thinking of the latter, actually.
audreyt 'k.
TimToady more like an isa.
audreyt gotcha.
cognominal no one followed up my p6l post about interroperability with js. I thought it raised interesting questions beyond inteterroperability was it unreadable or what?
audreyt cognominal: parrot distinguishes between Null and Undef 16:12
Arathorn cognominal: i suspect it got lost in the ensuing "A shorter long dot" epic
audreyt where Null means your "uninitialized"
szbalint There is no direct way to use C libraries with Pugs atm, apart from that Haskell workaround mentioned in the docs, right?
audreyt szbalint: right, sadly. can you submit it as a Summer of Code ticket? 16:13
eric256 and undefined means initialized but no value? doesn't that sound backwards? /me isn't advocating change, just amused
TimToady P6 distinguishes undef that is "interesting" from undef that is "uninteresting". I'd say uninitialized is uninteresting.
audreyt szbalint: hackage.haskell.org/trac/summer-of-.../newticket
cognominal and how does it translate at the Perl6 level? 16:14
TimToady if an undef contains an exception, it's not merely "uninitialized"
audreyt szbalint: use the subject "Pugs - Foreign Function Interface"
the "interesting" part is called "Failure" atm
Undef Undefined (can serve as a prototype object of any class) 16:15
Failure Failure (throws an exception if not handled properly)
cognominal: see S04 for "Failure"
cognominal ok
TimToady so basically we already make the distinction
szbalint audreyt: ok, give me a sec 16:16
TimToady but people can think of the two kinds of undef as one until they need to make the distinction
audreyt actually, Whatever belongs there too
as it also has a false .defined
TimToady that's because it's just a prototype
the extra "value" of Whatever is that you can't instantiate it. 16:17
cognominal I suppose this will be usefultoo for Perl6 macros for support of SQL within Perl6
audreyt adds Whatever to S06. 16:18
TimToady don't let dduncan hear you mentioning SQL in the same breath as P6... :)
cognominal I meant a cleaner SQL :)
TimToady I believe dduncan thinks the cleanest SQL is a dead SQL. 16:19
nnunley cognominal: Something like LINQ?
cognominal yea, all this Meijer stuff sounds vey good. 16:20
audreyt sometimes, not having a huge IDE to maintain can be an advantage :) 16:21
nnunley So, basicly stronger set/iterator manipulation as syntactic sugar.
audreyt (Erik ranted on LtU that a lot of effort went into ensuring that Visual Studio can still work)
cognominal I expect that some day the reference representation of a program will be its syntax tree, programmer will just happen to work on a convenient deparsing view. 16:23
But that means a redesign of the whole ecosystem.
s/syntax tree/AST/
so Larry will be free to invent new syntax without fear of breaking backard compatibility 16:24
audreyt that is already the case with macro-enabled languages
Perl6 is not unique; CodeDOM, TH, Scheme, etc all do that 16:25
TimToady It could almost be said that P6 was designed with that as the primary goal
audreyt though Perl6 is somewhat unique in doing a scannerless macro system
cognominal renaming a variable would be a simple operation. 16:26
audreyt with unlimited prec levels
cognominal that my litmus test.
audreyt everywhere (mkT renameVar) p6ast 16:27
where
renameVar (Var "$x") = Var "$y"
renameVar others = others
(that's how currently it works in Pugs internals)
need to expose that to p6 level.
TimToady does that hide the old name? 16:28
cognominal nice to see that my brain is already partly in resonance with yours :)
audreyt TimToady: "hide"?
it replaces all leaves in the tree
eric256 toggles a few switches on the resonance generator and laughs evily
TimToady so it has a different name at a different level, not a duplicate name. That's all I was asking. 16:29
not the same as aliasing then 16:30
audreyt no, not the same
TimToady fine
audreyt it's as if you did a semantic-sensitive s:g///
TimToady so I wonder if term:<$foo> works everywhere it ought to. 16:31
xinming my $s = "Test"; require "$s"; <-- will this be valid?
TimToady that is, macro term:<$foo>
audreyt xinming: yes. see S11
require "/home/non/Sense.pm" <common @horse>;
TimToady it's more like a macro ast:<$foo> 16:33
term implies syntactic matching, not semantic, I think
audreyt I think it's probably a generic programming operation on the AST object. 16:34
TimToady it's one of those "is deeply" things...
but how do you declare it in P6?
audreyt we don't have a "generic deep-map" operation equivalent of the "everywhere" above
it can be simulated easily with a visitor pattern
wolverian isn't that everywhere just fmap? I don't quite understand the generics library.. 16:35
audreyt wolverian: no... fmap goes on level
TimToady I guess at worst it's just a .wrap on something somewhere...
audreyt one level
wolverian audreyt, oh? I thought you're supposed to define, e.g. fmap xs = map fmap xs for lists. 16:36
TimToady except a .wrap is not likely to be reversible...
audreyt multi replaceVar (Var :(:name<$foo>)) { Var.new(name => '$bar') }
multi replaceVar ($x) { $x }
wolverian: it works on any data type 16:37
wolverian: your fmap can only work for [[[[a]]]]
or similar
wolverian: but "everywhere" works even on [([a],b)]
wolverian: it skips the leaves where type doesn't match the replacement function
wolverian and fmap works only on Functors?
hrm, right. case :) 16:38
audreyt :)
$p6ast.everywhere(&replaceVar) 16:39
now, the definition of .everywhere is very handwavy at this moment :)
TimToady .whatever (ducks)
audreyt *.*(*)
TimToady that'd do it... 16:40
wolverian $program.whenever({ $x == 3 } => { say "debug" })
audreyt ponders "pugs -e '*'"
maybe it dies with "Oh yeah, whatever, never mind"
wolverian I guess that would print debugs on every clock tick when $x == 3
which might be a bit flood-ish 16:41
audreyt maybe it flipflops
TimToady last message repeated 2784937289734893 times...
eric256 by flipflops you mean its only fired when $x becomes 3 ? 16:42
audreyt yeah
svnbot6 r10188 | audreyt++ | * Makefile.PL: Print some more messages to explain that 16:44
r10188 | audreyt++ | we are building dependencies. This dep-building may be better
r10188 | audreyt++ | factored out into "make" time. Maybe...
16:46 flounder99 joined
TimToady must go primp & 16:47
szbalint audreyt: how much manpower/time do you think a FFI for C, etc. would be to implement?
flounder99 ?eval my @a=(1,2);my @b=(2,3);(@a,@b)=(@b,@a);@a.say;@b.say 16:48
evalbot_10184 OUTPUT[2312 23 ] bool::true
audreyt szbalint: if you remove the "etc" and focus on just C
based on hs-plugins
I think 1month?
2people*2week
szbalint k
ty
audreyt np
szbalint submitted. 16:49
flounder99 ?eval my @a=(1,2);my @b=(2,3);(@a,@b):=(@b,@a);@a.say;@b.say;;@a.say;@b.say?eval
evalbot_10184 Error: unexpected "?" expecting term postfix, comment, operator, postfix conditional, postfix loop, postfix iteration, ";" or end of input
audreyt flounder99: that's a bug you found
write a test? 16:50
flounder99 ?eval my @a=(1,2);my @b=(2,3);(@a,@b):=(@b,@a);@a.say;@b.say;
evalbot_10184 OUTPUT[23 12 ] bool::true
flounder99 bind works
audreyt under t/pugsbugs/ or t/data_types/array.t maybe
you have a commit bit?
flounder99 nope
audreyt k. email?
flounder99 i'm new to irc, how do I send it privately 16:51
szbalint /msg audreyt <text here>
ingy hola 16:52
audreyt uh, this is freenode 16:54
/msg won't work without registering your nick
mangle it somehow?
foo at bar dot org
etc
or mail me at audreyt at audreyt dot org
szbalint ouch, no private msges from unregs, I forgot sorry.
audreyt ingy: yo. how's Chupei hackathon?
ingy audreyt: great. gugod and I started implementing a new ODBMS 16:56
it's really awesome
obra oooh
ingy: details?
ingy obra: I'll have something on cpan soon 16:57
obra nice
what's the searching like?
ingy like? 16:58
audreyt sample syntax?
ingy gugod is familiar with jifty, which came up a few times today
audreyt: I'll have something on cpan soon :p
audreyt cool :) 16:59
ingy actually the query language is one thing we haven't sttled yet
obra an object backend for jifty would be very hot
audreyt clearly you should use J or APL as the query language
ingy obra: yes it would
audreyt: ok 17:00
oren of yaml is helping out too
audreyt for example, the "avg" function can be defined in J as
. +/ % #
nnunley ingy: You've looked at kdb? 17:01
ingy nnunley: no
ingy looks
nnunley kx.com 17:02
It's also an APLish thing.
ingy www.kdb.com/
nnunley But there's some good papers written by the author about how it works.
ingy mmm classical
nnunley: url? 17:04
sorry
audreyt flounder99: welcome aboard :) 17:05
please add yourself to AUTHORS, and write a test for the list-assignment bug
eric256 .
. + / % # looks like some kind of joke not a syntax for AVG() ;)
nnunley ingy: www.kx.com/ is the corporate web site.
szbalint J is even more compressed than Perl
audreyt eric256: QuickSort in J: 17:06
Limbic_Region eric256 - J is obfu by design
nnunley Vector languages.
audreyt ]`(($:@:((}.<:{.)#}.)),{.,($:@:((}.>{.)#}.)))@.(*@#)
nnunley shivers. 17:07
gugod now it obfu recursively
audreyt the golfability is amazing.
Limbic_Region eric256 - en.wikipedia.org/wiki/J_programming_language
eric256 like BF for people who wanted more pain?
audreyt unlike BF, this is actually 1)fast 2)short 17:08
Limbic_Region yeah, I should have said J is golfed by design with obfu as a side-effect 17:09
svnbot6 r10189 | audreyt++ | * HsSyck.cabal: suppress warnings.
nnunley Heh. Pagerank in K: www.langreiter.com/k/pagerank.k
svnbot6 r10190 | audreyt++ | * examples/nested_loops/functional.p6: Fix 17:12
r10190 | audreyt++ | map {...} ...
r10190 | audreyt++ | to
r10190 | audreyt++ | map {...}, ...
r10190 | audreyt++ | Helps welcome to grep through all examples/tests/etc and update
r10190 | audreyt++ | this misidiom...
eric256 attempts to update his svk directory on feather to assist ;) 17:14
audreyt TimToady: can we retire lvalue undef? 17:15
(undef, $x) = (1,2);
and write
(*, $x) = (1,2);
instead
eric256 map { }, 1,2,3 works already? or are we breaking stuff until it does?
audreyt lvalue undef never really made sense to me...
eric256: it works already
eric256: also, you can copy ~autrijus/pugs/pugs :) 17:16
it's optimized and a recent build
eric256 excellent ;) 17:17
thanks.
svnbot6 r10191 | audreyt++ | * Types.Array: flounder99 reported this bug:
r10191 | audreyt++ | (@x, @y) = (1,2,3);
r10191 | audreyt++ | @y should get cleared, but was not. Same applies for:
r10191 | audreyt++ | (undef, $x) = (1);
r10191 | audreyt++ | the $x here was not assigned undef either.
audreyt np :) 17:20
eric256 shouldn't grep -r map *.* look at all files under the current directory and any of its sub directories? 17:22
audreyt grep -r map .
pcregrep -r 'map \{.*\} ' .
perhaps
eric256 ahh much better.../me kept reading the man page
does grep need it too then? 17:25
and i'm a little confused what something like
push @spelfiles, map { "$d/$_" } grep { $_ ~~ /.spel$/ } readdir $d;
should become....if we add the commas in it starts looking a little confusing. ;) 17:26
push @spelfiles, map { "$d/$_" }, grep { $_ ~~ /.spel$/ }, readdir $d;
those look like they are al arguments to push now. ;) /me watches audreyt try to figure out how to ask me to NOT help ;)
audreyt grep needs it too 17:27
listop is naturally right assoc
so that's just fine
otoh, you can write it like 17:28
TimToady yes, we can retire undef assignment.
audreyt @spelfiles.push(readdir($d).grep:{/.spel$/}.map{"$d/$_"});
TimToady: yay
TimToady 'Course, assignment to * should pick a random variable and assign to that. :P 17:29
audreyt riight. :p 17:31
committed to S03. 17:32
eric256 erri i think i need to just completly redo my svk setup....or learn how to use it right ;) 17:34
svnbot6 r10192 | audreyt++ | * Pugs.AST.Internals: Move the VCode Perl5-instance-for-JavaScript
r10192 | audreyt++ | kluge to Internals.hs itself, so it no longer needs hand tweaking.
r10193 | eric256++ | Added rules example directory, and a short example of using rules
eric256 fears a giant broken merge from his machine is coming.....
hmmm i don't even know when i did that commit /me begins to prey to the pugs gods for forgiveness ;) lmao 17:35
svnbot6 r10194 | eric256++ | Added a realy basic BASIC parser, that doesn't realy work yet.
TimToady gee, only 451 files with map/grep breakage... 17:36
audreyt eek.
svnbot6 r10195 | eric256++ | basic.p6 BASIC implementation in P6....well it wil be eventualy.
r10196 | audreyt++ | * Pugs.AST.Internals.Instances: regen DrIFT instances.
audreyt 451 files... 17:37
color me shocked. :)
TimToady probably a few false positives there, but it's still gonna be >400 17:38
svnbot6 r10197 | eric256++ | Adding the comma after the block in all map/grep statments.
TimToady are blib6 files derived?
audreyt yeah 17:39
from ext/
so that cuts the number in half
TimToady then take away 70 files
down to 381
svnbot6 r10198 | fglock++ | docs/notes/laziness.txt - added some notes on map() internals
TimToady 380, can chuck Changelog :) 17:40
audreyt heh
ok, I'll leave the massive regrepping and remapping to #perl6
see you tomorrow :)
zzz &
TimToady are .pl files always P5? 17:41
eric256 sees that while his commits where numerous they actualy seemed to work
TimToady are .hs files always Haskell? :) 17:42
flounder99 ?eval
?eval my @a=(1,2);my @b=(2,3);(@a,@b):=(@b,@a);@a.say;@b.say; 17:43
particle_ wonders if a haskell compiler has been implemented in perl6 yet
evalbot_10184 OUTPUT[23 12 ] bool::true
flounder99 is that right?
TimToady Seems right. 17:44
As Damian would say, you're just swapping the nameplates on @a and @b. 17:45
flounder99 if it were = not := @a would slurp up everthing and @b would be an empty array 17:46
TimToady right 17:47
flounder99 I guess slurping and binding don't go together. That makes sense
TimToady slurping must be explicit under binding. 17:48
clkao aufrank: got any rule stuff done/
TimToady need to commute to work, then I'll work on fixing map/grep breakage.
got it down to 289 files... :) 17:49
I figure Makefiles are all P5...
self ==> my $job & 17:50
aufrank clkao: no, I just finished running my subject 17:55
was cramming on that project all morning
clkao ok, i will let you work ion that and i will fix interactive commit in svk
aufrank deal :) 17:56
clkao: where in the tree do you think I should be working? 17:57
clkao pugs-grammer-rules ? and then make use of that in pugs-capture-something?
aufrank ok, I'll try to commit something in p-g-r today 17:59
18:02 ghenry joined 18:11 bpphillips joined 18:15 meppl joined 18:49 elmex joined 18:58 sahadev joined 19:06 meppl joined
eric256 did anyone figure out a good grep for the map|grep fix? .... i can't seem to convince regular grep i'm sending it a perl regex 19:10
spinclad build failure: i've svn up'd to r10198, and, even after C<make clean> and C<perl Makefile.PL>, C<make> gives me: 19:14
Compiling Data.Yaml.Syck ( src/Data/Yaml/Syck.hs, dist/build/src/Data/Yaml/Syck.o )
/tmp/ghc27057.hc:9:29: error: ../../syck/syck.h: No such file or directory
Build failed: 256 at util/build_pugs.pl line 96.
szbalint wait a sec spinclad 19:15
audreyt broke it earlier today but it should have been fixed by 10184 19:19
spinclad i still have these files around (plus dist/lib/HsSyck* and third-party/HsSyck which should be fine):
./src/Data/Yaml/Syck.hs
./src/Data/Yaml/Syck_stub.h
./src/Data/Yaml/Syck_stub.c
./dist/build/src/Data/Yaml/Syck.hi
./dist/build/src/src/Data/Yaml/Syck_stub.o
szbalint: yes, i thought so too. i can try expunging these and try again... 19:20
(but will read them first) 19:21
szbalint 15:53:34 < dakkar> which should I kill?
15:53:38 < audreyt> ./dist/build/Data/Yaml/Syck.hi
15:53:43 < audreyt> actually all three indist/build
maybe this helps?
spinclad i did, these came back, i think... will try again after reading 19:22
19:23 Toaster joined
spinclad (that is, the ones in dist/build came back) 19:25
after removing all five, i get:make: *** No rule to make target `src/Data/Yaml/Syck.hs', needed by `pugs_requirements'. Stop. 19:29
szbalint oh
spinclad trying make clean, perl Makefile.PL, make again
szbalint < audreyt> rm -rf src/Data/Yaml/* 19:30
< audreyt> and then update again from svn?
svnbot6 r10199 | eric256++ | r19475@feather: eric256 | 2006-05-01 21:31:58 +0200 19:31
r10199 | eric256++ | Adding comma to map
spinclad trying
eric256 argi forgot my --verbose flag....anyone know if there is a way to make svk default to --verbose on push?
xinming eric256: It's --verbatim :-) 19:33
eric256 err thats what i meant...any way to deafult that? ;)
xinming don't know, But In my bash, I use `svkpush="svk push --verbatim"` :-) 19:34
hmm,
alias svkpush="svk push --verbatim" :-)
eric256 thanks. /me is still a unix newb after 10 years of working *around* them ;) 19:35
xinming so is /me :-/ 19:36
spinclad szbalint: better now, it's gotten past that point. i expect it will now skip trying to compile Data.Yaml.Syck as well :) 19:37
thanks
szbalint yw 19:39
xinming ?eval .say 19:40
evalbot_10184 OUTPUT[perl6 ] bool::true
eric256 ?eval for (5) { .say }; 19:42
evalbot_10184 OUTPUT[5 ] undef
eric256 ?eval $_.perl
evalbot_10184 "\\\"perl6\"" 19:43
eric256 hehe why does $_ start with "perl6" in it? bug in evalbot or feature?
xinming don't know, but In pugs, It seems, $_ will keep the last return value instead of empty. 19:44
hmm, I mean in interactive shell. 19:45
19:46 sahadev joined
eric256 hmm in interactive it definitly seems broken 19:47
spinclad it looks to me like the syck transition will require a make realclean 19:52
svnbot6 r10200 | lwall++ | First whack at map and grep commification.
19:53 js0000 left
eric256 waits to see if its commits and larrys conflict 19:53
TimToady Already had to deal with a bunch of conflicts. 19:54
eric256 jeez...i remember him saying he was leaving that to #perl6....and now off you go missen me up
TimToady and then I said I was working on it.
eric256 ;) fine.... /me didn't want to help anyway 19:55
spinclad isn't TimToady part of #perl6?
eric256 no! 19:56
svnbot6 r10201 | eric256++ | r19478@feather: eric256 | 2006-05-01 21:54:08 +0200
r10201 | eric256++ | added comma to t/syntax/parsing/spacehip.t
r10202 | eric256++ | r19479@feather: eric256 | 2006-05-01 21:55:25 +0200
r10202 | eric256++ | added comma for map to t/statments/*
eric256 ahh now look what i did....didn't use my svkpush alias. /me goes to get more caffine
eric256 checks lwalls commit and sees that lwall works much much faster at that. ;) 19:59
i got like 5 files and you got the other 100 ;)
TimToady probably missed some sorts though.. 20:00
the hard part was *not* fixing the P5 files... :) 20:01
eric256 yea i had to undo that a couple of times.
20:01 mschmidt joined
eric256 i need to write a program to search thinkgeek and get me the most cool stuff for $100 ;) 20:03
clkao w/win 22 20:05
Limbic_Region the difficulty in that eric256 is the definition of "cool"
20:06 mschmidt left
TimToady eric256: you took out the parens I put around the maps in t/statements/map-and-sort-in-for.t 20:06
those shouldn't parse without parens these days 20:07
or teh {...} is taken as the for's block
20:09 larsen joined
eric256 i took parens out? i didn't think so 20:10
TimToady well, didn't put parens in, then overrode my change...
eric256 i didn't think my version had parns... i certianly didn't mean to remove them if i di. 20:11
TimToady don't sweat it--I'll fix...
eric256 has spent most the day fighting with svk instead of working with it lol
svnbot6 r10203 | lwall++ | bare {...} in a for list needs parens now 20:14
TimToady hmm, looks like ext/HTML-Entities/t/entities.t is looping... 20:15
20:19 davidfetter joined, mschmidt joined
TimToady lunch.fetch; biab & 20:21
eric256 can for be postifxed now? hehe 20:23
@a.sort.map:{1}.for { print $_ }; 20:24
davidfetter 's brain melts 20:30
20:33 davidfetter left 20:34 bpphillips left 20:35 cognominal joined
TimToady ext/URI/t/escape.t also loops 20:50
eric256: that'd have to be @a.sort.map:{1}.for({print $_}) or something equivalent. 20:53
methods don't take arguments unless followed by : or (
eric256 so that should probably be for @a.sort.map:{1} { ... } anyway 20:54
or would that still need to be in ( )?
TimToady depends on wehter there's really a :{} adverb. 20:55
if there is, it doesn't need parens.
but if that's really .map: {1}, where the colon is just introducing an unparenthesized list, then it would need parens. 20:56
20:56 aufrank joined
TimToady at the moment I'm leaning towards saying that :{} exists as an adverbial form, so it doesn't imply any following args. 20:57
and you wouldn't need parens
eric256 makes sense
TimToady that is, it parses as .map :{1} so you have an adverb modifying an argumntless .map 20:58
particle_ is that the goatee op?
eric256 i thought it was a cookie monster 20:59
TimToady the .map:{1} form parses the :{ as a token
particle_ :-{0}
TimToady otherwise it would have to parse as .map : {1} which would be the argument form of .map 21:00
eric256 needs to go read about adverbs
spinclad 8^{[=]} 21:01
TimToady t/builtins/sprintf_and_as.t also loopos 21:02
"loopos"++
spinclad #{[ENOTANADVERB]}
TimToady E No Tan Adverb 21:03
spinclad adverbs must stay completely covered when out in the sun 21:04
TimToady t/examples/examples.t also loopos 21:08
particle_ r10204 | particle++ | apply sunblock to all adverbs
eric256 tries to convices a co-worker that dewed is actualy a word ;) 21:13
21:14 trym joined
particle_ playing scrabble at work? 21:14
spinclad the dewed rose, or the dewed spouse
particle_ mine 'glistens'
eric256 the ground was wet this morning and i said "i wonder if it rained last night, or just dewed heavily" 21:15
TimToady kewel, dewed!
spinclad lol (really!) so that's three meanings! 21:19
eric256 wishes there was a lottery or something to when to go to the YAPC::NA 21:20
buu Mmm, parrot. 21:24
TimToady would appear that t/syntax/list_quote_whitespace.t is the 5th loopo 21:29
eric256 loopo? 21:30
infinite loop?
buu # Failed test (t/op/calling.t at line 2327)
=[
Can I ignore it or do I need to bash it? 21:31
21:43 coumbes joined, Ymmv joined
TimToady it seems that sprintf is hanging 21:46
particle_ buu: that's a known parrot test failure 21:48
TimToady yes, this hangs: say sprintf '%d', 123;
21:55 kanru joined
svnbot6 r10204 | lwall++ | any<a b c> is not the same as any <a b c> 22:00
eric256 are we getting just a little crazy now? /me fears perl6 will be way too much like python with all these space issues. 22:01
avar wouldn't care if it was like python in that regard 22:10
TimToady the postfix vs non-postfix difference is crucial.
Juerd eric256: I think we are, but I don't see any good solution to the problem. 22:11
eric256: Not requiring parens is a problem if every other character is both an infix and a prefix operator :) 22:12
And sometimes postfix too.
eric256 in these cases make the postfix and non-postfix forms act the same? of course then it might just increase the confusion
Juerd eric256: How would you do that?
eric256 what would any<a b c> be?
TimToady any.{'a','b','c'} 22:13
eric256 and any <a b c> is any("a","b","c") ....i don't know what any.{ ... } would mean though. must be time to reread the S's again 22:14
svnbot6 r10205 | lwall++ | any<a b c> is not the same as any <a b c>, continued
TimToady Doesn't mean anything, which is why you don't do that...
eric256 so why not make .{ a postfix op on any that does what we expect? i dunno, guess i'm just stuck in the but it doesn't DWIM phase. 22:15
22:15 jsiracusa joined
TimToady It should blow up and say that you can't treat a Junction like a Hash. 22:16
eric256 oh yea...forgot < > was hash access also. i feel soo lost some days 22:17
if it were to DWIM i would assume that < > just replaced ( ) when used in a function arg context and auto split/quoted liked < > does 22:18
22:18 rgs joined
eric256 then any<a b c> ~~ any <a b c> ~~ any('a', 'b', 'c') ~~ any(<a b c>) 22:18
cognominal salut rgs
eric256 but i wouldn't presume to have any idea what side effects that would cause 22:19
eric256 stuns everyone into silence with his brilliance or ignorance ;) 22:25
avar Whitespace may cause cognative overload;) 22:26
22:29 hexmode joined
eric256 hehe i thought at least someone would tell me i'm nuts. .... oh well i'll just assume i'm nuts and go home for the day 22:56
buu t/pmc/objects.t 2 512 74 2 2.70% 73-74 23:04
Are those known failures as well?
TimToady pugs now smokes without looping, yay! 11,000 tests in <43 minutes on my machine. 23:06
szbalint looposing? 23:08
buu Yay!
TimToady buu: those failed when I ran parrot this morning, so I suppose they're "known"...
buu TimToady: Heh, ok.
Hrm. Where does parrot look for .so files, LD_LIBRARY_PATH? 23:10
Excellent. 23:12
pasteling "spinclad" at 209.94.133.172 pasted "Prelude compile failure (debian sarge+/i386, ghc6 6.4.1-2.1, pugs r10199)" (14 lines, 1.9K) at sial.org/pbot/17000 23:18
23:26 ayrnieu joined 23:27 _SamB_ joined
drbean I make fun of the Bugs Manifesto at use.perl.org/~mr_bean/journal/29477, repeating the Scientology identification at perlmonks.org/?node_id=540655 23:36
23:38 _SamB_ is now known as SamB
meppl gute nacht 23:50