svn switch --relocate svn.openfoundry.org/pugs svn.pugscode.org/pugs/ | run.pugscode.org | spec.pugscode.org | paste: sial.org/pbot/perl6 | pugs.blogs.com | dev.pugscode.org/ Set by putter on 11 February 2007. |
|||
audreyt | marco at twd.com.br? | 00:01 | |
Macae | audreyt: Not. I forgive me I am beginning in IRC. My email: [email@hidden.address] | 00:04 | |
audreyt | invitation sent. | 00:05 | |
Limbic_Region | audreyt - are you awake or sleeping? | 00:06 | |
audreyt | Macae: please read search.cpan.org/dist/Perl6-Pugs/doc...c/Hack.pod for accessing the Pugs subversion repository; add yourself to AUTHORS to test that commit got through; look around TASKS, project_planning/ and dev.pugscode.org for things to do, or just hang around here and chat :) welcome aboard! | 00:07 | |
lambdabot | Title: Pugs::Doc::Hack - How to hack on Pugs - search.cpan.org | ||
audreyt | Limbic_Region: yes I'm awake or sleeping | ||
# I'm awake when I really should be sleeping | |||
Limbic_Region | ok, well I won't bug you then | ||
audreyt | :) bbl | 00:09 | |
00:10
explorer joined
|
|||
Macae | audreyt: Perfect. Very obliged! | 00:15 | |
audreyt: I go to dedicate more to the Pugs! :) | 00:18 | ||
...to the English also... | 00:21 | ||
diotalevi | audreyt: dmq disagreed with both of us that PAR's use of Obfuscate could be reversed. Just thought I tell you that I've no idea what he was smoking. | 00:23 | |
er, "bbl". dang. | |||
00:25
Ziggy6 left
00:32
forsaken joined
|
|||
Limbic_Region | @help | 00:36 | |
lambdabot | help <command>. Ask for help for <command>. Try 'list' for all commands | ||
Limbic_Region | @help tell | ||
lambdabot | tell <nick> <message>. When <nick> shows activity, tell them <message>. | ||
00:37
cj joined
|
|||
Macae | Limbic_Region: Good night, my friend, has some problem I to supply my email in the list? | 00:38 | |
Limbic_Region | if you have a question about pugs specifically, asking here is appropriate. If your question is about perl 6 - the list is the correct place. Be sure to read all the synopses first though. | 00:39 | |
Macae | Limbic_Region: Later that I published my email in the list my domain is very strange? | 00:42 | |
Limbic_Region | I'm sorry, I don't understand the question. | 00:43 | |
Macae | Limbic_Region: I informed my email for audreyt. After this my domain: www.pcp.org.br is redirected for another domain! It understood? | 00:46 | |
buubot | Stored message for 1 | ||
Limbic_Region | I don't know | 00:47 | |
wait for audreyt I guess | |||
00:48
explorer joined
|
|||
Macae | Limbic_Region: You understood my problem? | 00:51 | |
buubot | Stored message for 1 | ||
Macae | buubot: You understood my problem? | 00:54 | |
Limbic_Region | no, I do not understand your problem. | ||
00:55
explorer joined
|
|||
Macae | Limbic_Region: I wrote my email in the list: [email@hidden.address] Later my domain pcp.org.br redirecting for another strange domain! | 01:00 | |
buubot | Stored message for 1 | ||
specbot6 | r13708 | larry++ | Better writing requested by John Macdonald++ | ||
buubot | Stored message for 1 | ||
Macae | Limbic_Region: You understood my problem? | 01:01 | |
specbot6 | r13709 | larry++ | gah | ||
01:04
explorer joined
|
|||
Macae | audreyt: You understood my problem? | 01:07 | |
01:09
rashakil_ joined
|
|||
Macae | specbot6: You understood my problem? | 01:09 | |
tene | Macae: audreyt is gone and specbot is a bot, not a real person | ||
Macae | tene: You understood my problem? | 01:10 | |
tene | Macae: do you stil lget email sent to pcp.org.br ? | 01:11 | |
or do you need your subsccriibed address changed? | |||
Macae | Yes! | ||
tene | Wow, I can't type today. | ||
Macae: which one? | |||
Do you still get email there, or do you need it changed? | 01:12 | ||
01:12
klutzBunny joined
|
|||
klutzBunny | But I just learnt Perl 5 :< | 01:12 | |
tene | Perl 5 isn't going anywhere | 01:13 | |
klutzBunny | I know :P | ||
tene | Heh. | ||
Perl 6 is nice too! You can learn both! | 01:14 | ||
klutzBunny | I'm actually really interested in how the new OO features will help Perl work with Cocoa <_<; | ||
tene | That sounds like a very interesting subject! I haven't heard anything planned for it, though. | ||
Sounds like some work could be done on the subject! That's something you could do! | 01:15 | ||
klutzBunny | Win ^____^ | ||
tene | Then Perl 6 would have good interaction with Cocoa, and you'd have a good language to work with Cocoa with! | ||
Everybody wins! | |||
:D | |||
klutzBunny | ^o^~! Massive win. | ||
I'm still learning C though >_<; (Not as fun as Perl) | 01:16 | ||
tene | Well, you do the parts that you can do and if it's good, someone else will help with the rest. | ||
klutzBunny | :3 | 01:17 | |
Macae | tene: It was thus: audrey asks for my email to me, I wrote after this my domain this redirecting for strange domain! | ||
tene | All I know about Cocoa is that it's related to MacOS somehow, so I can't help at all. | ||
I do know that some Perl 6 developers use MacOS, though! | |||
klutzBunny | Awesome ^___^ I'm getting involved already! | 01:18 | |
klutzBunny adds room to favorites list :3 | |||
Macae | tene: You understood my problem? | ||
tene | If you stick around a little longer, you'll get a commit bit for the pugs subversion repository. | ||
klutzBunny | Cocoa is the OpenStep based API for Mac OS X :3 | 01:19 | |
Win ^o^~! | |||
tene | Macae: you need a commit bit sent to a different email address? | ||
putter | TimToady: re S05 "Using the @<alias>:= notation instead of a $<alias>:= mandates that the corresponding hash entry or array element always receives an array of Match objects, even if the construct being aliased would normally return a single Match object. " | ||
tene | I don't think that I have permissions to send out commit bits, but I've never looked. | 01:21 | |
klutzBunny | I'm young(ish 18) but I went Atari TOS (too old) -> Windows (too crap) -> Linux (too fiddley for me) -> Mac OS X :3 | ||
And by fiddley I mean, that there were too many shiny things for me to fiddle with so I never got anything done :P | |||
putter | The section goes on to describe such @<alias> entries containing lists of strings, and lists formed by concatenating the .array's of assorted match objects. | ||
tene | Heh. | ||
putter | The two seem contradictory. | 01:22 | |
Macae | tene: I did not understand its question? | ||
TimToady | putter: that's the section written by TheDamian. I'll have to think about it some. | 01:23 | |
tene | Macae: I understand the problem. What do you want me to do? | 01:24 | |
TimToady | putter: I think you're missing that the latter are bindings to something quantified and hence always would be an array anyway. | 01:28 | |
the first binding is to an unquantified thing | |||
putter | actually, half that question is broken. the strings are matches, so np there. | ||
re quantified/unquantified, agreed. but that's not what the paragraph says :) | |||
TimToady | I don't see the problem | 01:30 | |
putter | If it were "With non-quantified constructs, [u]sing...", then np. | ||
TimToady | there are constructs that for $ to really be an array | 01:31 | |
but @ just says, "push whatever you find even if if it's just one thing" | |||
s/that for/that force/ | |||
putter goes to construct case, to determine if he is confused... | |||
TimToady | 'tis quite possible I'm being dense, of course. happens to me every now and again... | 01:32 | |
bbl & | 01:34 | ||
putter | @<x>:=((a)(b)){1}; thus $/<x> == [[Match(a),Match(b)]]. $/<x> has received an array of arrays. therefore "always receives an array of Match objects" is false. no? | 01:35 | |
lambdabot | Unknown command, try @list | ||
putter | wave | ||
01:36
weinig joined
|
|||
putter | My underlying question is whether these are real arrays, or whether the spec is implying that when it says a list of something, it's really a match whose array value is the list of something. | 01:37 | |
Macae | tene: Ok. Was virus in my winxp that my domain redirecting? The problem is with the domain or winxp? | 01:40 | |
tene | Macae: what is your native language? | ||
Macae | tene: Brazilian Portuguese! My use translator: babelfish.altavista.com/tr. (Portuguese <=> English). | 01:45 | |
lambdabot | Title: AltaVista - Babel Fish Translation | ||
Macae | tene: Understood? Here only speaks Perl6; my has to quit? | 01:55 | |
putter | It might also be worth noting the "however" in "The only difference is that, if the aliased construct is a subrule or subpattern, that quantified subrule or". Eg, | 01:57 | |
"The only difference is that, if the aliased construct is a subrule or subpattern (but not non-capturing group), that quantified subrule or" | |||
tene | Macae: I'm sorry, but I can't understand you. :( | ||
Macae | Ok ;) | 01:59 | |
klutzBunny reads the wikipedia article on "cognitive load" @_@; | 02:01 | ||
this still does not explain why @ == $ :\ | 02:03 | ||
tene | klutzBunny: the issue is that in Perl 5, the user has to remember both the type of the variable and the context it's in. | 02:04 | |
i.e. @array, $array[1] are the same variable | 02:05 | ||
klutzBunny | Ah... I liked that, I guess that makes sense though. | ||
tene | Where in Perl 6, the sigil represents the variable type. | ||
@array, @array[1] | |||
lambdabot | Unknown command, try @list | ||
tene | @botsnack | ||
lambdabot | :) | ||
klutzBunny | Hehehee`! | 02:06 | |
Win @ bot :3 | |||
@botsnack | |||
lambdabot | :) | ||
klutzBunny giggles | |||
Thanks tene n.n | |||
tene | I was used to it, but there are definitely people out there that have trouble with it. | ||
It's a common problem for people new to Perl 5. | 02:07 | ||
So it's changed in Perl 6 to be one less thing you need to learn. | |||
klutzBunny nodnods | 02:08 | ||
tene | ?eval @a = 1..10; @a[2] | ||
klutzBunny | Brilliant! Thats what I call taking care of your developers :3 | ||
evalbot_r15376 | \3 | ||
klutzBunny | @list | ||
lambdabot | www.cse.unsw.edu.au/~dons/lambdabot/COMMANDS | ||
putter | @tell TimToady I was simply confused. $/<x> is [Mat(a),Mat(b)], not [[Mat(a),Mat(b)]]. Which is what the text actually says. I read for @($<pairs>) -> $key, $val { as structural decomposition, rather than a 2-stride, and managed to remain wedged. | ||
lambdabot | Consider it noted. | ||
klutzBunny | @todo | 02:10 | |
lambdabot | 0. SamB: A way to get multiple results from a google search | ||
1. dons: improve formatting of @dict | |||
2. dons: write Haskell Manifesto | |||
3. lispy: don't let lambdabot's prettyprinter split the sequence @foo across lines | |||
4. TheHunter: priviledged users should get priviledged listcommands. | |||
[23 @more lines] | |||
putter | The "worth noting \"however\"" observation is still intact though. | ||
SamB | @todo is probably the least-usefull thing I've done for lambdabot... maybe that is related to the fact that I was surprised to learn that it was me who had written it... | 02:11 | |
klutzBunny | Hehehee~! I like it :3 Helps provide forum like collaboration to a live chat room | 02:12 | |
But then I like silly things <_<;; | 02:13 | ||
@slap klutzBunny | 02:14 | ||
lambdabot beats up klutzBunny | |||
SamB | those items have been at the top of the list for *years*, it seems like | ||
klutzBunny | @vixen | ||
lambdabot | <undefined> | ||
klutzBunny headtilts | |||
Macae | tene: I go with God! It forgives me the main topic is Perl6? | ||
SamB | something about switching regex engines caused vixen to not work | 02:15 | |
klutzBunny | What was it? | ||
SamB | well, it was lambdabot's "personality" functionality ;-) | ||
klutzBunny giggles | 02:16 | ||
SamB | like, | ||
"@vixen asl" | |||
would do something | |||
or @vixen do you like functional programming | |||
klutzBunny nodnods XD | 02:17 | ||
SamB | some kinda list of regexes and responces | ||
klutzBunny | @yhjulwwiefzojcbxybbruweejw | ||
lambdabot | "\"" | ||
klutzBunny | o_o; | ||
@girl19 | |||
lambdabot | I have been into not actually hacking, but social engineering | ||
SamB | whenever we complain about it not working, dons tells us to fix it | ||
klutzBunny | XD! | 02:18 | |
SamB | I think we don't because we are afraid we'd have to rewrite the regexes | ||
klutzBunny | :O I would but I gotta do this whole "getting into university" thing first :< | ||
@yarr | |||
lambdabot | I want me grog! | ||
klutzBunny | @map | ||
lambdabot | www.haskell.org/hawiki/HaskellUserLocations | ||
02:18
stevan_ joined
|
|||
klutzBunny | Meep! It's 02:25 allready x_x; | 02:19 | |
02:19
dmq joined
|
|||
klutzBunny | Night everyone~! Great meeting you :3 | 02:19 | |
klutzBunny waves and hops off | |||
02:40
bonesss joined
02:43
araujo joined
02:44
forsaken joined
|
|||
pasteling | "putter" at 66.30.117.127 pasted "draft summary of alias contents" (24 lines, 935B) at sial.org/pbot/23206 | 02:45 | |
putter | It might be worth cleaning up that table and stashing it somewhere. I found the S05 section a bit opaque. | 02:47 | |
Assuming it's correct of course. Comments welcome. ;) | |||
03:04
forsaken joined
|
|||
pasteling | "putter" at 66.30.117.127 pasted "shuffling in search of clarity" (20 lines, 381B) at sial.org/pbot/23207 | 03:07 | |
putter | & | 03:19 | |
03:23
seano joined
03:30
UWC joined
|
|||
pasteling | "putter" at 66.30.117.127 pasted "a last version" (10 lines, 166B) at sial.org/pbot/23208 | 03:39 | |
03:52
nekokak joined
04:03
mako132_ joined
04:27
weinig is now known as weinig|away
04:39
drupek12212157 joined
04:41
penk joined
04:43
amnesiac joined
04:53
justatheory joined
04:57
idiotmax joined
04:58
seano joined
05:07
|mjk| joined
05:36
ksyde joined
06:13
BooK_ joined
|
|||
obra | Who manages the ircbot that polls perl6 svn for latest commit? | 06:14 | |
06:23
chaoslawful joined
|
|||
obra | audreyt: svnbot6 needs to stop looking for the latest commit from svn.perl.org | 06:24 | |
06:35
justatheory joined
|
|||
audreyt | obra: it's specbot6 | 06:38 | |
obra | ah | ||
06:51
cognominal joined
|
|||
gaal | audreyt: cool, looking! | 06:54 | |
06:57
ksyde left
|
|||
gaal | <3 (./) }:) | 06:59 | |
07:03
devogon joined
07:16
b00t joined
07:31
iblechbot joined
07:32
rfordinal_athome joined
07:35
the_dormant joined
07:37
UWC joined
07:45
marmic joined
08:01
aukjan joined
|
|||
bsb | gaal: is that the double-scoop tunnel-golfing happy moose operator? | 08:01 | |
offby1 | bsb: :-) | 08:26 | |
08:26
jisom joined
|
|||
offby1 | I think the moose is happy because he's wearing an ice-cream cone | 08:26 | |
tene | I'd be happy if I were wearing an ice cream cone. | 08:27 | |
offby1 | I suppose I would be too. | ||
gaal | It was short for "I love the ./ operator! Moose!" | 08:44 | |
Pugs.Class:87 | 08:45 | ||
09:00
andara joined
09:14
dduncan left
09:36
elmex joined
09:45
drrho joined
09:56
rfordinal_athome joined,
forsaken joined,
allbery_b joined,
integral joined,
[particle] joined
09:57
aben joined
10:06
forsaken joined,
allbery_b joined,
integral joined,
[particle] joined
10:07
forsaken joined
10:15
aben is now known as rfordinal_athome
10:18
dec_ joined
10:20
drupek12212157 joined
10:31
buetow joined
10:46
pbuetow joined
10:48
ruoso joined
11:07
IllvilJa joined
11:35
Arathorn joined
11:58
fglock joined,
chris2 joined
|
|||
fglock | I found out that kp6-C could skip frequent method lookups, if some method locations in the vtable can be looked up at compile-time | 12:10 | |
maybe I should take a look at C++ internals | 12:11 | ||
12:14
specbot6 joined
|
|||
fglock | 'closures' in kp6 are actually starting to look like en.wikipedia.org/wiki/Function_object | 12:20 | |
and lexicals are actually accessors | 12:22 | ||
hmm | |||
meeting & | 12:23 | ||
12:27
ruoso joined
|
|||
allbery_b | yeow! MO.Compile.Class is eating my macmini alive! | 12:37 | |
12:45
Ziggy6 joined
|
|||
Ziggy6 | fglock: re "skip frequent method lookups", are you saying that you can bypass the vtable mechanism even for virtual functions? | 12:48 | |
12:51
rgs is now known as args
12:52
diakopter joined
13:00
Limbic_Region joined
|
|||
allbery_b | ghc is 2.64G and still growing... | 13:00 | |
13:05
the_dormant joined
|
|||
tene | That's a few G | 13:05 | |
13:09
stevan_ joined
|
|||
allbery_b | 3.13G | 13:10 | |
tene | That's even more G | ||
Arathorn hopes your mac mini is 64bit, otherwise you're going to run out of virtual address space, no? | |||
13:11
dakkar joined
|
|||
allbery_b | 32bit, afaik | 13:11 | |
interrupted it. it stopped growing but seems to be rather slow about cleaning up (can't imagine why...) | 13:17 | ||
thrashthrashthrash... | |||
@tell audreyt MO.Compile.Class got ghc 6.6 to comsume over 3G VM before I gave up on it | 13:19 | ||
lambdabot | Consider it noted. | ||
13:20
iblechbot joined
13:26
fglock joined
|
|||
allbery_b distcleans on the off chance it's some leftover file confusing ghc | 13:26 | ||
fglock | Ziggy6: I mean, you can have a pointer to the exact location in the vtable, skipping the class+method lookup | 13:28 | |
Ziggy6 | fglock: that's how it is implemented, but i'm not sure what you mean by class lookup | 13:29 | |
that pointer can always be computed at compile-time in C++ | 13:30 | ||
gaal | for virtual methods? it can't... | 13:31 | |
Ziggy6 | that pointer isn't a function pointer, it's an index in the vtable | ||
you still have check the vtable to call the virtual function | 13:32 | ||
gaal | ah, sure | 13:33 | |
Ziggy6 | i understand fglock found an optimisation for special cases where it can be skipped? | ||
gaal | allbery_b: is it vanilla 6.6? a clean build with debian's 6.6-3 didn't blow up here | 13:36 | |
13:40
forsaken joined
|
|||
fglock | Ziggy6: the optimization is to skip class-name lookup and method-name lookup; it's still plain oo | 13:42 | |
and yes, I found out that C++ does this :) | |||
and I think C++ functors might be powerful enough to work like p6 closures | 13:45 | ||
dakkar | as long as you explicitly specifiy what they should close around, | ||
and manage the lifetime of those variables... | 13:46 | ||
fglock | does C++ have GC? | 13:47 | |
dakkar | no | ||
well, | 13:48 | ||
not by default | |||
you can use a library, and pass all pointers through it | |||
Ziggy6 | you can override the allocation functions so they do GC | ||
dakkar | or use boost::shared_pointer, which is refcounted | ||
Ziggy6 | and have leaks due to circular refs :D | ||
fglock | or link to parrot's gc :) | 13:49 | |
Ziggy6 | or better yet use parrot for everything | ||
wolverian | or jvm! | ||
Ziggy6 | which is why the idea of kp6-C seems to me more like an academic exercise | 13:50 | |
fglock | yes, I'm considering using parrot and just writing the missing pmcs | ||
jvm would be nice, but it would need some emulation (like p5 does) | 13:51 | ||
pmcs == parrot "p6 emulation", after all | |||
13:52
hamika joined
|
|||
smash | there's a "bug" in page run.pugscode.org, the link to "Perl 6" has an extra \s | 13:53 | |
lambdabot | Title: Run Perl 6 Now -- in your browser! | ||
13:59
hamika left
14:13
Jedai joined
|
|||
allbery_b | gaal: yes, vanilla 6.6 | 14:18 | |
I'm retrying it from "make distclean" to see if an e.g. some outdated .hi file is the culprit | 14:20 | ||
(ideally I'd always build from distclean,but pugs compile is pretty rough on my mini at the best of times) | 14:21 | ||
14:22
Ziggy6 left
14:41
rindolf joined
14:52
buetow joined
|
|||
specbot6 | r9308 | larry++ | Updated updates. | 14:59 | |
15:00
buetow joined
15:01
vel joined
|
|||
TimToady | um, that wasn't me... | 15:01 | |
lambdabot | TimToady: You have 1 new message. '/msg lambdabot @messages' to read it. | ||
specbot6 | r9309 | larry++ | Updated updates. | ||
r9310 | larry++ | Clarifications of inner type from sam++. | |||
r9310 | larry++ | Deployment of julian++ at 200605252055, 8`lb + 7`oz, 20`in. | |||
r9310 | larry++ | Ref: www.wall.org/cgi-bin/photo/index.cg...pix/Julian | |||
r9378 | larry++ | Added out-of-dateness messages, plus initial updates for E02. | |||
r9379 | larry++ | Moved initial notes higher. | |||
r9380 | larry++ | Updates to E03. | |||
lambdabot | Title: My Photo Gallery, tinyurl.com/ypd73n | ||
specbot6 | r9383 | larry++ | More updates. | ||
r9390 | larry++ | More updates. | |||
TimToady | um, who is being me? | 15:02 | |
@moosages | 15:03 | ||
lambdabot | putter said 12h 54m 22s ago: I was simply confused. $/<x> is [Mat(a),Mat(b)], not [[Mat(a),Mat(b)]]. Which is what the text actually says. I read for @($<pairs>) -> $key, $val { as structural | ||
decomposition, rather than a 2-stride, and managed to remain wedged. | |||
rindolf | How come one revision is e9310 and the one immediately after it is r9378? | ||
specbot6 | r9435 | audreyt++ | * S04 - Change this example: | ||
r9435 | audreyt++ | if -e { say "exists" } { extra() } | |||
r9435 | audreyt++ | to this: | |||
r9435 | audreyt++ | if rand { say "exists" } { extra() } | |||
r9435 | audreyt++ | Because bare "-e" may be removed along with all $_-defaulting forms | |||
r9435 | audreyt++ | (to be replaced by .-e), but bare "rand" defaults to 1, and as such | |||
r9435 | audreyt++ | should probably be still there. | |||
15:03
forsaken joined
|
|||
specbot6 | r9442 | audreyt++ | * At scw++'s request, add an explicit definition to the default <ws>: | 15:03 | |
r9442 | audreyt++ | "\s+ if it's between two \w characters, \s* otherwise" | |||
r9462 | larry++ | Clarified scoping of "has $x" and friends. | |||
r9463 | larry++ | Change default lvalue parsing to default to list, with short list of scalars. | |||
r9465 | larry++ | Revisions to definitions of simple scalar. | |||
r9466 | larry++ | typo from scook0++ | |||
TimToady | specbot seems to be going nuts and rehashing old stuff | 15:04 | |
maybe the backlog will explain... | |||
specbot6 | r9496 | larry++ | typo from szbalint++ | ||
r9497 | larry++ | Clarifications on SIMPLEness. | |||
r9497 | larry++ | Examples of dot calls defaulting to prefix ops. | |||
r9497 | larry++ | Typo from masoch++. | |||
r9527 | audreyt++ | * S06: Fixed a minor typo noticed by szbalint++. | 15:07 | ||
r9528 | larry++ | putter++ notes that prec table is missing .<> | |||
r9529 | larry++ | Semantics of bare block clarified. | |||
r9535 | audreyt++ | * S03: the SIMPLE forms can use a more robust recursive definition. | |||
r9535 | audreyt++ | also, include $$a and $::('$a') as obviously simple as well. | |||
r9536 | audreyt++ | * S03: allow post-assignment forms to be SIMPLE: | |||
r9536 | audreyt++ | $x[$y + $z] # simple scalar | |||
r9536 | audreyt++ | $x[$y += $z] # simple scalar, too | |||
r9537 | audreyt++ | * S03: the ()= form is no more; reflect it in the operator table. | |||
r9538 | audreyt++ | * S02: Subscripts are now always in list context, period. | |||
r9575 | audreyt++ | * S03: typo, nit, etc, reported by masak++. | 15:08 | ||
r9589 | audreyt++ | * S02: more elimination of lvalue-parenthesis form, spotted by spinclad++ | |||
r9625 | audreyt++ | * S03: Even more typo/nit cleanup; also clarify that while | |||
r9625 | audreyt++ | prefix:<%> is not "simple" scalar lvalue, infix:<%> is. | |||
15:08
buetow joined
|
|||
gaal | whoa backlog? | 15:10 | |
specbot6 | r9660 | larry++ | Definition of warning control exceptions. | ||
r9662 | larry++ | Semantics of the hyperop "promise" with respect to optimization possibilities. | |||
r9667 | audreyt++ | * S02: &?SUB is no more - it's now &?ROUTINE since it also | |||
r9667 | audreyt++ | works in method. Also $?SUBNAME is now &?ROUTINE.name. | |||
r9667 | audreyt++ | (It's already that way in S06, this just syncs with S06.) | |||
r9676 | larry++ | Clarified when circumfix parens are simple, and when not. | |||
r9677 | larry++ | Typo. | |||
r9680 | larry++ | Further decoupling of assignment parsing policy from behavior. | |||
r9681 | larry++ | Fixing bad writing, mostly. | |||
r9683 | larry++ | Cut-n-paste error noted by TheDamian++. | |||
diakopter laughs at specbot | |||
TimToady | looks like specbot is reminiscing | ||
or perhaps its life is flashing before its eyes as it dies... | 15:11 | ||
gaal | r1 | larry++ | Hey, let's do this new Perl thing. Send me yer ideas, mateys | ||
diakopter | specbot6: go back to the future | 15:12 | |
Arathorn | could be that some of specbot6's tcp packets were caught in a particularly chunky routing loop, and so happened to reemerge just as their seqnums wrapped 'round... | 15:13 | |
a bit like scotty preserving himself in a transporter buffer imaging chamber thingio for decades :/ | |||
diakopter | TimToady: re: "um, who is being me?" Do you ever really have an answer for that question? | 15:15 | |
15:15
xerox joined,
[particle] joined
|
|||
TimToady | diakopter: sure, problem was always that I had too many answers... | 15:15 | |
gaal | I can recommend an excellent sonnet on that subject... | 15:16 | |
diakopter | heh. larry's and audreyt's karma measures got some nice bumps | ||
TimToady | shh, you weren't supposed to notice that. | ||
diakopter resolves to make his svn commit messages contain many many line breaks. | 15:17 | ||
gaal | # www.unizar.es/departamentos/filolog...selves.htm | 15:18 | |
lambdabot | Title: e, tinyurl.com/24nt86 | ||
diakopter | TimToady: quick, make some spec changes and no one will notice. | ||
TimToady | are you implying that spec changes made in haste result in negative karma? :) | 15:20 | |
diakopter | hmm. perhaps the specbot could start decrementing karma if a spec commit diff is more than a certain number of lines. or breaks smartlinks or something. | 15:21 | |
TimToady | gaal: lol, e.e.cummings were a good poets | 15:23 | |
we are amused | 15:24 | ||
diakopter | ?eval e.e.cummings | 15:25 | |
evalbot_r15376 | Error: No compatible subroutine found: "&e" | ||
TimToady | @tell putter I like your little chart, and it reminded me that @x:=[...] only captures text, which I'm sure p6std violates in lots of places. I also think I like your infix:name idea, at least for generic matchers with no fixed sym. | ||
lambdabot | Consider it noted. | ||
gaal | error: e.e.cummings cannot be typed | 15:26 | |
TimToady | @tell putter however I will probably change the part about "flattening" into the more modern lazy flattening that can be undone by @@ context. | 15:28 | |
lambdabot | Consider it noted. | ||
15:32
rfordinal_athome joined
|
|||
TimToady | heh, I just realized we're using "is context" for two completely different things | 15:42 | |
we used to have "is context(Scalar)" on parameters, which we've all forgotten to remember. | 15:44 | ||
which means that particular usage should probably die | 15:45 | ||
diakopter | 'is context' is defined in context? | 15:46 | |
15:46
rhizo joined
|
|||
TimToady | no, it collides--I've been putting "is context" on parameters to turn them into environmental vars | 15:47 | |
and the fact that the "is context(Scalar)" section has a big disclaimer at the bottom that it doesn't work half the time... | 15:48 | ||
is another strike against it | |||
should probably just be relegated to special macro processing anyway. | 15:49 | ||
since it's something that has to be known at compile time. | |||
15:49
thepler joined
|
|||
TimToady | so I'm just going to delete it. | 15:49 | |
[particle] | so we can all remember to forget it now | 15:50 | |
diakopter is having all kinds of trouble with bitcard/perl.org/rt | 15:52 | ||
16:07
aukjan is now known as aukjan|gone
16:17
bonesss joined
|
|||
allbery_b | @tell audreyt never mind, "make distclean" fixed it. that's a really *fun* failure mode, though... | 16:27 | |
lambdabot | Consider it noted. | ||
gaal | allbery_b: it sounds more a ghc bug than a pugs one. what does your config.yml have as ghc_heap_size? | 16:31 | |
(note you need to remake Makefile if you tweak that value) | 16:32 | ||
allbery_b | yeh, actually I just mentioned it over in #haskell, I'm thinking an obsolete .hi file caused it given that distclean fixed it | ||
ghc_heap_size is commented out, per default | 16:33 | ||
gaal | regardless of this problem, that setting may be worth tweaking: admittedly this was a long time ago, but last I checked it made better builds with both low and high-ram machines | 16:35 | |
16:41
putter joined,
wilx` joined
|
|||
avar | hrm | 16:43 | |
I'm trying to split the pugs smoke submitter into Module::Install::Smoke, I was wondering what would be the best way to make it self-contained | |||
perl inc/Module/Install/Smoke.pm # runs what run-smoke.pl does... | 16:44 | ||
:) | |||
and just have: | |||
smoke :: | |||
$(PERL) inc/Module/Install/Smoke.pm | |||
gaal | follow the smoke trail... | 16:50 | |
pasteling | "putter" at 66.30.117.127 pasted "some alias intro text" (43 lines, 2.1K) at sial.org/pbot/23211 | ||
gaal | putter: looks very clear and useful to me, and I'd not been following Rules closely | 16:53 | |
"what you get" needs a period after it | |||
putter | yeah. it's... just putter thinking it through by writing explanation, with the possibility of it being S05 edit fodder, or being of interest to someone. It's not really an intro. Concepts are missing, and yes, the text is messy. Just a thought piece I toss on the wall. s/toss/paste/. | 16:58 | |
lambdabot | putter: You have 2 new messages. '/msg lambdabot @messages' to read them. | ||
kolibrie | putter: I'm not sure why an array alias of a subrule/subpattern would not give you an array of matches | 16:59 | |
gaal | I liked it | 17:01 | |
kolibrie | seems like if you want a flattened array of match values, you would have to specify that explicitly | ||
putter | kolibrie: it does, but perhaps not the matches you expect. | 17:02 | |
you do specify it explicitly, by choosing and array rather than scalar alias ;) | |||
(for a quantified construct that is) | 17:03 | ||
17:03
REPLeffect joined,
specbot6 joined
|
|||
kolibrie | and if you specify a scalar alias, what do you get? | 17:03 | |
putter | one thing i didn't include in the intro is the "if you want effect X, do Y", which motivates some of this. | 17:04 | |
17:04
penk joined
|
|||
kolibrie have been avoiding quantifying anything because it is all a little weird right now, so flushing this out is probably a good thing | 17:05 | ||
TimToady | putter: note in my message I'm thinking about changing it to lazy flattening undoable by @@ | ||
putter | noted. | 17:06 | |
kolibrie: perhaps pastebot is snoozing: sial.org/pbot/23212 | 17:07 | ||
kolibrie looks | 17:08 | ||
svnbot6 | r15377 | audreyt++ | * runpugs: Removed extra <sp> in href to "Perl 6" noticed by smash++ | 17:09 | |
putter | kolibrie: that's the terse version. perhaps less obscure is sial.org/pbot/23206 | 17:11 | |
lambdabot | Title: Paste #23206 from "putter" at 66.30.117.127 | ||
17:12
shillo joined
|
|||
kolibrie | much better (got a litte confused by the "" in the terse) | 17:13 | |
looks sane, I think | 17:14 | ||
17:17
chris2 joined
17:19
shillo joined
|
|||
putter | agreed. the S05 section was giving me a headache for some reason. but the ideas seem sane. | 17:20 | |
Though I have the strangest feeling I've been here before. Writing up summaries of the alias section of S05. Could be, I was playing here last year. But odd. | 17:23 | ||
<cue twilight zone background music> | 17:24 | ||
kolibrie | it's nice this area of the synopsis is getting attention now, it's my favorite part | 17:25 | |
putter | lol :) | ||
17:25
DHGE joined
|
|||
putter | it is nifty, isn't it | 17:27 | |
sometimes you get to close and forget that | |||
*too | |||
p6 is very, very neat. | 17:29 | ||
let us be productive elves and usher in xmas | |||
:) | |||
shillo | Funny. And I just took time to read most of S05 today :) | 17:30 | |
Well, top 2/3. Or more than half. | |||
REPLeffect | putter: rather than have the White Witch keep it always winter and never Christmas? :) | 17:32 | |
putter | shillo: might want to note what you found unclear. hey! we have a wiki now. "MarginNotesOnS05"? | ||
shillo | Only the bit about "symbols", took me 2-3 reads to figure that they just concatenate matches and stash them into .symbol property | 17:33 | |
putter | REPLeffect: and the poor cobbler's children with frostbitten bare feet | ||
shillo | That section could use an example | ||
REPLeffect | hehe | 17:34 | |
shillo | from future import Perl6 ;) | ||
<--- currently afflicted with the snake @work. :p | |||
17:36
wilx joined
|
|||
putter | I just get an error. :( Briefly had visions of xmas in April. | 17:36 | |
shillo | Hm, just updated pugs. Where's to look at for current development? kp6? | 17:37 | |
putter tries to choose between rakudo.org/perl6/index.cgi and dev.pugscode.org/ wikis. The latter is "for developers". The former linked from pugscode.org as the "Perl6 wiki". Hmm... | 17:39 | ||
lambdabot | Title: Perl 6 / Perl 6 | ||
kolibrie | shillo: fglock is working on kp6 and Pugs-Compiler-Rule, lwall on src/perl6/Perl-6.0.0-STD.pm | ||
the plan is for everything to converge, with Perl-6.0.0-STD.pm being the center of the whirlpool | 17:40 | ||
shillo | Yeah, read through Perl-6.0.0-STD. Veeeeeeery nice. | ||
I also visit colabti.de for logs. | 17:41 | ||
... so I get tidbits here and there. :) | |||
kolibrie | I'm not sure what putter is working on... just documentation clarifications? or do you have some mini-project going? | 17:42 | |
putter | there seem something vaguely like four main thrusts at the momemt. objects on pugs, haskell, audreyt presiding. kp6 with fglock. Perl-6.0.0-STD.pm syntax standard being pushed by TimToady. And yet_another_regex_engine with me. | ||
kolibrie | haven't looked at yet_another_regex_engine yet | 17:43 | |
shillo | Hmm, me neither | ||
putter | I don't know how to help audreyt. kp6, there is a TODO. Perl-6.0.0-STD... comments? yet_another... hmm... write regex test cases? for aliases :) | 17:44 | |
there is also... | 17:45 | ||
shillo | Oh, another unclear thing in S05, about longest-token rule and | operator... | ||
putter | dev.pugscode.org/query | ||
lambdabot | Title: Custom Query - Pugs - Trac | ||
kolibrie is mostly trying to keep relevant bits in his head and teaching co-workers how to write Perl 6 grammars (that will continue to work?) | |||
shillo | Does it mean that all |'ed subrule prefixes get tried, with longest match going on. | 17:46 | |
Er, ? | |||
putter is unclear on longest token match. | 17:47 | ||
shillo | Hmm, so I'm not the only one. :) | ||
putter | longest match I get. longest token match... I've been putting it off until I have to implement it. | 17:48 | |
kolibrie | it has to do with predictive parsing, but mostly I've just been avoiding looking at it too closely | ||
17:51
forsaken joined
|
|||
TimToady | you can ignore the symbol stuff in S05, it's already obsolete | 17:53 | |
shillo | Oh! :) | ||
shillo has to head foodwards. Laters, all! | 17:54 | ||
And thanks for the info! | |||
TimToady | in fact, I just now deleted it | ||
17:55
bernhard joined
|
|||
kolibrie | TimToady++ # deleting obsolete documentation | 17:55 | |
specbot6 | r14307 | larry++ | Deleted obsolete symbol construct | ||
putter | one bitsize project would be to eyeball t/regex/* and determine how much needs to be done to preprocess it into p5. "x"~~/y/ => foo('x','y'), what else? I'd like to run the yet_another against the pugs testsuite soon. after implementing aliases. | 17:56 | |
shillo: wave | |||
17:57
justatheory joined
17:59
xinming_ joined
18:08
fglock joined
18:14
rdice joined
18:15
nekokak_ joined
|
|||
[particle] | does 'max' on a range object return the initial 'to' value, or the maximum number it can output based on 'by'? | 18:22 | |
fglock | I'd say it depends on by | 18:24 | |
[particle] | does that mean it forces evaluation? | ||
fglock | not exactly | ||
I've got a reference implementation in p5 | 18:25 | ||
[particle] | ?eval my $x= 1..10; say $x.max | ||
evalbot_r15377 | OUTPUT[1 2 3 4 5 6 7 8 9 10ā¤] Bool::True | ||
[particle] | hrmm | ||
fglock | the idea is that you can evaluate both forward (shift) or backwards (pop) | ||
[particle] | how is my syntax wrong? | ||
ah, i see | |||
no, i don't | 18:26 | ||
putter | lol | ||
fglock | ?eval (1..10).max | ||
[particle] | for a range of 1..10.5:by(3) | ||
evalbot_r15377 | 10 | ||
putter | ?eval (1...10):by(3) | 18:27 | |
evalbot_r15377 | Error: ā¤Unexpected "10"ā¤expecting operator or ")" | ||
[particle] | ?eval (1..10.5:by(3)).max | ||
evalbot_r15377 | Error: ā¤Unexpected ":by"ā¤expecting fraction, exponent, term postfix, operator or ")" | ||
putter | ?eval (1..10):by(3) | ||
evalbot_r15377 | Error: ā¤Unexpected ":by"ā¤expecting term postfix or operator | ||
putter switches to local pugs. doesn't think fraction flies. | |||
fglock | [particle]: svn.pugscode.org/pugs/perl5/Pugs-Ru...ue/List.pm | 18:28 | |
lambdabot | tinyurl.com/yvhwcb | 18:29 | |
putter | grepping tests suggests its all todo feature | ||
offby1 | lambdabot: you are my savior! Tell whoever taught you to generate tinyurls that they are wonderful, kind, and an officer and a gentleman | ||
[particle] | ?eval (1.2..10.5).max | ||
evalbot_r15377 | 51/5 | 18:30 | |
[particle] | gah | ||
so, max is broken in pugs | |||
?eval (1.2..10.5).minmax | |||
evalbot_r15377 | Error: No compatible subroutine found: "&minmax" | ||
fglock | from_num_range() implements this, but max() has a XXX on it :( | ||
putter didn't realize one could do ranges over Real. hmm. | |||
[particle] | sure, 1.2..10.5:by(4.6) | 18:31 | |
putter | fglock: did you deal with $/ rebinding in the middle of a regex? any thoughts? /(a)$/:=(b)(c)/ sigh. slog slog. | 18:32 | |
diakopter | ?eval say 'line 1','line 2' | 18:33 | |
putter | autovivifying matches... /$0[1][1][1]:=(a)/ | ||
evalbot_r15377 | OUTPUT[line 1line 2ā¤] Bool::True | ||
putter | shudder | ||
fglock | putter: no, $/ would be straightforward, I guess - but autovivifying is a bit more difficult | 18:34 | |
I'm uncertain if it vivifies to array of match( array of match( ... | 18:35 | ||
putter | oh, there's that too. :/ | ||
fglock | or simply match( array of array ... | 18:36 | |
putter | if it was an external alias, the right answer would be a of a. but internal... i see no path through a world of pain. | 18:37 | |
fglock | [particle]: the implementation of laziness in p5 is quite complete - it covers lists, arrays, map(), grep(), slices | ||
putter | woot! err, performance? tie()s? | 18:38 | |
putter crosses fingers and hopes someone else (fglock) thought of a way to do it without sloooow ties.... i didn't :( | 18:39 | ||
fglock | putter: you mean, laziness in p5? it's simple OO (the syntax is left to the compiler) | ||
putter | ah, ok | ||
cpan module? | |||
actually, never mind. mission creep. | 18:40 | ||
fglock | hmm - it doesn't make much sense without the compiler, it's too verbose | ||
putter | no p6 backends for putter. regex engine, language infrastructure, better regex ast and grammar. others get to have the fun. ;) | 18:41 | |
[particle] | fglock: is 'cstart' :: max? | ||
err, 'cend' that is | |||
fglock | putter: I've yet to find something to focus on | ||
[particle]: yes, cend() - these are just internal names | 18:42 | ||
I don't remember what it meant - maybe 'closure to compute the end' | 18:43 | ||
putter | hmm. if the next pugs release was here, would the focus puzzle look any different? | 18:44 | |
a different approaches - what are you uniquely/particularly suited to contribute on? what might be -O fun? anything with a bit of both? | 18:45 | ||
fglock | well, this would shift the focus to the next pugs release after that :) | 18:46 | |
putter | lol | ||
fglock | do you think your regex compiler could replace PCR current engine? in this case I should probably help you with that | 18:47 | |
I'm mostly writing throw-away code lately, I'd probably like to discuss some results and see where to go next | 18:48 | ||
putter | i was hoping that would be the case. though i've noticed assumptions about match object structure tends to leak into the surrounding code. i suspect matches need a more fleshed out api, at least in p5 object land. | 18:49 | |
fglock | also, since kp6 initial goals are covered, it could be finished | ||
and 6-on-6 could finally start | 18:50 | ||
putter | much to be said for finishing and wrapping up, rather than leaving things "all but thesis". ;) | ||
18:51
GabrielVieira joined
|
|||
putter | (not sure how universal concept is - "all but thesis" == finishing all work for a degree, but for finishing/turning in thesis, so no degree") | 18:51 | |
re discuss, fun! :) | 18:52 | ||
PerlJam | universal as long as your universe is mostly composed of academics. | ||
putter | ah | ||
fglock | what do you mean re match leak? | 18:53 | |
putter | I was thinking about p6 development as a bubble universe filled with hirsute yaks... never mind. | ||
re leak, my code assumes Matches from subrules know the name of the subrule they came from. non spec. hmm... | 18:55 | ||
fglock | otoh, kp6 as a compiler tool doesn't need much wrapping - in the end, it's just an mp6 library | 18:56 | |
putter | i spec'ed my Match objects as open api, $$m->{match_array} is legal accessor. if PCR plays similar games, would need to sync. | ||
fglock | PCR matches are plain objects | 18:57 | |
they do keep a pointer to the matched string, but that's all | |||
putter | on, btw, if PCR doesnt need it internally, you might try delaying overload()ing until the match is handed back to the world. I saw 10x total sytem performance hits from using overload()ed Matches everywhere. | ||
fglock | PCR actually plays some funny optimization tricks, but they don't violate encapsulation (much) | 18:58 | |
putter | not _using_ the overload()ing, just applying. | ||
it | |||
hmm | 18:59 | ||
fglock | compiled code actually calls methods, rather than using overloads | ||
so not a problem | |||
putter | k | ||
fglock | $/.array.[3] (more or less) | 19:00 | |
putter | bummer in a way. not often one sees an easily accessible 10x, non algorithm fix, performance increase. ;) | ||
fglock | I was discussing this with audreyt - she said overload is not a big performance hit | 19:02 | |
putter | I was hoping to this week to be where I could say "ah! use PerlMix; write grammar stuff, even self modifying. maybe help TT get STD actually running". | ||
but... wanted to do aliases before cleaning up the PerlMix cruft. Dont have to I suppose... don't think there was a real dependency... | 19:03 | ||
fglock | re PerlMix - how about mp6... | 19:04 | |
it would be directly usable by kp6 and mp6 itself | |||
and pugs :) | 19:05 | ||
putter | re not a big performance hit, I believe I was literally 10x slower (again, not actually using the overloading, just having it), and something like 20% of it was in a 2 line new() which called bless on an hash. blech. v5.8.8. | ||
20% number is questionable - most p5 profiling tools were failing (mumble mumble:( ), so I got to use DebugLB's 1/100 sec sampling. sigh. | 19:06 | ||
fglock | object creation _is_ a performance problem for matches | ||
putter | 10x less so if they are not overloaded. :) | 19:07 | |
re PerlMix/mp6... | 19:08 | ||
fglock | hmm - creating an object pool - but this is hard to do efficiently in p5 | ||
putter | simply putting off overloading until a match is returned to the world, or exposed to the world in a code block, did wonders. anyway... | 19:09 | |
I think I've ended up defining my problem domain as supporting a space/family of p6 implementaitons, rather than just one. could do the same in p6, but the game is simpler if the target and underlying language are a bit different. and we don't have robust p6 objects yet. even p5 has had annoying "darned if that isn't a compiler bug" complications. | 19:12 | ||
audreyt | <- working on robust p6 objects | 19:13 | |
lambdabot | audreyt: You have 3 new messages. '/msg lambdabot @messages' to read them. | ||
putter | so I think p5 is the only place to stand at the moment. would have used ruby2 if it were less flakey, and the local developer community were different, but t'isnt and t'isnt. | ||
audreyt | but even when we do, doing it in p5 and have Work Right (tm) is much more important than simple bootstrap | ||
putter | s/only place to stand/only place I'm happy standing/ | 19:14 | |
19:14
Ziggy6 joined
|
|||
audreyt | because of developer community, yes | 19:14 | |
putter | audreyt++ # re working on robust objects | ||
diakopter | 'tisn't | ||
audreyt | delayed for 3 months and the bridge itself only took 3 hours... | ||
fglock | mp6 does p5 | ||
putter | danke | ||
audreyt | oh well, that's software for you :) | ||
putter | sigh | 19:15 | |
fglock | audreyt++ | ||
putter | re Work Right, I've been leaning the other way. Bootstrap is more important than work right. Work right is too hard with existing tools. So bootstrap + "the ways it's not right don't get in the way of development". Not getting in the way of further development being the critical primary objective. | 19:16 | |
audreyt | k. | 19:17 | |
fglock | my theory is of 'circular bootstrapping' :) | 19:18 | |
it's like doing indirections | |||
putter | writing yet_another to testsuites is my way of "good enough that it's not so buggy that it gets in the way of development". but it doesn't even pretend to be full spec. no test, no impl. and in a couple of cases, no impl regardless. once I can write a nice ast with multi methods in a language with macros, *them* i'd try a real regex implementation. | 19:19 | |
this just seems the shortest path through that mass of bleeting yaks. | 19:20 | ||
re "once I can": and which run fast | |||
19:21
the_dormant joined
|
|||
Ziggy6 | putter: this means you'll only do it in LISP? :D | 19:21 | |
19:21
Macae joined
|
|||
putter | "Perl 6 - implementing our literals is more complex than most peoples' whole programming languages." | 19:22 | |
audreyt | "ferociously complex" | 19:25 | |
putter | Ziggy6: I seriously considered a CL bootstrap on SBCL. But I find spewing throwaway code in CL not fast. p5's lack of macros bites, though can be worked around. ruby would be ideal for this, but for no multi methods, and ruby 2 with real lambdas doesn't quite work yet. | ||
audreyt | er, "ferociously difficult" accordting to spj | ||
putter | ooo, can we capture that quote someplace? get permission to use it? | 19:26 | |
audreyt | sure. fair use. | ||
fglock | I see multi methods and macros as syntax sugar - maybe this is why I think bootstrapping is not a problem | ||
putter | do you still have the full original? was an email? | ||
19:27
explorer joined
|
|||
audreyt | putter: cite: A History of Haskell: being lazy with class | 19:27 | |
". At the time there were no implementations of | 19:28 | ||
Perl 6, at least partly because it is a ferociously difficult language to | |||
implement. " | |||
gaal | <-- pining for the tshirt | ||
audreyt | # research.microsoft.com/~simonpj/pap.../index.htm | ||
lambdabot | Title: A History of Haskell, tinyurl.com/yowkle | ||
fglock | research.microsoft.com/~simonpj/pap...history.ps | ||
lambdabot | tinyurl.com/2y9ooc | ||
fglock | heh | ||
19:29
rindolf joined
|
|||
putter | fglock: working on the zoo which is yet_another last month, I stumbled upon an old regex ast in p6. a half page of elegant code. made we want to cry. I wield p5 to hack through the woods. Once on the other side, I hope to never see it again. :/ | 19:29 | |
;) | 19:30 | ||
though perhaps audreyt has the insight - p5 isn't the language, it's the vm. cpan in the language... | 19:31 | ||
audreyt | :D | ||
fglock | putter: otoh, I've not fixed a bug in the mp6 regex compiler since last year - and I've used it a lot :) | 19:32 | |
19:32
ludan joined
|
|||
putter wants a "CPAN: The Reference Manual" book. | 19:32 | ||
19:32
dec joined
|
|||
fglock | </sell mp6> | 19:33 | |
putter | fglock: One fun thing is that, cleaning the dregs of a generally passing test suite, you reach some test fail you think you understand, and look hard at it. and have a "oh, that's odd" abstraction busting moment. | 19:36 | |
fglock: there's one potential task - the yet_another re_tests (from old v5.9) and rx_* tests (from parrot) are a "just barely good enough, get to it later" utter kludge. now 5.10 has even more regex stuff, which needs to be added, but perhaps kept segregated. perhaps clean it up as part of making it work for mp6? | 19:38 | ||
and it looks like most of the pugs t/regex/* could be used more or less directly by p5. | 19:39 | ||
so if you have a testing infrastructure itch... | |||
gaal: oh, yes, please | 19:40 | ||
audreyt: still have that cafepress account? ;) | |||
putter can't believe he is distracting audreyt from pugs oo critical path, but... it'd make a great Tshirt :) | 19:41 | ||
fglock | re work for mp6 - not sure what you mean, I generally consider the mp6 project 'closed', mostly in order to avoid featuritis | 19:42 | |
working in mp6 is very distracting :) | |||
putter | re mp6, I'm afraid I still really don't have a clear idea of what works, what doesn't, and how fast. and thus what one might tackle with it. | ||
lol | 19:43 | ||
Juerd | What exactly would make a great shirt? | ||
fglock | re what works - you can take a look at the source code, since it compiles itself | ||
putter | Perl 6 - "a ferociously difficult language to implement" - SPJ, creator of Haskell | 19:44 | |
or "Perl 6...is a ferociously difficult language to implement" - SPJ, creator of Haskell | 19:45 | ||
I suppose the target audience would be a bit small and language nerdy. | 19:46 | ||
diakopter | "audreyt: on the (pugs (oo)) critical path" | 19:47 | |
putter | wonder how spj describes implementing hs | ||
"..." - SPJ, Haskell, MON YEAR | 19:49 | ||
fglock | [ot] ugh - too many instant messages, and I'm getting 7k spam messages/month | ||
gaal | actually I was thinking of | 19:51 | |
"ferocious developer" | |||
[particle] | "ferociously difficult developer" | 19:52 | |
19:52
UWC joined
|
|||
allbery_b | aren'tr they all? | 19:52 | |
maybe I should say "aren't *we* all" :) | |||
[particle] | NO! | ||
putter | Though the obvious comeback to the T wearer is "you say that like its a *good* thing...". ;) | ||
[particle] | "laziness, impatience, hubris -- three qualities of a ferociously difficult developer" | 19:53 | |
cj | fglock: I've only got 4k! | 19:54 | |
fglock: thing how difficult life would be if we were important :) | 19:55 | ||
gaal | www.codeslate.com/2007/01/you-dont-...ivors.html | ||
putter | Though looking at the OneLaptopPerChild project, there is all sorts of software I'd like to see on it. And it's just not going to happen in SmallTalk and Python. Even P6 would be pushing it. But it could be a lot closer. Millions of kids are getting these things. A lot hangs on our getting p6 out the door. | ||
lambdabot | Title: code slate: you don't bury survivors | ||
[particle] ponders (1.2.3..4.5.6:by(0.0.1)) | 19:57 | ||
you can't get there from here! | |||
gaal ponders 6 .. 2*pi :by(digits) | |||
fglock | cj: aren't we? :) | ||
diakopter | putter: perl was in OLPC, but they took it out, I heard. | ||
19:58
Macae left
|
|||
fglock | putter: re performance: it compiles here at roughly 1kb of source code/second | 19:58 | |
putter | very memory constrained. also space. also hoped to be kid modifiable... I'd much rather kids learn to program in py than p5. | 19:59 | |
Schwern | They're planning on putting Squeak on it | 20:00 | |
And the windowing environment is in Python | |||
putter | the "it compiles itself" worries me. that's an existence proof. it doesn't say much about the space in which correct behavior might be expected. no? | ||
yes | 20:01 | ||
rindolf | Hi Schwern | ||
Schwern | "The laptop will use the Sugar graphical user interface, written in Python, on top of the X Window System" | ||
"several interpreted programming languages, including Logo, JavaScript, Python, Csound, and the eToys version of Squeak" | |||
en.wikipedia.org/wiki/One_laptop_pe...d#Software | 20:02 | ||
hey | |||
putter | yes. various apps^Hactivities will also be python | ||
fglock | putter: exactly - the amount of language implemented is exactly what was needed... | ||
putter: kp6 would be the place for extensions | 20:03 | ||
Schwern | putter: Are you saying p6 should try to rush to make it onto the Children's Machine? | ||
putter | Schwern: no | 20:04 | |
Schwern | Oh good. | ||
putter | that the societal impact of p6 becoming available one year, or a year later, are nontrivial. | ||
20:04
jferrero joined
|
|||
putter | that the space of applications which are feasible to tackle in p6 is much larger than that in ST and Py. and until we can, lots and lots of people seriously lose. | 20:05 | |
Schwern | Ok. Now weigh that against the cost of rushing out an incompletely designed language. | 20:07 | |
TimToady | Range.max just returns the endpoint, ignoring :by | ||
Schwern | You're worried about next year. I'm worried about 20 years from now. | ||
TimToady | so pugs is correct | 20:08 | |
Schwern++ | |||
Schwern | TimToady: Does karma from you count, like, triple? | ||
putter doesn't think non-rushing is the bottleneck... not even remotely close... though perhaps it was once... but that would need to be >2years ago... since then, just warm body/brain resource constraints. | |||
diakopter | Schwern++++++ | 20:09 | |
putter | warm body/brain *dollars* resource constraints | ||
fglock | TimToady: ok | 20:10 | |
Schwern | It just seems to be a particularly bad month for watching Perl 5 drown in its own compatibility issues. | ||
putter | besides, a defining characteristic of p6 is it's mutability. unclear how that will play out socially, but 20years seems an unlikely distance to assume anything but ancestry remains. | 20:11 | |
re drown, ?? | |||
rindolf | Schwern: you mean perl-5.9.x? | ||
TimToady | the "Perl 7" discussion, I think | 20:16 | |
not to mention the strange regex ideas | |||
putter | I nominate that for someone's todo list "Write a CPAN-as-language language manual". Probably have to be online. Perhaps its just one big "choosing your DSL". | 20:17 | |
putter looks... | 20:19 | ||
Schwern | Just in general. | 20:21 | |
autoboxing got shot down quickly. "use feature" bothers me because we can't even add keywords to the language anymore. | 20:22 | ||
The whole safe eval, isa() and can() thing | |||
putter | oh my. putter retreats from the noisy world to focus on pugs. few minions, but little politics. | 20:23 | |
fglock | putter: :) | 20:26 | |
TimToady | There's little wrong with Perl 5 today that wasn't already wrong in 2000 when 361 RFCs were written... | 20:27 | |
20:28
explorer joined
|
|||
audreyt | TimToady: foreign object models. | 20:31 | |
say the p5 bridge has HOW that uses p5 dispatch | |||
s/has/gets us objects that/ | |||
does the bridge also have to manufacture WHAT/WHICH/WHO/WHERE? | |||
i.e. is it correct that those 4 calls are part of the "special methods recognized by all p6-side objects"? | 20:32 | ||
TimToady | I think of them more as macros than methods | ||
audreyt | i.e. defining them in p5-land doesn't do anything, right? | 20:33 | |
yup. | |||
so if I say "sub WHICH { ... }" in p5 land for that package | |||
it doesn't actually get invoked | |||
TimToady | WHICH is more likely to call stringify or some such | ||
audreyt | actually, WHICH is meant to be user-overridable | 20:34 | |
so maybe they _are_ ordinary calls? | |||
and the p5 bridge supply default implementations if they are not defined in p5 land | 20:35 | ||
TimToady | depends on the MOP I think what the meaning of object identity is | ||
audreyt | by intercepting method lookup failures (but before AUTOLOAD kicks in), perhaps | ||
case in point: # use perl5:DBI; DBI.new.WHICH | |||
(everything is in place to bridge perl5 MOP into MO now, hence the question) | 20:36 | ||
I'd like to do that first because method dispatch for Perl5SV is already separate in the runtime | |||
[particle] | TimToady: thanks for the clarification, could you clarify the spec? | ||
audreyt | so it's easier than replacing all our builtin Pugs.Prim (that's next) | ||
20:37
dduncan joined
|
|||
TimToady | [particle]: you mean on .max? | 20:37 | |
fglock | audreyt: how about Scalar::Util::refaddr() for WHICH | ||
[particle] | TimToady: yes, sorry, i was lost in scrollback land | ||
audreyt | fglock: make it the same as WHERE? | ||
that's a thought.. | |||
20:37
forsaken joined
|
|||
[particle] | and... is (0..-2:by(-1)).max == 0 ?? | 20:38 | |
TimToady | [particle]: I'll need to think about that | 20:41 | |
PerlJam | TimToady: riffing from particle ... and if so, what's the selector for getting either end point? | 20:42 | |
20:42
justatheory_ joined
|
|||
PerlJam | I presume that (0..-2:by(-1)).[-1] may be bad for laziness? | 20:42 | |
especially when it's more like -Inf than -2 | 20:43 | ||
:) | |||
$range.lhs and $range.rhs may work though | 20:44 | ||
20:44
the_dormant joined
20:45
jferrero joined
|
|||
fglock | PerlJam: that's worked out - it just calls a closure that returns a (possibly lazy) value | 20:45 | |
(0..Inf)[100..1000] | 20:46 | ||
PerlJam | fglock: if you say so ... I only flit in and out of #perl6 consciousness these days. | ||
offby1 slaps PerlJam's cheeks, and waves smelling salts under his nose | 20:47 | ||
PerlJam | offby1: You're not supposed to slap *those* cheeks! | ||
offby1 blushes furiously | |||
well, they were exposed. | 20:48 | ||
how was I to know. | |||
20:48
stevan_ joined
20:53
baest joined
20:56
REPLeffect_ joined
|
|||
fglock | home & | 20:56 | |
putter | g'night fglock | 20:57 | |
20:57
diotalevi joined,
Ziggy6 left
20:58
fglock left
|
|||
audreyt | .HOW now supported in MO | 21:02 | |
perl5 bridge next, then Pugs.Prim rewrite, then see if smoke still likes us. | |||
svnbot6 | r15378 | audreyt++ | * MO: Switch from String to ID for all ClassName/MethodName/AttributeName. | ||
diakopter | @seen nothingmuch | 21:04 | |
lambdabot | nothingmuch is in #darcs, #haskell and #perl6. I don't know when nothingmuch last spoke. | ||
pasteling | "evalbot_r15377" at 194.145.200.126 pasted "Pugs build failure" (494 lines, 26K) at sial.org/pbot/23217 | 21:05 | |
nothingmuch | yo | ||
21:05
Aankhen`` joined
21:08
lichtkind joined
|
|||
svnbot6 | r15379 | gaal++ | * quell some warnings that appear in 'make ghci' | 21:08 | |
21:09
buetow joined
|
|||
svnbot6 | r15380 | gaal++ | * make PUGS_GHCI_DEBUGGING a little more sensible | 21:09 | |
nothingmuch | diakopter: ? | 21:10 | |
svnbot6 | r15381 | audreyt++ | * Pugs.Class: Make Show a superclass to Boxable. | ||
r15382 | audreyt++ | * Pugs.Val: The second MO class, "Class" now wrapped: | 21:12 | ||
r15382 | audreyt++ | vv('foo').HOW; # Str | |||
r15382 | audreyt++ | vv('foo').HOW.HOW; # Class | |||
r15382 | audreyt++ | Full MOP (.WHICH, .methods etc) is next, then Perl 5 | |||
r15382 | audreyt++ | bridge, then Pugs.Prim rewrite. | |||
r15383 | audreyt++ | * Repair buildfail by merging with gaal++ | 21:14 | ||
r15384 | audreyt++ | * Ditto. | |||
diakopter | out-of-context quote from perl.org#parrot: <pmichaud> s/parrot/pugs/ | 21:19 | |
svnbot6 | r15385 | audreyt++ | * Remove inc/.author in Data-Capture so things can build. | ||
r15385 | audreyt++ | Reported by: Eric Hanchrow | |||
meppl | good night | 21:21 | |
putter | wave | ||
reality check: B can inherit from A things that A import()ed from X, yes? | |||
p5 | |||
broquaint | Yes. | 21:22 | |
putter | tnx. | ||
specbot6 | r14308 | larry++ | Distinguish Range's intervalic .min and .max from its directed .from and .to. | 21:23 | |
21:23
buetow joined,
cddar joined
21:24
cddar left
|
|||
gaal | oops, did i break the build? sorry :) | 21:24 | |
TimToady | < svnbot6> r15382 | audreyt++ | vv('foo').HOW; # Str | 21:25 | |
arguably that should return ^Str rather than STr | |||
*Str | |||
audreyt | what does ^Str stringify to? | ||
I thought it's the short name | |||
may be wrong... | |||
TimToady | I think it needs to stringify to ^Str to avoid confusion with the Str prototype | 21:26 | |
[particle] | ranges are strange beasties | 21:27 | |
TimToady | hmm, I wonder if (1..10).push should return (1..11) | 21:28 | |
21:28
theorbtwo joined
|
|||
audreyt | TimToady: nonmutating push? | 21:29 | |
TimToady | Range is currently mutable | ||
[particle] | range extension? | ||
TimToady | and we always said you could iterate a range on either end, but never said how. | 21:30 | |
hmm, maybe .minmax is a no-op, and infix minmax should always be done with range objects to preserve inclusive/exclusive distinctions. | 21:32 | ||
[particle] | can you do something like =($range.reverse) as an equivalent for $range.pop? | ||
TimToady | a PDL programmer would expect that to work, but I'm not sure a mere mortal would | 21:33 | |
audreyt | TimToady: Range is mutable? S02 says otherwise | ||
(and I don't really see a compelling case for it to be mutable...) | |||
TimToady | S03 has always said it's mutalbe | ||
*mutable | |||
audreyt | # Range A pair of Ordered endpoints; gens lazy Seq in list context | 21:34 | |
uh, where? | |||
TimToady | the place where it says "Range objects are lazy iterators" | 21:35 | |
there's no such thing as an immutable iterator | |||
audreyt | ok... I parsed it as saying it supports the iterating interface | 21:36 | |
much as Seq does | |||
for 1,2,3 { ... } | |||
for 1..3 { ... } | |||
[particle] | exhausted iterators are immutable | ||
audreyt | wasn't aware that there's a need to seek a range mutably | ||
TimToady | I suppose if you're doing the problem where the fly flies back and forth between two approaching locomotives... | 21:37 | |
[particle] | sure, but you can't take headwind into account | ||
audreyt | then you use two Scalars... | ||
I'd like to not have | 21:38 | ||
(1,2,3).push # nonsensicle | |||
(1..3).push # sensible (!) | |||
seems really weird. | |||
[particle] | (3..1:by(-1)).push # pushes what where? | 21:39 | |
TimToady | you'd end up with (3..0:by(-1)) | 21:40 | |
gaal | are sensicles what you get when it rains smarts and freezes? | ||
dduncan | audreyt, will you have another mass checkin during the next hour or so? otherwise, I'll try rebuilding Pugs again now, or if so, then I'll wait | 21:43 | |
TimToady | the problem with using two Scalars is that you have to keep the inclusive/exclusive information out-of-band. | ||
and I think people might rather write $a..^$b minmax $c^..$d than using lists of two elements. | 21:44 | ||
dduncan | or I'll do it now anyway ... | ||
[particle] | is :by(...) invariant? | 21:45 | |
audreyt | dduncan: no I need to sleep :) | ||
TimToady | for a given Range construction | ||
I think so | |||
dduncan | question: does using arbitrary object types as a Hash or Mapping key work in Pugs now? eg, using either a Seq or a Mapping as a key? | ||
audreyt | dduncan: no, but you can expect it to work in ~2wk | 21:46 | |
dduncan | thank you | ||
ingy waves | |||
[particle] | TimToady: are expressions allowed? | ||
audreyt | integral: yo | ||
TimToady | at construction time | ||
dduncan | fyi, I would probably use such a feature to implement multi-attribute indexes for relations | ||
TimToady | 1..100:by($x) is fine | 21:47 | |
dduncan | or should I say, multi-attribute keys | ||
ingy | autark: hola :P | ||
dduncan | or both | ||
TimToady | we don't have to decide whether .min and .max swap ends until construction time | ||
when we see whether $x is negative | |||
[particle] | 0..1:by(rand) | ||
TimToady | well, you'll wait a long time if rand returns 0 :) | 21:48 | |
dduncan | but no rush ... I'll still be making the Perl 5 version in the next few weeks, before a Perl 6 version ... in fact, I'll probably wait for 6.28.0 before starting the latter | ||
[particle] | precisely | ||
TimToady | but 0..1:by(0) is no worse than 0 xx * | 21:49 | |
putter | brain pudding & | ||
21:54
miyagawa joined
|
|||
TimToady | bbl & | 21:57 | |
audreyt | bbl & | 22:04 | |
22:05
awwaiid joined
|
|||
svnbot6 | r15386 | audreyt++ | * MO.Run: Metaclasses now stringify with a leading "^". | 22:05 | |
22:17
polettix joined
22:26
Psyche^ joined
22:38
Psyche^ is now known as Patterner
22:41
buetow joined
22:46
buetow joined
22:59
wilx` joined
23:30
mako132_ joined
23:34
gnuvince_ joined
23:58
Khisanth joined
23:59
Ziggy6 joined
|