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 Set by lumi on 8 November 2006. |
|||
00:01
jlo7719 joined
|
|||
nothingmuch | ingy: i'm home | 00:07 | |
00:21
justatheory joined
00:40
diakopter joined
00:45
mako132 joined
00:56
wilx joined
00:58
lyokato joined
01:07
Aankhen`` joined
|
|||
avar | bobobobo | 01:11 | |
01:22
dmq joined
01:28
mako132 joined
01:33
merlyn joined
|
|||
merlyn | is svn.perl.org/perl6 | 01:34 | |
dead now? | |||
lambdabot | Title: Revision 13473: / | ||
merlyn | is there a better place to fetch things? | ||
last change was nov 7 | 01:35 | ||
can't imagine nothing's happened on perl6 since then. :) | |||
01:35
Aankh|Clone joined
|
|||
diakopter | check the topic of this room :-D | 01:35 | |
merlyn | that's just the pugs subdirectory though, right? | ||
what about the docs? | |||
diakopter | spec.pugscode.org/ | 01:36 | |
lambdabot | Title: Official Perl 6 Documentation | ||
merlyn | Oh - it's all separate now? | ||
ugh | |||
I gotta refetch all those versions. :( | 01:37 | ||
diakopter | those are the smart-linked editions. | ||
merlyn | "smart-linked?" | ||
diakopter | tests inlined | ||
merlyn | sorry - I don't understand svn very well | ||
"those" | |||
diakopter | the html synopses | 01:38 | |
and apocalypses | |||
merlyn | Oh - that's not what I want | ||
I want the pod SVN | |||
that's currently on svn.perl.org/perl6 | |||
but hasn't been updated since tuesday. | 01:39 | ||
01:39
EvilRanter joined
|
|||
diakopter | I think someone syncs them every so often. sorry I can't help more. | 01:40 | |
02:00
bsb joined
|
|||
obra | merlyn: svn.perl.org/perl6/doc | 02:19 | |
lambdabot | Title: Revision 13473: /doc | ||
obra tries to remember if he's actually seen spec checkin in 48 hours | 02:20 | ||
merlyn | right, but that's apparently not being updated now | 02:21 | |
or at least, /perl6/ isn't | |||
02:23
justatheory joined
|
|||
obra | svn log --limit 5 -v svn.perl.org/perl6/doc/trunk/design/syn/ says 11/7, yeah | 02:24 | |
lambdabot | Title: Revision 13473: /doc/trunk/design/syn, tinyurl.com/ykywj7 | ||
obra | from audrey by way of schwern: "hi can you tell jesse and or @perl6 net backbown is broken here with no eta on fix? thx" | 02:25 | |
merlyn: do you actually know there to be spec updates in the last 48 hours? | 02:27 | ||
merlyn | no, but there's no code check ins eitehr | 02:29 | |
and that's rare for two days | |||
clkao | maybe it's not mirroring the new pugs reposiutory | ||
02:29
SCalimlim joined
02:30
fayland joined
|
|||
merlyn | well, that's what I was wondering | 02:31 | |
GeJ | according to www.nntp.perl.org/group/perl.perl6.language, the last commit was indeed on 11/7 | ||
lambdabot | Title: nntp.perl.org - perl.perl6.language, tinyurl.com/yhf942 | ||
merlyn | since that's where I get my docs + pugs from | ||
it's ok that there's no docs update then | |||
but I miss the pugs update | |||
jrockway | is there a repo snapshot somewhere? | 02:32 | |
i need to setup a local svk mirror for the hackathon | |||
GeJ | merlyn: latest pugs code should be at svn.pugscode.org/pugs/ | 02:33 | |
lambdabot | Title: Revision 14694: / | ||
GeJ | in case you were plugged on openfoundry before, you might need to relocate | ||
obra | merlyn: oh. the pugs _source_ moved | ||
merlyn | well, is it going to start showing up there again? | ||
obra | yes | ||
but audrey's off net due to an outage | 02:34 | ||
merlyn | ok, because I'd hate to have to resync 40K commits again. :) | ||
obra | you're using svk? | ||
and are you mirroring from perl.org ore openfoundry? | |||
merlyn | perl.org | 02:35 | |
obra | ok. perl.org is a lagged read-only mirror | ||
merlyn | git-svn actually | ||
GeJ | merly: audreyt posted an announcement: www.nntp.perl.org/group/perl.perl6.announce/537 | ||
lambdabot | Title: nntp.perl.org - perl.perl6.announce (537), tinyurl.com/y3e2df | ||
obra | I'd bet it will be back to normal after a week | ||
er. in a week | |||
merlyn | yes, I saw that announcement, but didn't completely undersatnd how it affects me | ||
obra | merlyn: only that there will be a lag in the commits being replayed to perl.org | ||
but after this, things should get more reliable than ever before | 02:36 | ||
merlyn | as long as they show up in a day or two, I guyess | ||
I'm using git-svn, like svk but saner | |||
obra | if you actully need current pugs, you should be going from the primary svn, not the perl.org mirror | ||
but I need to vanish. | 02:37 | ||
merlyn | yeah, no hurry.. just keeping up with the conversations | ||
02:43
mako132 joined
02:45
chip__ joined
02:46
PerlJam joined,
wolv joined,
revdiabl1 joined
02:48
leo_ joined
02:49
webmind_ joined
02:50
wolv is now known as wolverian
02:57
EvilRanter left
03:02
diakopter left
03:09
mjk joined
03:15
kisu joined
03:18
thepler joined
03:19
buubot joined
03:24
LCamel joined,
buubot joined
03:42
scsibug_ is now known as scsibug
03:53
duend joined
03:55
revdiabl1 is now known as revdiablo
03:57
buubot joined
04:05
SubStack joined
04:13
nine_nine_z joined
04:50
ashleyb joined
04:51
ashleyb joined
05:06
nine_nine_z left
05:11
eggzeck joined
05:36
baest_ joined
05:37
awwaiid joined
06:15
BooK_ joined
06:24
drbean joined
06:30
duend is now known as duend`sleeping
07:04
bsb left
07:31
wolverian joined
07:36
DHGE joined
08:08
buubot joined
08:13
iblechbot joined
08:14
buubot joined
08:15
drrho joined
08:36
buetow joined
08:38
nekokak joined
08:51
marmic joined
09:09
lisppaste3 joined
09:31
dakkar joined
|
|||
smash_ good morning | 09:57 | ||
avar | morn | 10:01 | |
10:11
chris2 joined
10:13
foo\ joined
10:16
dduncan left
|
|||
svnbot6 | r14695 | fglock++ | MP6 - implemented several infix ops | 10:22 | |
r14695 | fglock++ | - simple parameter binding in methods | |||
r14695 | fglock++ | - working Token->MP6->Perl5 chain | |||
r14695 | fglock++ | - started changing tests to TAP format | |||
10:27
gene9 joined
10:28
fglock joined
10:32
chris2_ joined
10:39
weinig is now known as weinig_,
weinig_ is now known as weinig
10:48
ruoso joined
10:49
nekokak joined
|
|||
avar killing spree | 10:53 | ||
11:01
kisu joined
|
|||
audreyt | TreyHarris: please replace svn.pugscode.org:9999 with commitbit.pugscode.org | 11:25 | |
in that link, and it should still work | |||
clkao | audreyt: hi! | ||
audreyt | hi. net finally back | ||
clkao | did you commit anything offline? | ||
audreyt | yes | 11:30 | |
11:35
xinming joined
11:41
chris2_ joined
11:42
chris2_ is now known as chris2
|
|||
nothingmuch | hola homies | 11:53 | |
audreyt | greetings nothing | 11:54 | |
12:05
TimToady joined
|
|||
nothingmuch | 'sup audreyt? | 12:07 | |
nothingmuch doesn't know a non-negative-sounding rap word for "girl" | |||
something that could be appended to "yo" or "sup" ;-) | 12:08 | ||
audreyt | "'sup lady?" would do | ||
nothingmuch | lady-t ;-) | ||
audreyt | lol :) | 12:09 | |
smash_ | sup babe ? :p | ||
nothingmuch | you now have a rapper name | ||
smash_: they use that? i only heard references to either the woman's [supposed] profession and/or relationship with the rapper | 12:10 | ||
or the fact that she is the baby-mama, and thus by transitive relationship the significant other of the rapper | |||
smash_ | hehe | ||
true | 12:11 | ||
sup brother ? | |||
dakkar | sista! | 12:12 | |
nothingmuch | you know what i'm sayin? | ||
audreyt | "windows sista" | 12:14 | |
dakkar | rotfl | 12:15 | |
12:16
pmichaud_ joined,
Psyche^ joined
|
|||
audreyt | invite.pugscode.org redirect is now up | 12:20 | |
it 302's to the invite page on commitbit.pugscode.org directly | |||
svnbot6 | r14696 | audreyt++ | * Pugs.Parser.Literal: Support for sigspace shorthands: | 12:23 | |
r14696 | audreyt++ | mm/.../; # m:sigspace/.../ | |||
r14696 | audreyt++ | ms/.../; # ditto | |||
r14696 | audreyt++ | ss/.../.../; # s:sigspace/.../.../ | |||
nothingmuch | when inviting comitters one should not have to choopse their nicknames for them =/ | ||
audreyt | that can be changed later though | 12:24 | |
nothingmuch | ah | ||
nothingmuch will use 'moose' then | |||
till a user will accidentally register as 'moose' | |||
then i will use moos2 | |||
moose2 | |||
in all seriousness, it should be allowed to be left blank | 12:25 | ||
nothingmuch ponders trying to fix it | |||
audreyt hands nothingmuch a commit bit to commitbit | 12:28 | ||
12:28
Psyche^ is now known as Patterner
|
|||
audreyt | oh wait, I don't have a metacommiter bit there :/ | 12:28 | |
nothingmuch | hehe | ||
nevermoose | |||
audreyt | obra: hand nothingmuch a commit bit to CommitBit? :) | ||
nothingmuch | i'll tell clkao/obra if i actually have anything to commit | ||
no need for them to fuss now | 12:29 | ||
if ($obj->id && $obj->person->id != $args{'person'}) { | 12:30 | ||
oh i see | 12:31 | ||
the id is from a table of emails | |||
sorry | |||
okay, it should be trivial | |||
if nickname is supplied then it'll load_by_cols( proiject => $args{project}, nickname => $args{nickname} ), but if not it'll load using $obj->person instead | 12:32 | ||
and leave the nick blank | |||
12:32
justatheory joined
|
|||
nothingmuch | the invitation letme will not need a valid nick, right? | 12:32 | |
that line is not necessary at all, if $args{'nickname'} is not supplied, because it's jst validation | 12:33 | ||
i think i'd better delegate this because i'm not 100% sure | |||
is #bps the righht place? | |||
avar | svn relocate failed;/ | 12:42 | |
stupid svn(1) | 12:45 | ||
recursive perl -pi ftw | |||
svnbot6 | r14697 | audreyt++ | * MO.Base: Remove the Arguments typeclass abstraction; all | 13:05 | |
r14697 | audreyt++ | Perl6-land calling convention will use exactly the same | |||
r14697 | audreyt++ | arguments structure, namely that of Capture. | |||
r14698 | audreyt++ | * MO.Run: Remove the ivCaller field; nothingmuch++ noted | 13:08 | ||
r14698 | audreyt++ | it's a terrible hack, and we already have caller info | |||
r14698 | audreyt++ | as part of the monad anyway. | |||
nothingmuch | audreyt: oh btw, i remembered what I wanted | 13:09 | |
svnbot6 | r14699 | audreyt++ | * MO.Util: Use the much faster Data.Map builtins (unionsWith, unions) | ||
r14699 | audreyt++ | instead of hand-written List.nub for merging and shadowing of | |||
r14699 | audreyt++ | Collection structures. This should make C3 etc Fast Enough (tm) | |||
r14699 | audreyt++ | for our needs. | |||
nothingmuch | i'm going to change the default construct_instance to take a KVP of params | ||
but not initializers | |||
$field => $value | |||
audreyt | sure | ||
nothingmuch | field object that is | ||
audreyt | but also note S12 also says it can ben given a layout | ||
directly | |||
nothingmuch | an already flattenned one? | ||
audreyt | Point.bless({x=>1, y => 2}) | 13:10 | |
must use Hash as layout | |||
not p6opaque | |||
nothingmuch | ah | ||
audreyt | Point.bless(x=>1, y =>2) | ||
nothingmuch | Layout (capital L) is about p6opaque | ||
audreyt | would alloc a p6opaque layout | ||
nothingmuch | and anything related | ||
audreyt | gotcha | ||
nothingmuch | if it isn't opaque we can still use the layout just to retain polymorphism | ||
but it's not the smae layout class, there's no point | |||
it's just the passthrough layout i have in MO right now | |||
oir what we have for hs records | 13:11 | ||
however, the point of the slot/layout/field abstraction is: | |||
a. supporting packed layouts without needing to introduce them to the accessor implementations | |||
b. supporting foreign object layouts "natively" | |||
under a unified API | |||
audreyt | yup | ||
the b. is mandated by spec | |||
svnbot6 | r14700 | audreyt++ | * MO.Compile.Class: Remove all mentioning of AttributeGrammar, | 13:12 | |
r14700 | audreyt++ | as 6.28.0 won't expose it to userland. | |||
r14700 | audreyt++ | * Also remove the distinction between class methods and instance | |||
r14700 | audreyt++ | methods; the only difference is public/private, not class/instance. | |||
nothingmuch | wrt the class/instance methods | ||
13:12
bpphillips joined
|
|||
nothingmuch | i'm thinking of having this sort of weird method generator | 13:12 | |
you ask it to generate a field of type MO::Compile::Method n amed instance_methods, for example | 13:13 | ||
you specify the merge strategy for this particular type of field | |||
svnbot6 | r14701 | audreyt++ | * MO.Compile.Role: Also remove class/instance method | ||
r14701 | audreyt++ | distinction for roles. Note this makes roles.hs tests | |||
r14701 | audreyt++ | report conflict earlier than before, because the | |||
r14701 | audreyt++ | "bless" call is now part of an already-conflicted | |||
r14701 | audreyt++ | interface. | |||
nothingmuch | for example attrs are not shadows, but methods are | ||
*shadowed | 13:14 | ||
then some data can specify the composition strategy for making responder interfaces out of these | |||
i'm not sure how to do this declartively | |||
13:15
weinig joined
|
|||
audreyt | I think it's a bit bduf as currently there are exactly two sorts of composable fields... | 13:15 | |
nothingmuch | nuh uh | 13:16 | |
attribute grammars bring 3 more | |||
audreyt | oh. well, ok. | ||
nothingmuch | either way it's stilll not necessary | ||
i'm just thinking, not doing at this point | |||
audreyt | as you don't expose any of the 5 to userland... | ||
nothingmuch | this is usually the overengineered stage | 13:17 | |
i don't? | |||
;-) | |||
audreyt | you don't | ||
i.e. you dont let user say | |||
nothingmuch | MO is supposed to be optimized for roll-your-own-meta-whatever | ||
audreyt | now instead of shadow, let's merge | ||
nothingmuch | merge? | ||
audreyt | report-on-conflict | 13:18 | |
nothingmuch | for roles? | ||
audreyt | user here means the consumer of MO | ||
not the roller | |||
nothingmuch | too many metaphors | ||
ah | |||
audreyt | the roller can easily just define another instance of e.g. Class | ||
nothingmuch | yes | ||
audreyt | and handle shadowing differently | ||
but user can't | |||
and shouldn't | |||
nothingmuch | specifically that's the bit i want to be easy ;-) | ||
audreyt | all_regular_methods c = shadow (from_c ++ [from_r]) | 13:19 | |
where from_c = map public_methods (class_precedence_list c) | |||
from_r = all_using_role_shadowing | |||
(merged_roles c) role_public_methods | |||
is easy enough for me :) | |||
xinming | audreyt: | ||
we can't open svn.perl.org/perl6/pugs/trunk/docs/...rview.html for now | |||
nothingmuch | *nod* | ||
xinming | I don't know if repository is down. | ||
nothingmuch | all of this refac is for Laterā¢ | ||
xinming | or, GFW blocks pugs | 13:20 | |
audreyt | xinming: please use svn.pugscode.org/pugs/docs/zh-cn/01Overview.html | ||
nothingmuch | my dream is to be able to "port" giant systems to perl 6 incrementally | ||
audreyt | I think it's down | ||
svnbot6 | r14702 | audreyt++ | * MO: Commit the three sanity tests from cmarcelo++ as part | ||
r14702 | audreyt++ | of tree for ease of debugging at this stage. | |||
nothingmuch | first by using foreign object interfacing | ||
then by doing a straight port and implementing/reusing a metaclass that matches the original language | |||
and then slowly, incrementally converting them one by one | |||
it's more of a proof of concept dream though | 13:21 | ||
understandably this can wait a long while =) | |||
lambdabot | Title: Pugs å¤å øä¹äø, tinyurl.com/yk7dng | ||
nothingmuch | i have to go for a while | ||
bbl | |||
audreyt | xinming: I've updated the pugscode.org site to point to new url | ||
xinming: next time you can fix that too by committing into docs/feather/pugscode.org/ tree | 13:22 | ||
svnbot6 | r14703 | audreyt++ | * pugscode.org: more reURLing | ||
audreyt | nothingmuch: I share that dream | ||
nothingmuch | ^_^ | 13:23 | |
ciao | |||
13:24
Whooosh joined
|
|||
fglock | audreyt: I think we need a "mp6.pl" script - to handle command-line switches, etc | 13:25 | |
audreyt | fglock: sure | 13:26 | |
13:30
GnuVince joined
13:31
kisu joined
|
|||
audreyt | (bbiab) | 13:35 | |
svnbot6 | r14704 | fglock++ | MP6 - added mp6.pl compiler | 13:37 | |
13:37
iblechbot joined
13:38
justatheory joined
13:43
eggzeck joined,
kisu joined
13:48
thepler joined
13:49
justatheory_ joined
13:59
electrogeek joined
14:08
rodi joined
|
|||
svnbot6 | r14705 | fglock++ | MP6 - fixed all tests | 14:16 | |
14:18
miyagawa_ joined
|
|||
fglock | the remaining syntax needed for bootstrapping is 'use', 'grammar', and 'has' | 14:21 | |
14:21
GabrielVieira joined
|
|||
fglock | lunch & | 14:22 | |
14:31
Limbic_Region joined
14:33
seano joined
14:55
renormalist joined
15:10
vel joined
15:13
weinig is now known as weinig|bbl
15:38
kisu joined,
cmarcelo joined
|
|||
cmarcelo | hello | 15:38 | |
15:39
araujo joined
|
|||
fglock | cmarcelo: oi | 15:40 | |
obra | nothingmuch: address for commit bit commit bit? | 15:41 | |
15:42
andara joined
|
|||
cmarcelo | fglock: how's mp6 going? | 15:42 | |
15:44
thepler joined
|
|||
fglock | cmarcelo: all current tests pass; now working on compiling itself | 15:44 | |
15:47
penk joined
15:50
hexmode joined
15:51
chris2_ joined
15:54
chris2_ is now known as chris2
15:56
[particle] joined
|
|||
obra | nothingmuch: your CB^2 is away | 16:00 | |
svnbot6 | r14706 | fglock++ | MP6 - mp6.pl reads from STDIN | 16:02 | |
16:02
kisu joined
16:06
plural_ joined
|
|||
svnbot6 | r14707 | fglock++ | MP6 - mp6.pl parses with Block grammar (multiple stmts, no curlies needed) | 16:11 | |
16:27
miyagawa_ joined
16:29
lambdabot joined,
eviltwin_b joined,
Eimi joined
16:30
penk joined,
araujo joined,
Patterner joined,
fglock joined,
baest_ joined,
ashleyb joined,
wilx joined,
nothingmuch joined,
ivas joined,
qmole joined,
Odin- joined,
monkey___ joined,
Lorn joined,
mr_ank joined,
beppu_ joined,
prism joined,
dvorak joined,
AzureBOT joined,
scsibug joined,
norageek joined,
ingy joined,
masak joined,
integral joined,
cookys joined,
andara joined,
cmarcelo joined,
TimToady joined,
xinming joined,
LCamel joined,
jlo7719 joined,
cmeyer joined,
Grrrr joined,
svnbot6 joined,
lumi joined,
kane-xs joined,
gantrixx joined,
GeJ joined,
spinclad joined,
theorbtwo joined,
perlbot joined,
knewt joined,
rgs joined,
sri joined,
miyagawa_ joined,
[particle] joined,
seano joined,
GnuVince joined,
dakkar joined,
marmic joined,
revdiablo joined,
SCalimlim joined,
merlyn joined,
dmq joined,
rlb3 joined,
ruz joined,
buu joined,
Juerd_ joined,
evalbot_r14675 joined,
Debolaz joined,
stevan joined,
orafu joined,
kane-xs_ joined,
cj joined
16:31
kisu joined,
hexmode joined,
weinig|bbl joined,
buubot joined,
DHGE joined,
wolverian joined,
Steve_p joined,
idiotmax joined,
ofer0 joined,
frankg joined,
rafl_ joined,
mugwump joined,
kcwu joined,
nnunley joined,
broquaint joined,
gaal joined,
gugod joined,
SamB joined,
Shabble joined,
Maddingue joined,
pnu joined,
kolibrie joined,
Cugel joined,
nipotan joined,
Ikarus joined,
nine joined,
jabbot joined,
clsung joined,
rafl joined,
Yappo joined,
jiing joined,
kalven joined,
tcliou joined,
hcchien joined,
audreyt joined,
spoop joined,
cognominal joined,
takanori_ joined,
takesako joined,
Kattana joined,
meppl joined,
tokuhirom joined
16:32
buubot joined,
mako132 joined
16:36
f0rth joined
|
|||
svnbot6 | r14708 | fglock++ | MP6 - implemented 'use'; class method calls | 16:59 | |
16:59
BooK_ is now known as BooK
17:04
justatheory joined
|
|||
cmarcelo | @tell audreyt in MO/roles.hs shadow example, shouldn't one foo just shadow the other foo? | 17:06 | |
lambdabot | Consider it noted. | ||
17:06
miyagawa_ joined,
weinig|bbl is now known as weinig
17:08
justatheory joined
|
|||
svnbot6 | r14709 | fglock++ | MP6 - implemented prefix $,%,@ ops | 17:14 | |
17:18
cmarcelo joined
|
|||
TimToady | fglock: seems to me that MP6 should make the Perl 5 language emitter selection explicit so that other language emitters know how to hook in. | 17:19 | |
svnbot6 | r14710 | fglock++ | MP6 - parses hyper-methods | ||
r14710 | fglock++ | - mp6.pl parses itself | |||
xinming | cool... | 17:20 | |
fglock | TimToady: yes, I mean to implement that | 17:21 | |
I don't know how to do it yet :) | |||
TimToady | would at least be good if the filenames/directorynames reflected p5 somehow... | 17:22 | |
fglock | sure | ||
TimToady | then it would probably become obvious where you pick a different file | ||
but don't let me slow you down! :) | 17:23 | ||
fglock | I hope someone will get mp6.pl and add command line switches to it - but right now @*ARGS doesn't work | 17:24 | |
nothingmuch | `/w 10 | 17:36 | |
17:43
buetow joined
|
|||
cj | clkao: ping? | 17:44 | |
clkao: miguel's got some questions for you over on #mono | |||
09:44 <@miguel> Well, the Perl6 people can count on our support, and help to | 17:45 | ||
get them to target the CLR | |||
svnbot6 | r14711 | fglock++ | MP6 - ' cat mp6.pl | perl -Ilib mp6.pl ' emits perl5 | 17:49 | |
fglock | this is not bootstrap yet, but it's closer | 17:50 | |
cmarcelo | fglock: pugs can run mp6.pl? I am still having problems with "cpan v6"... | 17:51 | |
fglock | cmarcelo: I don't know - just try it | ||
cmarcelo | I'm (re)compiling it now.. | 17:52 | |
[particle] | yeah, cpan v6 is failing for me today, too | ||
cmarcelo | [particle]: what fails exactly? | 17:53 | |
fglock | cmarcelo: it gives an error compiling the regex grammar | ||
17:57
justatheory joined
|
|||
cj | [particle]: can you paste the error to rafb.net/paste ? | 17:58 | |
18:00
ludan joined
|
|||
pasteling | "fglock" at 200.17.89.88 pasted "Perl5(ish) output of mp6.pl" (10 lines, 279B) at sial.org/pbot/21042 | 18:01 | |
fglock | there are several problems to fix | 18:02 | |
like: calling methods on array (this can be fixed by blessing an array ref, but it slows down the program) | |||
18:06
andara left
|
|||
cj | we're optimizing for fun anyway, from what I hear :) | 18:08 | |
anyone know where clkao is located? | |||
audreyt | fglock: calling methods on array can be fixed on emitter layer | 18:09 | |
lambdabot | audreyt: You have 2 new messages. '/msg lambdabot @messages' to read them. | ||
audreyt | cj: .uk | ||
lambdabot: @massages | |||
lambdabot | cmarcelo said 2d 46m 9s ago: re 6.4: hehe I was expecting that :).. it's a matter of reverting except for the 'NoResponse vs NoResponse m'-thing.. (did you saw it?) | ||
cmarcelo said 1h 3m 2s ago: in MO/roles.hs shadow example, shouldn't one foo just shadow the other foo? | |||
fglock | audreyt: does mp6.pl works for you? | 18:12 | |
pasteling | "cmarcelo" at 200.232.237.143 pasted "error while trying to run mp6.pl with pugs" (6 lines, 421B) at sial.org/pbot/21044 | ||
audreyt | cmarcelo: re shadowing, see r14712. | ||
svnbot6 | r14712 | audreyt++ | * roles.hs: Adapt tests. | ||
cmarcelo | fglock: the error you got was like mine? | 18:13 | |
audreyt | cmarcelo: re 6.4 compat - does the current tree work with 6.4? | ||
cj | thanks, audreyt | ||
fglock | cmarcelo: yes | ||
cmarcelo | audreyt: I patched MO/ to work with 6.4, pugs I didn't tested, should I? | 18:14 | |
fglock | brb | 18:15 | |
Lorn | audreyt: [OT] hi, audrey, PAR is compatible with mod_perl? [/OT] | ||
audreyt | Lorn: yes. see also Apache::PAR | ||
cmarcelo: I mean ghci -isrc src/MO/roles.hs | |||
with a 6.4 ghci | 18:16 | ||
Lorn | audreyt: ok, thanks | ||
audreyt | 6.4.1 that is | ||
Lorn | ;win 1 | 18:18 | |
cmarcelo | audreyt: (looking at roles.hs).. and since you're commiter on Syns: S12.pod line 608 missing a "," in arguments for constructor? S12 line 470 begins "C<has $.foo>", shouldn't it be "C<has &.foo>"? | 18:19 | |
audreyt: for 6.4.2 (not .1) it's just a matter of -fallow-overlapping-instances in the test files.. | 18:21 | ||
audreyt | clkao: pipelining branch drops versions. | ||
clkao: I pull'ed but didn't get revs between 14703 and 14712 | 18:22 | ||
cmarcelo: ok. please commit that... | |||
TimToady | cmarcelo: :foo() :bar() is legal syntax, in fact. | 18:25 | |
svnbot6 | r14713 | cmarcelo++ | * src/MO: fixes tests to work with GHC 6.4.2. | ||
TimToady | we have to allow stacked adverbs in adverbial position, so it's just consistently the same in argument position. | 18:26 | |
arguably not Best Practice though. | 18:27 | ||
fglock | what's the command to initialize svk without downloading the whole rev story? | ||
cmarcelo | TimToady: are you talking about "... .= new(:tail<LONG> :legs<SHORT>)"..? is :foo<> same as :foo() ? | 18:29 | |
TimToady | yes, any colon pair notations can stack without intervening comma | 18:30 | |
is how it's currently specced. | |||
or at least apo'd | |||
audreyt | fglock: you didn't backup your old ~/.svk/ ? | ||
svnbot6 | r14714 | audreyt++ | * MiniPerl6::Grammar::Regex - Syntax and UTF8 fixes to make ./pugs work with it. | ||
audreyt | fglock: oy. you can use "svk co svn.pugscode.org/pugs/" and when it asks whethe to mirror a]ll or h]ead, answer "h". | 18:31 | |
lambdabot | Title: Revision 14714: / | ||
audreyt | TimToady: remember very long ago we discussed with chips about heterogenous arrays and homogenous arrays? | 18:34 | |
one that would allow @a[0] := SomeScalar.new; | |||
while one wouldn't allow that | |||
TimToady | no, but I have a lousy memory. | 18:35 | |
fglock | audreyt: " REPORT request failed on 'pugs/!svn/bc/14714' " | ||
audreyt | fglock: hm | ||
TimToady | that's what I was getting from openfoundry earlier. I can get at pugscode. | 18:36 | |
audreyt | fglock: a sec | ||
18:36
Limbic_Region joined
|
|||
TimToady | just updated r14714 here | 18:36 | |
audreyt | TimToady: openfoundry team is still working on an apparently borken repo | 18:37 | |
TimToady | just suggesting fglock is somehow aiming at wrong repo | ||
audreyt | possibly, though it's also possible that "h" is broken with svk-head fglock is using | ||
since ir says 14714 in thte !svn/bc/ | |||
and openfoundry wouldn't have that revnum | |||
but in any case... | 18:38 | ||
TimToady | nod | ||
audreyt | TimToady: the issue here is whether the default Array is a container of Scalar objects, or just a container of objects. | ||
svnbot6 | r14715 | fglock++ | MP6 - added 'has' | ||
audreyt | TimToady: currently Pugs has Array as double-indirected, but Hash as without intermediate Scalar | 18:39 | |
which means @x[0]:=... can be made to work but not %x<a>:=... | |||
that of course is not consistent; I was just wondering to which way should we be consistent with :) | |||
TimToady | a P5 programmer is going to expect Scalar by default, I suspect | ||
audreyt | since you can tie $h<a> individually | 18:40 | |
and SvMG is still per-HvELEM | |||
TimToady | for declared arrays/hashes it's not much of a problem, wonder if [...] and {...} could be pragmatically controlled | ||
audreyt | and the (...)-promoted-to[...] | ||
TimToady | I think Least Surprise asks for the slow default, but then we make it easy to get the other behavior somehow. | 18:41 | |
audreyt | ok. will do that now | ||
TimToady | with declarations it's as simple as declaring "of" type | ||
audreyt | the new MO means := etc is made very easy, and we are not constrained by the enumerated number of references | 18:42 | |
TimToady | so maybe Int[...] etc | ||
except that's taken | |||
audreyt | however that also means FETCH, STORE etc need special arrangement | ||
TimToady | already have Seq(...) | ||
audreyt | maybe we just don't call them FETCH and STORE | ||
and simply call them ITEM and infix:<=> | |||
which means ~0 redispatch cost | |||
TimToady | as long as people realize infix:<=> is "deeply" | 18:43 | |
I suppose the proxy type that delegates is a different type anyway | 18:44 | ||
audreyt | right, and FETCH/STORE are merely attrs | 18:45 | |
not meths | |||
or maybe its BUILD says | |||
BUILD (:FETCH(&.ITEM) ) { ... } | |||
etc. | |||
TimToady | well, I don't really care what we call things as long as we don't confuse things that shouldn't be confused. | 18:46 | |
I do worry that something like infix:<=> will naturally be taken as a shallow meaning rather than deep | 18:47 | ||
but if it's a different type, maybe it works. | 18:48 | ||
I also wonder how this interacts with TEMP stuff | 18:49 | ||
also been wondering about the relationship of "let" and STM... | 18:50 | ||
audreyt | another unrelate question... | ||
%A{$B} := $C | |||
evaluation order is $C => %A => $B | |||
correct? | |||
i.e. binding is like assignment in that the invocant is evaluated _after_ the argument | 18:51 | ||
unlike in normal methods where invocant evaluates _before_ | |||
TimToady | don't know about "correct", but certainly reasonable | ||
$C.bind_to(%A{$B}) :) | 18:52 | ||
audreyt | well, sure :) but even if it's multi redispatch | ||
currently we don't have a way to control evaluation order other than the nuke-ish "is lazy" | |||
but I guess := and = is their own AST nodes for a very good reason | 18:53 | ||
and this might as well be the reaon... | |||
TimToady | all I know is that languages that try to treat = like other operators tend to come to grief. | 18:54 | |
audreyt | and := is more like = than anything else | ||
TimToady | well, they're both mutators | ||
audreyt | := is one less indirection, and a lot more sugar :) | 18:55 | |
TimToady | hmm, I'd say = has a lot of semantic sugar | ||
audreyt | true | 18:56 | |
:= is mostly syntactic | |||
ok, := for [] and {} implemented | |||
thanks for the walk through :) | 18:57 | ||
fglock: grab this: perlcabal.org/~audreyt/tmp/pugs.repo.tar.bz2 | |||
lambdabot | tinyurl.com/ylxe75 | ||
audreyt | fglock: then do this: | ||
cd ~/.svk | |||
tar jxf pugs.repo.tar.bz2 | |||
TimToady | 'course, it's possibly I just told you to make Perl run as slow as Ruby. :) | ||
fglock | audreyt: thanks! | ||
audreyt | uuidgen > pugs/db/uuid | 18:58 | |
TimToady: yes, but at least we have annotations | |||
and this is a good way to tell people to learn to use them :) | |||
TimToady | people will do the durndest things if they think it'll help performance. | ||
audreyt | fglock: then "svk depot" | ||
add a mapping of | |||
pugs: /Users/audreyt/.svk/pugs | |||
er, not audreyt. | |||
that's all | |||
then you can | |||
svk co /pugs/trunk pugs | |||
and enjoy | 18:59 | ||
TimToady: so this is as expected... | |||
@x; @x[0] := 1; # autovivify | |||
lambdabot | Maybe you meant: . bf ft id pl v wn | ||
audreyt | @x[1] = 2; # also autovivify (twice!) | ||
lambdabot | Unknown command, try @list | ||
audreyt | then... @x[0]=42 # dies | ||
but @x[1]=42 is just fine. | 19:00 | ||
er, maybe autovivify is 0 and 1 times respectively; I mean autoallocation of element. | |||
TimToady | seems reasonable. | 19:01 | |
audreyt | and @x[0]++ fails, etcetc. | ||
k. committing | |||
TimToady | can you then do @x[0] := Scalar() to get back the other semantics? | 19:02 | |
svnbot6 | r14716 | audreyt++ | * Pugs.Eval: Binding for array and hash elements. | ||
audreyt | yes | ||
xinming | fglock: If you wish the whole repository, | ||
fglock: please check perlcabal.org/~xinming/ | |||
audreyt | basically := is really = in OtherLanguages | ||
and = is a fetch plus a store call. | 19:03 | ||
TimToady | copy semantics | ||
audreyt | *nod* | ||
TimToady | at least one level | ||
audreyt | xinming: I just did the same thing for fglock :) | ||
xinming | fglock: It has whole log, and Just updated yesterday IIRC. | ||
audreyt: .... | |||
audreyt | xinming: check backlog... :) | 19:04 | |
fglock | xinming: how big is it? my download speed is currently 5K/s | ||
xinming | It seems, most people still don't know why I did that. >_< | ||
audreyt | fglock: the file I gave you above is 45643418 | ||
xinming | fglock: well, then, Don't consider downloading it. | ||
fglock | audreyt: yes - ETA 2h | ||
TimToady | how's MO hookup coming along? | ||
audreyt | TimToady: very well. I'm wondering about how stepwise it shoul be | 19:05 | |
xinming | mine is 21112807 | ||
fglock | I'm working locally, then rsync to feather, then commit | ||
audreyt | currently leaning on just make newval use MO first | ||
xinming | I bzip2-ed it. | ||
audreyt | i.e. vv(1).HOW.methods etc would work | ||
but not 1.HOW.methods | |||
and once it's shown to work | |||
then switch the entire Val chain to that | 19:06 | ||
this means we dont't have to support two cllconvs | |||
and can just support Capture | |||
instead of the old single-Feed one | |||
TimToady | audreyt: either approach can work. whether I take an all-the-marbles approach depends on how much I think I understand all the ramifications. | ||
audreyt | TimToady: I understand none of the ramifications :) you see, I'm just this coding monkey integrating other people's work... | 19:07 | |
so yeah, I think having a vv() step is sane. | |||
TimToady | in that case, the rest of us have a negative amount of understanding... :P | ||
audreyt | I'm sure nothingmuch has a pretty complex amount of understanding | ||
plenty of real parts and imaginary parts... | |||
TimToady | yeah, but your understanding is some surreal value of 0. | 19:08 | |
audreyt | so the steps is: native objects via vv(0) and vv("foo") first | ||
once that works, user-defined objects gets converted to newland | |||
finally, oldland native objects such as VThread, VProcess, VSocket, VHash etc gets replaced by newland counterparts | 19:09 | ||
(there were an enumerated value of such objects; but in newland those are unbounded) | |||
clkao | audreyt: (!) | ||
TimToady | well, I'll do a baseline smoke now, I guess. | ||
audreyt | sure | ||
but vv() shouldn't touch any of the tests. | 19:10 | ||
(and now it builds on 6.4.1 we don't even need to force 6.6.) | |||
clkao | audreyt: so it commits new stuff and leaving holes? | ||
audreyt | cmarcelo++ # did all the work | ||
clkao: aye. it doesn't syncback | |||
clkao | syncback? | ||
audreyt | say I last synced r10 | ||
then fglock committed r11..r15 | |||
I commit, that's r16 | |||
my history reads: remote r10, remote r16 | 19:11 | ||
and there's nothiing read back from 11..15 | |||
normally it'd sync the delta. | |||
this is trunk svk-pipeline branch, as of yesterday | |||
clkao | oh darn | ||
audreyt | I've svk mi --recover'ed using old svk | ||
and then switched back to svk-trunk. too many moving parts. | |||
clkao | this is the bug i saw this morning but i wasn't able to reproduce | ||
audreyt | :( | 19:12 | |
clkao | is it in very short period of time? | 19:14 | |
audreyt: you want to back to r2129 on trunk | |||
audreyt: sorry about that. i am trying to reproduce and fix | 19:18 | ||
svnbot6 | r14717 | audreyt++ | * AST.pm: Reorder MiniPerl6 nodes a bit. | 19:20 | |
19:20
rodi joined
19:22
mako132 joined
|
|||
fglock | audreyt: I've added some random nodes - please see if they make sense | 19:23 | |
clkao: I've recovered my old repo, now it says "PROPFIND request failed on 'pugs': Could not open the requested filesystem" | 19:24 | ||
audreyt | clkao: trunk still drops revs | ||
fglock: just "has"? | 19:25 | ||
fglock: oh wait, no. what nodes did you add? | |||
fglock | audreyt: Op::Infix, Op::Prefix, ... | 19:26 | |
'Use' | |||
clkao | audreyt: yes pipeline landed trunk a few hours ago. | ||
you are on trunk trunk or 2129 ? | |||
audreyt | fglock: oh. I thought they are just calls | ||
clkao: trunk trunk | |||
fglock: I thought they were just Apply | |||
on &infix:<+> and friends | 19:27 | ||
clkao | go down to 2129 | ||
audreyt | fglock: that's the p6 way of doing things | ||
clkao: *sigh* I went down to 2081 | |||
2082 | |||
fglock | ok, I can change that | ||
clkao | still broken? | ||
audreyt | no, that's fine now | ||
fglock: because then you can define $Code_prefix_mangled_somehow_plus in p5 runtime | 19:28 | ||
clkao | ok. it's not very obvious to me how this coud happen :/ | ||
particuarly it can sync the latest one | |||
audreyt | which is more flexible than relying on the builtin +, I think. | ||
TimToady | yeah, just keep bearing in mind the poor folks who have to port this to assembly languages like C and PIR. :) | 19:29 | |
fglock | is 'use' just a subroutine call too? | 19:30 | |
TimToady | might have to relocate call to beginning of main() depending on what it does. at least in MP6 it can't change the grammar... | 19:31 | |
fglock | is this a password error of mine? -- Permission denied: PROPFIND request failed on '/pugs' ... | 19:35 | |
audreyt | fglock: no... what operation did you do? | 19:37 | |
fglock | svk pull - using my backup /.svk and /pugs | 19:39 | |
clkao | can't reproduce :/ | ||
audreyt | fglock: that was before the repo change | ||
fglock: you need to do | |||
svk mi --relocate /pugs/trunk svn.pugscode.org/pugs | |||
lambdabot | Title: Revision 14717: / | 19:40 | |
audreyt | and then pull again | ||
clkao | audreyt: were things changed in the same dir ? | ||
audreyt | clkao: no | ||
completely unrelated | |||
my commit were to src/MO and fglock's was to v/ | |||
clkao | right | 19:41 | |
but you didn't only checkout src | |||
it's a full pugs tree checkout | |||
audreyt | aye | ||
but my ci was done in src/ | |||
may or may not be related | |||
clkao | *nod* | ||
audreyt | it's like, cd src; svk ci MO | ||
clkao | *nod* | ||
it's similar to my case this morning. | |||
i will try more tests | 19:42 | ||
audreyt | ok | ||
also why did you disable my perfectly functional mi --recover? | |||
I think it's still useful, as proven just now :) | |||
clkao | really? | ||
it needs to be ported. and be backend specific | |||
audreyt | yeah I recovered /pugs/trunk | ||
and it worked just fine | 19:43 | ||
clkao | oh, it's cping from the last correct one and move on ? | ||
audreyt | yup | ||
fglock | audreyt: it works now :) | 19:44 | |
audreyt | woot | 19:45 | |
cmarcelo | fglock, audreyt: mp6.pl (via pugs) error when I feed with trivial "v6-alpha" code: *** No compatible subroutine found: "&exp_stmts" ... | ||
audreyt | clkao: yes I did notice that too.. | 19:48 | |
svnbot6 | r14718 | fglock++ | r15564@tvd7 (orig r14671): svm | 2006-11-10 17:43:08 -0200 | ||
r14718 | fglock++ | SVM: initializing mirror for /trunk | |||
r14718 | fglock++ | r15565@tvd7 (orig r14672): audreyt | 2006-11-07 19:38:42 -0200 | |||
r14718 | fglock++ | * Pugs::Doc::Hack - Change svn.openfoundry.org to svn.pugscode.org. | |||
r14718 | fglock++ | r15566@tvd7 (orig r14673): audreyt | 2006-11-07 20:42:03 -0200 | |||
r14718 | fglock++ | * Massive revisionism: Change all files in docs/ to mention svn.pugscode.org | |||
19:48
rodi joined
|
|||
fglock | oops - what's that? | 19:49 | |
audreyt | fixing | ||
19:50
weinig is now known as weinig|bbl
19:51
svnbot6 joined
|
|||
clkao | audreyt: i coudl reproduce with a script now | 19:55 | |
svnbot6 | r14719 | audreyt++ | * Pugs.Parser: Allow this syntax: | ||
r14719 | audreyt++ | grammar G { | |||
r14719 | audreyt++ | token t { ... } | |||
r14719 | audreyt++ | } | |||
r14719 | audreyt++ | G.t('string'); # same as 'string' ~~ /<G::t>/ | |||
audreyt | clkao: great | ||
TimToady | audreyt: I'm not sure those should be the same. | 19:57 | |
we've said that tokens called directly automatically anchor fore and aft. | |||
19:57
cjeris joined
|
|||
audreyt | but that's 'string' ~~ token{...} | 19:57 | |
do you count G.t() also? | |||
probably yes | 19:58 | ||
it's not a "subrule" | |||
fixing | |||
TimToady | looks pretty bare to me. | ||
fglock | how about G.t('string', pos => $p); | 19:59 | |
that's how v6.pm calls it as a subrule | |||
audreyt | and so it's the presense of pos=> | ||
that determines autoanchoring? | 20:00 | ||
I like that... | |||
TimToady | :p anchors front and not back | ||
so it should work | |||
clkao | audreyt: found the bug. fixing | ||
TimToady | and syn already on record that subrules are :p semantics, I think. | ||
that is :p autoanchors to current pos, not ^ of course. | 20:01 | ||
20:01
jferrero joined
|
|||
audreyt | clkao: woot | 20:02 | |
fglock | home & | 20:03 | |
svnbot6 | r14720 | fglock++ | r15612@tvd7 (orig r14719): audreyt | 2006-11-10 17:54:30 -0200 | ||
r14720 | fglock++ | * Pugs.Parser: Allow this syntax: | |||
r14720 | fglock++ | grammar G { | |||
r14720 | fglock++ | token t { ... } | |||
r14720 | fglock++ | } | |||
r14720 | fglock++ | G.t('string'); # same as 'string' ~~ /<G::t>/ | |||
fglock | should I avoid using svk pull? | ||
20:05
fglock left
|
|||
clkao | audreyt: r2133 | 20:07 | |
audreyt | clkao: the svkpull bug of autocommitback is still there | 20:08 | |
so I'm using svk up -s | 20:09 | ||
as does fglock | |||
clkao | what pull bug? | ||
you mean for a branch or ? | |||
audreyt | when I pull from pugs | ||
it always want to commit back exactly the things it pulled | |||
clkao | oh! | ||
audreyt | and always fails | ||
clkao | want to quickly write a test ? i am taking a break after firefighting | 20:10 | |
audreyt | clkao: is head still svn://svn.clkao.org/svk ? | ||
clkao: I tried several tims | |||
can't seem to repeat it | |||
clkao | code.bestpractical.com/svk | ||
audreyt | from scratch | ||
20:11
TimToady joined
|
|||
clkao | which reminds me i need to setup mirror | 20:11 | |
audreyt: you aren't reading the mailing list are you ;) | |||
audreyt | I am, but very sporadically | 20:15 | |
clkao: REPORT keeps failing on code.bps.com/svk | 20:22 | ||
20:24
Guest61639 joined
|
|||
audreyt | clkao: nvm, dumb transparentproxy here | 20:27 | |
clkao: I'd like a https:// :) | 20:28 | ||
</ponie> | |||
20:29
webmind_ is now known as webmind,
Guest61639 left
20:37
on joined
|
|||
on | Hi, I want to use junctions to build binomial trees for european option pricing. ie starting with a 1$ price my future guess is 1$ * ( up | down ) etc ... Once I gather all the possible prices after N steps I compute the payoff then I have to come back through the tree and compute the expectation (p1+p2)/2*interest back to the root. My problem is how to compute p1+p2 when all I have is the junction (p1|p2) ? Anyone to help? | 20:42 | |
20:43
on is now known as the_dormant
|
|||
nothingmuch | ?eval (1|2).list | 20:43 | |
20:43
evalbot_r14675 is now known as evalbot_r14720
|
|||
evalbot_r14720 | ((1 | 2),) | 20:43 | |
nothingmuch | ?eval (1|2).all | ||
evalbot_r14720 | ((1 | 2)) | ||
nothingmuch | ?eval (1|2).values | ||
evalbot_r14720 | (1, 2) | ||
nothingmuch | there we go | 20:44 | |
the_dormant | nothingmuch: great | ||
thx a lot | |||
nothingmuch | ?eval my $x = 1 * ( .9 | 1.1 ); [+] $x.values | ||
evalbot_r14720 | 2/1 | ||
the_dormant | wow that's wonderful | ||
nothingmuch | the_dormant: meet circumfix parenthesis, a.k.a. meta-reduce | 20:45 | |
brackets, not parens | |||
20:49
pva-UF joined
|
|||
the_dormant | nothingmuch: any trick to quickly flatten embedded junctions? ((1|2)|(2|3)) ? | 20:49 | |
nothingmuch | hmm | ||
?eval ** ((1|2)|(2|3)) | |||
evalbot_r14720 | Error: ā¤Unexpected "**"ā¤expecting program | ||
nothingmuch | ?eval * ((1|2)|(2|3)) | ||
evalbot_r14720 | Error: ā¤Unexpected "(("ā¤expecting operator | ||
nothingmuch | what is steamrolling nowadays? | ||
the_dormant | :) | 20:50 | |
TimToady | eager() | ||
nothingmuch | ah | ||
?eval eager((1|2)|(2|3)) | |||
evalbot_r14720 | ((1 | 2 | 3),) | ||
nothingmuch | even with implicit uniq ;-) | 20:51 | |
20:51
buubot joined
|
|||
merlyn | the dormant - I think you're confusing a Bag and a Set | 20:51 | |
and that'll bite you later | |||
the_dormant | again! wow | ||
merlyn | 3.5 | 3.5 is just 3.5 | ||
the_dormant | merlyn: how's that? | ||
merlyn | so [+] $x.values will be 3.5, not 7 | 20:52 | |
nothingmuch | they carry a boolean meaning, these junctions | ||
merlyn | that might affect your results | ||
nothingmuch | they are not collections, but they represent simultaneous branches in logic | ||
sort of | |||
TimToady | they're primarily a linguistic construct, not a mathematical one. | ||
20:53
[particle] left
|
|||
TimToady | better to use real Sets and Bags if that's what you want. | 20:53 | |
lunch & | |||
the_dormant | got it, thx anyway. | 20:55 | |
21:10
bpphillips left
|
|||
nothingmuch | the_dormant: i think we should have a Set that works that way | 21:15 | |
not 100% sure though | |||
21:16
Aankhen`` joined
21:19
Eimi joined,
beuster is now known as beu
21:20
boo___ joined
|
|||
the_dormant | nothingmuch: how could I get up.exp(4) .. up.exp(-4) from up and (-4..4) using hyperoperators ? | 21:21 | |
nothingmuch | map? | 21:22 | |
there's hyper method call, but that's one call, many objects | |||
not one object many calls | |||
@objectsĀ».foo() | |||
lambdabot | Unknown command, try @list | ||
nothingmuch | @botsnack | ||
lambdabot | :) | ||
the_dormant | ok, maybe I should read the synopses again (btw I'm a complete newbie to perl6 but I just love it) | 21:23 | |
21:27
apple-gunkies joined
21:30
anatolyv joined
|
|||
the_dormant | ?eval map {1.1.exp($x)} (-4 .. 4) | 21:30 | |
evalbot_r14720 | Error: ā¤Unexpected "(-"ā¤expecting ",", ":" or operator | ||
the_dormant | oops | 21:31 | |
?eval map {1.1.exp($x)}, (-4 .. 4) | |||
evalbot_r14720 | (1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0) | ||
21:31
Eimi joined
|
|||
the_dormant | okay, I don't understand this result | 21:31 | |
?eval 1.1.exp(-4) | 21:32 | ||
evalbot_r14720 | 0.6830134553650705 | ||
TimToady | ?eval map {1.1.exp($^x)}, -4 .. 4 | ||
evalbot_r14720 | (0.6830134553650705, 0.7513148009015775, 0.8264462809917354, 0.9090909090909091, 1.0, 1.1, 1.2100000000000002, 1.3310000000000004, 1.4641000000000004) | ||
nothingmuch | ?eval map -> $x { 1.1.exp($x) }, -1 .. 4 | ||
evalbot_r14720 | (0.9090909090909091, 1.0, 1.1, 1.2100000000000002, 1.3310000000000004, 1.4641000000000004) | ||
nothingmuch | read in S06 | 21:33 | |
TimToady | ?eval map {1.1.exp($_)}, -4 .. 4 | ||
evalbot_r14720 | (0.6830134553650705, 0.7513148009015775, 0.8264462809917354, 0.9090909090909091, 1.0, 1.1, 1.2100000000000002, 1.3310000000000004, 1.4641000000000004) | ||
nothingmuch | -> $x is pointy subs | ||
$^x is implicit param vars | |||
and $_ is the good ol' "it" or "default", of course | |||
ah, place holder vars, they're called | 21:34 | ||
anatolyv | i have another tedious question i couldn't find an answer in S02 to. When referencing a variable in the form $foo, what's the rule on the permissible characters in 'foo'? | 21:35 | |
the_dormant | oh, won't forget that | ||
nothingmuch | anatolyv: you're taking notes about the ambiguities, right? ;-) | ||
anatolyv | that is, what precents the parser from parsing $foo+2 as reference to variable '$foo+2', for instance. | ||
nothingmuch | S02 would thank you | ||
anatolyv | nothingmuch: i'm preparing patch suggestions for everything TT and audrey explain to me here :) | 21:36 | |
21:36
Eimi joined
|
|||
nothingmuch | anatolyv++ | 21:36 | |
IIRC identifiers are \w+ | |||
unicode, of course | |||
$ש××× | |||
see also tests in t/syntax/*blah | 21:37 | ||
as for the spec | |||
i think that if this is not in S02 somewhere it's implied by perlsyn (perl 5) | |||
TimToady | "same as P5" | ||
anatolyv | nothingmuch: but consider that i can declare an infix op named 'bar' | ||
nothingmuch | longest token rule, mandatory whitespace | ||
anatolyv | nothingmuch: and might then want $foobar3 to parse as &infix<bar>($foo,3)? | ||
nothingmuch | that won't ever parse as that, IIRC | 21:38 | |
TimToady | Fortran might have tried to... | ||
nothingmuch | since the token for var name is longer and thus will win | ||
anatolyv | TimToady: what's "same as P5" here? :) | ||
Khisanth | that is not much different from $foox3 | ||
anatolyv | Khisanth: aye. | ||
Khisanth | which is just an error, I don't see why it shouldn't | ||
TimToady | the rule for what constitutes a valid identifier | ||
which is basically borrowed from C and Ada etc. | 21:39 | ||
Khisanth | even if perl can understand it, a programmer probably won't | ||
TimToady | but extended by P5 into Unicode. | ||
anatolyv | TimToady: what about Unicode in identifiers? | ||
TimToady: ah. | |||
nothingmuch | my ××× $ש××§× | ||
^_^ | |||
oh, crap | 21:40 | ||
that won't work at all | |||
since the class name implies a gender | |||
anatolyv | TimToady: so basically a p6-parser is justified in eating all the identifer-characters after a sigil, without bothering at that point to check that such a variable is visible from the compiler's point of view? | ||
TimToady | yes, though of course under use strict it must check at the end of the identifier | 21:41 | |
anatolyv | (what throws me off a bit is the fact that function names are explicitly said to be able to contain *any* non-whitespace Unicode, not ident) | ||
TimToady | well, should check. as I recall, pugs defers this to run-time, which is a mistake | ||
anatolyv | for example, according to the spec I should be able to declare a function &foo+3 and call it as a bareword | ||
TimToady | only if declared as operators | 21:42 | |
anatolyv | TimToady: ah! that clarifies it. | ||
nothingmuch | it candefer till the end of compile time | 21:43 | |
TimToady | but what's the point? we only allow postdeclaration of functions, not variables. | ||
nothingmuch | no point | ||
from the user perspective that's the last allowed time | 21:44 | ||
TimToady | yes. | ||
nothingmuch | if it compiles with a bad variable that's a bug | ||
if it doesn't, when it does is an impl detail | |||
TimToady | but there's much to be said for getting the errors to come out in textual order. | ||
anatolyv | I believe this is an error in pugs: { say $x; my $x; } works fine in strict mode. | ||
21:44
SCalimlim joined
|
|||
nothingmuch | that's true =) | 21:44 | |
TimToady | since very often the earliest error is the real one. | 21:45 | |
nothingmuch | what? don't be silly. a perfect compiler would detect all the other errors just as well ;-) | ||
anatolyv | I guess that's related to the fact that it defers the check to runtime, and enables the use of $x once it sees the pad at the entry to the block, not at the moment of declaration. | ||
nothingmuch | anatolyv: pugs lets such things slide | ||
TimToady | it's my next-in-line pet peeve when audreyt fixes my current pet peeve, which is "compatible with what?" | 21:46 | |
which is what I say whenever it says "No compatible routine found". | 21:47 | ||
anatolyv | heh. | ||
TimToady | P5 at least tells you the class of the object for single dispatch. | 21:48 | |
"can't find method foo via class Bar" | |||
or some such | |||
things get complicateder for MMD of course | 21:49 | ||
nothingmuch | my #1 pet peeve is errors that require you to Dumper($args) right before foo($args) if foo generated the error | ||
TimToady | basically same peeve | ||
nothingmuch | yeah | ||
except mine is with most of the CPAN | |||
my own code too =) | 21:50 | ||
nothingmuch-- | |||
TimToady | "somethings wrong at line 42, please visit "file://your.ad.here" for full explanation and stack trace... | 21:51 | |
anatolyv | next embarrassingly basic question. S02 talks of equivalence of e.g. $Foo::Bar::baz and Foo::Bar::<baz>. Do I understand it correctly that in the former cases all the ::'s are not operators and in the latter csae they all are? | ||
nothingmuch | actually, what I'm hoping is for exception objects to be used | ||
so the message can be concise | |||
but the error itself can contain more than just the message | |||
anatolyv | er, Foo::Bar::<$baz> actually. | 21:52 | |
TimToady | sure, what I'm saying is you just print the message with a way to get the rest of the information if you want it. | ||
21:52
pjcj joined
|
|||
nothingmuch | oh sure | 21:52 | |
TimToady | rather than forcing the user to wade through three square kilometers of error message | ||
nothingmuch | that I don't want | ||
i want so that when the user is in some debug mode (think -MCarp=verbose but not so thorough) then they get a sort of trap point, like in the debugger | 21:53 | ||
not just what happenned, and where it happenned, but also the data that caused it to happen | |||
and, since we have continuations in our exceptions, the ability to fix it | |||
TimToady | anatolyv: arguably even in Foo::Bar::<> the :: need not be treated as operator | ||
though the final one is more operator-ish than the one in the middle. | 21:54 | ||
anatolyv | TimToady: I just re-thought it again, rereading the same lines in S02 - the first :: is part of the literal name of tjhe package 'Foo::Bar', and the second is a bona fide operator that turns a prototype object into a package hash? | ||
TimToady | nothingmuch: assuming platform actually supports continuations in exceptions. we've carefully finessed the exception handling not to actually require real continuations to resume warnings | 21:55 | |
nothingmuch | oh, of course | ||
in meant in a good env =) | |||
there's no need to make $production grind to a halt on exception throws if the user is not making use of it | |||
TimToady | anatolyv: yes, that's what I mean by the second :: being more of an operator. | 21:56 | |
21:56
lanny joined
|
|||
TimToady | or you just say that name ending in :: happens to be a package :) | 21:56 | |
anatolyv | hmm :) | 21:57 | |
TimToady | but certainly Foo::Bar.:: is an operator | ||
lanny | fglock: I've been trying your minimal MiniPerl6 examples for the last day or so on feather. None work. Is there something that *should* work there or is it still too unsettled? | ||
TimToady | so I can take it or leave it whether :: is actually treated as operator without the . | ||
nothingmuch | shower + alcohol & | 21:58 | |
well, shower >>= alcohol | |||
anatolyv | TimToady: i'm trying to see how much, theoretically, one could parse without compiler knowledge - that is, in this case for instance, whether the parser can parse such constructs without knowing the available pre-declared package names. | ||
TimToady: but I'm guessing that it can't, because it's a bareword, so could be an undeclared function... but on the other hand those can't have '::' in them.. confused :) | 21:59 | ||
TimToady | Foo::Bar is required by P6 to be predeclared if it's a package/module/class | ||
otherwise it must be taken as a postdeclared listop | 22:00 | ||
and if not postdeclared, fail at end of compilation | |||
anatolyv | TimToady: understood, thanks! and what about the :: in the construct $::($foobar) ? is it an operator? | 22:01 | |
TimToady | not exactly. more like ::() is an interpolator in names | ||
22:01
rodi joined
|
|||
TimToady | but required to interpolate on name boundaries only, so you can't construct name with ::()::(), only with ::("...") | 22:03 | |
anatolyv | TimToady: it's a special extension to the syntax of identifiers that is grokked by the parser? | ||
TimToady | that is, can't construct hash key from two ::() | ||
every ::() implies a symbol table lookup | |||
identifiers never contain :: | |||
longer things with :: in them I tend to call "names" instead. | 22:04 | ||
anatolyv | oh. | ||
but isn't the package name in 'package Foo::Bar;' a single identifier with literal :: inside it? | 22:05 | ||
TimToady | the $Foo::Bar::baz syntax is actually a bit non-sensical, except that the $ makes it easier to interpolate into strings. | ||
22:05
SubStack joined
|
|||
TimToady | no, I'd say it's a name with two identifiers | 22:06 | |
and that's just shorthand for a package Bar inside package Foo. | |||
anatolyv | as a result of 'package Foo::Bar;' what's entered into the symbol table of package Main? I thought it was a package object under the key '::Foo::Bar'. | 22:07 | |
(if I do 'package Foo::Bar;' at top level) | |||
TimToady | no, keys never have :: in them, except possibly as an initial sigil | ||
anatolyv | I think this conflicts with S02:1060 | 22:08 | |
TimToady | it would be like filenames containing / in Unix | ||
anatolyv | which says that in $::{'...'}, I can use anything whatsoever as the key. | 22:09 | |
22:10
weinig|bbl is now known as weinig
|
|||
nothingmuch | can you say package $::{'foo::bar'} ? | 22:11 | |
TimToady | sure, but only because ::{} is bypassing the normal naming rules and providing a low-level interface directly to the hash. You could go out to disk on a Unix filesystem and poke a / into a filename, but it wouldn't do you much good from userland | ||
nothingmuch | or is that parsed as $::foo::bar ? | ||
ah | |||
since my alcohol monad is impl with arrows i get more control ^_^ | |||
nothingmuch loves having grokked arrows but for the love of god can't dio anything more useful than jokes with that | 22:12 | ||
anatolyv | TimToady: I'm wondering how the parser understands ::{'...'} at all, however. It considers '::' to be a predeclared package name? (if so, that forces you to choose one of the alternatives in earlier ::-is-operator-or-part-of-the-name, I think?) | 22:14 | |
er, I mean something like ::{'$...'}, with the sigil inside. | |||
TimToady | no, it's the .== operator implicitly operating on the current package to give you something to hash subscript. | 22:15 | |
anatolyv | if the sigil is on the outside, I guess the name-reading rule just eats up all ::{}, ::<>, ::() as special interpolators. | ||
TimToady | .:: I mean | ||
yes. | |||
:: is special in names | |||
and depends on what the next character is. | |||
which is why final :: may or may not be considered .:: | 22:16 | ||
doesn't really matter, if it works the same. | |||
anatolyv | TimToady: can _any_ postfix (or postcircumfix etc.) operator appear where a term is expected, and be parsed as operating on some implicit argument? | ||
TimToady | no | 22:17 | |
:: is special because it's also a sigil | |||
otherwise you must use .op | |||
in which case it always works on $_ | 22:18 | ||
anatolyv | TimToady: hmm, so ::{'$...'} is parsed not as operator, but as a name, like $foo, and the name-reading rule magically recognizes it as different from ::Int or whatever, and applies .:: on the current package? | 22:19 | |
TimToady: and .::{$...'} then wouldn't work at all, because it'd want to apply to $_? | |||
TimToady | yes. it's a name that starts with sigil :: and ends with :: the operator, and it's just sort of an accident that they're the same two colons. | 22:20 | |
anatolyv | TimToady: excellent, thanks :) | 22:21 | |
TimToady | you're welcome. | 22:22 | |
nap & | |||
anatolyv | TimToady: so IIRC the exact rule on implicit postops is "if it starts with ., it can appear where a term is expected, and applies to $_", correct? | ||
ah, sorry | |||
TimToady | yes | 22:23 | |
sorry, didn't sleep well last night, must rest & | |||
22:48
pva-UF is now known as FuzzyLogi,
FuzzyLogi is now known as FuzzyLogic
22:51
Eimi joined
|
|||
cmarcelo | @tell audreyt i'll have some free time this week and with proper guidance I can help you doing oldland => newland or another groundwork... @tell me if it's the case. | 22:57 | |
lambdabot | Consider it noted. | ||
cmarcelo | dinner & | ||
audreyt | @tell cmarcelo that's the case. but I'm going to fly tomorrow noon; will try to checkin at least the beginning | 23:00 | |
lambdabot | Consider it noted. | ||
cmarcelo | audreyt: cool. try to let some indication on what (where in tree) should be done ;)... | 23:03 | |
lambdabot | cmarcelo: You have 1 new message. '/msg lambdabot @messages' to read it. | ||
cmarcelo | @moosages | ||
lambdabot | audreyt said 2m 30s ago: that's the case. but I'm going to fly tomorrow noon; will try to checkin at least the beginning | ||
cmarcelo | now really leaving :P | ||
& | |||
23:11
elmex joined
23:25
rlb3 joined
23:28
vel6608 joined
23:38
diakopter joined
23:45
diakopter left
|