Parrot 2.10.1 Released | parrot.org | Log: irclog.perlgeek.de/parrot/today | Onward and upward with Google Code-In | Please test rakudo with bleeding edge parrot! | Remove deprecations | close tickets | merge html_cleanup and embed_api2
Set by moderator on 14 December 2010.
Yuki`N This embedded Parrot API is a lot more difficult to understand than I imagined. 00:01
cotto_work Yuki`N: have you read whiteknight's blog posts? 00:03
00:11 TypeNameHere_____ joined
Yuki`N cotto_work, nope 00:18
00:24 whiteknight joined
cotto_work Yuki`N: go to whiteknight.github.com/index.html and read then. He does an excellent job of blogging about what he's working on. 00:25
relevance can be inferred from the blog titles 00:26
whiteknight Awesome. If Yuki`N goes there, I'll be up to .... 1 reader
Yuki`N xD
cotto_work You'll be rolling in advertizing $$$$ 00:28
davidfetter oh language geeks of great fame, i have a question 00:29
cotto_work looks around confusedly
davidfetter so it's been brought to my attention that what yacc produces isn't super suitable to tab completion, given that it starts from the end 00:30
00:31 Tene joined
cotto_work need to do some shaving? 00:31
davidfetter context: i'm trying to redo psql's tab completion, which is a horrific mess
is there some way to transform a yacc grammar into something better suited to tab completion? 00:32
Yuki`N Hmm. 00:33
Segfault.
whiteknight who's segfaulting who? 00:34
davidfetter o/` who's zoomin' who? o/`
Yuki`N My test is segfaulting.
whiteknight oh.....is it supposed to segfault? 00:35
(you would be surprised about some of the behaviors we have tests for)
Yuki`N No, it's not...hm. 00:36
How can I gdb a test? 00:38
cotto_work pure pir or perl? 00:39
Yuki`N Perl.
cotto_work those generate .pir or .pasm files like t/pmc/parrotio_6.pir as a side-effect 00:40
run gdb --args ./parrot t/pmc/foo_234.pir
Yuki`N Well these are c tests.
cotto_work which test file 00:41
Yuki`N It's a new test.
whiteknight Yuki`N: copy+paste your test code into a .c file. Compile and run
00:42 Tene left
Yuki`N What include directories do I need? 00:42
whiteknight -Iinclude/parrot 00:43
and maybe -Iinclude/pmc
actually for embed_api stuff, you only need include/parrot 00:44
Yuki`N ../../../include/parrot/parrot.h:108:19: fatal error: ffi.h: No such file or directory
whiteknight Yuki`N: nopaste your test? 00:45
nopaste "Yuki`N" at 192.168.1.3 pasted "test" (36 lines) at nopaste.snit.ch/27204 00:48
whiteknight Yuki`N: Okay, I see your problem. You only need API functions. Get rid of the parrot/parrot.h and parrot/embed.h files 00:50
the function src/main.c shows how to create an interp using the Parrot_api_make_interpreter function 00:51
Yuki`N Oh durrr. 00:52
I see my problem.
The compile errors that I caused by removing those includes revealed some warnings.
# t/src/embed/pmc_1.c:27:5: warning: passing argument 2 of ļæ½Parrot_api_pmc_get_stringļæ½ from incompatible pointer type 00:53
# ./include/parrot/api.h:461:12: note: expected ļæ½Parrot_PMCļæ½ but argument is of type ļæ½Parrot_Stringļæ½
whiteknight oh, yeah
Yuki`N etc
I wish it showed the warnings.
whiteknight You should be able to pass -Wall to the compiler to see many warnigs 00:54
Yuki`N Well, the perl framework hides the compiler outout. 00:55
*output
whiteknight ok 00:56
Yuki`N There we go.
It passes now.
whiteknight awesome 00:57
what task are you working on?
Yuki`N Adding the.
Indexed getters/setters.
Right now it's integer keys.
whiteknight ah, okay 00:58
I approved a few tasks at once, I didn't see who was doing which
Yuki`N whiteknight, github.com/nol888/parrot/commit/df...83947c063d 01:01
I think I did it right.
whiteknight Is that the updated test code? 01:02
Yuki`N Yes, it passes.
whiteknight ok. Looks good to me 01:03
you ready for pull/review?
Yuki`N Should I submit a pull request? I plan on doing all three index types so maybe it'd be best to batch them up.
whiteknight yes, pull requests for each
Yuki`N Ok.
Let me submit one.
github.com/parrot/parrot/pull/37 01:05
01:09 kid51 is now known as kid51_at_dinner
dalek rrot/gci_api_intkey: df005fa | Yuki`N++ | / (3 files):
Add Parrot_api_pmc_[get|set]_keyed_int to the embedded API.
01:09
Yuki`N Oh someone took the string task already. 01:10
whiteknight oh noes!
Yuki`N Oh well. :/
I'll take the PMC task. 01:11
Can you approve my intkey task?
whiteknight done
great work
Yuki`N Thanks. 01:12
I think the hardest part of the pmckey task is going to be testing. 01:15
whiteknight yeah, that might actually be impossible at this point until we add more API functions
get as far as you can, and that will be enough 01:16
Yuki`N I think I can apply the same logic as in the keyed int. 01:17
The String PMC has a keyed PMC set/get that just gets the Integer value of the PMC.
whiteknight yeah. If you run into any problems just leave a TODO note and I'll fix it later when we have more functions written 01:18
dalek rrot: 36fb5bd | (Gerd Pokorra)++ | README.deutsch:
more corrects
01:19
Yuki`N Oh damn, it works. 01:22
github.com/nol888/parrot/commit/f0...96dd827a3b and this is the relevant commit. 01:24
whiteknight nicd 01:27
nice
brb
01:37 TypeNameHere_____ left 01:52 davidfetter left 01:54 dmalcolm left
dalek rrot/gci_api_pmckey: f055f32 | Yuki`N++ | / (3 files):
Add Parrot_api_pmc_[get|set]_keyed to the embedded API.
01:55
rrot/gci_api_pmckey: 778020f | Yuki`N++ | t/src/embed/pmc.t:
Add missing PMC destroy call.
whiteknight Yuki`N: pulled. Thanks
Yuki`N: change that task to NeedsReview and I will close it 01:57
Yuki`N Kk. 02:10
whiteknight, done. 02:11
whiteknight closed. Congrats 02:12
Yuki`N thanks. :3
whiteknight No problem. Keep up the great work 02:17
Yuki`N I'm interested in this new API, and maybe Lorito as well. 02:18
So if there's anything that needs to be done, let me know. :P
whiteknight awesome 02:19
This task you are taking now is very important. I was going to request it next if you hadn't already claimed it :)
This is how we will be able to create new PMCs, by looking up the Class and instantiating it
Yuki`N Ah. 02:21
My tests so far relied on the enumeration of core PMCs.
You pass in a PMC that's used to return a Class PMC? 02:22
cotto ~~ 02:25
whiteknight Yuki`N: You will pass in a string array PMC, and look it up 02:34
hold on
look at src/oo.c:Parrot_oo_get_class 02:35
that function takes an array PMC and uses it to look up a Class PMC
that's basically what I want the new API function to do
02:45 kid51_at_dinner is now known as kid51 02:49 theory left
whiteknight Yuki`N: I'm heading to bed now. I'll look at anything you have tomorrow morning 03:00
03:00 whiteknight left 03:30 Yuki`N left 03:38 theory joined
dalek rrot/tt1893_quickcover: 69d6ea1 | jkeenan++ | / (3 files):
First, somewhat working version of 'make quickcover'. Define a test_runcore

  'coveragedir' to define the top-level directory for HTML display.
03:55
kid51 aloh whiteknight && GCI students working on code coverage tasks: Please review: parrot/tt1893_quickcover: review: github.com/parrot/parrot/commit/69d6ea18ef 04:01
04:06 kid51 left 04:27 PerlPilot joined 04:29 PerlJam left, PerlPilot left, PerlJam joined
cotto andy++ for the great post on the nature of true laziness 04:59
dalek rrot: 41fdde7 | petdance++ | src/gc/gc_ms2.c:
removed unused vars, and consted some pointers
05:27
rrot: b17adf5 | petdance++ | src/gc/gc_ (2 files):
shimmed some interpreter arguments
05:30 rurban_ joined 05:33 rurban left, rurban_ is now known as rurban 06:36 fbrito joined 07:00 bacek left, gg411 joined 07:02 gg411 left 07:04 theory left
dalek rrot: 01c7e22 | NotFound++ | t/pmc/namespace.t:
some more tests for Namespace get_pmc_keyed
07:04
rrot: aa0dd59 | mikehh++ | t/pmc/bigint.t:
fix codetest failure - trailing whitespace
07:07
rrot: 1cca9c9 | mikehh++ | config/gen/makefiles/root.in:
add newline at EOF so the file passes t/codingstd/make_code_coda.t
dukeleto ~~ 07:08
mikehh hi dukeleto 07:09
dukeleto mikehh: wazzup
mikehh lot's of snow etc around here, and you?
dukeleto mikehh: the cold snap it Florida just ended :) 07:10
mikehh dukeleto: good to be on vacation, they really do not know how to cope with bad winter weather over here 07:12
cotto hi dukeleto 07:14
dukeleto cotto: hola. just read your lorito braindump post. Very nice summary! 07:16
cotto thanks 07:18
I'm working on the other part(s). Some good questions have been raised. 07:21
dukeleto cotto: what datatype is an "exception payload" ? 07:22
cotto and there's another
pmc, I'd expect 07:23
actually that's the only thing that'd make sense since strings will be pmcs
sorear why are you holding on to S/P register split?
cotto there's not much data you can stuff into an int or float 07:24
dukeleto cotto: is an exception payload just an Exception PMC ?
sorear (please don't repeat HRESULT)
cotto sorear, you don't love the win32 api?
sorear, the S/P split is something I'm trying to figure out. I don't recall the reason. 07:25
dukeleto, do you happen to recall?
dukeleto cotto: i am going to assume it is an Exception PMC until that becomes an issue 07:26
cotto dukeleto, wfm 07:27
07:28 dd070 joined
dd070 hello guys 07:28
cotto hi dd070 07:29
dukeleto cotto: "The GC may or may not live in the interp. We'll flesh this out as we go."
07:29 theory joined
dukeleto cotto: do you mean the context? 07:29
cotto: do you have any ideas about that?
cotto: there was some talk about a PMC that would represent the GC state at the meeting, but there were performance concerns
cotto wrt gc, I mean I don't know if it'll live in the interp (global) or in a context acting as a separate thread. 07:30
wrt S/P, I don't see a strong need for a distinction except perhaps to make code a bit easier to understand. 07:31
having fewer register types means fewer op variants 07:32
though if the registers both contain PMCs, the ops will only need very minor differences 07:33
NotFound dukeleto: there is no payload datatype AFAIK, the payload is any PMC 07:34
dukeleto cotto: i think we should make the S/P merging a different experiment from M0 07:35
cotto: don't want to mix variables when prototyping
Also, which data structures best represent the REPR and HOW that lives in each Parrot Context? 07:36
cotto won't that depend on chromatic's implementation? 07:39
07:42 fbrito1 joined
sorear dd070: "hello!!" ? 07:43
07:44 fbrito left
dd070 sorear: hi 07:45
07:45 fperrad joined 07:46 theory left 07:50 Coke left, Coke joined
dalek rrot/lorito: d4097d1 | dukeleto++ | src/pmc/loritocontext.pmc:
Add a link and a exception payload to a Lorito Context
07:52
rrot/lorito: cdfebc2 | dukeleto++ | src/pmc/loritocontext.pmc:
Add a REPR and a HOW in LoritoContext
dukeleto cotto: i am assuming that i can use some type of PMCArray to represent REPR and HOW until they are fleshed out more 07:56
cotto dukeleto, that makes sense 07:57
dukeleto cotto: my biggest question for my lorito branch is : How is does a LoritoContext talk to the GC ? Is it supposed to? 07:59
08:00 Coke left
cotto dukeleto, what kind of interface are you talking about? 08:01
triggering a gc run or indicating that something's either referenced or dropped?
dukeleto cotto: i am asking which of those things will be needed and how it will be implemented 08:02
NotFound I think that the Interpreter and Context aren't enough levels. We may need Interpreter - Runner(or thread, or whatever) - Context
sorear are you going to make Lorito polymorphic over GCs? 08:03
mikehh All tests PASS (pre/post-config, make corevm/make coretest, smoke (#1723) fulltest) at 1cca9c9 - Ubuntu 10.10 i386 (g++-4.5 with --optimize)
dukeleto sorear: what do you mean by that?
cotto: actually, the REPR should talk to the GC, and the REPR only 08:04
sorear dukeleto: do the ops need to be compiled once per GC?
do you plan to do some kind of interp->gc->write_barrier(&slot, ptr) think?
cotto dukeleto, right. That's explicitly the REPR's job.
sorear What about context registers? 08:05
The GC needs to know about them too.
dukeleto sorear: i would imagine that ops would only be recompiled if necessary, but that hasn't been decided on
08:05 Coke joined
cotto would it make sense for the list of contexts to be part of the interp struct? 08:08
they do need to live somewhere
dukeleto cotto: is a context part of an interp? or, like NotFound suggests, is there another layer needed? 08:11
do we use our Role PMC much currently? 08:12
cotto I'm thinking of contexts as pretty close to threads. NotFound, why would another layer be needed?
I suspect that the Role PMC is a joke. 08:13
if nothing else, it's severely undertested. 08:14
sorear I prefer to think of it as "wishful thinking"
NotFound cotto: a context, at least master, is more like a continuation than like a thread
dukeleto cotto: 45% code coverage 08:15
cotto dukeleto, right. I just checked.
dukeleto cotto: do you think increasing code coverage of role pmc would be a good gci tasks? 08:16
cotto: do you have ideas for gci tasks?
NotFound That is, the thread has a current context, but is not a context
cotto NotFound, I see what you're saying. 08:17
dukeleto, I don't know if increasing Role's coverage would help us. 08:18
dukeleto, when's your vacation up? 08:19
dukeleto cotto: i understand that, but if we want to change Role, wouldn't it be nice to know how it works now? Or is that not worth it? 08:21
cotto: i want a list of PMCs that need their test coverage increased the most
cotto: which PMCs need test coverage the most right now?
nopaste "cotto" at 192.168.1.3 pasted "list of pmcs lacking in test coverage (old)" (28 lines) at nopaste.snit.ch/27211 08:22
cotto that's from before gci started. I'll get an updated one put together
dukeleto cotto: i can read which have the lowest test coverage, but which are most important? 08:23
NotFound dukeleto: the most important for me right now is Namespace, but I don't think newbies should work on it, I prefer to do it myself (and I'm already doing) 08:26
cotto I filtered out the ones I thought would be harder for a gci student to test. Any of those would be useful. I'm not sure how I'd assign priority. 08:27
NotFound++ for that work 08:28
dukeleto, the Big* implementation of get_integer_keyed_int is wrong. Turning that into a method might be a good gci task. 08:29
dukeleto cotto: my vacation is kind of like an electron probability density cloud. Hard to be sure when it is anywere, exactly.
cotto It currently returns the value in base n, where n is the keyed int
NotFound cotto: Wrong, or just not documented as doing that? 08:30
cotto NotFound, it's a stupid way to use that VTABLE function 08:31
It's documented, just not sane.
sorear most of our PMCs overload unneeded VTABLEs as fast alternatives to METHOD 08:32
NotFound Maybe, but if is documented it needs a deprecation cycle.
cotto I guess. 08:33
NotFound The method can be added right now, of course.
cotto yes
dalek rrot/gci_french_readme: da35be8 | fperrad++ | README.francais:
some corrections
dukeleto fperrad++ 08:34
08:42 ok22 joined 08:45 arnsholt_ left, arnsholt joined 08:46 fbrito joined 08:50 fbrito1 left 09:09 fbrito left 09:25 dd070 left 09:27 kennym joined 09:32 rfw left 09:50 ok22 left 10:06 janus left 10:35 ttbot left 10:42 mj41 left 11:21 zpmorgan joined, zpmorgan left 11:24 mj41 joined 12:03 bluescreen joined 12:04 kid51 joined
dalek rrot/tt1893_quickcover: 16ba97d | jkeenan++ | / (3 files):
Start to write a configuration step to probe for coverage analysis tools.
12:04
12:04 cognominal left 12:41 dd070 joined
dalek rrot/tt1893_quickcover: f57da36 | jkeenan++ | / (2 files):
Simplify setting to: has_coverage_tools.
13:11
13:11 kid51 left 13:30 rurban_ joined 13:33 rurban left, rurban_ is now known as rurban 13:48 janus joined 13:49 fbrito joined
dalek rrot: 3d02ae4 | (Gerd Pokorra)++ | README.deutsch:
add more corrects
14:11
14:15 Zaur joined
Zaur Hi all 14:15
tadzik hl 14:16
14:17 smash joined
smash hello everyone 14:17
Zaur I get an error when trying build parrot 2.10.1 on windows 14:18
config/gen/platform/win32/begin.c:10:6: #error Minimum requirement for Parrot on 14:19
Windows is Windows 2000 - might want to check windef.h
config/gen/platform/win32/pid.c: In function `Parrot_getpid':
config/gen/platform/win32/pid.c:31: warning: null argument where non-null requir
ed (arg 1)
mingw32-make: *** [src/platform.o] Error 1
I am novice in this case, someone could help me to build parrot? 14:20
14:36 Zaur left 14:53 whiteknight joined
whiteknight good morning, #parrot 14:58
fbrito good morning :D
15:04 mj41_ joined
whiteknight good morning fbrito 15:04
how are you today? 15:05
15:05 mj41 left, mj41_ is now known as mj41
fbrito so busy :( going to leave home in 30 minutes and spend the whole day out 15:06
no time to work on fun Parrot tasks today
whiteknight anything fun?
fbrito I have to help me father on his company today. but maybe I'll be going to a concert later night 15:07
whiteknight oh, okay. That doesn't sound so bad 15:08
I'll make sure to create lots of fun new Parrot tasks for you today while you are out 15:10
Coke in case Zaur reads the logs - sorry we missed you - can you please open a ticket? 15:12
fbrito whiteknight: ahaha, ok :). But isn't the feature freezing starting this sunday? Are we going to get lots of testing tasks because of that? 15:13
whiteknight fbrito: the feature freeze is for the master branch. We can still develop stuff in other branches 15:16
fbrito whiteknight: other projects have some tasks like "solve a bug listed on our bugtrack system". I don't know how hard the bugs listed on Parrot Trac are, but just to let you know about this
whiteknight testing is easy, although I could set up some tasks for that
fbrito: We've turned some tickets into tasks already 15:17
We will do more
15:25 dmalcolm joined 15:40 Patterner left
fbrito ok, I am leaving :D 15:41
see you guys
15:44 fbrito left 15:50 Psyche^ joined, Psyche^ is now known as Patterner
Coke mj41: typo in taptinder readme url, I think. 15:53
15:59 dd070 left 16:26 bluescreen left 16:30 bluescreen joined 16:36 bluescreen left 16:37 whiteknight left 16:40 davidfetter joined 16:41 davidfetter left, davidfetter joined 16:44 hercynium joined 16:46 kennym left 16:53 bluescreen joined 17:06 theory joined
cotto_work ~~~~ 17:08
plobsing ∿∿∿∿ 17:10
atrodo Looks like cotto_work is in a great mood today
cotto_work I'm just using a really smart match. 17:11
It doesn't hurt that it's sunny today and that the day will end with the company Christmas party and D&D. 17:13
Coke hasn't played D&D (or Call of C'Thlhu, or Paranoia, or... since about 1990) 17:14
Coke recalls those days fondly. 17:15
17:15 tikluganguly joined
tikluganguly hi everybody 17:15
Coke hio
cotto_work hi tikluganguly
tikluganguly i need to know one thing about pbc files
hi Coke
Hi cotto_work
can we do dynamic loading for pbc files? 17:16
cotto_work tikluganguly: ok but it probably won't make you happier. ;]
load_bytecode should do that
tikluganguly okay cool 17:17
actually i was just planning to write some language for parrot 17:18
which should have pbc files as output
cotto_work great. Stick around and feel free to ask questions
tikluganguly something like java class file
sure
i tried breaking the shell of parrot for a long time
but for the first time came to this channel 17:19
thanx
cotto_work ok. If you're using the Packfile PMCs, you'll have some difficulties until they're updated a bit.
tikluganguly i think i m now in the correct place to get my infos
okay
cotto_work yes
tikluganguly now what is Packfile PMC 17:20
actually i m pretty much newbie in parrot
cotto_work they're a set of PMCs that attempt to serve as an interface to Packfile generation, which can be used to generate bytecode (when they work) 17:21
tikluganguly okay
17:23 hercynium left, hercynium joined 17:24 hercynium left
tikluganguly btw does parrot has any package manager 17:24
or any standard class library?
Coke there is a runtime/library 17:25
plobsing and as for a package manager, we have plumage
tikluganguly cool
so what about standard class library? 17:28
plobsing parrot has a slightly different approach than java. there are libraries under runtime/library, some of which are object-oriented (and contain classes) 17:29
tikluganguly okay 17:30
plobsing but it is not nearly as comprehensive as java. there is no Swing equivalent for example.
tikluganguly okay
so when somebody writes a language targeting parrot does they create their own class library? 17:31
or say normal function library?
plobsing that does sound bad, however, every language's library works a little different, so they would have to do that anyways for compatibility 17:32
tikluganguly oho okay :)
got it
but does not that fragments the platform a bit?
plobsing and sharing is encouraged. there are libraries available that provide some of what people expect of a class library. 17:33
tikluganguly i mean there could be a function written for nqp say...but again i m writing it for another language?
cool
plobsing kakapoo and nqp-rx setting for example, augment the base types to provide more methods and other nice features
tikluganguly cool 17:34
i will surely want to have a look at them
cotto_work www.itpro.co.uk/629440/gcc-and-llvm...a-licence#
tikluganguly okay
17:35 Coke left
atrodo cotto_work> itpro is now on my list of bad site designs. and i'm pretty tolerant of bad sites 17:37
cotto_work yeah. If lwn didn't think it was worthwhile I'd have run away screaming. 17:38
atrodo it's half a side of the page, and it's about a third of the entire page's length. Ad to content ratio is way out of proportion.
cotto_work no argument from me 17:39
atrodo Just ranting
tikluganguly :0 17:40
:)
plobsing arg. my eyes!
17:41 Coke joined
plobsing wishes there were a firefox plugin to dissable page style on pages designed by morons 17:42
automatically 17:43
tikluganguly he he
cotto_work view -> page style ->no style
atrodo yourwebsiteisdesignedbyamoron.com
plobsing cotto_work: yeah, I do that. but its so much work, and my eyes are still assaulted for a brief period. 17:44
17:44 hercynium joined 17:49 tikluganguly left
atrodo cotto_work> I would vote that the article was not worth the website 17:51
cotto_work atrodo: I agree. 17:52
17:52 bluescreen left, cognominal joined 18:12 davidfetter left 18:19 smash left, davidfetter joined 18:35 Tene joined, dd070 joined
dd070 hello !! 18:36
anyone awake ? 18:38
Tene I am! 18:39
(barely)
plobsing sleep is for the weak
Tene What's up?
s/weak/weeks/ (my family name) 18:40
dd070: You need something?
Apparently just checking for wakefulness. :) 18:42
dd070 Tene: no just . . 18:43
Tene dd070: just what? 18:52
tadzik I am! 18:55
dd070 Tene: was checking whether room is alive 18:57
Tene Ah.
cotto_work it usually is 19:05
19:38 contingencyplan left 19:42 contingencyplan joined 19:50 dd070 left 19:59 jan left
atrodo cotto_work> I was able to post something that resembles my current lorito vision. creative.atrodo.org/2010/12/in-begi...arrot.html 20:03
20:13 rfw joined 20:20 contingencyplan left 20:21 contingencyplan joined 20:26 sECuRE left 20:36 kennym joined 20:43 ambs joined
Kapace_ So, Im trying to do that code coverage increase task, in the cover report, the number beside the line shows if the line is being tested correct? 21:08
after make realclean; show git status show any files? 21:18
moritz Kapace_: no, it should not 21:25
# On branch master
nothing to commit (working directory clean)
Kapace_ hmm.. mine shows some left over test files.. but ill just use my new "git clean -dfx" 21:27
moritz Kapace_: if there are left over files, either 'make realclean' needs to be fixed (likely), or .gitignore 21:28
or both
21:30 rurban_ joined 21:33 rurban left, rurban_ is now known as rurban
cotto_work atrodo: I saw. I need to read it more carefully to comment. You make some good points but the style takes a bit of getting used to. 21:34
atrodo cotto_work> I understand. I had a little too much fun with the writing style.
cotto_work It's an important balance. 21:36
I'd love to get a grant for masak to write Parrot's release announcements. The ones he does for YAPSI are amazing.
example: www.mail-archive.com/perl6-compiler...06339.html 21:37
atrodo :D
21:50 davidfetter left
Kapace_ hmm, how do I invoke a EventHandler... 21:54
(tried invoke eh, but not enough arguments) 21:55
Tene Kapace_: Hm? You mean ExceptionHandler? 21:57
Kapace_ no, event handler, its a PMC 21:58
Tene If you do mean eventhandler, then... parrot's tasks/events system is not very good, or very well understood.
It does work, though. Lemme find some docs. 'sec.
I did a bit of work on it a couple of years ago.
At least, it did work *then*. :)
Kapace_ Tene: ah, thanks
Tene Kapace_: btw, the t/ directory is a good place to look for examples. 21:59
Kapace_ ok
whats invokecc? 22:05
Tene invoke with current continnuation
Kapace_: you don't invoke eventhandlers directly, you need to addhandler the eh, and then use the 'schedule' opcode on an Event pmc. 22:07
(sorry, I was distracted by work) 22:08
There's an example in t/pmc/scheduler.t, but not much of one
Kapace_ but it has the invoke vtable function no?
Tene What arguments did you pass to it? 22:09
I don't know what its invoke is going to do. If you're invoking something directly, why aren't you just invoking a sub? 22:10
Kapace_ the task is to add tests to eventhandler.t, and invoke isn't being tested.. 22:11
Tene Looking at the source, it looks like it just invokes its associated code block.
Kapace_ right
so eh(), should just call self.code()
Tene So you should pass it the eventhandler itself, and a task pmc, I think.
right, but the code block is going to be expecting arguments
Kapace_: I'm not all that certain about this; it could be that the invoke vtable it just broken. :) 22:12
You should probably look a bit in the PDDs to see if you can find any spec for this PMC.
Kapace_ ok
Tene Yeah, I get a core dump whenever I try to invoke an eventhandler 22:15
I don't think that invoking an eventhandler is a meaningful operation, personally.
Kapace_ hmm.. yeah, in real life you would just call the code directly..
22:18 fperrad left 22:19 ambs left
Kapace_ docs.parrot.org/parrot/2.7.0/html/d...s.pod.html says that eventhandlers are code objects 22:24
so it needs to have invoke, I guess
(maybe I'll try to test something else for now) 22:25
tadzik hello parrots 22:26
Coke how did you get to 2.7.0, OOC?
docs.parrot.org/parrot/latest/html/...s.pod.html is better. 22:27
(theoretically) 22:28
Kapace_ oops
google
Coke we should probably eventually add links to various versions on the site. 22:34
22:38 davidfetter joined 22:46 hercynium left 23:07 bluescreen joined
bluescreen good evening guys 23:10
sorear hello
bluescreen hi sorear 23:11
23:30 fbrito joined 23:48 davidfetter left 23:49 davidfetter joined 23:59 fbrito1 joined