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.