The Return of the Journal : pugs.blogs.com/ | pugscode.org | pugs.kwiki.org | paste: paste.lisp.org/new/perl6 or sial.org/pbot/perl6 Set by GammaRay on 31 December 2005. |
|||
00:25
Southen joined
00:29
scook0 joined
|
|||
PJF | Somewhat off-topicly, for but the antipodeans in the room, perl.net.au/ is coming off beta soon, and discussions are held in #PerlNet . | 00:31 | |
01:13
wilx joined
01:27
frederico joined
01:45
DaGo joined
02:04
elmex joined
02:09
sapper joined
02:26
stennie left
02:27
stennie joined
02:49
SamB joined
02:53
verve_ joined
03:02
vel left
04:00
zuulvin_ joined
04:46
Amnesiac joined
04:56
Khisanth joined
|
|||
audreyt | nnunley: say again? | 05:06 | |
nnunley: what are you trying to do with parrows? | 05:07 | ||
rafl: YAML 0.49_70 is on CPAN; I think 0.50 will be released in this hackathon | |||
05:08
whiteg joined
05:11
whiteg joined
05:12
buu joined
05:48
Khisanth joined
05:49
DaGo joined
05:53
Aankhen`` joined
06:10
Khisanth joined
|
|||
audreyt goes to zhubei for hackathon & | 06:15 | ||
gaal | have fun! | 06:17 | |
audreyt | :)) | 06:18 | |
gaal: how's YAML::Syck? will you (or did you) have cycles to work on that for the next ~4hrs | |||
if not I'll give it a go | |||
gaal | I have something that should work but doesn't :( | 06:19 | |
on two counts it doesn't: | |||
1. the perlapi isn't returning the right blesstype (obviously i'm using it wrongly) | 06:20 | ||
2. the tag isn't emitted, though I'm doing the same thing as in .Hs! | |||
I | |||
'll send you the patch; I have to go to $work now | |||
06:20
nothingmuch joined
|
|||
gaal | btw, the implicit "e" arg in the .hs source was very useful for me for learning, but I think of maybe putting it back to an explicit arg because it isn't doing something special there and someone who didn't follow your lesson might find it confusing :) | 06:22 | |
sent | 06:26 | ||
06:28
khisanth_ joined
|
|||
gaal | also, I was wondering if there was a golfier way to patmatch against records? the last change meant some of the code looks a lot clumsier :( | 06:30 | |
audreyt | ok, please mail me the patch | 06:31 | |
like, in 5mins, if possible :) | |||
yeah, the implicit ?e should go | |||
oh, I didn't parse the "sent" | |||
patmatch against records is verbose since hs doesn't have punning; but you can match it asif it's positional. | 06:32 | ||
i.e. for data Foo = MkFoo { foo :: Int, bar :: Int } | |||
you can patmatch it as | |||
f (MkFoo x y) = ... | |||
totally ignoring the label bit | |||
also, YAML's emitting of undef as completely null | 06:33 | ||
is valid and legal | |||
gaal | really? | ||
audreyt | yup | ||
checked with ingy | |||
gaal | interesting. but I like ~ better (visual cue) | ||
please tell me if you got it, sometimes my outgoing mail sucks. | 06:34 | ||
audreyt | it's a matter of taste | ||
I got it | |||
ok, gotta run now | |||
ciao! | |||
gaal | ok (anyway the tick with null is parsing it, too :-) | ||
enjoy | |||
positional patmatches feel like tighter coupling than is warranted.. is there a meta-_ character that means "I don't care about the rest of the positional fields?" | 06:36 | ||
06:55
mjl69 joined
07:20
nothingmuch joined
07:30
lisppaste3 joined
07:37
loftcity joined
|
|||
nnunley | audreyt: I'm trying to get the -g option working under PIL. | 08:20 | |
gaal | (not that named field changes don't change the ABI... but at least that only requires recompilation, not source code changes) | 08:35 | |
08:39
nothingmuch joined
09:14
kakos joined
09:33
bernhard joined
09:40
iblechbot joined
09:45
whiteg joined
10:16
chris2 joined
10:20
kane_ joined
10:22
GeJ joined
10:40
whiteg joined
10:46
kanru joined
10:57
kanru joined
|
|||
gaal | audreyt: so, emitting the tag doesn't work because we (oughtta) find out the blessing at the reference level, but that's where we hit 'case SVt_RV' and immediately recurse into perl_syck_emitter_handler again. too bad there's no way to pass an implicit arg here too :) | 10:58 | |
as for why sv_reftype returns 'REF' and not the blessed class... I'm still pondering that | 10:59 | ||
ugh, an ugly hack is to take advantage of the fact we have a void pointer and pass a struct with the class tag in the case of a blessed reference, and a real SV in the other cases. the handler can look for a magic cookie to determine what input it received. I don't believe I just suggested this. | 11:01 | ||
11:01
xinming joined
11:02
kanru joined
|
|||
gaal | ...memory management of this is simple at least; it can all be done with an automatic variable | 11:16 | |
audreyt | gaal: yo | 11:45 | |
I've fixed the tag problem | |||
via extra emitter bonus field | 11:46 | ||
clkao waits for miyagawa | |||
audreyt | clkao: @ airport? | 11:47 | |
clkao | hai | 11:48 | |
nnunley | Konnichi wa clkao-san | 11:59 | |
gaal | ah, the bonus field is certainly the right way to do it :) | ||
but did you find out why the sv_reftype was being weird? | |||
clkao | nnunley: nihao | ||
gaal | wow, I actually understood what you said. | 12:00 | |
nnunley | About the most Japanese that I can write. :/ | ||
audreyt | gaal: yes, sv_retype should test the SvRV | ||
gaal | nihao's in Chinese, and I got that too :) | ||
audreyt | not the sv itself | ||
now, the hash style thing, I still don't have a clue. | 12:01 | ||
clkao | audreyt: i need gugod's address | ||
gaal | there's an enum, maybe we just need a different value? | ||
or does that control inlining? | |||
audreyt | clkao: 勝利五路31號 | 12:02 | |
clkao | cant resad | ||
audreyt | gaal: I have no idea | ||
clkao: they are html | |||
clkao | orz | ||
gaal | hmmm magic is stored in the hash, not the reference. ok, makes sense | ||
so the bless keyword is highly magical | 12:03 | ||
i mean of course it is | |||
but more so than obvious | |||
audreyt | perl -e 'print "\x{52dd}\x{5229}\x{4e94}\x{8def}31\x{865f}"' | ||
clkao: better? | |||
clkao | ya got it already | ||
audreyt | gaal: svn up svn.kwiki.org/audreyt/YAML-Syck/ | ||
gaal | and address is five characters? so cool | ||
wah!? | 12:05 | ||
*** glibc detected *** double free or corruption (fasttop): 0x082cd2c0 *** | |||
at the end of 'make' | |||
audreyt | yeah, there might be an double free going on | 12:06 | |
gaal | urp, not at the end of make, at runtime. | ||
clkao | got him!! | ||
audreyt | attempted a fix. | 12:07 | |
clkao: oooh! | |||
gaal | Safefree == ? | ||
audreyt | gaal: Safefree = free | ||
clkao | audreyt: dinner yet? | ||
audreyt | see r67 | ||
clkao: I ate a lot of cookies | |||
clkao: gugod went out to buy some food material | |||
but not proper dinner yet | |||
clkao | oh ok. so we will see meet you directly | ||
audreyt | ingy's working on releasing YAML 0.50 -- we've got the callback API figured out and YAML::Syck is going to roundtrip well with taguri | 12:08 | |
yup | |||
12:09
Alias_ joined
|
|||
Alias_ | Anyone know who set up the logging bot? | 12:09 | |
leo | obra: ping | 12:10 | |
gaal | audreyt: can't the safefree+NULL always be done in cleanup? | 12:12 | |
audreyt | gaal: no, because HV/AV can't propaget their tags to elems | ||
*propagate | 12:13 | ||
gaal | ....do they need to? | 12:15 | |
12:15
elmex joined
|
|||
audreyt | they must not | 12:15 | |
gaal | just the syck_emit_seq / _map needs to be tagged | ||
audreyt | if you freeze at end of cleanup, they will | ||
gaal | oh, of course, we're reusing the bonus. duh. | 12:16 | |
but that's where the double free is happening then, no? | |||
hmm, no. | 12:17 | ||
Safefree == free + double free guard? then in cases where there *isn't* a tag it'll be freed twice. | 12:19 | ||
should be "if (tag) free (tag)" | 12:20 | ||
12:22
r0nny joined
|
|||
gaal | heh. running this in gdb, of course there is no double free :-( | 12:23 | |
Alias_ | ping? | ||
erm.. guys, that log bot? Anyone know what it is and where I can get one? | 12:24 | ||
gaal | Alias_: I don't know, sorry. maybe talk to the colabti admin? alternatively, iblech runs a private bot, ask him for a copy of the code? | 12:28 | |
Alias_ | colabti? | ||
gaal | Alias_: colabti.de/irclogger/irclogger_log/perl6 | ||
ah, a hop and a half away: colabti.de/IrcLogger2.html | 12:29 | ||
Alias_ | aha, found it | ||
yep | |||
12:33
iblechbot joined
|
|||
audreyt | okay... enough YAML for now | 12:38 | |
ingy threatens to port PArrows to perl5 and have a working/robust/stable Rules implementation | |||
on perl5 | |||
that's probably the next h'thon item | |||
audreyt goes back implementing PILN repr types and the Code type | |||
gaal | maybe ingy wants to come to .il in feb? | ||
audreyt | I don't know; I'll ask | 12:39 | |
Alias_ | So is Ingy doing the "travelling around the world" thing too? | 12:40 | |
audreyt | apparently so | ||
12:52
frodo72 joined
12:55
whiteg joined
13:08
azuroth joined
|
|||
avar made a megapugs hack | 13:12 | ||
well | |||
not exactly | |||
audreyt | mm? | ||
miyagawa arrived :) | 13:13 | ||
avar | avar.lir.dk/mw/HEAD/wiki/Perl_6 <- perl 6 pastebin | ||
using the syntax highlight from util/perl6.vim | |||
audreyt | ooh | ||
avar | \o/ | ||
rafl | audreyt: Great. | 13:16 | |
azuroth | any idea how to get `.nsv` streams to play under linux? | ||
apparently google does. | 13:17 | ||
avar | so, uh, cool?;) | ||
nnunley | avar: Pretty cool. | 13:19 | |
avar | I'm still trying to find a way to make vim work using stdin / stdout | 13:22 | |
i.e. echo food | vim ... - > yummie | |||
so I'm just using temporary files now | 13:23 | ||
13:23
whiteg joined
|
|||
gaal | avar: I think you can't, but -f and --cmd might help. | 13:28 | |
yay l33t :) | 13:30 | ||
avar | shell_exec( "vim -u {$this->mVimrc} -e +'setf perl6' +'run! syntax/2html.vim' +':w {$this->mOutFile}' +':qa!' {$this->mInFile}" ); | ||
just using that right now | |||
azuroth | how annoying. xine reckons it can handle it, but it doesn't seem to be able to | 13:35 | |
13:38
whiteg_ joined
13:39
ilogger2 joined
13:40
ilogger2 joined
13:41
mjl69 joined
13:44
PJF left,
stennie joined
13:46
alexe_home joined
|
|||
gaal | azuroth: maybe mplayer? | 13:51 | |
13:51
kane_ joined,
G2 joined
|
|||
obra | leo: pong | 13:59 | |
leo | obra: it was re META.yml - but too late for this release | 14:08 | |
obra | oh no :/ | 14:09 | |
leo | well, do you have a working meta.yml? | ||
obra | well, it sounds like andreas can fix it for us. | ||
oh. does parrot have _no_ meta.yml? | |||
leo | exactly | 14:10 | |
obra | ah. | ||
nod. ok. | |||
we can fix it next month | |||
leo | well - if there is a quick solution, I can still include it in 0.4.1 | ||
clkao | obra! | 14:11 | |
obra isn't enough of a META.yml wizard to definitely get it right | |||
clkao: hi! | |||
leo | I think we should discuss this on #parrot | ||
obra | and broken metadata is scarier than no metadata | ||
and andreas can fix it in PAUSE | |||
leo | ok | ||
obra | we just need to get him a list of what parrot has that it shouldn't | 14:12 | |
leo | yup - please send a TODO to p6i | ||
gaal | modulo not working, I have YAML round-trip working. | ||
so audreyt, when you get a moment, I need some explanation of IVars :) | 14:13 | ||
obra | leo: done | 14:17 | |
leo | thanks | ||
gaal | I modulorized not working. Roundtrip YAML works now, committing. | 14:24 | |
svnbot6 | r8607 | gaal++ | * eval :lang<yaml> deserializes pugs objects. | 14:26 | |
gaal | this probably breaks horribly with fancy classes :) | 14:28 | |
?eval class Foo; has $.x; my $x = Foo.new(x=>"xxa").yaml; say $x; my $y = eval $x, :lang<yaml>; say $y.yaml | |||
evalbot_8606 | OUTPUT[--- !pugs/object:Foo x: xxa pugs: unexpected node: <Scalar> | ||
gaal | here, '07... | ||
?eval class Foo; has $.x; my $x = Foo.new(x=>"xxa").yaml; say $x; my $y = eval $x, :lang<yaml>; say $y.yaml | 14:30 | ||
evalbot_8606 | OUTPUT[--- !pugs/object:Foo x: xxa pugs: unexpected node: <Scalar> | ||
azuroth | ?eval say "sarah smells"; | ||
valbot_860 | is now known as evalbot_8607 | ||
evalbot_8607 | OUTPUT[sarah smells ] bool::true | ||
gaal | ?eval class Foo; has $.x; my $x = Foo.new(x=>"xxa").yaml; say $x; my $y = eval $x, :lang<yaml>; say $y.yaml | 14:31 | |
evalbot_8607 | OUTPUT[--- !pugs/object:Foo x: xxa --- !pugs/object:Foo x: xxa ] bool::true | ||
gaal | tada! | ||
azuroth | wow, it must be true | ||
Alias_ | ?eval say "azuroth suxx0rs"; | 14:32 | |
evalbot_8607 | OUTPUT[azuroth suxx0rs ] bool::true | ||
Alias_ | ;) | ||
gaal | ?eval say "everything you read" | ||
evalbot_8607 | OUTPUT[everything you read ] bool::true | ||
azuroth | you'll pay for this Alias_ | 14:33 | |
gaal praises Syck and why | |||
azuroth | sar | 14:36 | |
ul8o | |||
14:37
azuroth left
14:57
Limbic_Region joined
15:02
bsb joined
|
|||
audreyt | gaal: pong | 15:09 | |
?eval my $x; $x = \$x; $x.yaml | 15:13 | ||
evalbot_8607 | "--- \n<ref>: ~\n" | ||
15:15
nothingmuch joined
|
|||
avar | ?eval my Num $x = 5.5; $y = \$x; $y.yaml | 15:19 | |
evalbot_8607 | Error: Undeclared variable: "$y" | ||
avar | ?eval my Num $x = 5.5; my $y = \$x; $y.yaml | ||
evalbot_8607 | "--- \n<ref>: 11/2\n" | ||
nnunley | 5.5 is being converted to a fraction? | 15:22 | |
audreyt | yeah, bad idea | 15:23 | |
since I don't think yaml supports rationals natively | |||
15:30
lisppaste3 joined
|
|||
audreyt | gaal: hm, where did you parse the tags stuff in syck load? | 15:38 | |
I can't seem to find the relevant line. | |||
ahh, syckNodeTag | 15:41 | ||
gaal | rehi | 15:50 | |
hello. :) | |||
I was looking at serializing rules previously, but was interrupted. | |||
audreyt | yo | 15:51 | |
want to take a stab in adding parsing tags to YAML::Syck? :) | |||
gaal | sure | ||
audreyt | k. I'll release 005 | 15:52 | |
gaal | btw please inspire the haskell' folks to add some kind of syntax making patmatches against sting prefixes less clunky :) | ||
Alias_ | 005? | 15:53 | |
audreyt | ("foobar", rest) <- splitAt 6, string | ||
s/,// | |||
gaal: isn't that good enough? | |||
Alias_ | Is this a versioning system based on spy code numbers? | ||
audreyt | Alias_: no, it's YAML::Syck 0.05 | ||
now with object dumping and no memory leaks | |||
Alias_ | ah :) | ||
gaal | hey, but did you figure out the double free? I didn't | 15:54 | |
Alias_ | Remind me again why YAML stopped being for outputting simple reports your secretary could read? | ||
audreyt | gaal: I added tag=NULL | ||
Alias_ | :) | ||
audreyt | Alias_: well, if your data type is simple, it still does that :) | ||
Alias_ | riiiight | ||
audreyt | like, if you only use the JSON subset of YAML. | ||
Alias_ | Did someone solve me "prove that a file only contains the JSON subset" | ||
my | |||
gaal | one serious issue with yaml is that it serializes badly to dead trees | 15:55 | |
Alias_ | For the purposes of sanity checking YAML data | ||
->load( $filename, json_subset => 1 ) | |||
gaal | (... think "page break") | 15:56 | |
audreyt: so can i svn up? | |||
audreyt | gaal: sure | ||
Alias_ | gaal: sure it does, within sufficiently simple subsets | ||
audreyt | Alias_: sure... it's called "dump with JSON.pm ;)" | 15:57 | |
Alias_ | If you like UGLY | ||
The thing that most attracted me to YAML was readability, not the hardcore serialization aspect | |||
Speaking of which, have you solved the Storable problems yet? | 15:58 | ||
gaal | "I have this excellent compression algorithm, if you happen to have data that is equivalent to what I had in mind" | ||
gaal needs to $work a bit... audreyt, can the tagparse stuff wait a few hours or did you want to get 005 out your-today? | 15:59 | ||
s/equivalent/equal/ | 16:00 | ||
re: splitAt: (a) I don't like having to count and (b) does the compiler generate the same code it did for an explicit 'a':'b':'c': patmatch? | 16:01 | ||
anymoose: gotta go, bbiab :b<~2hr> | |||
& | |||
audreyt | gaal: no, probably not. hm | 16:02 | |
Limbic_Region | audreyt - were you only joking when you journaled that objects would be done this weekend? | 16:06 | |
or just that one aspect of objects? | |||
16:07
marmic joined
|
|||
audreyt | Limbic_Region: no, objects as specced as S12 | 16:08 | |
Limbic_Region: but I've been distracted into YAML hacking... will go back to objects in a few mins | |||
Limbic_Region | heh | 16:09 | |
s/distracted/conned/ | |||
?eval ([+] 1..100).yaml | 16:13 | ||
evalbot_8607 | "--- 5050\n" | ||
Limbic_Region | heh - cool | ||
?eval { "this is $^weird" }.("cool").yaml | 16:14 | ||
evalbot_8607 | "--- this is cool\n" | ||
Limbic_Region | sweet | ||
Juerd_ | ?eval [].yaml | 16:15 | |
evalbot_8607 | "--- []\n\n" | ||
Juerd_ | Sometimes things just make sense. | ||
16:21
aufrank joined
|
|||
aufrank | ?seen schwern | 16:21 | |
gaal | i am teh eevil audreyt distraxx0r lol | ||
aufrank | are they fun distractions? | 16:22 | |
16:22
Alias_ left
|
|||
audreyt | gaal: I implemented blessed obj loading ;) | 16:22 | |
gaal | too fast for me, as usual :) | 16:23 | |
audreyt | nah, because clkao pressured me into it | ||
that's the thing about hackathons | |||
clkao | bwahaha | ||
audreyt | clkao: threatened to switch svk to Y::Syck | ||
clkao | now, what do you need from me | ||
audreyt | per-checkout .svk ;) | ||
clkao | mm | 16:24 | |
audreyt | gaal: do you have any inkling about the hash map style? | ||
the hs call Just Worked | |||
I can't seem to figure out how it differes from the p5 one | |||
clkao: YAML::Syck 0.07 out. | |||
clkao | k | ||
audreyt | 3 releases in an hour ;) | ||
aufrank | nice work, any parrot people in the room | 16:29 | |
audreyt | leo++ | 16:30 | |
aufrank | oh yeah, that's how we do it | ||
leo++ | |||
gaal | sorry, i keep getting abducted by cows. | 16:32 | |
leo | thanks folks | ||
gaal | audreyt: is YAML::Syck's syck the same version as pugs'? | 16:36 | |
why mentioned he's realeasing a new version soon, incidentally. | |||
the API exercise for emitting looks precisely the same to me, so only an implementation difference can explain it. | |||
audreyt | gaal: I took from svn snapshot | 16:37 | |
so probably a bit delta | |||
let me look at cping from pugs | |||
gaal | either that, or he's playing tricks on us: if (caller eq 'audreyt') { play_tricks } | ||
geoffb | Have to keep audreyt amused somehow, she clearly doesn't have enough things to work on ... | 16:38 | |
audreyt | gaal: yeah, reverting to the pugs version works | ||
okay, releasing 0.09. | |||
gaal | whee :) | 16:39 | |
aufrank | syck is a yaml parser, is that right? | ||
gaal | +emitter | 16:40 | |
yeah | |||
aufrank | k | ||
audreyt | 0.09 released. | ||
gaal | ?eval my $x = "hi aufrank".yaml; say $x; my $y = eval $x :lang<yaml>; say $y | 16:41 | |
evalbot_8607 | OUTPUT[--- hi aufrank hi aufrank ] bool::true | ||
gaal dances the round trip | |||
audreyt | gaal++ | ||
gaal | audreyt++ for $releases_per_hour | 16:42 | |
aufrank | nice! | ||
gaal | audreyt: also does objects, and simultaneously available at a CPAN near you for p5. ("after a pause", as leo++ so punningly put it) | 16:44 | |
audreyt | very punny | ||
-Opun | |||
aufrank groans | |||
audreyt | *rimshot* | 16:46 | |
gaal | oooh! rxRule is a String! I see rule serialization coming soon :) | ||
aufrank | we can pass around grammars in yaml | 16:47 | |
gaal | i bet that'll change sooner or later though. | ||
anyway, this looks like an excellent time to go home. see you later :) & | 16:48 | ||
aufrank | audreyt: what representation do you think rule objects will use? p6opaque? | ||
bye gaal | |||
audreyt | aufrank: probably p6opaque, yes | 16:49 | |
aufrank | does each representation define its own .yaml method? | 16:50 | |
or do some representations do a yamlizable role? | 16:53 | ||
audreyt | probably they need to be able to coerce into YamlNode | 17:05 | |
aufrank | so is eval $x :lang<yaml> the same as eval $x.as<yaml> ? | 17:07 | |
Limbic_Region | ?eval .25.yaml | 17:12 | |
evalbot_8607 | "--- 1/4\n" | ||
Limbic_Region | ?eval 1.2.3.yaml | ||
evalbot_8607 | Error: unexpected "." expecting exponent, term postfix, operator, postfix conditional, postfix loop, postfix iteration, ";" or end of input | ||
audreyt | aufrank: in the future, yeah, I think so ($x as YAML::Node) | 17:31 | |
oh wait, you mean $x is a string? | |||
audreyt is confused | |||
miyagawa: svn.kwiki.org/audreyt | 17:38 | ||
miyagawa: going to release JSON::Syck just for fun? :) | 17:40 | ||
miyagawa | maybe, yeah :9 | ||
audreyt | that will contribute toward your missing 13 modules | ||
miyagawa | right, exactly | ||
gaal | rehi | 17:47 | |
ooooh automatic yaml coersion | |||
or coercion. now we have to learn *two* languages. | |||
audreyt | XD | 17:49 | |
aufrank is cleaning house for the imminent return of my $girlfriend | 17:52 | ||
gaal | the ruby convention of letting user-defined objects live in a separate tag namespace appeals to me | ||
aufrank | oh, wait | ||
that would make her local to this block, right? | 17:53 | ||
gaal | vs. p5's !perl/CGI | ||
aufrank | my $*girlfriend, I guess? | ||
gaal | you could say our $girlfriend, but that doesn't look too good. | ||
aufrank | she is classy, though | ||
gaal | has $.girlfriend | 17:54 | |
audreyt | gaal: hm, how does ruby dump? | ||
gaal | !rub:object/CGI | ||
*ruby | |||
I made pugs do that too | |||
audreyt | that is correct | 17:55 | |
gaal | let YAML::Syck do !perl | ||
audreyt | however, p5 doesn't really work that way | ||
!perl/@CGI | |||
gaal | for compat with YAML.pm | ||
audreyt | means an array ref blessed into CGI package | ||
there's nothing object-ish about that | |||
aufrank | ruby calls it marshalling, right? | ||
audreyt | since in perl5, every thing is not an object. | ||
gaal | well, do Dump(CGI->new) | ||
lol # "since in perl5, every thing is not an object." | |||
money is no object! | 17:56 | ||
Juerd_ | I object. | ||
gaal | romance languages, ready, set, go! | 17:57 | |
aufrank | gaal: I think the pickaxe book has an example of marshaling and YAML | ||
gaal | I subject (you to trite puns) | ||
17:57
justatheory joined
|
|||
gaal | I think ruby's syck can install symbols right into the namespace. ahh, joy, in p6 that'll be interesting again. | 17:58 | |
aufrank | yeah, gaal it's page 414-417 in the pickaxe. | ||
gaal | I thought I was taking a break from the crazy exporter stuff and now it's chasing me! | ||
aufrank: thanks, is that book online? | 17:59 | ||
gaal is only picking up ruby now | |||
aufrank | gaal: no, not online unfortunately | 18:01 | |
but google seems to think that syck will eventually be included in ruby, if it's not already | |||
www.rubygarden.org/ruby?YamlInRuby | |||
gaal | I believe it is. | 18:02 | |
chris2 | syck is included since 1.8.0 | 18:03 | |
aufrank | gotcha | ||
chris2 | and it heavily fuds inside ruby's symbol table :| | ||
gaal | bbiab & | 18:04 | |
audreyt | bbl too & | 18:18 | |
rafl is looking for testers for the parrot 0.4.1 Debian packages: files.perldition.org/debian/ | 18:26 | ||
Juerd_ | pakket-architectuur (i386) komt niet overeen met het systeem (powerpc) | 18:29 | |
;) | |||
rafl | Juerd_: I can upload the source package as well, if you like. | 18:30 | |
Juerd_ | It's not a matter of me liking or wanting, it's a matter of you seeking testers :) | ||
rafl | Juerd_: Uploaded. | 18:35 | |
18:37
lisppaste3 joined
|
|||
Juerd_ | rafl: Compiles and installs | 18:43 | |
And runs | |||
rafl: Didn't have libicu34-dev, as Ubuntu doesn't provide it. It's in Build-depends, though. | 18:44 | ||
18:45
Limbic_Region joined
|
|||
rafl | Juerd_: That's fine. I want the Debian version to be linked against icu. | 18:55 | |
Juerd_ | What is it? :) | ||
rafl | International Components for Unicode library | 18:56 | |
Juerd_ | Sounds scary | ||
rafl | Did your camera already arrive, btw? | ||
It is, of course. | |||
Juerd_ | No, not yet | ||
I'm hoping it arrives the coming four days, because I want to use it Friday :) | 18:57 | ||
Limbic_Region | Parrot's continued dependency on ICU for unicode support is unfortunate | ||
rafl | Limbic_Region: Why? | 18:58 | |
leo | Limbic_Region: perl Configure.pl --without-icu | ||
Limbic_Region | well, for one its requirement of c++ | ||
the original plan for Parrot was to be very basic ANSI C compliance - for portability sak3e | |||
rafl | Juerd_: I guess so. I told my housemate to send it three or four days ago because I wasn't at home. I guess it'll arrive soon. | 18:59 | |
Limbic_Region | for another, the plan was that Parrot's Unicode interface would be very generic allowing many/any unicode library to be used | ||
and AFAIK, that hasn't happened | |||
leo | Limbic_Region: we have reduced the need for icu vastly - if it isn't there all compiles and tests too | ||
Juerd_ | As proven by my system :) | ||
Limbic_Region | leo - and still retained unicode support? | ||
Juerd_ | Who needs unicode ;) | 19:00 | |
leo | sure, if ICU is installed and used, you get enhanced functionality | ||
Juerd_ | leo: Isn't it better for a VM to provide a single stable interface? | ||
Limbic_Region | so then has Parrot been building in its own unicode library and not just an API to external libraries? | 19:01 | |
Limbic_Region guesses he should follow Parrot development more than just the summaries | |||
Juerd_ | That isn't so platform dependent that things differ even based on whether a certain lib is available... | ||
leo | Limbic_Region: no, w/o ICU there is no unicode support, that's it | ||
Limbic_Region | right - so my original sentiments stand | 19:02 | |
Juerd_ | leo: But don't we *always* want unicode support, and not depend on something external for it? | ||
Limbic_Region | not that making Parrot compile without ICU isn't a step in the right direction | ||
leo | patches welcome for you own unicode lib ;-) | ||
Juerd_ | It's not as if this icu thing is omnipresent. | 19:03 | |
leo | if we got a better lib we can use it - np | ||
Limbic_Region | right - someone made a massive patch which mostly worked so it got accepted | ||
no one else stepped up to the plate to support a different library | |||
Juerd_ | leo: This should perhaps be on a somewhat higher level of priority than "patches welcome" | ||
Perl 6 requires unicode support, and IIRC, Parrot was supposed to be used by Perl 6... | 19:04 | ||
leo | and icu provides unicode for paot - where is the problem actually? | 19:05 | |
rrr | |||
Limbic_Region | well, getting ICU to build did get easier Juerd_ | ||
Juerd_ | leo: Eh, unavailability of binary packages for my system. | ||
leo | we don't build icu - we use it as a lib | ||
Limbic_Region | not the point | ||
if you can't build the lib | |||
then you can't use unicode | |||
leo | Juerd_: compiling icu one from src isn't a biggy | 19:06 | |
Limbic_Region | and building ICU isn't trivial | ||
Juerd_ | leo: And, as L~R said, portability, although I'm just copying his argument now :) | ||
Limbic_Region | though it has been a year or more since I did it | ||
c++ isn't that big of a deal but it does go against the original dependency plan for Parrot | |||
leo | Limbic_Region: - then please don't tell rants | ||
Juerd_ | leo: Oh, but there you are mistaken. It is. Compiling anything from source IS a biggy, because it interrupts my standard work flow, and makes me WAIT for software to install. | ||
leo | Juerd_: what system are you using w/o any icu lib? | 19:07 | |
Juerd_ | When it comes to non-toy things, I either use available binary packages, or another tool altogether. | ||
leo: Apparently Ubuntu | |||
Limbic_Region | leo - I think you are misunderstanding my rant | 19:08 | |
leo | and ubuntu doesn't have any ICU binary package? | ||
Juerd_ | Oh, my previous apt-cache search had a spelling error. There is some icu available for this platform. An old version, but available. | ||
Juerd_ was searching for uci | |||
leo | ok then | ||
Juerd_ | s/.*// :) | 19:09 | |
Limbic_Region | I am not against ICU support for Parrot - I am against the idea that it is the only option for Unicode support | ||
but as you said - patches and volunteers welcome | |||
leo | Limbic_Region: it isn't - please provide another package | ||
it's currently the only one we have that's it | 19:10 | ||
Juerd_ | Limbic_Region: Does ICU have a bad reputation? | ||
leo | same with libgmp | ||
Limbic_Region | Juerd_ - no, not that I know of | 19:11 | |
leo | Juerd_: it provides much more than needed for usual defs of needed | ||
Limbic_Region | the developers were quite helpful at trying to resolve the build problems I was having on Cygwin | ||
but it is a monster | |||
Juerd_ | I see | ||
For a libicu-lite ;) | 19:12 | ||
s/For/Fork/ | |||
leo | that's not a new idea - but we for sure don't do it | 19:13 | |
Limbic_Region | actually, I tried | ||
but that was still when ICU was part of the parrot trunk | |||
leo | reinventing just smaller wheels is still a bad idea | ||
Limbic_Region | well, I wasn't reinventing anything - just trimming the enormous amounts of fat | 19:14 | |
Juerd_ | leo: Through histories, wheels in general have become available in much lighter forms. | ||
Though history in plural doesn't quite make sense in English :) | |||
leo | that's still wellcome of course - trimming existing stuff - otoh it is a lot of work | 19:15 | |
Juerd_ | leo: As it turns out, if the spokes are reliable, you can do with less :) | ||
And if you have a nice steel rail to roll on, rubber can be left off the wheel too | |||
The ultimate realisation is of course that the wheel itself was a bad idea :) | 19:16 | ||
leo | all ok - what parrot will need is one PMC (e.g. UnicodeString) that DTRT | 19:17 | |
19:26
hcarty joined
|
|||
rafl | Juerd_: Which version? | 19:27 | |
Juerd_ | rafl: 28 | 19:32 | |
rafl | Juerd_: Maybe report a bug against the icu src package to include 34 as well. | 19:33 | |
Juerd_: Should not be much work as it's in Debian already. | |||
Juerd_: Erm, packages.ubuntu.com/dapper/libs/libicu34 | 19:34 | ||
Juerd_ | Ahh, dapper | ||
But dapper is too scary on powerpc | |||
It barely even runs on i386 sometimes :) | |||
rafl | I know a lot of people using dapper. Hrm.. | 19:35 | |
Juerd_ | I've had quite some trouble with dapper on my laptop | 19:36 | |
19:36
Amnesiac joined
|
|||
svnbot6 | r8608 | gaal++ | YAML serialization - | 19:41 | |
r8608 | gaal++ | * emit PGE Rules (rx:g/a/.yaml works) | |||
r8608 | gaal++ | * normalize emitted booleans | |||
r8608 | gaal++ | * src/Data/Yaml/Syck.hsc cleanups | |||
r8608 | gaal++ | - YamlNode structure shouldn't change much henceforth | |||
r8608 | gaal++ | - remove implicit vars | |||
19:50
Lartuv joined
|
|||
clkao | ?eval rx:g/a/.yaml | 19:58 | |
valbot_860 | is now known as evalbot_8608 | ||
evalbot_8608 | "--- !pugs/Rule \nrule: a\nglobal: true\nstringify: false\nadverbs: \n g: 1\n" | ||
clkao | subalashi! | 19:59 | |
gaal | clkao: other direction coming up. | 20:05 | |
btw, what does "stringify" mean, anyway? :) | 20:06 | ||
aufrank | gaal: are you joking or in earnest? | 20:13 | |
stringify means "make into string" | 20:14 | ||
gaal | aufrank: I meant in the context of a PGE Rule record member :) | ||
aufrank | oh | ||
nevermind then :) | |||
gaal | what does it mean for a Rule to say "no stringify"? | ||
aufrank | not a clue | 20:15 | |
gaal | argh why does dist/ need manual cleaning after hsc hacking? :( | 20:17 | |
okay, I have Rule deserialization, but it segfaults when used. | 20:24 | ||
probably I need to copy values. | |||
just redumping out the deserialized Rule works, though. | 20:25 | ||
so I'll checkin, if $you can fix please do :) | |||
svnbot6 | r8609 | gaal++ | Yaml serialization - | 20:29 | |
r8609 | gaal++ | * parsing rules works (but they segfault when applied, probably need | |||
r8609 | gaal++ | a copy made?) | |||
gaal | ?eval my $r = rx:g/a/.yaml; (eval $r :lang<yaml>).yaml.say | 20:31 | |
evalbot_8608 | pugs: can't deserialize: pugs/Rule | ||
gaal | oh yes you can! | ||
call your younger brother. | |||
aufrank goes to airport | 20:32 | ||
bye all | |||
gaal | ?eval my $r = rx:g/a/.yaml; (eval $r :lang<yaml>).yaml.say | ||
valbot_860 | is now known as evalbot_8609 | ||
evalbot_8609 | OUTPUT[--- !pugs/Rule rule: a global: true stringify: true adverbs: g: 1 ] bool::true | ||
gaal | bye aufrank | ||
audreyt: I'm still getting double-frees with r70 | 20:37 | ||
is anyone still awake from the hackathon? | 20:39 | ||
ah, great, scratch that: make clean fixed my problems :) | 20:45 | ||
20:57
Southen_ joined
21:02
brentp joined
21:09
brentp joined
21:29
kanru2 joined
21:34
rantanplan_ joined
|
|||
gaal | audreyt: got perl -MYAML::Syck -le 'print Dump(\qr/foo/)' to work, but bizarrely, not Dump(qr/foo/). maybe tomorrow :) | 21:35 | |
for now, zzZ & | 21:36 | ||
buu | ?join #perl | 21:41 | |
evalbot_8609 | you should only do ?join in a private message so other bots don't accidentally come. | ||
buu | arfgh | ||
sigh | |||
Now ?join gets the svnbot and not the evalbot | |||
21:47
hcarty left
22:05
bsb left
22:18
DaGo joined
|
|||
gaal realizes a SYB approach is actually warranted to transform all native types like Rules (and probably Roles etc) to yaml | 22:28 | ||
gaal goes back to sleep | |||
22:38
dduncan joined
22:57
penk joined
|
|||
dduncan | so apparently Parrot 0.4.1 was just released | 23:04 | |
since audreyt's proposal had Pugs 0.2.11 going out just after this, how much time do I have left to get in changes first? | 23:05 | ||
... will check journal ... | |||
svnbot6 | r8610 | stevan++ | PIL/Native/Roles/* | 23:12 | |
r8610 | stevan++ | - small comment update for Num.pil | |||
r8610 | stevan++ | - added new Seq role which implements an immutable sequence type with | |||
r8610 | stevan++ | the canonical set of list operations (ala LISP/Scheme/etc), all it | |||
r8610 | stevan++ | needs is to have .head and .tail defined | |||
r8610 | stevan++ | PIL/Native/Classes/* | |||
r8610 | stevan++ | - a new folder with a set of core PIL^N classes which will be used to | |||
r8610 | stevan++ | build the code Perl6 classes (maybe,... uhm, I think, it's my current | |||
r8610 | stevan++ | thought direction at the moment at least) | |||
r8610 | stevan++ | - added immutable Sequence and LazySeqeunce clases, neither is really | |||
r8610 | stevan++ | tested (waiting on the repr refactor from audreyt++), and LazySequence | |||
r8610 | stevan++ | has some issues when a methods must return a new sequence (apply, filter, | |||
r8610 | stevan++ | & reverse) since that sequence won't be lazy (I have to ponder this | |||
r8610 | stevan++ | some more before I can decide what is the best approach for it, ideally | |||
r8610 | stevan++ | they will return lazy sequences too). | |||
23:27
vel joined
|
|||
svnbot6 | r8611 | stevan++ | docs/notes/PILN_core_classes.pod | 23:27 | |
r8611 | stevan++ | - start of a document describing the core PIL^N classes/roles, | |||
r8611 | stevan++ | think of these as being like Parrot's core PMC types, but more | |||
r8611 | stevan++ | powerful than the native PIL^N methods. More to come on this | |||
r8611 | stevan++ | later. | |||
23:30
lisppaste3 joined
|
|||
dduncan | regarding 6.2.11 release date, the last journal mention was on dec 24th, which said in early january just after Parrot 0.4.1, and both of those prerequisites now exist | 23:57 | |
aside from getting all the tests to pass or skip, are there any other todo items now? | 23:58 | ||
23:58
mlh joined
|