6.2.11 released! | pugs.blogs.com | pugscode.org | pugs.kwiki.org | paste: sial.org/pbot/perl6 | < audreyt> my fingers juxpatosed Set by nothingmuch on 24 February 2006. |
|||
00:00
jisom joined
00:02
Maddingue joined
|
|||
nothingmuch | woah! | 00:05 | |
awesome! | |||
Dave Mitchell plugged all the closure leaks in 5.9 | |||
obra | cool! | ||
nothingmuch | Error.pm no longer has baggage | ||
see p5p post on that topic | 00:06 | ||
obra | I saw the question from Dave Rolsky | ||
nothingmuch | so now the other dave replied | ||
i can't believe this didn't get more hype | 00:07 | ||
appearantly it's already mostly OK in 5.8 | |||
nothingmuch knew he shouldn't have listened when people told him off about using that stuff | |||
intention first | |||
let p5p sort out the evil crap later ;-) | |||
00:14
pdcawley left
00:20
pdcawley joined
|
|||
nothingmuch | moosen | 00:22 | |
audreyt: pin | 00:50 | ||
g | |||
01:08
lao_ joined
01:11
avar joined
01:48
kisu joined
01:53
K joined
|
|||
nothingmuch | pugs doesn't do any constant folding, etc, does it? | 02:03 | |
there's no real value as a concept, i guess | 02:04 | ||
i think for prelude, etc, i would like to have a new kind of AST node | |||
RuntimeOnly or something like that | |||
after parsing, the whole tree is converted such that non-pure prims are wrapped in RuntimeOnly | 02:05 | ||
and then the whole tree tries to eval | |||
and every time RuntimeOnly is encountered in a Prim app then that prim app is wrapped in a RuntimeOnly node itself | |||
this naturally has to be generalized a bit more for assignment ops | 02:06 | ||
but this should give us constant propagation, dead code elimination, and other niceties | 02:07 | ||
Daveman waves, as the third Dave :p | |||
nothingmuch | hello, third dave | ||
Daveman | Greetings :) | ||
nothingmuch | oh man | 02:15 | |
i just realized i really need monads for this | |||
so much for feeling more comfortable in perl 5 | |||
nothingmuch will rewrite his pet project in haskell tomorrow ;-) | |||
Daveman | Excellent. :) | 02:16 | |
02:19
K joined
|
|||
nothingmuch | good night | 02:22 | |
Daveman | :) | 02:30 | |
02:43
dduncan joined
03:10
handon joined
03:13
mako132__ joined
03:18
justatheory joined
03:21
mauke joined
03:25
xern joined
03:27
feng123 joined
03:34
jp-autark joined
03:52
diotalevi joined
|
|||
diotalevi | Does pugs have regular expressions? | 03:53 | |
03:56
FurnaceBoy joined
04:01
Soul_keeper joined
|
|||
Soul_keeper | \join #linuxsociety | 04:01 | |
04:01
Soul_keeper left
04:04
amnesiac joined
|
|||
Khisanth | diotalevi: yes | 04:41 | |
04:47
jp-autark joined
04:49
FurnaceBoy_ joined
04:54
Khisanth joined
|
|||
diotalevi | When I say "a" =~ /(.)/ which is perfectly fine perl 5 code, I get Can't modify constant item: VStr "a". What's that mean? That I need to say that differently now? | 05:01 | |
Is that just "a" ~~ /(.)/ now? | 05:05 | ||
Oh hell. I know this is a pugs place but I was just trying to build parrot and got this: ../../parrot rulec.pir library.pge >PGE/Library.pir | 05:07 | ||
PackFile_unpack: Bytecode not valid for this interpreter: fingerprint mismatch | |||
Any ideas? | |||
jisom | which revision of parrot? | 05:08 | |
diotalevi | Whatever is available on svn now. | ||
I fetched it 10 minutes ago. | |||
~/VERSION says 0.4.2 | 05:09 | ||
jisom | versions are done once per release, bugs can pop up and be fixed in one day | ||
was it a fresh checkout or update? | |||
diotalevi | A fresh checkout. | 05:10 | |
jisom | very very very peculiar..... | 05:11 | |
diotalevi | I ran Configure.pl with a latest bleadperl so maybe that's it. I hope not. I'm trying again with a 5.8.7. | 05:12 | |
I didn't actually have pugs and parrot locally but it matters to p5p now what "a" ~~ /(.)/ does when it list context. | 05:13 | ||
Our docs say it's the same thing as "a" =~ /(.)/ except that robin's addition of smart match appears to return 1 instead of "a" when in list context. | 05:14 | ||
So rafael asked what the perl6 interpretation for that was ... | |||
hence my building stuff and asking about it here. | 05:15 | ||
jisom | I just work with parrot... | ||
building ghc crashing my freebsd box | |||
diotalevi | yeah, I do perl5 optrees more than anything else specialized. | 05:16 | |
crap. switching to 5.8.7 fixed the parrot building. | |||
jisom | so found a bug in bleadperl | ||
diotalevi | Yeah. | 05:17 | |
Maybe. | |||
jisom | fingerprint.c is created by perl | ||
diotalevi | Yay. ($_) = "a" ~~ /(.)/; say returns "a" | 05:19 | |
from pugs. | |||
Where does fingerprint.c come from? Maybe the script making it is buggy. | 05:20 | ||
I can hope... | |||
jisom | toos/build/fingerprint_c.pl | 05:21 | |
*tools | |||
diotalevi | k | ||
Boo. Lint had nothing interesting to say. | 05:22 | ||
Neither does perlcritic. So much for automated dodginess detectors. | 05:23 | ||
05:24
hexmode joined
|
|||
jisom | is the fingerprint.c output different? | 05:24 | |
05:25
jp-autark joined
|
|||
diotalevi | I can know this in a minute or few. | 05:26 | |
jisom | ok | ||
05:29
azuroth joined
|
|||
diotalevi | Zero difference. | 05:31 | |
That's good. | 05:32 | ||
jisom | very interesting | ||
diotalevi | Maybe `make clean' isn't sufficient to clean everything. | 05:33 | |
jisom | yeah....there's a few different cleans......archclean, clean, realclean, and svnclobber | 05:34 | |
diotalevi | Oh. | ||
feh. | |||
jisom | svnclobber's the cleanest | 05:35 | |
as it's name would make you believe | |||
perhaps | |||
diotalevi | Ok well I'm building both version again after svnclobbering each. | 05:37 | |
Yay. It didn't fail again. | 05:43 | ||
jisom | just an intermittent bug? | ||
diotalevi | There's a 3K patch's worth of difference between parrot as build w/ 5.8.7 and blead. | 05:44 | |
I guess, jisom. | |||
I could go get a real, fresh checkout to really reproduce it. | |||
jisom | if after an svnclobber, you run 'svn status' and nothing comes up, it may as well be a fresh checkout | 05:45 | |
diotalevi | I got some lines preceded by a ? mark. Is that "nothing"? | 05:47 | |
jisom | it means it's a file that exists and isn't hidden by the svn:ignore property | ||
diotalevi | ok? And? | 05:48 | |
Is that good enough to be a fresh checkout like you said? | |||
jisom | which files? | ||
diotalevi | I don't do this "svn" thing. | ||
jisom | what did you use to checkout? | ||
diotalevi | build_tools, charset, ops, dynoplibs, pf, encodings, incc, ast, classes, io, dynclasses, t/dynclass | 05:49 | |
jisom | those are directories.... | ||
diotalevi | svn. I was just saying that I'm parroting commands like I read on the web page. I'd use cvs if given the choice. I've used *that*. | 05:50 | |
jisom | eh, svn's revert capability is very helpful for me | 05:51 | |
diotalevi | I didn't say it was better or anything, I just don't know it. | ||
jisom | ok | 05:52 | |
diotalevi | well thanks for the help. | 05:55 | |
jisom | not a problem | ||
06:07
bd_ joined
06:14
Nouk joined
06:21
K joined
06:27
Draconit_ joined
|
|||
azuroth | tiramisu++ | 06:31 | |
06:31
Hinrik joined
06:33
Draconit_ left
06:37
K joined
|
|||
rgs | hey diotalevi | 06:44 | |
06:52
FurnaceBoy_ left
06:54
Hinrik left
|
|||
dduncan | I discovered that the freenode.net server which we are using has a list of "primary groups" using its server, at freenode.net/primary_groups.shtml , but #perl6 isn't on it | 06:58 | |
should we register? | |||
rgs | what would be the benefits ? | 06:59 | |
rgs notices that mandriva is listed, and didn't even know | 07:01 | ||
(it's my employer, fwiw) | |||
dduncan | benefits? | 07:02 | |
it just seems like a good thing to do | |||
there must be *some* reason the other groups are listed | |||
fyi, I also just made a 'active' donation to PDPC (my first) in support of this IRC service, in case it helps | 07:04 | ||
ayrnieu | freenode politics bore me to death, but you might /msg chanserv access #perl6 list -- and ask those people about registering. | 07:05 | |
diotalevi | rgs, what? | 07:06 | |
rgs | just hey. good to see that some people here actively follow P5P :) | 07:07 | |
rgs saw his name in the backlog | |||
diotalevi | I'm far more a p5p person than I am a p6-anything person. | ||
tho I'm barely a p5p person. | 07:08 | ||
dduncan | I'm a perl 5 user and module maker but I don't contribute to the p5 core | ||
rgs | but your name isn't in your whois | ||
diotalevi | I hack optrees for fun and no profit. | ||
JJORE on cpan. | |||
rgs | diotalevi: ok. hi !! | ||
jisom | I just program in pir, fun language | ||
rgs | dduncan: I must have seen you somewhere, at oscon perhaps. | ||
dduncan | I was at OSCON 2005 | 07:09 | |
that was my only oscon ever | |||
rgs | aol | ||
dduncan | and I've never yet been to a perl conference | ||
er | |||
those standalone perl events | |||
diotalevi | I'm planning to go to this oscon and YAPC. It's part of my grand plan to meet people so I've contacts for the next time I'm laid off. | 07:10 | |
rgs | I've been in YAPC::Europe::Paris, too. (easy, I live in Paris.) | ||
dduncan | right, it was yapc I've never been to any of | ||
rgs, if I stood out at oscon at all, it may be due to some of my perl modules, and maybe related to pugs | 07:11 | ||
I gave a lightning talk on one | |||
which contained an awkward pause in the middle | |||
diotalevi | what modules? I don't see a dduncan on cpan. | ||
dduncan | my cpan id is duncand | ||
the irc name is reversed | 07:12 | ||
ayrnieu | dduncan - your name is Duncan Duncan? | ||
dduncan | yes | ||
my irc nick used to be that full thing too | |||
diotalevi | search.cpan isn.t finding you. You're really a CPAN author? | ||
dduncan | but I shortened it when I was told some IRC clients had very narrow windows | ||
my cpan id is duncand | |||
rgs & | 07:13 | ||
ayrnieu | rather, some IRC clients indent everything by names, and so long names annoy. Blame freenode for choosing to allow such long nicknames. | ||
dduncan | diotalevi, search.cpan.org/~duncand/ goes to it | ||
diotalevi | found it through browsing. | 07:14 | |
:-/ dumb search tool. | |||
dduncan | my lightning talk was on my database module, Rosetta | ||
it doesn't work right now, but it has greater promise than anything I've made | 07:15 | ||
diotalevi wishes everyone had already written everything he wants modules for so he wouldn't have to keep uploading more. | |||
dduncan | my Rosetta distro helpfully includes the full text of what I meant to say in the lightning talk, but it somewhat bombed when I tried to do the talk entirely from memory / without cue cards | 07:16 | |
diotalevi | Rosetta? It'd be nice to see a comparison against it's peers like Alzabo. | ||
dduncan | hence the awkward pause | ||
a comparison will come later | |||
there is no point in doing one now, since Rosetta isn't functional yet | 07:17 | ||
I follow the "release it early and often" open source mantra | |||
and hence it is up while still partly complete design docs | |||
diotalevi | So are you avoiding existing stuff because Not Invented Here? | 07:18 | |
dduncan | it's not that bad | 07:19 | |
diotalevi | Or because you want to reimplement a wheel? | ||
dduncan | I see what I'm doing as being very different than anything already up | ||
it may be hard to see that now, but its true | |||
one key difference is that my API is centered around implementing "The Third Manifesto", rather than a SQL database | 07:20 | ||
diotalevi | Neato. | ||
dduncan | The Third Manifesto is based on formal logic and relational algebra, which SQL is not | ||
diotalevi | You should talk to Dave Rolsky sometime. His Alzabo does the same thing. | 07:21 | |
dduncan | also, you can edit the schema of Rosetta databases just by directly modifying the database catalog, using ordinary insert/update/delete statements | ||
no SQL database does that, that I"m aware of | |||
diotalevi | I just pimp it because it works and I know it's been production for a good while now. | ||
dduncan | you say that Alzabo is a TTM implementation? | 07:22 | |
I wasn't aware that he went that far | |||
looking ... | |||
diotalevi | Well he's thinking about it anyway. I never read TTM. Dave talks about it semi-frequently and especially in connection w/ his thing. | 07:23 | |
dduncan | well, I'm going all the way ... | ||
not only do the above features exist, but also: | |||
multi-update statements | |||
nested transactions | |||
forbidding of nulls everywhere | 07:24 | ||
forbidding of duplicate rows everywhere | |||
diotalevi never really wanted to forbid nulls. | |||
dduncan | arbitrarily complex type support | ||
arbitrary but that they can't be recursively defined | |||
well, people who *really* want the features that nulls provide can emulate them over top of the null-less api | 07:25 | ||
but the core is more bug-free for excluding them | |||
diotalevi seems to recall there's 28 different nulls tho he's never seen them enumerated beyond a handful. | 07:26 | ||
jisom | how much more complex would the user code have to be to allow nulls? just asking out of curiousity | ||
dduncan | it depends | ||
first of all, note that a lot of complexity in SQL statements is due to the presence of nulls; by dis-allowing them, queries etc are actually simpler by default | 07:27 | ||
jisom | I don't deal much with sql or databases, but ease of programming is important | ||
diotalevi is a perverse bastard and would like to be able to formulate db queries in prolog. | 07:28 | ||
dduncan | one way to implement a nullable type is to define a composite type with 3 members, one being of the base null-less type, the second being null (which only has 1 possible value), and the third saying which of the other 2 is the collective type's current value | ||
its basically the same thing that Perl 5 does ... | |||
jisom is a perverse bastard who prefers PIR(somewhat high level assembly) over perl | |||
dduncan | for supporting strings and numbers in the same scalar (SV) type | ||
since you explicitly define the collection type, you can also explicitly define what behaviour happens where if the 'null' is the value | 07:29 | ||
... er ... since you also define all the operators for working with that type too | |||
including the equality test | 07:30 | ||
suffice it to say ... | |||
Rosetta is optimized for people that don't use nulls | |||
those people get the tersest syntax, where people that want nulls use more verbose syntax | |||
diotalevi | terse is doubleplus good. | 07:31 | |
07:31
catarcid joined
|
|||
diotalevi | So... is there context in perl6? | 07:31 | |
dduncan | since the user's conception of the logic involved is simpler without nulls (and the implementation is also simpler), the terser syntax works with this | 07:32 | |
diotalevi | C< $_ = "a" ~~ /(.)/; say > and C< ( $_ ) = "a" ~~ /(.)/; say > evaluated identically. | ||
dduncan | and more verbose syntax with nulls matches the more complicated logic to working with them | ||
diotalevi | Should it? | ||
ayrnieu | diotalevi - yes. | ||
diotalevi - er, maybe. | 07:33 | ||
diotalevi | C< ( $_ ) = not not "a" ~~ /(.)/; say > got me the perl5ish behavior. | 07:34 | |
07:35
calanya joined
|
|||
ayrnieu | ? "a" ~~ m:perl5/(.)/ | 07:35 | |
?eval "a" ~~ m:perl5/(.)/ | |||
evalbot_9263 | Match.new( ok => bool::true, from => 0, to => 1, str => "a", sub_pos => (Match.new( ok => bool::true, from => 0, to => 1, str => "a", sub_pos => (), sub_named => {} ),), sub_named => {} ) | ||
07:35
bsb joined
|
|||
ayrnieu | ?eval "a" ~~ m:perl5/(.)/; say | 07:35 | |
evalbot_9263 | OUTPUT[ ] bool::true | 07:36 | |
ayrnieu regrets answering so quickly, now. | 07:38 | ||
diotalevi | It's a context thing. If uh... there's context. | ||
ayrnieu | *nod*, I get that in Perl5. | ||
diotalevi | Oh well. I've gotta sleep. | ||
oh say, you get the ~~ operator if you upgrade to blead. ;-) | 07:39 | ||
ayrnieu | disappointed with: | 07:40 | |
?eval sub F (Scalar $a) { $a.say }; F("a" ~~ m:perl5/(.)/) | |||
evalbot_9263 | OUTPUT[a ] bool::true | 07:41 | |
07:41
mtve joined
|
|||
ayrnieu & | 07:42 | ||
diotalevi | that m:perl5 thing you're writing seems to be optional. Sleep for me. G'nite. | 07:43 | |
omit the .say and you get a Match.new( ... ) object which is true/"a" | 07:44 | ||
dduncan | diotalevi, I just did a web search, and found a use.perl comment from Rolsky like what you said ... him toying with making a truly relational database in perl ... that was dated 2003 | ||
diotalevi | he talked about it at a recent minneapolis.pm. | 07:45 | |
dduncan | oh | ||
well, maybe we have more impetus to work together, then | |||
I also know that Leffler who made the Informix DBD module is strongly interested in this stuff too | 07:46 | ||
he's even on the TTM mailing list ... I didn't see Rolsky there yet | 07:47 | ||
diotalevi | shrug. g'nite. | 07:48 | |
fer real. | |||
07:52
Nouk joined
07:59
calanya left
08:02
Arderydd joined,
Arderydd left,
elmex joined
08:09
iblechbot joined
|
|||
dduncan | diotalevi, thanks to your clue, I'm looking at that Dec 2005 presentation now | 08:10 | |
the slides, that is | 08:11 | ||
08:17
blm_ joined
|
|||
svnbot6 | r9264 | pmurias++ | debugging turned off on default | 08:50 | |
08:51
K joined
08:54
SolidState joined
08:57
feng joined
|
|||
svnbot6 | r9265 | pmurias++ | Smart::Comments are now used in the mainstream version | 09:02 | |
r9265 | pmurias++ | (required for debugging only) | |||
r9266 | pmurias++ | A source filter to activate Smart::Comments on per subroutine basis | 09:05 | ||
09:24
blm_ is now known as blm
09:25
iblechbot joined
09:56
szabgab joined
10:00
feng123 joined
10:02
ghenry joined
|
|||
azuroth | ping? | 10:06 | |
10:19
K joined
10:20
GeJ joined
10:23
beppu_ joined
10:24
ruz joined
|
|||
ayrnieu | pong? | 10:50 | |
azuroth | beef vindaloo | 10:52 | |
ayrnieu | dragonsteak volcano | 10:53 | |
ayrnieu writes HOP in perl6. | 10:54 | ||
azuroth | HOP? | ||
ayrnieu | Higher Order Perl. A book. I mean that I translate the code given to perl6. | ||
integral | SICP for perl | ||
10:54
ruz joined
|
|||
ayrnieu | integral - how close is the parallel? | 10:55 | |
integral | ayrnieu: probably not very close :) | ||
10:55
K joined
|
|||
azuroth | cool :D | 10:56 | |
10:57
nnunley_ joined,
K joined
|
|||
ayrnieu | hm, the first example would be easier if subtype worked. | 10:58 | |
10:58
K joined
|
|||
ayrnieu | ?eval sub binary (Int $n) { return $n if $n == 0|1; binary(int($n/2)) ~ $n%2 }; binary 15 | 11:01 | |
evalbot_9266 | "1111" | ||
ayrnieu | ?eval sub binary (Int $n) { return $n if $n == 0|1; binary(int($n/2)) ~ $n%2 }; binary 10 | ||
evalbot_9266 | "1010" | ||
11:02
rantanplan_ joined
|
|||
ayrnieu | (sprintf "%b", 15) kills pugs, although %b is supported as of 5.6.0; blame Printf.printf | 11:03 | |
?eval sprintf "%b", 10 | |||
evalbot_9266 | pugs: Printf.printf: bad formatting char b | ||
integral | ayrnieu: write a sprintf in perl6 for us and add it to the prelude | 11:04 | |
ayrnieu | Probably a good idea. | 11:05 | |
integral | or some tests perhaps :) | ||
azuroth | or some... tiramisu! | 11:06 | |
11:06
chris2 joined
|
|||
azuroth offblasts | 11:06 | ||
11:11
pawel joined
|
|||
pawel | hi all | 11:11 | |
azuroth | hey | 11:12 | |
11:12
pawel is now known as pmurias
|
|||
azuroth | I need to find a good "get rich quick" scheme | 11:20 | |
11:23
K joined
11:25
marmic joined
11:28
Judis joined,
Judis left
12:13
nnunley joined
12:15
rep joined
12:28
Draconit_ joined,
Draconit_ left
12:30
iblechbot joined
12:34
larsen joined
12:41
sri_ joined
13:06
elmex_ joined
13:11
ruz_ joined
13:33
K joined
13:37
planrantan joined,
wilx`` joined
13:44
ghenry joined
13:55
renormalist joined
13:58
K joined
14:10
K joined
14:11
typonaise joined,
K joined
14:38
ruz_ joined
14:48
revdiablo joined
15:07
grayson joined
15:10
rantanplan_ joined
15:12
rantanplan_ joined
15:13
robkinyon joined
15:16
hcarty joined
15:25
larsen joined
15:26
ruz_ joined
15:33
justatheory joined
15:37
hcarty left
16:00
ruz_ joined
16:02
amnesiac joined
16:15
cnhackTNT joined
16:20
K joined
|
|||
Juerd | echo | 16:25 | |
wolverian | (echo) | 16:26 | |
webmind | rst | 16:28 | |
16:40
Limbic_Region joined
16:47
putter joined
|
|||
putter | anyone recognize: pugs: toEnum{SyckKind}: tag (240518168578) is outside of enumeration's range (0,2) ? | 16:47 | |
it's been a while (pre-hackathon) since I've built pugs. installed a new perl in the meantime. 64 bit. | 16:49 | ||
16:57
K joined
16:58
handon joined
17:00
ruz_ joined
17:06
larsen joined
17:08
K joined
|
|||
audreyt | putter: fixing | 17:32 | |
(just got wireless set up in hotel, whew) | 17:33 | ||
massive tcp/ip withdrawal | |||
Limbic_Region | audreyt - not sure if you caught any of my "WTF is wrong with Win32" musings in the channel | 17:34 | |
but it appears to be fixed for some definition of fixed | |||
it no longer complains about a broken prelude and reload from source | |||
but it still is S-L-O-W | |||
audreyt | so, as in, precomp prelude is broken on win32? | ||
strange, I thought I did fix that | |||
Limbic_Region | well | 17:35 | |
audreyt | I'll reboot and investigate in a bit. | ||
Limbic_Region | wait | ||
don't | |||
Daveman | cool | ||
Limbic_Region | let me explain first | ||
audreyt | ...ok | ||
Limbic_Region | prior to today, when I did a nmake realclean; svn up; perl Makefile.PL; nmake | ||
stevan | heya audreyt | ||
Limbic_Region | any code I ran after that would complain about a b0rk prelude, reload from source, and then run just fine | ||
audreyt | stevan: yo | 17:36 | |
Limbic_Region | today it is no longer complaining at all - but it is S-L-O-W as molasses running uphill in winter | ||
fwiw - the error in question was: Error loading precompiled Prelude: Left "syntax error: line 2, column 2" | 17:37 | ||
audreyt | can you open up src/Pugs/PreludePC.yml | 17:41 | |
and see if it was either empty | |||
or has duplicate LFs? | |||
17:42
ruz_ joined
|
|||
putter | back. "molasses running uphill in winter" :) | 17:42 | |
audreyt | putter: fixed, I think. try again? | 17:43 | |
(r9267) | |||
putter | audreyt: thanks! :) trying ... | ||
svnbot6 | r9267 | audreyt++ | * try to deal with 64bit syck number wraparound issue | ||
r9267 | audreyt++ | by ignoring all but the last 2 bytes in kind tags. | |||
r9267 | audreyt++ | Reported by putter++. | |||
Limbic_Region | audreyt - I can but it is not giving the error anymore - it is just sloow | 17:44 | |
perlbot nopaste | 17:45 | ||
perlbot | Paste your code here and #<channel> will be able to view it: sial.org/pbot/<channel> | ||
putter | audreyt: fixed :) my thanks. | 17:46 | |
pasteling | "Limbic_Region" at 24.35.57.240 pasted "My src/Pugs/PreludePC.yml" (118 lines, 3.7K) at sial.org/pbot/16153 | ||
Limbic_Region | if you want more than that audreyt let me know | 17:47 | |
pmurias | is it posible to determin which revision is a pugs binary build from? | 17:48 | |
Limbic_Region | pugs -V | 17:49 | |
? | |||
or rather | |||
pugs -[vV] | |||
pmurias | thanks | 17:50 | |
Limbic_Region | walang anuman | ||
audreyt | Limbic_Region: that's too short, can't be it | 17:54 | |
but otoh, maybe it's nopaste limit | |||
17:54
avar joined
|
|||
Juerd | 17:55 | ||
Limbic_Region | audreyt - it isn't complete | ||
as I said | |||
12:47] <Limbic_Region> if you want more than that audreyt let me know | |||
Limbic_Region goes to nopaste the entire file | |||
audreyt | oh no | 17:56 | |
just get perlcabal.org/~autrijus/tmp/PreludePC.yml | 17:57 | ||
overwrite your preludepc with that | |||
and run pugs inside the pugs build base path | |||
and see how slow (or not) it is | |||
putter interpreted "more than..." as an offer of additional assistance (rather than lines)... ;) | |||
Limbic_Region | audreyt - it takes at least 5 seconds to run a very simple piece of code | 17:58 | |
audreyt - does it matter than I never do nmake install ? | 18:00 | ||
audreyt | no | ||
perhaps it really is that syck is slow on your machine? | |||
can you install YAML::syck | |||
from cpan | |||
and see how | |||
perl -MYAML::Syck -e "LoadFile 'PreludePC.yml'" | 18:01 | ||
how many second this takes? | |||
Limbic_Region | sure | ||
oh, didn't realize it wasn't pure perl | 18:02 | ||
18:02
mako132__ joined
|
|||
Limbic_Region goes to check to see if there is a recent ppd | 18:02 | ||
audreyt | now that my laptop is slowly syncing the world, I think I'll go out and find some dinner | ||
Limbic_Region | best I could find is 0.30 | 18:03 | |
latest is 0.33 | |||
audreyt | that should do | ||
Juerd | audreyt: Bon apetit | ||
audreyt | 0.30 is fine | ||
I'll be back in a couple hours :) | |||
Juerd | I'm at the Chemnitzer LinuxNacht (Linux Night) | ||
audreyt | Juerd: enjoy! | ||
Limbic_Region | I won't be (likely) | ||
audreyt | *wave* & | ||
Limbic_Region | so read the logs | ||
Juerd | Weird stuff. Clublike place with lots and lots of laptops :) | ||
Limbic_Region | returns almost immediately audreyt | 18:04 | |
< 1 second | |||
Limbic_Region wanders off | |||
18:04
Limbic_Region left
|
|||
putter wonders whether to add stuff to Prelude.pm, thus making it even slower for folks with difficulties... | 18:06 | ||
Juerd | I'd say that at this stage, innovation has precedence over usability :) | 18:08 | |
putter | :) | ||
putter feels quite guilty that the rx_ Prelude.pm/Parser.hs hook has been slowing pugs for more than half a year, all in the hope it may someday start working... :/ | 18:10 | ||
Juerd | putter: Fix it then? :) | 18:12 | |
putter | i believe it's compiler-rewrite flavor stuff. the tradeoff between waiting, and learning enough haskell to attempt it myself, keeps coming up "wait" ;) though it might be worth speculatively gambling (half) a day to see if it's patchable. hmm... | 18:16 | |
Juerd | Why not? | 18:26 | |
putter | "half day" == getting other stuff done ;) | 18:27 | |
Juerd | Then you have to decide what the world would benefit from most | 18:29 | |
18:29
vel joined
18:33
hexmode joined
|
|||
putter | audreyt, etal: is there a semi-spec for rules which take arguments? eg, rule parens ($rx) { \( $rx \) } rule foo { bar <parens <hee>> qux } | 18:34 | |
Juerd: the choice one makes with each hour of the day :) | |||
audreyt | putter: rules that take arguments are simply that :) | 18:35 | |
(i.e. you get the symbols visible in your lexical scope) | |||
putter | cool. tnx. :) | ||
audreyt | you can call to other rules with | ||
<rulename param> | |||
where "param" will be looked up as a rule as well | |||
and passed to it | |||
s/looked up/compiled/ | 18:36 | ||
putter | is there a multiple arguments mechanism? tuples? | 18:37 | |
pmurias | ~ $ svn status | 18:40 | |
? smart | |||
? subroutine | |||
? iterator_engine_p6prelude-cached.pl | |||
? test.pl | |||
18:40
pmurias joined
|
|||
putter | pmurias: ?? | 18:41 | |
18:44
pawel joined
18:45
justatheory joined
|
|||
pawel | sorry, pressed the wrong mouse button | 18:45 | |
18:47
justatheory joined
|
|||
putter | pawel: ;) the drawbacks of unchecked power :) | 18:48 | |
18:50
vel joined
18:51
vel joined
18:56
rindolf joined
|
|||
rindolf | audreyt: here? | 18:56 | |
Hi all! | |||
audreyt | rindolf: hey schlomi. I'm just going out to dinner now | ||
rindolf | audreyt: it's "Shlomi", not "Schlomi". | ||
audreyt | Shlomi, then. | 18:57 | |
rindolf | Lots of people make this mistake. | ||
audreyt | what's up? | ||
rindolf | audreyt: I'm fine. Spent the afternoon wrestling with CPANPLUS. | ||
audreyt | oh. you want kane-xs. | ||
rindolf | audreyt: are you subscribed to [email@hidden.address] | ||
Wow! He's here. | |||
kane-xs: here? | |||
audreyt | I might be. not sure | ||
rindolf | audreyt: I really enjoyed listening to your presentations at OSDC::Israel. | 18:58 | |
Juerd | rafl: Could I get your charger again soon, I'm down to 0:10. | ||
rafl | Juerd: Maybe we should continue this discussion using PRIVMSG'es. I already pinged you using that, buy you did not react. | 18:59 | |
Juerd | rafl: Thanks :) | ||
Right, wasn't looking at my irc client | |||
rindolf | Bleh. kane-xs has been idle for over 90 hours. | ||
Juerd | As I was replying to an interesting mail. | ||
Did you know that a mitre is a symbol for the glans of a penis, and that the person wearing it resembles a penis? | 19:02 | ||
Right, as I said: interesting | |||
rindolf | And dwim.org (his web-site) has no DNS entry. | ||
Is he dead? | |||
;-) | |||
The cpanplus-devel mailing list has been inactive since December: sourceforge.net/mailarchive/forum.p...plus-devel | 19:08 | ||
rafl | Juerd: Indeed, interesting. | 19:10 | |
19:12
TimToady joined
19:15
sri__ joined
19:18
lypanov joined
|
|||
putter | how does one create a class name alias? eg, sortof like ::Graf := GraphemeChar; | 19:21 | |
19:23
deux5 joined
|
|||
deux5 | s l t | 19:23 | |
tt L m | |||
Juerd | putter: ::=, IIRC | 19:28 | |
19:28
buu joined
|
|||
deux5 | la la | 19:30 | |
19:32
p5evalbot joined
|
|||
putter | Juerd: thanks. still doesn't work, but oh well. :) working around... | 19:36 | |
?eval 3 | 19:37 | ||
evalbot_9267 | 3 | ||
putter | ?eval class A{} ::B ::= A; | 19:38 | |
evalbot_9267 | Error: Bind to undeclared variable: ":B" | ||
integral | ?eval class A {}; B ::= A | ||
evalbot_9267 | Error: Cannot bind this as lhs: App (Var "&B") Nothing [] | ||
putter | neat. didn't realize one could do | 19:41 | |
?eval our Int sub f() {3} say f(); | 19:42 | ||
evalbot_9267 | OUTPUT[3 ] bool::true | ||
wolverian | hm, haven't seen that :base<number> form before in S02, or I missed it before. I don't see a generic base converting function, though. is there one? | 19:44 | |
putter | I've not noticed one. One didn't go in at the same time as :2<1>. eval and sprintf? ;) | 19:50 | |
wolverian | or modulus.. :) | 19:51 | |
but it's so ugly! | |||
putter | is this really valid? what does it mean? multi Int ( Num $x ) {...} | ||
is this a new? form of coerce:<as> ? | 19:52 | ||
wolverian | yeah, I wondered about that too. | ||
19:52
mako132__ joined
|
|||
wolverian | (no idea.) | 19:52 | |
putter | ok. tnx. | 19:55 | |
wolverian | no reason to thank me :) thank me when I have an answer ;) | 19:57 | |
putter | hmm, so what's the difference between &Num::ceil ::= &Num::ceiling; and our &Num::int ::= &Num::truncate; ? | ||
19:58
rindolf left
|
|||
putter | ah, just the response, the existence of collaboration, is good in and of itself. | 19:58 | |
20:07
dduncan joined
|
|||
wolverian | I guess :) | 20:08 | |
as to your question: they're the same? | |||
that's a question, too.. | |||
putter | lol | 20:10 | |
?eval constant x = 3; | |||
evalbot_9267 | Error: No such method in class Any: "&constant" | ||
putter is rather unhappy with the "is builtin" requirement in Prelude.pm. I have fully spec signatures - they shouldn't need to be altered. :/ | 20:21 | ||
ditto is safe/unsafe. | 20:22 | ||
20:28
FurnaceBoy joined
|
|||
putter it seems precompiled Test doesnt happen by default at the moment. is it obtainable, or unavailable? | 20:32 | ||
integral | putter: there's no general mechanism yet for loading Foo.pm.yml.gz files yet | 20:33 | |
the prelude is done with a hack that loads from ./Prelude.pm.yml.gz iirc | |||
putter | ok, thanks. running tests at the moment is, well, you can guess. | 20:37 | |
gaal, etal: when you do the precompiled caching system, it might be nice if it were a general tool. Things like p5's Inline also need a caching system, and role their own. At some point, perhaps not now, it would be nice to do it right, once. | 20:46 | ||
s/role/roll/ | 20:47 | ||
integral | and we might have a more pre-compiled form that .yml available at some point for pugs to use... | ||
putter | pil2js also needs precompiled stuff... | 20:49 | |
Hmm. S29.pod specs round as floor($x+0.5). which is inconsistent with t/builtins/math/rounders.t's expectation that round(-0.5) is -1 rather than 0. | 20:54 | ||
integral | ugh, why are our specs speccing anything mathsy rather than using IEEE? | 20:55 | |
20:55
jisom joined
20:57
kanru joined
|
|||
putter | yeah. it's non-ieee/iso, which both say round half-way cases away from zero. | 20:58 | |
:( | |||
integral | hmm, maybe the answer is to throw out round as a prelude function. We tell people to use printf mostly in the end on #perl anyway | 20:59 | |
hah! this dual operator is *exactly* de-morgan's law | 21:00 | ||
xerox | Which is it? | ||
integral | bleh, wrong window | ||
xerox | Ouch. | ||
What was it? | |||
integral | just reading wadler's dual calculus things | ||
xerox | Oh-uhm. I don't hink I read it. | ||
*think | |||
Juerd | 22:02 < putter> yeah. it's non-ieee/iso, which both say round half-way cases away from zero. | 21:01 | |
I think rounding shouldn't be many functions. | |||
But one. | |||
And it should just get flags that indicate how to round. | 21:02 | ||
integral | printf tends to do what a lot of people need: get a number down to a nice length to display. And if people need more stuff, they should know their rounding rule and select the right maths module | ||
Juerd | round :up :by(.05) | 21:03 | |
round :down :even :to0 | |||
integral | "up"? away from 0? to +inf? | ||
wolverian | Juerd, I'm fine with methods that are defined in terms of a generic method like that. | ||
(as long as there is enough cultural bias to recognise them easily) | |||
integral | round :towards(inf) :by(0.05) | ||
Juerd | integral: Just providing examples. | ||
integral: They don't necessarily make sense :) | 21:04 | ||
wolverian: Disagreed. | |||
wolverian: Those who really want it, can have a module that exports a floor that's actually &round.assuming(...), for example | |||
21:04
SamB joined
|
|||
Juerd | s/exports/introduces/ | 21:04 | |
putter | Dear AESnn maintainers: Puns are fun. I love puns. I make puns. Puns can be shared on mailing-lists, irc channels, and elsewhere. Puns can even be nice in the _comments_ of language specs. But please keep them out of the code. Thank you. putter goes to make sure constant Int Int::one = round(-e ** (-i * pi)); works as per spec. | 21:05 | |
Juerd: in what context does rounding towards +inf make sense for negative numbers?? | 21:09 | ||
putter thinks it's just a spec error. | |||
integral | when your spec to interact with the accounting system says "round towards +inf" | 21:10 | |
Juerd | putter: It may not make sense, but I've needed it because of other systems requiring it. | ||
I've seen lots of different kinds of rounding | |||
And having lots of keywords is bad, IMO | |||
FurnaceBoy | rounding towards +inf makes sense for -ve numbers ... it's -(floor(-x)) | ||
jisom | so essentially "they did it this way, I have to work with them, I have to work like them" | ||
putter | ah, a good point. | ||
pragmas? | |||
Juerd would just want a single round version | 21:11 | ||
putter | no. lexically scoped overriding of round? | ||
Juerd | With defaults that DWIM | ||
putter: No... Often you want a combination of financial and mathematical rounding in a few lines | |||
putter | s/no// | ||
diotalevi really wishes source files and scripts would include a description of what they were for. Gawrsh. | |||
Juerd | sprintf does financial rounding. | ||
putter 's no applied to his own "pragmas?" question | 21:12 | ||
Juerd | diotalevi: Add "# XXX What is this file for?" | ||
jisom | www.pldesignline.com/howto/showArti...=175801189 too many ways to round | 21:13 | |
Juerd | I think that here, the high-horse approach "this rounding is good, that other rounding makes no sense" is bad, and the language should support a lot of permutations natively. | 21:14 | |
Though for the default, please pick whatever makes most sense :) | |||
jisom: Broken url. | |||
putter | Juerd: it is a multi... the main round could be simple and iso, and modules could add round()s either alternately purposed or flexible/configurable. | ||
jisom | I like the one I learned in third grade | ||
Juerd | www.pldesignline.com/howto/showArti...=175801189 | ||
jisom: .5 rounds up? Bad. | 21:15 | ||
:) | |||
jisom | sometimes you want .05 to round to 1 | ||
Juerd | putter: That's doable, but not the best approach, imo. | ||
Multi good, having to load stuff (read: having to figure out what to load) bad. | 21:16 | ||
putter | anyone want to go through the rounding article and do p6 implementations of each? :) S29 says the names should all begin with round, which conveniently, the article headings do. the code can join my S29 code, about to go in next to the Prelude.pm i think, until precom is more robust. | 21:18 | |
s/begin with round/round_/ | |||
svnbot6 | r9268 | fglock++ | * iterator_engine | 21:20 | |
r9268 | fglock++ | - detailed TODO list | |||
r9268 | fglock++ | - macros | |||
r9268 | fglock++ | * macro compile time: | |||
r9268 | fglock++ | - compile macro expander to AST | |||
r9268 | fglock++ | - emit AST to Perl5 | |||
r9268 | fglock++ | - insert the new term in the grammar | |||
r9268 | fglock++ | * macro expander run time: | |||
r9268 | fglock++ | - parse macro 'tail' | |||
r9268 | fglock++ | - bind macro parameters to macro body using source filter | |||
r9268 | fglock++ | (only named parameters - TODO: $0, $1) | |||
r9268 | fglock++ | - compile macro body to AST | |||
r9268 | fglock++ | - emit AST to Perl5 | |||
r9268 | fglock++ | - execute Perl5 and get the resulting Perl6 source-code | |||
r9268 | fglock++ | - compile the result to AST (TODO: if the result was AST, don't compile) | |||
r9268 | fglock++ | XXX - re: source filter - parameters should be passed to the precompiled macro body, | |||
r9268 | fglock++ | but subroutines don't support named parameters yet. | |||
r9268 | fglock++ | Optionally, the arguments could be bound to the AST of the macro body. | |||
r9268 | fglock++ | XXX - is string interpolation in macros different? does (') interpolate? | |||
r9268 | fglock++ | - aliasing in rules | |||
r9268 | fglock++ | - fixed $<$name> to $<name> when using alias | |||
r9268 | fglock++ | XXX - is $<name> supposed to be $(name) ? | |||
r9268 | fglock++ | - new iterator_engine op - ruleop::wrap() can be used to insert tracing and debug messages | |||
r9268 | fglock++ | in the parser | |||
szbalint | nice commit. | 21:21 | |
putter | Dear AESnn maintainers: a clarification: puns are of course fine in _example_ code. it's just a pain in "now we have to write tests for it and make it work, when it wasnt really wanted in the first place" code. | ||
lol | 21:22 | ||
dduncan | dood, that's a long-un | ||
21:23
vell joined
|
|||
putter notes his own commit messages are very different for pugs than elsewhere. explicitly written targeting svnbot and irc, for better or worse. | 21:24 | ||
jisom | I tend to do that too, but the svnbot for parrot has a simpler printout... | 21:25 | |
21:29
fglock joined
|
|||
fglock | putter: hi | 21:30 | |
pawel | flgock: hi | 21:31 | |
putter | fglock: ho | ||
pawel | s/flgock/fglock/ | ||
fglock | pttuer: np | 21:32 | |
gaal | putter: hey. excellent idea, but unfortunately I just ran out of weekend and have had no chance to work on precompilation stuff :( | 21:33 | |
re: Test.pm, it gets generated in the pugs root when you 'make smoke' or 'make test'. | |||
21:34
FurnaceBoy joined
|
|||
putter | gaal: re Test, ooo, thanks! :) re weekend, sigh. ;) | 21:34 | |
what is status/next steps/etc? | 21:35 | ||
21:35
DesreveR joined
|
|||
pawel | fglock: your latest commit sets line endings to dos style,shall I set the svn prop to avoid this sort of sittuation in the future? | 21:37 | |
fglock | pawel: yes, thanks - I'm on windows now, and can't set the options from here | 21:38 | |
re: iterator_engine - next step can be create a thin perl6, which translates almost strait to p5, or | 21:39 | ||
a compiler with a fat runtime, like pilrun | |||
s/strait/straight/ | |||
putter hopes it's just an oversight that S29 currently implies Math::Basic use()s Math::Trig (which seems likely to use() Math::Basic). Well, I suppose recursive use()s needs to work... | 21:40 | ||
21:40
pawel is now known as pmurias
|
|||
gaal | putter: the next step is to tease out parts of opRequire out to Prelude.pm, | 21:40 | |
21:41
FurnaceBoy_ joined
|
|||
gaal | so that logic of searching the filesystem and checking for precomp (+cache invalidation) can be written in Perl | 21:41 | |
putter: nothingmuch has a good design for the first go, and a plan for refinements | 21:42 | ||
putter goes to look at opRequire... | |||
re nm, for the teasing apart, or for the cache? | |||
gaal | the cache | ||
putter | ah, ok | ||
pmurias | fglock: we could use a dispatch hash instead of the long if sequence in emit() | ||
gaal | the fancy loader stuff can all be written in Perl | 21:43 | |
the cache design, briefly, is this (I may be getting some details wrong) | |||
pmurias | that would also adding new nodes from perl6 code | ||
fglock | pmurias: right - I was willing to discuss OO nodes vs. hash dispatch | ||
gaal | 1. per user cache directory | ||
pmurias | you were or you are? | 21:44 | |
fglock | OO nodes seem to be preferred in the other compilers I've seen | ||
szbalint | Is there test coverage for ff and fff (flip-flop operator) yet (a quick grep didn't find it in t/)? If there is none should there be? If yes where should I put it? :) | ||
fglock | I am | ||
pmurias | np | ||
fglock | pmurias: but hash dispatch is simpler to port, and maybe even faster | ||
gaal | 2. filenames are $hash-$pugsrev-$parserrev | ||
2a. except hashed appropriately into several dirs | 21:45 | ||
fglock | pmurias: the idea is, as soon as possible, to migrate the compiler to p6 | ||
21:45
mako132__ joined
|
|||
pmurias | oo is not very elegant in perl5 compared to hashes | 21:45 | |
new nodes could be declared in p6 | 21:46 | ||
jisom | could try it in pir... | ||
it has oo, mmd, etc.... | |||
gaal | 3. at require time, read the source, hash it, look for a still-valid precomp file and try loading that | ||
4. if failed, load and require, but write the result to the cache immediately too | |||
this is good enough for starters | |||
fglock | jisom: you mean migrate iterator_engine to pir? that would be nice | 21:47 | |
pmurias | have you seen pir much? | ||
jisom | parrot supports iterators now... | ||
gaal | this is easy to maintain (prune out old files, or even rm the cache dir if it is borked) | ||
jisom | I've written most of the parrot shootouts :) | ||
I've almost stopped using semicolons in my perl.... | |||
gaal | and when we want faster, there's clever ways to index it + use mtimes and not even need to read files for hashes in the optimistic case | 21:48 | |
fglock | jisom: the engine is simple - about 10kb of perl5 | ||
jisom | where's it at so I can look? | ||
fglock | misc/pX/Common | ||
putter | gaal: ok. I'll start with pulling require() into p6 land. | 21:49 | |
gaal | putter: nothingmuch also has nice strategies for pseudo-LRU capping of cache size | ||
putter++ # cool! | |||
putter: there's also some speccing needed for bytecode arrangement | |||
too bad i didn't write it all down during the hackathon | 21:50 | ||
jisom | fglock, what's it supposed to do? | ||
fglock | jisom: i_e_README has the current status, todo, etc | ||
jisom: it bootstraps a Perl 6 compiler | |||
gaal | I'm off to bed now... | 21:51 | |
fglock | jisom: it reads the grammar, and then can compile and run programs | ||
putter | *sad laugh* # re "too bad i didn't write it all down". very familiar refrain. | ||
g'night gaal | |||
21:51
samhain1138 joined
|
|||
gaal | night & | 21:51 | |
putter | thanks for all your work on the precoming | ||
gaal | sure :) | ||
zzZ & | |||
jisom | hmmm......PGE would make some of that code repetitive perhaps... | 21:52 | |
fglock | jisom: in Parrot, it could just use PGE and then write just the high level stuff - which is very small right now | ||
jisom: it actually seems like a great idea | 21:53 | ||
jisom | do perl6 rules that parse perl6 exist? | 21:54 | |
fglock | jisom: take a look at i_e_p6compiler.pl - it's the bootstrapper that defines 'grammar' and starts the compiler | ||
jisom: I'm writing the rules that I need on demand | 21:55 | ||
jisom: the rules are in i_e_p6prelude.p6 | |||
svnbot6 | r9269 | pmurias++ | set svn:eol-style to native | 21:57 | |
21:57
szabgab left
|
|||
pmurias | if we go the hash dispatch way, we could write the emit-pir-part in p6 sooner | 21:57 | |
subroutines will propably be supported sooner then oo | 21:58 | ||
fglock | pmurias: it already has subroutines | ||
jisom | yeah....if compiling ghc didn't stall my other computer to death I might even use pugs | ||
a little | |||
fglock | pmurias: but no parameter binding yet | ||
pmurias | we need syntax for declaring a node from p6 now... | 22:00 | |
jisom | hmmm....it'd be helpful for the rules to just be in the, grammar file format or whatever it's called, for using PGE with ease | ||
at least tidier | 22:01 | ||
fglock | pmurias: it could be done like: %subs{name} = eval( 'perl5-code', lang:<perl5> ); | ||
it is dirty, but it should work | 22:02 | ||
pmurias | %nodes is better | ||
fglock | jisom: tidier, yes, but the file format is ok, I think | ||
it is plain Perl 6 (plus unintentional bugs) | 22:03 | ||
jisom: if you are talking about p6prelude.p6 | 22:04 | ||
jisom | it may work fine for perl, but porting that to pir and using pge would essentially need some redesign for parts, pge can open and compile a grammar file | ||
pmurias | maybe we should move iteration_engine_* to a subdir | ||
the filenames would be shorter | |||
fglock | jisom: you need to integrate the parser with the compiler - you need to expand macros, for example | 22:05 | |
22:05
justatheory joined
|
|||
jisom | well, I assume that requires a working pugs and I don't have a working ghc | 22:05 | |
fglock | re: moving to subdir - putter: ping | ||
putter | fglock: could simplify eval('foo' :lang<perl>) using macros... :) | 22:06 | |
fglock: pong | |||
TimToady | putter: pretty much everything in S29 is still negotiable. | ||
fglock | putter: should we move i_e to /misc/something ? | ||
22:07
calanya joined
|
|||
putter | TimToady: ah. I was just now wondering how to defined exp($n,$b=Num::e) so that constant Num::e = exp(1) works... ;) | 22:07 | |
fglock: sounds like plan | |||
jisom | why not just use (1 + 1/(~0)) ** (~0), or something like it | 22:08 | |
:) | |||
TimToady | S29 is still really just a draft--I just whacked a few things upside the head to see if they rattle. | ||
fglock | putter: I want to minimize perl5 use - or we'll end up writing the hard parts in perl5 | ||
putter | fglock: as it leaves pX/Common, with at least an attempt at an "everyone, edit me" concept, it might be worth adding a, well, EVERYONE_EDIT_ME file (not really. i think.) | 22:09 | |
jisom | S29 misses phi!!! | ||
putter | TimToady: ah, ok. | ||
fglock | putter: "everyone_edit_me" is pugs motto :) | 22:10 | |
FurnaceBoy_ | hehe | ||
fglock | bbiab | 22:12 | |
putter | fglock: not really. people seem very reluctant to edit "someone else's" project. there is some logic to that - the author likely has a vision, almost invariably undocumented, creating a barrier to entry. but a lot of that is social. the tools don't quite exist yet for group code creation. svn just gets us back to a vcs running on timesharing machine. group editors, design tools, etc... next year or few yet, though if that | 22:14 | |
were our thing, we could certainly be being more agressive on it. | |||
integral | talking to people on IRC is cool | 22:15 | |
putter | misc/pX/ was originally created as part of a strawman proposal for writing a complete p6 implementation of p6 in 5 weeks. which would have required massive collaboration, and thus a different way of doing things. | 22:16 | |
TimToady | I'm suspecting we shouldn't have a default round() function, just all the round* variants, and let | ||
the user alias one of them to round(). | |||
putter | TimToady: can do. and at least that gets all the round_ code written. :) | 22:17 | |
TimToady | After which writing round() is a one-liner. :-) | ||
integral | why aren't they in a module? | 22:18 | |
TimToady | Er, I give up. | ||
integral | does one of the AES contain a rational for what goes in the prelude? | ||
TimToady | The AES have no clue about preludeness. | 22:19 | |
Except for what S29 says. | |||
integral | s/AES/elements of the set of all documents on this planet/ | ||
oh! I see. the first paragraph explains all | 22:20 | ||
putter | integral: re irc cool, oh yes. but have you seen the new ajax collaborative file editors? imagine a couple of years out - the best ide and groupware and project management tools you've seen, integrated. on big ongoing world wide hackathon, with shared dynamic design/notes/etc/etc in one big transparent easily watched and fiddled ball, with sound, video, whiteboard, etc. | 22:21 | |
integral | putter: hmm, maybe | ||
pmurias | multi user vim... | ||
dduncan | hey, have a look at this: www.spikedhumor.com/articles/17792/...uence.html | ||
kewl | |||
integral | sounds irritating to step away from a moment and make a cup of tea | 22:22 | |
pmurias | what does kewl mean? | ||
dduncan | just one of those meaningless words | ||
jisom | kewl exists without limit? | ||
dduncan | its slang for awesome | 22:23 | |
jisom | also pronounced as "cool" | ||
dduncan | yes | ||
but the version I used is less ambiguous | |||
putter | integral: re tea, come back and project has forked, half repurposed, half finished and obsoleted by new project? :) singularity... | ||
integral | hrm, why is Math::Basic declaring functions in Num accordingh to S29? | 22:24 | |
TimToady | putter: on the P5 regex interpolation stuff m'$x' doesn't interpolate. | ||
22:24
fglock left
|
|||
TimToady | integral: because the last clod who did major edits was thinking more about the arguments than the module placement. | 22:25 | |
pmurias | putter: are you familiar with iterator_engine internal (eq. is it ok to cordinate changes to it with you?) | ||
s/internals/$&s/ | 22:26 | ||
integral | TimToady: multi subs have to be in the same package as the type of their first argument? | ||
TimToady | integral: no, only multi methods and submethods have to be in the same package. multi subs can be anywhere. | 22:27 | |
integral | TimToady: I don't understand what you mean then | 22:28 | |
putter | TimToady: re Math::Basic, really? (re "clod") I thought it was enlightened engineering. :) Modules being our unit of revision/authority. Much easier to have a Math::Basic-which-doesnt-depend-on-Pugs::Internals, and load up Num/etc from that, rather than dealing with it all non-locally. | 22:29 | |
integral: methods, well, obviously have to be in the package/class to which they belong. subs, even multisubs (which are just "subs" sensitive to their arguments, sort of), dont. just like p5. | 22:30 | ||
TimToady | Well, I'm just saying that, if history is any indication, anything I wrote is about half wrong. | ||
putter | Ooo, 1/2 right, impressive. ;) | 22:31 | |
back to work... | |||
TimToady | I just have to be sure to Zeno the 1/2 that was wrong rather than the 1/2 that was right. :-) | 22:32 | |
22:33
typonaise joined
|
|||
pmurias | good night | 22:37 | |
putter | pmurias: sorry, I didn't mean to warnock/ignore you. I have only a superficial familiarity with i_e. If you are unsure about changing say some file foo, feel free to create a foo-pmurias if you are quite uncertain about the change, or just go ahead and change the original file - that's what svn revert is for. | 22:41 | |
22:43
elmex_ joined
|
|||
putter | I think we've reverted someone's changes something like order-10 times, on a 10000 revision project. Which means we are being way way way way way too conservative. Please, help us change... :) | 22:43 | |
Sorry again for losing track of your question. | |||
FurnaceBoy_ | I was going to ask yesterday. This word 'warnock', is that a reference to John Warnock? How did it become slang? | ||
dduncan | I think 'warnock' means you are at an indecision point ... | 22:44 | |
where you're not sure if a certain change will cause more problems than it solves | |||
jisom | it's mentioned in one of the parrot docs in the glossary..... | ||
integral | it means your question/solution has been ignored | ||
dduncan | so the change tends not to be made | ||
FurnaceBoy_ | right ;-) | 22:45 | |
so Bugzilla needs a WARNOCKED entry ;-) | |||
integral | I have an almost 100% warnock rate on p6l! | ||
FurnaceBoy_ | to add to INVALID/WONTFIX etc | ||
but, what is the derivation? or should I RTFFAQ? | |||
jisom | the parrot glossary says, essentially, you ask a question and it's never answered or talked about so nothing happens to it | ||
FurnaceBoy_ | right, I see, but... why 'warnocked' instead of, I dunno, 'Ellisoned' | ||
integral | my corollary is that 6 months later the issue will become critical, someone will suggest the same solution, and they'll get lauded for it. | 22:46 | |
*someone else | |||
szbalint | putter: sorry to bug you, as per S03, the flip-flop naming changed. Should I go ahead and change the tests too? Should I change the file's naming from till.t to ff.t or flip-flop.t? I don't want to make any changes which needs to be reverted later. :P | ||
putter | Please, please make changes which need to be reverted later. How about a file name of beer.t? And you know, I'm not sure I'm kidding. But if spec has changed, tests should change. Only exception is perhaps (audreyt will probably say its ok even then;) the day or so ramp-up to a release. Re bug, no worries. | 22:49 | |
integral | what's even better is that anyone can revert a change, not just audrey | 22:50 | |
svnbot6 | r9270 | putter++ | rename till.t to beer.t. because we are too worried about making changes which later need to be reverted. | 22:51 | |
putter | szbalint: sorry for any editing inconvenience that might cause you... | 22:52 | |
szbalint | haha | ||
:) | |||
22:52
cookys joined
22:53
whiteg joined,
lumi joined,
jp-autark joined
22:54
meppl joined,
stevan joined,
fglock joined
22:55
hexmode joined,
Khisanth joined,
feng123 joined,
Bit-Man joined,
locksy joined,
perlbot joined,
larsen joined
|
|||
putter | an freenode goes boom | 22:55 | |
22:55
mako132 joined,
sri_ joined,
kcwu joined,
kane_ joined
22:57
mauke joined,
typonaise joined
23:02
nnunley joined
|
|||
putter | hmm. these are probably the wrong irc network conditions to be trying to make a point. | 23:02 | |
23:03
mauke joined,
xerox joined,
hachi joined,
gugod joined,
miyagawa joined,
Khisanth joined,
pjcj joined,
spinclad joined,
kanru joined
23:04
jisom joined
|
|||
putter | integral: ping? | 23:04 | |
23:05
bd_ joined
|
|||
integral | pong? | 23:05 | |
23:05
masak joined,
wolverian joined,
webmind joined,
broquaint joined,
svnbot6 joined,
evalbot_9267 joined,
LeTo joined,
PerlJam joined,
Aragone joined,
jiing__ joined,
jabbot joined,
f00f_ joined,
rafl joined,
audreyt joined,
scw joined,
Juerd joined,
tcliou joined,
pdcawley joined,
rep joined,
revdiablo joined,
rantanplan_ joined,
avar joined,
lypanov joined,
buu joined,
p5evalbot joined,
mako132__ joined,
samhain1138 joined,
cookys joined,
fglock joined
|
|||
svnbot6 | r9271 | putter++ | iterator_engine_p6prelude.p6 - added the current weather conditions in Nome Alaska. Why? Because it's a nice file which deserves to have things added to it. Even things which likely need to be reverted. | 23:05 | |
FurnaceBoy_ | hmm, sounds like wiki graffiti to me. | 23:06 | |
"just because they have version control, let's vandalise" | |||
23:07
comet^ joined,
hcchien joined,
obra joined,
broquaint joined,
jiing joined,
ilogger2 joined,
Shachaf joined,
p5evalbot joined,
avar joined,
mako132_ joined
23:08
jiing joined,
mj41_ joined,
rafl joined
23:09
sky joined
23:10
Shabble joined,
tewk joined
23:11
amv joined,
Odin- joined
23:12
ilogger2 joined,
hexmode joined,
jp-autark joined,
samhain1138 joined,
justatheory joined,
LeTo joined,
lypanov joined,
mtk00 joined,
buu joined,
Odin- joined,
webmind joined,
cookys joined,
revdiablo joined,
audreyt joined,
Juerd joined,
fglock_ joined,
SamB joined,
PerlJam joined,
scw joined,
azuroth joined,
Southen joined,
arguile joined,
rep joined,
TimToady joined,
gugod joined,
r0nny joined,
beppu_ joined,
jvoorhis joined,
lumi joined,
avar joined,
integral joined,
ayrnieu joined,
s7n joined,
mako132_ joined,
Grrrr joined,
robkinyon joined,
arcady joined,
mj41_ joined,
Shachaf joined,
tcliou joined,
spinclad joined,
pjcj joined,
nnunley joined,
rafl joined,
jiing_ joined
23:13
justatheory joined,
bd_ joined
23:15
sky_ joined,
Shabble joined,
szbalint joined
|
|||
putter | FurnaceBoy_: having been a victim of wiki spamming, might I suggest a different wiki analogy. perhaps a corporate-internal wiki where people are thinking "oh, I think that's a run-on sentence on my group's home page. hmm, should I fix it? maybe I'll just write a memo and we can talk about it at next week's wiki review committee meeting". non-destructive demos of "you can change it, and it can easily be changed back" could help there. | 23:15 | |
23:15
tewk joined
23:16
amv joined
|
|||
fglock_ | putter: #-style comments are not implemented yet - changed to pod-style | 23:16 | |
23:17
grayson joined
|
|||
ayrnieu also annoyed with telling people "it's a wiki! You can change it! Use the edit button!" and having them never actually do this; always make direct suggestions and requests. | 23:17 | ||
23:17
rgs joined
|
|||
fglock_ | putter: because I'm too lazy to implement the \n rule | 23:17 | |
23:17
xern joined,
gaal joined
|
|||
putter | fglock_: oops. no - oooo yeah. thanks for the demo of how easy it is to fix even unintentionally destructive contributions. | 23:18 | |
:) | |||
fglock_: perhaps a todo list? I started to work my way though Lexer, to give you some more tokens, but got distracted and that's now drifted several items down the todo list :/ | 23:20 | ||
23:20
p5evalbot joined
|
|||
putter | ayrnieu: lol | 23:20 | |
FurnaceBoy_ | okay putter. I see wiki culture in that concept. | 23:21 | |
FurnaceBoy_ has recently rolled out a TWiki for an otherwise old-fashioned group of devs, to generally positive reaction. | 23:22 | ||
fglock_ | putter: i_e_README has a plan, general discussion, what works and what doesn't | ||
putter | ayrnieu: a lot of people live in work environments where taking personal responsibility for changing anything is near suicidal. sigh. | ||
FurnaceBoy_ | heh! | ||
ayrnieu | putter - anonymous edits, then. | 23:23 | |
fglock_ | putter: and a todo list, with priorities | ||
obra | I'd recommend anyting that's nto twiki | ||
too many people I've known have been owned through twiki | 23:24 | ||
ayrnieu | or, nonymous edits with "some guy in $other_dept came up. I don't know his name. I think he was black, or white, and somewhere between very tall and very short -- but probably in the middle." | ||
disclaimers, as the true source of the edit. | |||
fglock_ | putter: I'll start writing questions to the readme, just in case someone can answer them | 23:25 | |
like: what are the grammar categories? is there a way to optimize non-greedy '*'? | 23:26 | ||
putter 's parrot vm twiki was hacked for an ebay scam, which caused my provider to drop my _domain_ off the air, a change in providers, etc, etc. but that was the first big twiki compromise. they were setting up all sorts of security notification stuff as I was leaving. | |||
so perhaps its better now | |||
FurnaceBoy_ | obra, explain? | ||
you mean vulnerabilities on a public server? | |||
obra | Yes. | ||
FurnaceBoy_ | this is purely internal | ||
obra | that allowed remote code execution. | ||
internal for the perl6 development effort? | 23:27 | ||
FurnaceBoy_ | no, no, nothing to do with perl6. | ||
FurnaceBoy_ is just a spectator | |||
putter | broadcast question: is it just me, or are README files something everyone mentally filters out as not worth noticing except when doing initial exploration? | 23:28 | |
integral | pugs has a wiki btw, it's occasionally used | ||
fglock_ | putter: me too - it should me moved to TODO | 23:29 | |
integral | putter: I mentally ignore any doc updates when I svk up, I tend to exclusively read logs and diffs on src | ||
fglock_ | putter: it's because it says 'REAME!'and then you immediately think 'no!' | 23:30 | |
putter | fglock_: re questions to README, that's a nice idea. hmm, even better if we had just one for pugs. and could log the questions and answers. eg, a ./QAQ and a QA. | ||
questions -> QAQ, when the person who asked is satisfied, they move q&a to QA. | 23:31 | ||
fglock_ | putter: RAQ - randomly asked questions | ||
putter | or Q and QA | ||
jisom | why do faqs so rarely have the question I ask? not specific to anything, but most faqs really | ||
putter | lol :) # re 'no!' | 23:32 | |
fglock_ | jisom: because they are written by the people who knows the answers - then they write questions for it | ||
putter | jisom: hmm, maybe - they are not frequently asked, or the sample size is too small; - the domain of possible questions is large; - you're questions are atypical. i think those are the possibilities... | 23:35 | |
jisom | often they're of the "how do I get this to work" variety | ||
:) | |||
putter | fglock_: maybe also a fresh/non-fresh question distinction. so new questions dont get burried in a clutter of "yeah, we know, but we can't answer that just now" ones. or maybe that is an answer. | 23:37 | |
szbalint | What's the best way to test for unimplemented operators via eval when you want to test with lives_ok ? | ||
putter | szbalint: well, at zero indent, there are 83 occurrances of eval_ok vs 63 of ok plus an eval someplace. looks like eval_ok :) | 23:39 | |
szbalint | ah ok | ||
putter | oh, but that's not your question (pause), or was it? | 23:40 | |
szbalint | well, let me expand on it | ||
putter | re Q and QA files, and could do daily nopastes of Q file :) | 23:41 | |
szbalint | let's take something like this - lives_ok { true_then_die() ff always_false() }, "LHS not evaluated in \"false\" state (ff)", :todo<feature>; | ||
since ff isn't implemented yet, it fails to compile | 23:42 | ||
putter | (all of this because we dont have the previously discussed group ide/collaboration system. so we're kludging:) | ||
szbalint | so t/README says eval should be used | ||
putter | hmm... | 23:43 | |
szbalint | I'm wondering if the following - lives_ok { eval('true_then_die() ff always_false()') || die }, "LHS not evaluated in \"false\" state (ff)", :todo<feature>; | ||
is good to test it | |||
or not :) | 23:44 | ||
putter | well, { my $bug = false; eval_is ' {$bug=true} ff false ', false; ok !$bug; } ?? | 23:47 | |
szbalint | ah | ||
simpler :) | 23:48 | ||
jisom | if 1 is true and 2 is true, and 1 != 2, then does that mean true != true? | ||
TimToady | In Perl-Think, "true" is not a value but a predicate. | 23:50 | |
jisom | but NaN != NaN :-p | ||
mauke | like lisp | ||
putter | only if multi infix:<!=> (T $a, T $b){} isnt defined for any T of Num, Int, or etc. |