www.parrot.org/ | Parrot 1.4.0 "Mundo Cani" Released! | For 1.5: Remove Deprecated Features | Planet Parrot planet.parrotcode.org/
Set by moderator on 4 August 2009.
cotto tough love 00:10
purl tough love is "Tough love" is just the right phrase: love for the rich and privileged, tough for everyone else.
wayland76 purl, that's an acute case of cynicism you've got going there :) 00:18
purl wayland76: sorry...
00:23 Limbic_Region joined
wayland76 Does anyone know if there are plans to support glob() in Parrot? 00:30
00:31 kthakore joined
kthakore Hello> 00:31
?
chromatic Slow channel today, kthakore.
kthakore oh hi chromatic
um looking in to parrot for NCI 00:32
chromatic Tene, ping
kthakore I thought I would do a prototype on a simple library
but no clue where to start
00:32 zak_ joined
kthakore also chromatic may I PM you? 00:32
chromatic If necessary. I'm working on getting you website access, if that's your question. 00:33
wayland76 I know even less, but have you seen ncigen, and docs.parrot.org/parrot/latest/html/...l.pod.html
kthakore chromatic, oh no 00:34
thats fine
chromatic ncigen is the place to start.
kthakore I wanted to ask you some question I had on SDL parrot but I thought it was off topic
wayland76, will this create perl 5 NCI too? 00:35
or do I have to script that myself?
wayland76 kthakore: Perl 5 doesn't do NCI until perl5 runs on Parrot
kthakore wayland76, umm chromatic has a module on cpan 00:36
wayland76 Perl5 does XS instead
kthakore hold let me get it
wayland76 Unless I'm wrong :)
kthakore search.cpan.org/~chromatic/P5NCI-0.31/ 00:38
will this work?
chromatic I wouldn't recommend it.
The idea is right, but the implementation is wrong.
wayland76 well, I hope chromatic answers; I bow to everyone else in their superior knowledge of NCI :)
kthakore oh btw I am trying to do this wiki.github.com/cthulhuology/SDLPerl/v300 00:40
chromatic I don't think ncigen can emit Perl 5, but it shouldn't be too difficult.
kthakore chromatic, hmm ... then how would I do this? For output, it would generate either or both Perl 5 and Parrot code that
chromatic If I were writing the SDL Perl 5 bindings, I'd generate a thunk library with only the necessary thunks. 00:41
00:41 mokurai joined
kthakore excuse me I was trying to google thunk but it failed so can you tell me what that is? 00:42
purl that is how it does it.
kthakore purl: shut up
purl make me
chromatic A thunk? That's the code that translates between different calling conventions, from Perl 5's @_ to whatever C uses on your platform. 00:43
kthakore oh
so I guess the way this will work is: (correct me if I am wrong) 00:44
[c headers] -> [ parrot NCI ] -> [Perl 5 code] using ncigen then a grammar 00:45
what is the perl 5 code calling?
XS or NCI library
00:45 jtal joined
kthakore "opens the appropriate library with NCI or Parrot NCI" thats what the idea says 00:46
chromatic XS... a Perl 5 NCI library will be XS. 00:47
Perl 5 SDL bindings oughtn't go through Parrot.
kthakore hmmm .... thats what the idea is ... this way no compilation is required by end user 00:48
chromatic NCI isn't quite to that point yet.
kthakore "SDL binding for either language by running the parser against SDL.h" this part is out of the question then? 00:51
00:53 jlolofie joined
chromatic That should work. 00:53
That'd be part of the build process... check in the generated file and distribute that.
kthakore and then can't I have it make P5NCI code which calls an XS library that we compile and distribute for each platform? 00:55
chromatic Yes, that's what I'd do.
kthakore ok that makes sense now 00:56
now lets see if I can make this for a hello world library 0_0
how do I make a parser in parrot? is it similar to Antrlworks? 00:57
wayland76 kthakore: Does this mean that you'll be working on nci? 00:58
chromatic See examples/languages/squaak
kthakore wayland76, longterm road plan for SDL_perl v3.0.0
wayland76, I am going to try atleast 00:59
this way I can cover parrot SDL lib too
wayland76 Ok, because I've just been looking at ncigen, and I've had some ideas to make it a lot more flexible :)
kthakore wayland76, great
let me know when you have code I can use :P
wayland76 Well, maybe not a lot, but some 01:00
kthakore: Will do
kthakore oh great
I am at github.com/kthakore and I will probably have the repo of this stuff there
wayland76 Ok 01:01
My plan is to contribute everything back into the Parrot repo
Unfortunately, I don't speak any of the Parrot-related languages except Perl and C
jlolofie so docs say PAST::Op of pastype call, calls method of name and passes child nodes... where can I read this about this parent->child stuff?
I think I missed that bit
kthakore I am ok with c and just starting with perl 01:02
my goal in all this is to never do game programming in python
I think perl broke me
chromatic I've done game programming in Python. It's not bad.
kthakore chromatic, ya but wouldn't perl be better? 01:03
actually I am not qualified to say that
chromatic It depends on the library. Moose + PerlGame would be fantastic.
kthakore I just prefer perl
yup
thats my wishlist
PerlGame
an upgrade on pygame
but I need to get SDL past v2.5.0 01:04
jtal ...the right function is getting called but with no args
kthakore does parrot have a git repo somewhere? 01:06
wayland76 SVN
kthakore aww :(
ok
jtal wow after reading my original question it seems like I dont speak english.. if anyone can help me I can restate the question :>
wayland76 kthakore: www.parrot.org/dev
kthakore thank you 01:07
was heading there now
wayland76 (Well, that links to SVN and a bunch of other stuff)
kthakore chromatic, what is a good time for me to email you?
chromatic Whenever is fine. 01:08
kthakore great thx
oh almost forgot
who moderates sdl-devel@perl.org
my topics keep disappearing!
chromatic No idea... probably Ask and Robert.
kthakore where do I find them? 01:09
chromatic webmaster@perl.org
kthakore cause I keep getting emails from new comers saying they have trouble posting to sdl-devel
btw some did try moose + SDL (not yet perlgame) 01:10
its is here github.com/domm/Game-PerlInvaders 01:11
oh man I got so off topic
sorry channel gods
eternaleye (backlogging) Coke: re 'changes in commit id foo', git diff <sha1> <same_sha1>^ (note trailing caret, means 'the one before this') 01:13
01:14 kid51 joined
wayland76 (Incidentally, I was wrong about the ideas for extra flexibility; they won't work :| ) 01:27
kthakore wayland76, aww why? what was the idea? 01:30
wayland76 Basically, it involved a complete misunderstanding of the codebase, so probably just as well :)
kthakore nice 01:32
thats how I code
crazy idea + unit test
works everytime
wayland76 I do that, but without the unit tests :) 01:34
kthakore oh
then it doesn't work
:P 01:35
purl: goodnite
purl kthakore: huh?
kthakore purl: good nite
purl kthakore: huh?
kthakore purl: shut up
purl make me
kthakore gnitre
jtal purl, child nodes? 01:37
purl jtal: i don't know
jtal me too either
Tene chromatic: pong 01:40
chromatic Know much about ncigen?
wayland76 Hi. I'm looking at ncigen's "actions.pm". Currently ncigen dies with this error: "Method 'text' not found for invocant of class 'C99;Grammar'". The line of code that it appears to be in reads: $sm.name(strip_spaces($declarator.text())); 01:41
My question is, has the "text" method changed its name or something? 01:42
Tene ncigen is at best unfinished.
ncigen wasn't able to parse any of the headers I tried it on. 01:43
eternaleye, Coke: the best way to see what's in a commit ID is 'git show <id>' 01:45
wayland76 Yeah, I realise that ncigen is unfinished. 01:47
I've also been told that it was tewk's baby, and he's disappeared
Tene Also true! 01:48
wayland76 What's that "actions.pm
written in?
NQP?
purl it has been said that NQP is not quite perl (6) or svn.perl.org/parrot/trunk/compilers/nqp
Tene Yes. 01:50
chromatic: you missed a word in "web applications will native client-side applications" in your latest blog post. 01:51
chromatic Thanks. 01:54
Tene chromatic: you pinged me earlier?
chromatic About ncigen. 01:55
Tene Ah, right, context. Okay, thanks. 01:56
kid51 Only one file came in during 'svn up'. Summer heat must be getting to people. 01:58
Tene svn rm * ; svm commit -m 'kid51 made me do it'
kid51 ooh, brutal! 01:59
cotto kid51, they're called "branches" ;) 02:02
wayland76 Quick question; how do I get the text from a PCT node? 02:03
Or even better, where do I find the answer to questions like that?
Tene wayland76: what line of ncigen's actions.pm?
wayland76 235 02:04
(or thereabouts; it contains the word "text", anyway)
Tene You must be using an old ncigen... that uses ~$declarator
and no instance of .text in that file
wayland76 Ah, ok
Tene $sm.name(strip_spaces(~$declarator));
wayland76 I think it's the 1.4.0 version 02:05
kid51 cotto: Ya know, 2 years ago this time I was almost the only person in the project using branches.
Now they're positively chic!
wayland76 Tene: Thanks :)
Tene wayl\tyes, looks like it was updated on (tewk 2009-07-23 22:44:12 +0000 235)
wayland76 Ah, I see the problem. How do I change back to HEAD from the 1_4_0 tag? 02:10
Tene git-svn?
purl somebody said git-svn was amazingly great or trac.parrot.org/parrot/wiki/git-svn-tutorial
Tene or just svn?
wayland76 Just svn
checkout -r 02:11
?
Tene with svn, a branch is just a directory
so just svn co .../trunk 02:12
dalek rrot: r40423 | cotto++ | branches/pluggable_runcore/src/runcore/cores.c:
[prof] write info for the previous instruction rather than the next
kid51 must sleep 02:19
purl $kid51->sleep(8 * 3600);
02:20 TiMBuS joined 02:28 PacoLinux joined 02:36 preflex_ joined 02:40 allison joined
allison no YAPC::EU hackathon for me :( (still waiting on visa) 02:41
02:41 janus joined 02:42 hercynium joined 02:45 satrac joined
wayland76 allison: No doubt you're looking for some way to fill in the time :) 02:46
allison wayland76: pcc_rewiring wins :)
wayland76 Have you considered the latest patch on: trac.parrot.org/parrot/ticket/560
Ah :) 02:47
Well, I don't want to hold you back there either :)
allison hadn't revisited the ticket, looking now
wayland76: did a deprecation notice make it into 1.4 02:48
?
wayland76 Probably not 02:49
Not that I know of, IOW
And I realise that means that it has to wait another 6 months for the full patch
But I'm guessing that that other patch I made should (if suitable) be able to be applied now, if the other things said in the ticket are true 02:50
allison yes, the smaller patch can be applied now
and, it looks reasonable
the separator should become a config item, but not critical that it be added right now 02:51
wayland76 I agree, but I don't have enough of a handle on the codebase to be able to do that quickly :) 02:52
IIRC, I asked on IRC about it at one time, and was told that the same thing was done elsewhere 02:53
02:55 satrac joined
allison which is a good sign it needs to be generalized at some point 02:58
wayland76 Agree
Where are the config items set? 03:02
(lunch afk&, will backlog) 03:04
03:07 cognominal joined 03:14 PacoLinux joined 03:20 donaldh joined 03:40 tetragon joined 03:42 wayland76 joined 04:01 theory joined 04:03 treed joined
dukeleto when do I need to use CTX_REG_INT versus REG_INT when attempting to set register values from C? specifically, from parrot_debugger 04:17
both seem to work for what I need to do, so I guess it is not a pressing issue. but I would like to understand more about Parrot_Context's 04:29
it looks like I have assigning to integer registers working in the debugger. I now need to generalize it to the other types of registers 04:45
dalek rrot: r40424 | cotto++ | branches/pluggable_runcore/src/runcore/cores.c:
[prof] share a single filehandle and use a static counter to close it from only the outermost runloop
05:10
05:17 wayland76 joined
cotto not quite there yet: mksig.org/parrot/callgrind_broken.png 05:23
GeJ cotto: shiny! 05:24
what app is it?
cotto kcachegrind with my extravagantly experimental profiling runcore 05:25
dukeleto cotto: that looks really sweet 05:38
cotto especially the numbers
GeJ About that... I wanted to ask you, do you think that "nan%" is an indication of a possible bottleneck? ;) 05:40
05:58 uniejo joined 06:22 tetragon_ joined 06:28 payload joined 06:40 wayland76 joined 06:52 HG` joined 07:21 donaldh joined
moritz seen rafl 07:53
purl rafl was last seen on #moose 7 hours, 3 minutes and 8 seconds ago, saying: perigrin: it used to be. nowadays it really isn't :)
cotto seen rofl 07:56
purl I haven't seen 'rofl', cotto. Close matches are: rofll [200d, 7:42:17], profleolo [9y, 201d, 22:40:26]
cotto seen rotfl
purl I haven't seen 'rotfl', cotto
cotto seen me 07:57
purl me was last seen on #perl 1 years, 89 days, 16 hours, 2 minutes and 34 seconds ago, saying: purl, karma me [May 8 15:48:29 2008]
08:01 cognominal joined
cotto msg kid51 I suspect I need to add a configure step to detect if clock_gettime is available. What are the steps I need to go through? 08:22
purl Message for kid51 stored.
08:52 chromatic joined 09:07 zak_ joined 09:20 sjn joined, he joined, he_ joined 10:05 bacek joined
bacek o hai 10:13
10:33 preflex joined 11:20 quek joined, donaldh joined
dalek rrot: r40425 | NotFound++ | trunk/src/pmc/exporter.pmc:
[cage] full use of SET/GET ATTR in exporter PMC
12:15
12:24 quek left
dalek rrot: r40426 | NotFound++ | branches/auto_attrs (11 files):
merge from trunk r40425
12:26
rrot: r40427 | NotFound++ | branches/auto_attrs/src/pmc (2 files):
set auto_attrs in exporter and pointer PMCs
12:52
12:52 kj joined
dalek kudo: 6ba717c | moritz++ | README:
[README] the package is called libicu-dev in lenny, celeon++
13:21
rrot: r40428 | jonathan++ | trunk (2 files):
[core] Need to export Parrot_oo_find_vtable_override_for_class so subclasses of Object are still able to look up vtable overrides.
13:23
13:28 JimmyZ joined
dalek tracwiki: v7 | coke++ | git-svn-tutorial 13:29
tracwiki: fix REPO url
tracwiki: trac.parrot.org/parrot/wiki/git-sv...ction=diff
Coke odd. I do a git svn clone, then do an git svn rebase, and the rebase actually seems to do something. 13:31
shouldn't that be a noop at that point?
PerlJam Coke: I would think so unless there have been upstream commits in the mean time. 13:33
Coke I just did git svn clone -s -r 40000 svn.parrot.org/parrot # 13:35
then I ran a script which used to do "svn up" but now does "git svn rebase", and it started enumerating all the commits. 13:36
I wonder if this was the cause of my confusion earlier in teh week.
PerlJam well, the latest rev is 40428, so if you cloned at 40000 and did a rebase, it started pulling all the revs in between 13:38
caveat lector--I haven't use git-svn in a while and this is all from my fallible human memory :)
dalek tracwiki: v8 | coke++ | git-svn-tutorial 13:39
tracwiki: pick a more recent commit in case someone is cut and pasting this.
tracwiki: trac.parrot.org/parrot/wiki/git-sv...ction=diff 13:40
PerlJam Coke: svn info svn.parrot.org/parrot | awk '/^Revision:/ { print $2 }' # get the most recent revision number. 13:44
Coke PerlJam: I wanted /some/ history, perhaps unnecessarily. 13:46
PerlJam okay. 13:48
13:49 kj joined
PerlJam $(svn info svn.parrot.org/parrot | awk '/^Revision:/ { print $2 }') - 100; # ;-) 13:49
13:50 Austin joined
Austin Moo! 13:51
Good morning, purl.
purl And good moroning to you, Austin.
Austin Is there anyone awake who is clueful about packfile problems? 13:52
PerlJam Austin: you're going to fix whatever problems there are if only you have someone to talk to about them? :) 13:53
Austin Exactly.
Hopefully, someone can tell me why I'm having this problem, and I'll do whatever is needed to stop having it.
:)
PerlJam Austin++ here's hoping you find someone clueful
Austin Don't go crazy with that karma. I suspect "doing whatever" translates into "reorganizing my grammar." 13:54
PerlJam doing *something* to further parrot progress is always worth some karma 13:56
Austin Thanks.
In the mean time, I don't suppose you've encountered the case where you suddenly start getting pbc load failures, with a bunch of accompanying message about "size in directory doesn't match size at offset...", eh? 13:57
PerlJam nope
Austin Bummer. 13:58
Do you know what a directory is,even? 13:59
(packfile-wise)
13:59 payload joined
dalek tracwiki: v13 | kjs++ | PIRCDevelopment 14:00
tracwiki: add TOC for PIRC guts documentation. Will fill in the gaps over next weeks.
tracwiki: trac.parrot.org/parrot/wiki/PIRCDe...ction=diff
TT #851 closed by coke++: [DEPRECATED] .find_key method on PGE;Match objects 14:02
rrot: r40429 | coke++ | trunk (2 files):
Remove PGE::Match's find_key method (TT #851)
14:03
tracwiki: v14 | kjs++ | PIRCDevelopment
tracwiki: add entry for symbols.
tracwiki: trac.parrot.org/parrot/wiki/PIRCDe...ction=diff
14:17 payload joined 14:23 theory joined 14:26 treed joined
dalek tracwiki: v15 | kjs++ | PIRCDevelopment 14:31
tracwiki: start a section on heredoc parsing.
tracwiki: trac.parrot.org/parrot/wiki/PIRCDe...ction=diff
particle austin: a packfile directory lists the packfile segments in a packfile 14:42
Austin Thanks, particle.
particle the error you're seeing is spit from src/packfile.c:2105 14:43
Austin Yep. Found that.
Sadly, it's compiled code. I have no idea why I'm getting it.
particle directory segments are described in docs/pdds/pdd13_bytecode.pod:297
Austin Do you know the circumstances under which a segment is created (by parrot compiling pir, if that matters)? 14:44
kj Austin: segments are created during bytecode generation
look at compilers/imcc
Austin Yes, but when?
purl but when is the election? I might be there just in time for Austria to annex CA.
kj particularly, the file pbc.c i think
during compilation
Austin Is there one per function, one per namespace statement, one per unique namespace...?
kj imcc parses PIR code, creates a data structure and then traverses over that to generate the bytecode. 14:45
ehm
lemme think
there's a number of segments
1 segment for the actual bytecode
just one i think
1 segment for all the constants
Austin Aha.
So it's not "too many of ..." whatever, then, if there's only one.
kj so bascially the different types of information of the bytecode are stored in diffferent types of segments 14:46
1 segment therefore is pure for the actual integer numbers that represent the instructions (and also integer arguments, as they are stored "in-line", as opposed to NUM and STRING arguments, which are stored in the constants segments; in the bytecode they are represented by an integer as well, which is the index into the constants table) 14:47
pbc.c would be of interest perhaps
14:47 Andy joined
particle the different types of segments are: directory, default, fixup, constant table, bytecode, pir debug, annotations, pic data, dependencies 14:48
kj there's a segment for JIT info as well i believe
Austin What I seem to have is a bunch of .pir files being included by close.pir. 14:49
14:49 Psyche^ joined, theory joined
particle what is the full error text? 14:49
Austin At this point, if I remove one file from the list, I get a pbc that doesn't have these packfile problems.
particle: Lemme rebuild it. Just a sec.
nopaste.org/p/a5YrkyC1nb 14:52
Based on what you said above, it seems like several segments are hosed.
kj i have never seen that before. have you got a cleanly built parrot? 14:53
Austin So I wonder if the file header isn't hosed.
particle yes indeed
Austin kj: It's been working for some time now.
particle gonna need gdb to dig into that
Austin -r 40290
Also, I notice that the pbc_header.pl script no longer works. 14:54
14:56 payload joined
Austin Ahh. 14:56
15:04 Austin joined
Austin Well, that was distracting. 15:04
Coke msg whiteknight - posted reply to TT #872, +1 if you like. 15:05
purl Message for whiteknight stored.
Coke (this is regarding the ``deprecation'' of the pasm1 compiler.
Austin Oh. Mine was regarding my machine spontaneously rebooting on me. 15:12
(The dreaded blue-screen of death...) 15:13
15:13 masak joined
masak ok, so I have a string of some encoding, say UTF-8. is there a way to convert the string to binary (in PIR) and traverse the binary string byte-for-byte? 15:14
15:14 davidfetter joined
masak I've looked in pdd28 and ch04_variables and the test suite, and things seem to point in that direction, but I find nothing conclusive. 15:14
Coke transcode it to binary? 15:15
masak aye.
this is for .encode in Rakudo.
Coke no, I'm saying, do that. =-) 15:16
masak aha.
Austin Masak: just index it.
Coke .local int bin_coding ; bin_coding = find_encoding 'binary'
masak Austin: but won't the indexing be char-level?
Coke: so far, so good... 15:17
Coke then use trans_encoding to transcode it...
masak :)
masak greps for how to use trans_encoding
Coke new_string = trans_encoding old_string, bin_coding
masak gracias. 15:18
purl grassy ass!
Coke no thanks, I already have one.
masak purl: you're not fit for polite company.
purl masak: excuse me?
Coke purl, your mother?
purl rumour has it my mother is the root of all evil
masak
.oO( mother of purl )
15:19
Austin Or iterate it.
Patterner purl: money?
purl i guess money is the root of all aevil.
15:21 donaldh joined 15:22 masak` joined
masak` urgh. flaky conn. 15:23
15:32 HG` joined 15:37 estrabd__ joined
masak Coke: once I have the binary string, how can I iterate over it? 15:52
I naĆÆvely tried 'it = iter new_string', but that didn't fly. 15:54
16:01 mikehh joined
Coke I thought that we removed iteration from strings. 16:11
something like one_char_string = substr string, start, 1 ? 16:12
or perhaps one_char_string = ord string, pos
er, that last one returns an int, not a string, I think. 16:13
16:13 masak` joined
masak` ok, I figured it out, looking at others' examples. 16:15
Coke woot.
masak` I see from the backlog that you answered as well, thanks.
now, I get "encoding 'binary' not found".
so I grepped for find_encoding, which lead me to try 'singlebyte' instead.
same result. 16:16
dalek TT #904 created by gerd++: PGE trigger a "Segmentation fault" on ppc 16:17
treed When was iteration removed from strings? 16:18
masak anyway, what is the right way to transcode to binary? 16:19
treed binary what?
purl i heard binary was => no longer just a "fancy comma." ... It provides scalar context to both sides. 16:20
treed You mean converting an integer to a string in binary representation?
masak treed: no, I mean converting a string to its UTF-8 codepoints.
represented as a list of bytes.
hm, I said that wrong. "...to its Unicode codepoints, encoded as UTF-8." 16:21
masak still learning
purl learning is not wasting time
masak purl: no, but talking to you is.
purl masak: what?
16:22 kj joined
treed Well, I'm pretty sure Parrot's strings are natively unicode. 16:22
So you could just use ord, I'm thinking
masak I find some occurrences of 'singlebyte' in t/op/string.t, but they're all marked SKIP.
treed the 3rd arg to ord is the index, so you could loop on that
There may be a better way though.
masak that's how I loop now, yes. 16:23
problem is, I never get to that point, because I can't do the conversion.
treed Conversion from what to what?
masak from a Rakudo string to a list of UTF-8 bytes. 16:24
the step I fail on is 'bin_encoding = find_encoding "singlebyte"'
treed Is there a list of encodings somewhere? 16:25
masak if you're asking me, then I don't know. I'm just grepping for hints in the source tree.
treed ENCODING *Parrot_default_encoding_ptr; 16:29
ENCODING *Parrot_fixed_8_encoding_ptr;
ENCODING *Parrot_utf8_encoding_ptr;
ENCODING *Parrot_ucs2_encoding_ptr;
ENCODING *Parrot_utf16_encoding_ptr;
I think that's it.
Try fixed_8, maybe. 16:30
Austin Masak, binary is a charset, not an encoding. I think you may need a different opcode.
Try "find_charset" instead of "find_encoding" maybe? 16:31
16:31 masak` joined
treed 32:CHARSET *Parrot_iso_8859_1_charset_ptr; 16:31
33:CHARSET *Parrot_binary_charset_ptr;
34:CHARSET *Parrot_default_charset_ptr;
35:CHARSET *Parrot_unicode_charset_ptr;
36:CHARSET *Parrot_ascii_charset_ptr;
Yeah, sounds right, then.
I find that... interesting though.
That "binary" is a charset.
masak` because it doesn't work?
ah. 16:32
treed I mean, if it just converts whatever charset to its byte-by-byte representation, then it's not idempotent.
It would depend on the source string.
Unless it's something else. 16:33
moritz but still very useful, no?
treed Maybe useful, but it's not a very logical place to have that feature.
masak` I'm inclined to agree.
is that why it doesn't work? :)
treed I'd expect an opcode that just gives a FixedIntegerArray.
masak` yes please.
treed Based on the current charset/encoding. 16:34
16:36 mokurai joined
masak ok, so what would please me at this point would be information about the current way to do transcoding to binary. I can't find a way. 16:37
treed hasn't had to do it.
I can see if cardinal implements that.
Just a sec.
masak thanks.
even learning that it's not possible in Parrot right now, though irritating, would at least help in explaining why my efforts so far have failed. 16:38
treed Cardinal implements each_byte, but it's not doing it as integers, but rather as characters (so width=1 strings)
So it's just a normal iter 16:39
masak sorry, I didn't get the part about characters.
but it kinda sounds like what I want.
what source file should I look at to learn more?
treed github.com/cardinal/cardinal is the repo 16:40
src/classes/String.pir is the file
I wonder if it's broken though.
Since someone earlier mentioned that iterating strings was removed.
NotFound If you want codepoint values based on current charset and encoding, that's not binary ar all. 16:41
treed Yep.
github.com/cardinal/cardinal/issues#issue/22
So it was removed.
And that's why that test started failing.
masak ok.
so, still no way forward.
treed wonders why string iteration was removed. 16:42
Seems like at least Python and Ruby need it.
trac.parrot.org/parrot/wiki/KeysRefactor 16:44
Keys currently serve only one purpose: navigate in nested containers. Iteration over containers was removed as part of key_revamp branch.
They could have left it in until the new method was in.
Or is it in? 16:47
bacek_at_work: ping? I see you wrote that wiki page. Could you fill us in? 16:48
16:52 particle joined
Coke masak: sounds like you don't actually want binary. 16:56
what are you trying to do? 16:57
masak Coke: there's a Str and a Buf type in Rakudo.
the Str type provides access to the characters, and the Buf type to the bytes.
I want to be able to encode a string to a list of bytes.
Coke ok. sounds vaguely like binary, then. 16:58
(Side note: simon was in the middle of doing a complete rewrite of parrot strings which seems to have stalled.) 16:59
let me try the binary and see what happens.
masak thanks.
dalek kudo: c10f66d | jnthn++ | (4 files):
Make implementing a method postcircumfix:<( )> work so you can make an object invokable. This bumps required Parrot version.
17:00
kudo: 25b6d0b | jnthn++ | src/setting/Junction.pm:
Make junctions invokable; they invoke all elements and return a junction of the return values.
kudo: 459f5ab | jnthn++ | :
Merge.
masak Coke: things actually seem to work now.
Coke: pmichaud suggested I try 'fixed_8'. 17:02
pmichaud++
Coke ok. binary is a charset, not an encoding (my bad). transcharset to binary fails.
so if you have something that looks right, great. "i hate parrot strings"
sorry about the dead end. 17:03
masak no prob. seems to have worked out.
17:04 AndyA joined 17:06 gaz joined
nopaste "mikehh" at 90.209.117.193 pasted "PATCH for codetest FAILure at r40429 - tabs in src/pmc/exporter.pmc" (17 lines) at nopaste.snit.ch/17486 17:12
mikehh make test/codetest PASS after patch 17:13
dalek tracwiki: v16 | kjs++ | PIRCDevelopment 17:14
tracwiki: more on heredoc
tracwiki: trac.parrot.org/parrot/wiki/PIRCDe...ction=diff
17:16 kj_ joined
dalek tracwiki: v17 | kjs++ | PIRCDevelopment 17:17
tracwiki: more updates.
tracwiki: trac.parrot.org/parrot/wiki/PIRCDe...ction=diff
tracwiki: v18 | kjs++ | PIRCDevelopment 17:24
tracwiki: more on heredoc processing. the main function.
tracwiki: trac.parrot.org/parrot/wiki/PIRCDe...ction=diff
Coke Is anyone using their own subtype of NameSpace? 17:29
17:30 allison joined
dalek tracwiki: v19 | kjs++ | PIRCDevelopment 17:38
tracwiki: trac.parrot.org/parrot/wiki/PIRCDe...ction=diff
Coke bets not. 17:40
So, if I wanted to track my own information in a NS, but subclassing NS doesn't work, any suggestions on how to track attributes for a NS? 17:41
(I suppose I could do something evil like stick it in the namespace using a key that would normally be impossible, (like one that started with the HLL NS separatror) 17:42
17:44 MoC joined
dalek tracwiki: v20 | kjs++ | PIRCDevelopment 17:46
tracwiki: trac.parrot.org/parrot/wiki/PIRCDe...ction=diff
NotFound Coke: There is some problem other than the one with the HLL main namespace? 17:47
dalek tracwiki: v21 | kjs++ | PIRCDevelopment 17:53
tracwiki: trac.parrot.org/parrot/wiki/PIRCDe...ction=diff
Coke If I had a working example of using an hll_map'd namespace, that'd get me 90% of the way there. ISTR you'd have to do this at :immediate time, and if I do that, I get a segfault. If I just do it :load time, I get no mapped type.
;(just a plain NameSpace)
(see #867( 17:55
NotFound Coke: I'll take a look.
Coke hurm.
mikehh include/parrot/oo.h causes build failure with g++ (builds with gcc) r40429 - Ubuntu 9.04 i386 17:56
Coke actually, if I swap that to use :immediate instead of :init, that does seem to work.
NotFound But not very fast, is a very hot day ;)
Coke similar code in partcl is segfaulting, however.
nopaste "mikehh" at 90.209.117.193 pasted "PATCH to fix build failure with g++ - include/parrot/oo.h at r40429" (15 lines) at nopaste.snit.ch/17487
NotFound mikehh: That patch isn't an undoing of a recent change? 17:57
Ah, no, I see now, 17:58
mikehh just moving PARROT_EXPORT to top of function
NotFound You're right, is failing.
mikehh it builds with gcc - I failed with g++ and then built with gcc - patched and it then built with g++ 17:59
NotFound Looks like is hust a lack of headerizing 18:00
18:00 iblechbot joined
mikehh passes make test and codetest (with previous patch as well nopaste.snit.ch/17486) 18:00
NotFound Wait a moment, a full headerzing is a better fix. 18:01
dalek rrot: r40430 | NotFound++ | trunk/include/parrot/oo.h:
[cage] update headerizing, mikehh++
18:07
18:17 whoppix joined
mikehh do we have any documentation on headerizing? 18:18
NotFound mikehh: just do 'make headerizer' and see if it breaks something ;) 18:24
mikehh so essentially you should run it whenever you change any exportable c functions - pmc as well? 18:33
the header part that is 18:34
18:43 whiteknight joined 18:52 whoppix_ joined 18:54 Andy joined 19:04 chromatic joined
NotFound mikehh: no, pmc header files are auto generated 19:06
19:17 ruoso joined 19:19 ruoso joined 19:20 zak_ joined 19:21 ruoso joined 19:23 ruoso joined, warewolf joined 19:24 tekky joined 19:30 joeri joined 19:35 warewolf left 20:05 MoC joined 20:15 payload joined
cotto ping lwn.net 20:26
purl I can't find lwn.net in the DNS.
cotto That's mildly disturbing. 20:27
moritz $ dig lwn.net +short @208.67.220.220 20:28
67.215.66.132
cotto thanks 20:29
moritz my local DNS times out when I asks it for lwn.net though
cotto it seems to be back now 20:33
dalek rrot: r40431 | NotFound++ | branches/auto_attrs (70 files):
merge from trunk r40430
20:36
tracwiki: v9 | dukeleto++ | git-svn-tutorial 20:51
tracwiki: trac.parrot.org/parrot/wiki/git-sv...ction=diff
20:52 bosniangirl joined 20:55 darbelo joined 20:57 braceta joined
cotto darbelo, ping 21:00
21:06 joeri left 21:09 donaldh joined, bacek joined 21:10 allison joined
darbelo cotto: pong 21:11
cotto darbelo, the GSoC suggested "pencils down" date is on the 10th. How are things going? 21:17
dalek rrot: r40432 | cotto++ | trunk (12 files):
[DEPRECATION] remove deprecated branch_cs opcode
TT #470 closed by cotto++: [BUG] branch_cs opcode is buggy and unused 21:19
darbelo I expected to get cracking this week, but RL got in the way. Just got back today.
I'm looking at the schedule right now, if nothing else happens I think I can get DecInt done by the 10th. 21:21
dalek rrot: r40433 | cotto++ | trunk/DEPRECATED.pod:
[DEPRECATION] remove noticed for closed tt #108 about Data:Replace
cotto The firm pencils down date is the 17th, but they recommend that you spend the last week cleaning up the code.
darbelo I have no ETA for DecRat, and I've just discovered that the decNumber library doesn't honor the emin field at all. 21:23
cotto Nice.
darbelo Which puts a big hole on making DecInt a subclass of DecNum.
cotto yeah 21:24
or at least a thin subclass
darbelo Right now, we have to manually force the rounding of every result. 21:25
SUPER(...);\\n decNumberToIntegralValue(...) 21:27
on every VTABLE
cotto ugh
darbelo Related question. I initially made most VTABLEs, non-MULTI and switched on the type of PMC passed, but I think that pmc2c now generates equivalent code for MULTIs, is that correct? 21:29
ISTR bacek++ did something like that before the release.
cotto istr something similar, but not well enough to say without checking
bacek good morning. 21:30
purl And good moroning to you, bacek.
darbelo Or we could just ask him :)
bacek darbelo: not for your multis... pmc2c doesn't handle dynpmc in this case.
darbelo Oh, well. I guess I'm stuck with the switch statement then. 21:32
Anyways, getting back to the SUPER() thing. 21:34
The only alternative I can see is a whole lot o' copypasting.
Which is even worse. 21:35
cotto You can at least use a macro, but yeah.
darbelo, would it be hard to fix the library? 21:38
darbelo I haven't looked at that in depth, but i would be surprised if it was. 21:43
21:46 whiteknight joined
cotto That might be the easiest approach. 21:47
You could even submit a patch upstream if it worked. 21:48
bacek msg treed StringIterator wasn't removed. 21:55
purl Message for treed stored.
bacek msg treed if you can nopaste PIR code for string:reverse from cardinal I'll check it (and probably fix it as well) 21:58
purl Message for treed stored.
moritz parrot build fails... 22:03
pbc_to_exe.o: file not recognized: File format not recognized
collect2: ld returned 1 exit status
linking failed
(r40433)
cotto realclean? I just bumped PBC_COMPAT
moritz I think I did a realclean; will try again
ok, clean now 22:05
bacek decommute to $dayjob... Another day of "big meetings"... 22:08
See you! &
cotto bye
moritz has anybody got a good .gitignore for parrot?
Tene moritz: git svn create-ignore 22:09
moritz Tene: thanks
Tene np
dalek rrot: r40434 | cotto++ | branches/pluggable_runcore (2 files):
[profiling] code cleanup and mildly better error messages and failure modes
22:12
22:39 rg1 joined
darbelo cotto: I'm looking at the library, and from what I've seen so far, the current behaviour is the intended one. 22:42
22:43 eternaleye joined
darbelo msg cotto I'm looking at the library, and from what I've seen so far, the current behaviour is the intended one. Apparently emin is only checked against the 'adjusted exponent'. So, 333333333e-8 becomes 3.33333333e0, a "Subnormal Integer" that meets the emin requirements. 22:49
purl Message for cotto stored.
22:53 kid51 joined
dalek rrot: r40435 | NotFound++ | branches/auto_attrs/lib/Parrot/Pmc2c/PMCEmitter.pm:
set attr_size value in vtable updates instead of in class init
22:55
cnum-dynpmcs: r139 | darbelo++ | trunk/src/pmc/decnumcontext.pmc:
Make sure we freeze/thaw the exceptions ATTR correctly.
23:01 whiteknight_ joined, eternaleye joined
mikehh NotFound: codetest is still failing src/pmc/exporter.pmc - PATCH at nopaste.snit.ch/17486 23:02
cotto eew
mikehh it is also failing on DEPRECATED,pod 23:03
purl okay, mikehh.
cotto it? 23:04
purl it's the smoooooooke! or using a slower algorithm, so that can be sped up or responsible for MooseX::MetaDescription or failing on DEPRECATED,pod
mikehh codetest 23:06
purl hmmm... codetest is part of fulltest, distro_tests is part of fulltest, but not of codetest
mikehh specifically t/codingstd/pod_syntax.t 23:08
and podchecker
purl i think podchecker is Pod::Checker
23:12 ruoso joined 23:14 ruoso joined
darbelo Hmm. Is there a way for PMCs to say "my parent implements this but I don't" so that you can avoid inheriting behaviour you don't want? 23:16
NotFound darbelo: the easy way to do that is not inheriting ;) 23:17
23:18 whiteknight joined
mikehh DEPRECATED.pod has a redundant =head1 Configuration at line 35 - should I remove it for the patch? 23:20
kid51 mikehh: Yes
23:20 ruoso joined
dalek rrot: r40436 | NotFound++ | trunk/src/pmc/exporter.pmc:
[cage] codingstd hard tabs, mikehh++
23:22
nopaste "mikehh" at 90.209.117.193 pasted "PATCH for DEPRECATED.pod - clean up" (39 lines) at nopaste.snit.ch/17491 23:27
mikehh this fixes the codetest errors and tidies up a bit 23:28
dalek rrot: r40437 | NotFound++ | branches/auto_attrs (78 files):
merge from trunk r40436
23:33
23:37 whoppix joined
allison notices Parrot 1.4 has moved into Debian testing, which means it's a candidate for the next stable Debian release 23:38
ruoso allison: that's not really true... Debian is on the begin of the release cycle... software will go to testing, but a lot will be removed from there before the release 23:40
allison ruoso: indeed, but it's farther than Parrot's been in several years, so progress 23:44