Camelia, the Perl 6 bug

IRC log for #parrot, 2011-01-19

Parrot | source cross referenced

| Channels | #parrot index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
00:02 Kristaba left #parrot
00:05 mikehh All tests PASS (pre/post-config, make corevm/make coretest, smoke (#3756) fulltest) at 3_0_0-78-g8f579d3 - Ubuntu 10.10 amd64 (g++-4.5)
00:05 Coke dukeleto: posted a patch for you.
00:06 dalek parrot: 2dcf61e | NotFound++ | lib/Parrot/Pmc2c/PMCEmitter.pm:
00:06 dalek parrot: simplify a bit the C code generated for MULTI vtable functions
00:06 dalek parrot: review: https://github.com/parrot/parrot/commit/2dcf61ee07
00:07 dukeleto Coke: already merged it
00:07 dukeleto Coke: feel free to fork Util.git and send pull requests :)
00:09 dukeleto Coke: i am thinking that i will add --debugging=0 and --test to the smoker's list of stuff to test
00:11 TimToady e
00:12 TimToady ə
00:14 Coke schwats up?
00:20 dalek nqp-rx/nom: 5ab91d8 | jonathan++ | src/stage0/ (3 files):
00:20 dalek nqp-rx/nom: Update the bootstrap to get method cache into the stage 0.
00:20 dalek nqp-rx/nom: review: https://github.com/perl6/nqp-rx/commit/5ab91d83d3
00:20 dalek nqp-rx/nom: 9dcdea6 | jonathan++ | src/metamodel/reprs/P6opaque. (2 files):
00:20 dalek nqp-rx/nom: A refactor of P6opaque to start to prepare the way for natively typed attributes. Along the way, this slashes a memory allocation per object instantiation, meaning that it's now just the PMC header and the object body. Given there's no RPA for attributes any more, this boils down to half the number of allocations and half the number of GCables for 6model objects compared to current Parrot objects.
00:20 dalek nqp-rx/nom: review: https://github.com/perl6/nqp-rx/commit/9dcdea6b1f
00:20 whiteknight joined #parrot
00:20 bacek_at_work jnthn++ # new nqp will be awesome!
00:21 jnthn :)
00:24 cotto_work jnthn++
00:25 jnthn aww
00:25 jnthn Parrot_gc_allocate_fixed_size_storage and Parrot_gc_free_fixed_size_storage aren't marked as exported at the moment.
00:26 jnthn So I can't actually switch P6opaque to allocate its bodies using the fixed size allocator.
00:26 jnthn (Without exposing those two.)
00:26 bacek_at_work jnthn, oops. Will fix soon
00:26 jnthn bacek_at_work: OK, if you're fine with them being API, wfm. :)
00:27 bacek_at_work they are in src/gc/api.c :)
00:27 jnthn Ah, true. :)
00:29 jnthn sleep &
00:29 fbrito left #parrot
00:34 bacek_at_work jnthn, done.
00:34 dalek parrot: f77d1a5 | bacek++ | / (2 files):
00:34 dalek parrot: Mark all functions with PARROT_EXPORT. They are in api.c anyway
00:34 dalek parrot: review: https://github.com/parrot/parrot/commit/f77d1a5e91
00:34 * dukeleto taught the smokers to pass --test to Configure.pl, but it doesn't seem that the output from those tests gets sent to smoler
00:34 dukeleto smolder, even.
00:34 dukeleto LTA
00:36 dukeleto i think we may need a parrot-smokers mailing list. Somewhere that build failure emails can go to
00:40 dalek parrot: 68b83a9 | jkeenan++ | config/gen/makefiles/root.in:
00:40 dalek parrot: Fix apilist, exportlist and malloclist to build directly after configuration.  See:  http://trac.parrot.org/parrot/ticket/1922.
00:40 dalek parrot: review: https://github.com/parrot/parrot/commit/68b83a9987
00:43 * cotto_work is thoroughly surprised at how much discussion the Float gcc bug has generated
00:47 NotFound I'm most surprised by the urgence of hiding the problem under a carpet.
00:47 cotto_work with an epsilon?
00:48 NotFound Yeah
00:48 cotto_work -1 to that
00:48 whiteknight A real float comparison algorithm would require a lot more than just a single epsilon
00:48 NotFound A float comparaison for equality should just do that.
00:48 cotto_work and it wouldn't be appropriate in the case where there's only a difference in some builds
00:50 NotFound And an appropiate comparaison with an epsilon will be a lot slower than any effect the volatile may have, BTW.
00:51 NotFound I'm tempted to suggest to kill the cmp_num vtable and make the cmp_num p p opcode always use get_number on both operands.
00:52 bacek_at_work NotFound, it will not help. Float.cmp_num use .get_number for both operands.
00:52 fbrito joined #parrot
00:52 cotto_work I think he's saying that it's an unnecessary VTABLE slot.
00:52 cotto_work hi fbrito
00:53 cotto_work you'll be proud to know that one of your tests uncovered a rather mysterious behavior.
00:53 bacek_at_work cotto_work, we should not blindly compare float number with 0.0. It's wrong.
00:55 NotFound left #parrot
00:56 cotto_work bacek_at_work: what are you referring to?
00:58 NotFound_idle is now known as NotFound
00:58 NotFound bacek_at_work: we should compare with 0.0 when we need to compare with 0.0'
00:59 NotFound Probably you shouldn't blindly use cmp_num, but that's a completely different issue.
01:01 dmalcolm left #parrot
01:01 NotFound And giving that we use the cmp_num vtable for <, <=, > and >=, it should do an exact comparaison or we risk to have funny results in lots of usages.
01:03 NotFound But again, I don't understand the urgence. The speed lost is absolutely non mensurable.
01:03 NotFound Even less if you compare speeds with an epsilon ;)
01:11 whiteknight if we are using it for relationals, then that's fine
01:12 whiteknight I would agree that cmp_num is a worthless vtable slot
01:42 sorear Andy++ # SANITY
02:14 dalek lorito: 2268684 | (Jon Gentle)++ | internal_pmc. (2 files):
02:14 dalek lorito: Change lorito_file_new to const char* and save the name with a strdup
02:14 dalek lorito: review: https://github.com/atrodo/lorito/commit/2268684700
02:14 dalek lorito: feaf970 | (Jon Gentle)++ | / (3 files):
02:14 dalek lorito: Make the loadbc function private and add the public lorito_load_bytecode
02:14 dalek lorito: review: https://github.com/atrodo/lorito/commit/feaf970747
02:14 dalek lorito: ac754af | (Jon Gentle)++ | core.c:
02:14 dalek lorito: Fill in the loadlib opcode to actually load bytecode
02:14 dalek lorito: review: https://github.com/atrodo/lorito/commit/ac754af8a1
02:25 dalek TT #1979 created by coke++: Configure.pl --without-extra-nci-thunks fails tests.
02:25 dalek TT #1979: http://trac.parrot.org/parrot/ticket/1979
02:31 whiteknight left #parrot
02:44 simcop2387_ joined #parrot
02:45 simcop2387 left #parrot
02:46 simcop2387_ is now known as simcop2387
02:51 cotto ~~
02:53 plobsing_ isparrotfastyet appears to show large amounts of noise. any ideas about any things we've actually done to prompt the spikes and valleys in those graphs?
03:06 ppant joined #parrot
03:25 bacek left #parrot
03:36 bacek joined #parrot
03:41 dalek parrot: de841c2 | jkeenan++ | / (13 files):
03:41 dalek parrot: [codingstd] Add functionality to identify Python files.  Test those files for copyright.
03:41 dalek parrot:
03:41 dalek parrot: Apply patch submitted in http://trac.parrot.org/parrot/ticket/1934.
03:41 dalek parrot: review: https://github.com/parrot/parrot/commit/de841c2f0a
04:26 cotto anyone ever wanted to manage a release?
04:37 davidfetter root canals! get your root canals here!
04:40 cotto davidfetter, thanks for volunteering.  You're on 3.4.0. ;]
04:40 davidfetter d'oh!
05:00 dukeleto lulz
05:00 dukeleto plobsing_: various branch merges that were not benchmarked
05:06 atrodo I agree, ipfy has some strange noise.  I haven't had time to figure out if it's right, the box is doing it, or if the time that I ran it caused the noise
05:06 atrodo at least I got it running on a cron now
05:09 atrodo dukeleto> (re my lorito) coming along.  Working on the first real-ish PMCs, but still have a lot of details to fill in
05:11 cotto atrodo, what's your immediate plan for PMCs?  The goal is to have them running on top of the mop.
05:12 atrodo cotto> That's kind of a tricky point, i actually have no plans of any sort of mop.  It's a bring your own right now
05:21 Myhrlin left #parrot
05:32 Myhrlin joined #parrot
05:35 fbrito left #parrot
05:39 dalek parrot/leto/embed_grant: e777870 | dukeleto++ | / (3 files):
05:39 dalek parrot/leto/embed_grant: [t] Move extend_vtable.c tests to their own file
05:39 dalek parrot/leto/embed_grant: review: https://github.com/parrot/parrot/commit/e777870618
05:44 Psyche^ joined #parrot
05:44 Patterner left #parrot
05:44 Psyche^ is now known as Patterner
05:49 rurban_ joined #parrot
05:51 rurban left #parrot
05:51 rurban_ is now known as rurban
06:23 Myhrlin_ joined #parrot
06:24 Myhrlin left #parrot
06:24 tcurtis left #parrot
06:30 dalek parrot/leto/embed_grant: 6a50542 | dukeleto++ | t/src/extend_vtable.t:
06:30 dalek parrot/leto/embed_grant: [t] Parrot_PMC_(push|pop|shift|unsh​ift)_(float|integer|pmc|string)
06:30 dalek parrot/leto/embed_grant: review: https://github.com/parrot/parrot/commit/6a50542391
06:37 davidfetter left #parrot
06:41 fperrad joined #parrot
06:45 fbrito joined #parrot
06:46 cotto We seem to have several test failures of late.
06:47 dukeleto also, "make cover-src" doesn't work. It runs tests but doesn't generate a coverage report
06:47 theory left #parrot
06:47 hudnix left #parrot
06:48 hudnix joined #parrot
06:54 dukeleto blarg.
06:54 dukeleto ignore that.
06:55 dukeleto it is used as a substep in "make cover" and "make fullcover", so it doesn't generate the coverage report
06:57 dalek plumage: ed71e2f | fperrad++ | setup.pir:
06:57 dalek plumage: use get_submitter from distutils
06:57 dalek plumage: review: https://github.com/parrot/​plumage/commit/ed71e2f330
07:03 dalek TT #1980 created by dukeleto++: make cover-src doesn't generate a coverage report
07:03 dalek TT #1980: http://trac.parrot.org/parrot/ticket/1980
07:03 dalek TT #1980 closed by dukeleto++: make cover-src doesn't generate a coverage report
07:03 dalek TT #1980: http://trac.parrot.org/parrot/ticket/1980
07:03 cotto dukeleto, how efficient of you
07:06 dukeleto cotto: that teaches me to open TT's without researching first
07:06 dukeleto it is pretty hilarious about the IRC announce timings, though :) It actually took me about 3 minutes to realize and close it after opening it
07:10 dukeleto Parrot_PMC_freeze modifies it's argument. That seems odd to me.
07:13 cotto I hate it when people modify my arguments.
07:14 dukeleto and, why why why is there something called Parrot_PMC_thawfinish
07:14 cotto dukeleto, how do I tell git that I no longer care about a rebase I started a while ago?
07:14 dukeleto cotto: git rebase --abort
07:14 dukeleto cotto: also, you must yell "MISSION ABORTED" at the top of your lungs
07:14 cotto I didn't try that second part
07:15 dukeleto a boy can dream
07:16 cotto I love that internal packfile functions rely on the filename extension for determining what to do.
07:19 dukeleto what could go wrong?
07:20 cotto Nothing, ever.  That's what.
07:20 dalek parrot: 92f017f | cotto++ | src/packfile/api.c:
07:20 dalek parrot: split compile_or_load_file into separate functions
07:20 dalek parrot: review: https://github.com/parrot/parrot/commit/92f017f5d9
07:25 dukeleto seems like thawfinish should have been called after_thaw
07:26 cotto pshaw
07:26 cotto such sensibilities are quaint
07:28 ppant left #parrot
07:29 cotto dukeleto, is it somehow not?  According to the small pieces of the serialization code I haven't repressed from my memory, that's what it's supposed to do.
07:33 dukeleto yeah, i guess i make a distinction between "finishing" a process, and something that happens after a process
07:33 dukeleto in Moose, there are hooks such as before, around and after
07:33 dukeleto which you can apply to any method call
07:33 dukeleto "finishing" a thaw implies it isn't done yet
07:34 dukeleto but it is just semantics
07:34 dukeleto and not worth changing, unless we are changing something else
07:34 dukeleto but i guess there is a "partial thaw" with is just thaw() and a "full thaw" is thaw+thawfinish
07:34 dukeleto at least that is what I understand so far
07:42 mj41 AutomatedHLLTesting looks like TapTinder ToDo list. - http://trac.parrot.org/parr​ot/wiki/AutomatedHLLTesting
07:43 dukeleto mj41: go for it!
07:44 dukeleto i just found out that parrot's test suite knows about an env var called POSTMORTEM
07:45 mj41 dukeleto: I'm doing my best :-).
07:45 dukeleto msg whiteknight you can set POSTMODERM in your shell and parrot will keep around object files and binaries for t/src/* tests. I think I heard you wanting that recently
07:45 aloha OK. I'll deliver the message.
07:47 cotto dukeleto, nice find
07:48 dukeleto Either I don't know how to use it, or Parrot_PMC_thaw doesn't work
07:50 cotto Having met both you and Parrot, I'd tend to trust you.
07:51 dukeleto i am probably not fiddling some bit, but it is not intuitive what you need to do to freeze a PMC from C
07:52 cotto It's a known mess.
07:59 dalek parrot/leto/embed_grant: eb09311 | dukeleto++ | t/src/extend_vtable.t:
07:59 dalek parrot/leto/embed_grant: [t] Parrot_PMC_elements and a commented-out test for Parrot_PMC_thaw that blows up
07:59 dalek parrot/leto/embed_grant: review: https://github.com/parrot/parrot/commit/eb093114f9
08:05 cotto dukeleto, when's all that work going to be merged?
08:06 dukeleto cotto: most of it was merged before 3.0.0
08:06 dukeleto cotto: my leto/embed_grant branch gets periodically merged to master
08:07 dukeleto cotto: i am having issues generating my own coverage reports, so I pretty much need to merge to master to get a coverage report
08:07 cotto dukeleto, odd
08:08 dukeleto cotto: "make fullcover" generates a huge number of *.html in the root of my repo, but not the coverge.html file
08:08 dukeleto cotto: and "make cover" doesn't do t/src
08:09 cotto Those yaks are surprisingly good at hiding.
08:09 dukeleto The yaks are starting to cross-breed with chameleons
08:09 cotto disturbing
08:09 dukeleto cotto: yes. And now, I go to bed.
08:09 cotto 'night
08:10 * cotto too
08:10 dukeleto cotto: may the yaks tread on you gently
08:19 dalek tracwiki: v9 | cotto++ | PackfileTasklist
08:19 dalek tracwiki: various updates
08:19 dalek tracwiki: http://trac.parrot.org/parrot/wiki/Pack​fileTasklist?version=9&amp;action=diff
08:20 vmspb joined #parrot
08:33 contingencyplan left #parrot
08:44 cogno joined #parrot
08:48 dalek parrot: f2af827 | jimmy++ | config/ (3 files):
08:48 dalek parrot: fixed TT# 1873
08:48 dalek parrot: review: https://github.com/parrot/parrot/commit/f2af827fca
09:03 cogno left #parrot
09:04 cogno joined #parrot
09:32 jjore_ left #parrot
09:34 jjore joined #parrot
09:35 dalek digest-dynpmcs: e411a12 | fperrad++ | src/pmc/digest_pmc.in:
09:35 dalek digest-dynpmcs: use binary encoding
09:35 dalek digest-dynpmcs: review: https://github.com/fperrad/dig​est-dynpmcs/commit/e411a12725
09:41 cogno left #parrot
09:48 mikehh left #parrot
09:59 mikehh joined #parrot
10:17 cogno joined #parrot
10:28 cogno left #parrot
10:34 vmspb left #parrot
11:10 cogno joined #parrot
11:15 JimmyZ joined #parrot
11:19 JimmyZ left #parrot
11:20 cogno left #parrot
11:39 JimmyZ joined #parrot
11:41 fbrito left #parrot
11:41 fbrito joined #parrot
11:43 cogno joined #parrot
11:47 GeJ_ is now known as GeJ
11:59 cogno left #parrot
11:59 fperrad_ joined #parrot
12:01 fperrad left #parrot
12:01 fperrad_ is now known as fperrad
12:46 jimmy joined #parrot
12:46 jimmy left #parrot
12:53 cogno joined #parrot
13:05 fbrito1 joined #parrot
13:06 fperrad left #parrot
13:07 fbrito left #parrot
13:08 fperrad joined #parrot
13:11 cogno left #parrot
13:11 cogno joined #parrot
13:29 JimmyZ left #parrot
13:41 fbrito1 left #parrot
13:49 rurban_ joined #parrot
13:49 dalek parrot: 858c70b | fperrad++ | runtime/parrot/library/distutils.pir:
13:49 dalek parrot: [distutils] by default add Submitter as extra props
13:49 dalek parrot: review: https://github.com/parrot/parrot/commit/858c70b326
13:51 mtk joined #parrot
13:51 rurban left #parrot
13:51 rurban_ is now known as rurban
13:58 JimmyZ joined #parrot
13:59 whiteknight joined #parrot
14:11 spinclad left #parrot
14:16 mtk left #parrot
14:16 mtk joined #parrot
14:17 plobsing_ left #parrot
14:20 cogno left #parrot
14:25 mtk left #parrot
14:25 mtk joined #parrot
14:49 whiteknight good morning, #parrot
14:50 JimmyZ good morning, whiteknight
14:53 mtk left #parrot
14:54 mtk joined #parrot
14:55 whiteknight hello JimmyZ
14:55 JimmyZ Hi :)
14:56 mberends left #parrot
15:00 mtk left #parrot
15:01 mtk joined #parrot
15:09 dalek winxed: r735 | NotFound++ | trunk/winxedst1.winxed:
15:09 dalek winxed: refactor handling of predefined functions and better diagnose its misuses
15:09 dalek winxed: review: http://code.google.com/p/w​inxed/source/detail?r=735
15:10 ambs joined #parrot
15:19 dalek parrot: f2848b0 | mikehh++ | docs/pdds/pdd10_embedding.pod:
15:19 dalek parrot: add a space in heading to conform to other pdd's headings
15:19 dalek parrot: review: https://github.com/parrot/parrot/commit/f2848b0dd8
15:20 dalek winxed: r736 | NotFound++ | trunk/winxedst1.winxed:
15:20 dalek winxed: delete several commented out statements
15:20 dalek winxed: review: http://code.google.com/p/w​inxed/source/detail?r=736
15:25 hercynium joined #parrot
15:34 bluescreen joined #parrot
15:36 mikehh whiteknight: I just got a failure with t/pmc/threads.t - Failed test:  8 - smoke #3919, ran it again straight away no failure - smoke #3920
15:37 mikehh whiteknight: just thought you might like to know :-}
15:38 whiteknight mikehh: I'm positive there are timing issues in those tests
15:38 whiteknight the system they are testing is bad, and the tests are poorly written
15:38 whiteknight Any tests for threads which relies on a specific ordering of output text is likely going to fail occasionally
15:42 plobsing joined #parrot
15:45 mikehh whiteknight: I have been getting intermittent failyres with that test (t/pmc/threads.t) for ages
15:45 mikehh failures
15:48 mikehh not all that often, I haven't recorded it but 5% or less
15:53 mikehh All tests PASS (pre/post-config, make corevm/make coretest, smoke (#3920) fulltest) at 3_0_0-89-gf2848b0 - Ubuntu 10.10 i386 (g++-4.5)
15:53 mikehh apart from an intermittent failure with t/pmc/threads.t - Failed test:  8 in smoke #3919 which I reran to get no failures in smoke #3920
15:53 dalek winxed: r737 | NotFound++ | trunk/winxedst1.winxed:
15:53 dalek winxed: tailcal function literal invocation, Issue 11, plobsing++
15:53 dalek winxed: review: http://code.google.com/p/w​inxed/source/detail?r=737
16:02 Coke seen mpeters
16:02 aloha Sorry, I haven't seen mpeters.
16:03 Coke http://smolder.parrot.org/app/p​rojects/test_file_history/1/231 - t/pmc/threads.t failures.
16:04 Coke I believe that is due to the --without-extra-nci-thunks option.
16:05 theory joined #parrot
16:05 Coke whoops. nope.
16:05 Coke bah, that smolder link, if you click on the one with failurs, you get... whitescreen.
16:07 mikehh Coke: it only gives a list of 20 tests, we need to be able to look at more
16:07 pmichaud left #parrot
16:08 Coke smolder is configured to only keep N tests.
16:08 pmichaud joined #parrot
16:08 Coke and folks in parrotsketch were all crazy about running out of disk space. ;)
16:09 Coke but we can bump it up a bit for parrot, sure. Lemme change that number.
16:10 mikehh both #3919 (which had a failure) and #3920 were run with the same build (options -> --test --cc=g++ --cxx=g++ --link=g++ --ld=g++ --configure_trace)
16:10 Coke mikehh: parrot now saves 250 full reports instead of just 100.
16:11 JimmyZ left #parrot
16:19 tadzik hello
16:22 cogno joined #parrot
16:22 contingencyplan joined #parrot
16:26 plobsing ping whiteknight
16:26 whiteknight pong
16:27 plobsing just read your recent blog post. why do you want to move the GC and context stuff out of IMCC?
16:27 plobsing only IMCC should know about the dain bramage that requires those stunts
16:28 whiteknight IMCC shouldn't presume to know whether Parrot's GC is blocked or not, or whether it's in a sufficient context or it needs to create one
16:29 whiteknight IMCC should certainly not be in the business of creating contexts
16:29 whiteknight the GC thing I'm less certain about, but I still don't think IMCC should be in control of it
16:30 plobsing but IMCC *requires* that a context be in place (for :immediate subs, :postcomb subs, constant folding, ...). if it cannot assume one is in place, it should create one.
16:33 plobsing same for GC. IMCC will break badly with GC enabled. callers should not need to know about this.
16:33 atrodo So perhaps I'm confused, but does that mean that IMCC is what is actually running the bytecode?
16:33 plobsing IMCC does execute code, yes
16:34 mtk left #parrot
16:34 whiteknight IMCC doesn't necesarily require a context be in place, only some of it's interfaces do
16:34 cogno left #parrot
16:34 whiteknight and for those we can have a function in libparrot that sets it up
16:35 whiteknight There are 6 separate interface functions to IMCC that make all sorts of different assumptions. I am going to whittle this down to two interface functions and consolidate a hell of a lot of code
16:37 whiteknight I'm going to create two good interface functions for IMCC, wrap them up in a nice, self-contained PMC type for the purpose, and use that PMC type exclusively to interact with IMCC
16:38 whiteknight I'm going to store IMCC state information in this PMC type, not in interp->imcc_info anymore. Then IMCC_INFO(interp) becomes just an info parameter, and interp becomes PARROT_INTERP(imcc_info) instead
16:38 plobsing why a PMC type? you should be able to do it with a real (PIR) object
16:39 whiteknight plobsing: It doesn't have to be a built-in PMC type
16:39 whiteknight but it should be a PMC with methods of some variety
16:39 whiteknight what language that PMC is written in does not concern me, though the initial implementation will probably be C if I'm writing it
16:40 plobsing ok. its just that sometimes I feel we have the wrong  defaults on the builtin/addon and C/HLL PMC choice
16:40 mtk joined #parrot
16:40 whiteknight plobsing: At the moment, the Parrot executable frontend is written in C, and we need to get into IMCC before we have a runloop created
16:41 whiteknight In the future, I want to "fix" that, and have a short PIR entrypoint program that sets up IMCC, processes arguments, and then calls into the main program packfile
16:41 whiteknight but that's a few steps down the road
16:41 NotFound We can also create a class on the fly and add C mehods to it via nci.
16:41 whiteknight right, we can do a lot of things. The initial implemenations will be simple while we move towards bigger and better things
16:43 whiteknight Right now, libparrot calls imcc_init to set up the PIR and PASM compregs. If we can do all this in a stub PIR entry point instead, we no longer rely on IMCC being built-in
16:43 whiteknight and at that point, we can define the IMCC compreg in PIR
16:43 whiteknight and nobody will be the wiser
16:47 whiteknight An initial PIR compreg right now really only needs to override VTABLE_invoke to have the same behaviors as the current compreg does. We can add in a 'compile' method to start easing the transition
16:48 whiteknight so rewriting that in PIR won't be too much of a headache. Once it's in PIR we can add all the fun new features we want
16:48 cogno joined #parrot
16:50 plobsing where does packfile pmcs fit in to this? I'd like to get cracking on that, but I can guarrantee it will have merge conflicts with whatever other improvements are happening concurrently.
16:51 whiteknight The IMCC compiler and all other compilers are going to be returning PackFile PMCs instead of Eval PMCs. It also won't automatically shallow-merge those new PackFiles into parrot's interp->initial_pf
16:51 whiteknight so from there we can write a PIR frontend to Parrot that compilers PIR files to PackFiles and writes them out as .pbcs
16:51 nopaste "NotFound" at 192.168.1.3 pasted "A bare minimal HLL-like interface to PIR" (33 lines) at http://nopaste.snit.ch/28195
16:52 whiteknight NotFound: Right. Something simple like that would be very easy to do
16:53 plobsing NotFound: does winxed have that french-quote syntax??
16:54 NotFound plobsing: yes, it's its heredoc syntax.
16:55 plobsing whiteknight: right. I understand they need to happen. What I am saying is I don't want to have to wade through a sea of merge conflicts when I try to get them.
16:56 whiteknight plobsing. Okay, I see what you are saying. I'm working right now on fixing up subclassable exceptions
16:56 whiteknight in a few days, I'm getting back to IMCC and updating the IMCC interface to have less suck
16:56 whiteknight then I'm going to work on a new prototype PIR compiler PMC type, but I won't insert it as the PIR compreg yet
16:57 whiteknight so that takes me up to 3.1 or 3.2
16:58 plobsing whiteknight: on that subject, I've run into yet more exception issues and am unconvinced our current approach to them is the right one.
16:58 whiteknight plobsing: probably not. I'd love to hear your thoughts
16:59 plobsing thrown objects should be recyclable. more than that, they should be re-entrantly throwable.
16:59 whiteknight We had an ExceptionsTasklist page on the wiki, but it's mostly empty. You want to start ranting and I'll transcribe?
16:59 whiteknight what do you mean "re-entrantly throwable".Like rethrow?
17:00 plobsing that is, I should be able to invoke a continuation from an exception handler that throws the exact same object and have 2 concurrently running, independant exception handlers for exceptions with the same object.
17:00 plobsing the handler chains for each should be completely separate.
17:01 whiteknight I'm not sure how that works. if you invoke the continuation, control flow leaves the initial handler
17:01 plobsing which means the thrown object is *not* the place to store them
17:01 whiteknight are you talking about more than one thread?
17:01 plobsing whiteknight: not even. coroutines can encounter these issues.
17:02 plobsing each coroutine can be in the midst of handling an exception
17:02 NotFound That may explain some coroutine issues.
17:03 whiteknight down this path lies danger, methinks. I wouldn't worry about it if not for inferior runloops and finalize
17:03 plobsing this has nothing to do with either of those things
17:03 plobsing coroutines can exist within the same runloop
17:03 whiteknight it does. We need to completely handle and finalize, an exception before we can re-handle it or handle a different one
17:04 whiteknight maybe I'm just not understanding what you are saying. Could you put together a small code example?
17:05 whiteknight brb, I'm going to go grab a sandwich
17:07 NotFound plobsing: do you mean a coroutine that yields in the middle of an expection handler?
17:08 plobsing NotFound: that can happen, yes
17:09 plobsing but is just one case of a more general control-flow issue
17:10 plobsing and the lesser problem of re-usable (as opposed to re-entrant) exceptions is already experienced by Ωη.
17:10 plobsing Ωη uses exception-object identity as part of its calling convention. Switching to rethrow changes the identity.
17:11 plobsing so Ωη cannot use rethrow
17:11 plobsing or something like that. all I know ATM is rethrow in stead of throw causes a lot of failures
17:12 whiteknight what do you mean exception identity? it would be the same exception and the same pointer to it
17:14 plobsing whiteknight: exactly. Ωη uses an exception singleton to indicate failed match, and allows all other exceptions to propagate.
17:15 plobsing if (e !== fail) { throw e; /* propagate */ }
17:16 whiteknight okay, and replacing rethrow there causes failure?
17:17 plobsing yes. because match-failed errors are no longer the same object.
17:18 whiteknight rethrow sets the handled attribute to -1. so if you were doing a VTABLE_equals instead of VTABLE_same it would come back different
17:19 whiteknight and it shifts out one of the handlers from the iter
17:19 whiteknight but other than that, it's the same PMC
17:19 bluescreen left #parrot
17:21 whiteknight if you're seeing weird failures, it's likely a bug
17:24 plobsing in winxed, ===/!=== has nothing to do with vtables
17:24 ambs left #parrot
17:24 plobsing s/!=/!/
17:26 NotFound plobsing: it has. issame and isntsame first check PMC * equality, then call VTABLE_is_same
17:27 cogno left #parrot
17:27 plobsing NotFound: eq_addr/ne_addr do not
17:27 ambs joined #parrot
17:28 cogno joined #parrot
17:29 NotFound plobsing: winxed uses issame and isntsame.
17:30 plobsing NotFound: OpSameExpr.emitop_if
17:30 dukeleto ~~
17:30 bluescreen joined #parrot
17:31 tadzik hello dukeleto
17:31 dukeleto tadzik: wazzup
17:31 tadzik Uninsane
17:31 NotFound Mmm... something wrong here.
17:31 plobsing I think the concept of address-equality is useful
17:32 dukeleto tadzik: busy with school, or hacking on parrot stuff?
17:34 NotFound The problem is that currently !== and === do differents thing depending on its usage.
17:34 tadzik dukeleto: busy with school. Like 15 minutes ago everybody on my semester got to know that tomorrow's labs are not from Async FSMs, but from Microcontrollers. Madness
17:34 NotFound But I don't think that may explain your problem.
17:38 plobsing my problem is this: if I throw, rethrow, and reuse for exceptions an object, somewhere down the line, a new object gets created (which doesn't have the same address)
17:39 ambs left #parrot
17:40 * plobsing grabs lunch
17:40 dukeleto Interesting new implementation of Smalltalk on Rubinius: https://github.com/rkh/Reak
17:43 ambs joined #parrot
17:43 whiteknight plobsing: That definitely sounds like a bug to me. If you can track that down to a test case, I'll fix it for you
17:45 ambs_ joined #parrot
17:45 ambs left #parrot
17:45 ambs_ is now known as ambs
17:46 plobsing left #parrot
17:48 NotFound I can reproduce it with a short example.
17:49 NotFound But it looks like the problem is not !== failing, looks like the handler gets disabled.
18:01 whiteknight does handler get disabled on rethrow?
18:02 NotFound winxed does finalize and pop_eh at the start of the catch block, so I'm not sure what's exactly happening.
18:03 whiteknight I found some problems with the finalize op in my exceptions branch, I need to fix it
18:04 NotFound The problem is not in rethrow, is the next throw with the same exception object what fails.
18:07 whiteknight so using throw after rethrow?
18:07 whiteknight throw->rethrow->throw fails?
18:07 NotFound Yes
18:07 whiteknight Can you write a PIR test case for me? I'll fix it soon
18:08 cotto_work good morning
18:08 whiteknight good morning, cotto_work
18:08 dukeleto cotto_work: wilkommen!
18:13 cogno left #parrot
18:21 cotto_work whiteknight: awesome blogging.
18:22 whiteknight thanks! I've been such a damn lump lately with it. I'm trying to get back into the swing
18:22 whiteknight I am working on a post for tomorrow that has a lot of fun new ideas in it
18:23 nopaste "NotFound" at 192.168.1.3 pasted "throw - rethrow pir example" (62 lines) at http://nopaste.snit.ch/28199
18:23 NotFound whiteknight: here is
18:26 JimmyZ joined #parrot
18:27 JimmyZ cotto_work: good morning
18:27 whiteknight NotFound++
18:28 cotto_work JimmyZ: good evening
18:28 JimmyZ hehe
18:29 JimmyZ cotto_work: https://github.com/parrot/parrot/commit/f2af827fca
18:35 plobsing_ joined #parrot
18:39 NotFound plobsing_: take a look at this: http://nopaste.snit.ch/28199
18:41 JimmyZ left #parrot
18:44 dalek Heuristic branch merge: pushed 77 commits to parrot/nwellnhof/unicode_filenames by nwellnhof
18:45 whiteknight the github wikis are getting more and more attractive looking
18:46 whiteknight the ability to write pages in POD, the ability to download the entire wiki as a git repo (and can submit pull requests on them), to have access restrictions managed by github, these are all very attractive features
18:47 cogno joined #parrot
18:47 plobsing_ but github bugtracker ticket numbers are not stable
18:47 plobsing_ close ticket 1, all tickets get renumbered
18:47 plobsing_ not yet an acceptable trac substitute
18:47 cotto_work how are you supposed to link to a ticket?
18:48 whiteknight yes, you're right. The github issue tracker is still the weak link in the chain
18:48 whiteknight I've never been happy with it
18:48 * cotto_work wishes for git-backed trac
18:48 whiteknight You can link to a ticket from the github wiki, they do have a markup for that
18:48 whiteknight but plobsing is right that the feature won't be great to use until the issue tracker stops sucking
18:50 whiteknight ability to edit POD docs in an online WYSIWYG editer has me salivating
18:52 whiteknight NotFound: Can you explain that code example to me? when I run it, it fails with unhandled exception and prints a backtrace
18:53 plobsing_ whiteknight: the unhandled exception is happening *within* the catch3 part (which should catch the exception)
18:53 nwellnhof joined #parrot
18:53 dukeleto whiteknight: i talked to some Github peeps at the Git Together, and they say some awesome stuff is coming down the line, such as online conflict resolution, and more configurable timelines
18:54 whiteknight dukeleto: That's all very good to hear, but the issue tracker is still garbage and unusable
18:54 whiteknight All the other features are great, but the issue trackers are bad
18:54 whiteknight if they could radically improve issue trackers, so that they were as functional as what Trac offers, I would switch to it in a heartbeat
18:55 nwellnhof whiteknight: in nwellnhof/unicode_filenames i made some changes to the embed api. i'd like to know what you about them.
18:55 whiteknight a git-based issue tracker that I could clone and search/update/manipulate locally would be awesome, but I suspect pretty far away
18:55 whiteknight nwellnhof: okay, awesome. I'll take a gander
18:55 nwellnhof i changed Parrot_api_load_bytecode_file and Parrot_api_wrap_imcc_hack to accept Parrot_String instead of const char *.
18:55 dukeleto whiteknight: i guess you get what you pay for
18:56 whiteknight plobsing: I'm not sure I understand why catch3 is throwing an exception, or what that's supposed to prove
18:56 nwellnhof whiteknight: then i added Parrot_api_string_import which accepts a string in the platform encoding.
18:56 cotto_work dukeleto: We get way more than we pay for.
18:56 cotto_work which is good, given our budget
18:56 plobsing_ whiteknight: sd bugtracker might be something you would find interesting (can work git-based IIRC)
18:56 whiteknight dukeleto: true, but we're not paying for Trac either. Also, it's possible in the future that PaFo could be paying for service on Github
18:57 nwellnhof whiteknight: and i added an encoding argument to Parrot_api_string_import_binary
18:57 NotFound whiteknight: that is the problem, the last exception handler doesn't catch the exception.
18:57 whiteknight NotFound: Oh
18:58 dukeleto whiteknight: not if we have our non-profit docs in order. Github gives away private repos and increased disk space to non-profits
18:58 dalek parrot/nwellnhof/unicode_filenames: 72f7f5a | nwellnhof++ | / (29 files):
18:58 dalek parrot/nwellnhof/unicode_filenames: Merge branch 'master' into nwellnhof/unicode_filenames
18:58 dalek parrot/nwellnhof/unicode_filenames:
18:58 dalek parrot/nwellnhof/unicode_filenames: Conflicts:
18:58 dukeleto whiteknight: and we are hosting our own Trac instance. Not the same.
18:58 dalek parrot/nwellnhof/unicode_filenames: compilers/imcc/main.c
18:58 dalek parrot/nwellnhof/unicode_filenames: src/packfile/api.c
18:58 dalek parrot/nwellnhof/unicode_filenames: t/src/embed/api.t
18:58 dalek parrot/nwellnhof/unicode_filenames: review: https://github.com/parrot/parrot/commit/72f7f5a067
18:58 whiteknight dukeleto: Right. Regardless, if we had money to pay for a good host like Github, I wouldn't mind paying it
18:59 dukeleto whiteknight: indeed.
18:59 dukeleto whiteknight: we already changed ticket systems once. I don't know if we will again. I was barely involved, but it seemed at least as painful as the svn -> git migration
19:00 * NotFound sings 'If I were a rich man'
19:00 cotto_work dukeleto: it was not pleasant
19:00 cotto_work though it was also not especially well-communicated, iirc
19:00 whiteknight I disagree. I think it was not so bad. If it was bad, it was because we had so much cruft built up in RT
19:00 plobsing_ we should fully separate exception information from the thrown object. Exception should be an implementation detail for the ephemeral information and throwers should not be required to know about it.
19:01 whiteknight It was a lot of work, but many many tickets got triaged in place, not migrated
19:01 cotto_work not as much work as svn->git though
19:01 dukeleto whiteknight: yeah, the svn -> git migration was such a pain, it is hard to compare it to other things
19:02 cotto_work I think that much of the effort was because it's exhausting to look through every ticket, let alone decide which ones to migrate.
19:02 whiteknight The issue isn't that migrating issue trackers is hard. The issue is that we're very bad at managing our ticket queues
19:02 NotFound All your exception are thrown to us!
19:02 whiteknight we let too much crap build up in there. We have too many tickets that will never close
19:02 * cotto_work throws a NotFoundException
19:02 whiteknight not without somebody taking initiative and saying  "forget this this. WONTFIX"
19:03 cotto_work whiteknight: I love doing that.
19:03 whiteknight me too. It's good to say "there isn't enough information. I can't reproduce it. Forget it"
19:03 dukeleto i think we need some rule like "if a ticket hasn't been touched in 2 years, WONTFIX it"
19:03 whiteknight or ALREADYFIXED it
19:03 dukeleto anything else is just lying to ourselves
19:03 whiteknight exactly
19:04 dukeleto i think we need some similar policy for old branches, but I don't want to delete old branches. I have been thinking that any branch that hasn't been touched in at least a year gets moved to the historical/ prefix
19:04 NotFound Histerical?
19:04 whiteknight I was thinking almost the same with any branch more than ~5000 commits behind master
19:04 dukeleto so that future parrot historians can mine it for historical significance
19:05 dukeleto whiteknight: sure. the actual rule isn't important, just that we have some kind of cut-off that says "this branch will most likely never be merged"
19:05 dukeleto also, some branches were interesting explorations, but we know they will never be merged, so we can put those in historical/ too
19:05 whiteknight Some branches just get forgotten. I have about 3 or 4 that I can delete tomorrow if I can talk to chromatic about them
19:05 whiteknight two more I can delete by the end of the week because they've been superceeded
19:06 whiteknight dukeleto: Just having the branch doesn't help nearly so much as a short written summary of what was attempted
19:06 whiteknight and if we can't even figure out if the branch is viable, there's no way we're going to get a summary written
19:07 plobsing_ left #parrot
19:08 dukeleto whiteknight: that is what commit messages are for
19:09 dukeleto whiteknight: i just want to sort out "branches that are currently being worked on" from "branches that are dormant"
19:11 whiteknight NotFound: This example you wrote up is interesting and troubling
19:11 cotto_work at least the dormant branches are trivially easy to find now
19:11 NotFound whiteknight: yeah
19:12 KatrinaTheLamia left #parrot
19:12 davidfetter joined #parrot
19:13 nopaste "whiteknight" at 192.168.1.3 pasted "working example for NotFound++" (65 lines) at http://nopaste.snit.ch/28204
19:14 whiteknight NotFound: if I add in a second handler, catch4, it works
19:14 whiteknight if you take out the push_eh catch4, it fails again
19:14 whiteknight even though count_eh says there is 1 handler
19:14 whiteknight very very interesting
19:15 whiteknight somehow, a rethrown PMC is skipping 2 handlers in it's iterator
19:15 whiteknight if I replace the last fail with a fail_re, we get weird behavior too
19:15 whiteknight the fail_re throws, but never rethrows
19:16 NotFound Very nice
19:16 whiteknight so I think that rethrow is causing the iter to get 1 element ahead
19:16 NotFound http://boycottameetingday.com/
19:16 whiteknight so it skips a handler
19:16 NotFound Not related, but inspiring page.
19:17 Eclesia joined #parrot
19:17 Eclesia hi
19:17 atrodo NotFound> I just saw that too.  That TED talk was one of the least impressive I've seen, which is strange
19:20 NotFound Sometimes I go to meetings with the Nintendo DS just in case
19:22 plobsing_ joined #parrot
19:29 bluescreen left #parrot
19:33 * dukeleto is seeing lots of new warnings on master
19:33 dukeleto src/embed/pmc.c: In function ‘Parrot_api_pmc_find_method’:
19:33 dukeleto src/embed/pmc.c:584: warning: variable ‘interp’ might be clobbered by ‘longjmp’ or ‘vfork’
19:33 dukeleto sounds dicey
19:34 dalek parrot/rethrow_madness: ea68a95 | Whiteknight++ | t/op/rethrow.t:
19:34 dalek parrot/rethrow_madness: add failing test case from NotFound++ to illustrate the problem
19:34 dalek parrot/rethrow_madness: review: https://github.com/parrot/parrot/commit/ea68a95c0d
19:34 dalek parrot/rethrow_madness: 777bd1b | Whiteknight++ | t/op/rethrow.t:
19:34 dalek parrot/rethrow_madness: narrow down the test a little bit more
19:34 dalek parrot/rethrow_madness: review: https://github.com/parrot/parrot/commit/777bd1ba2b
19:35 whiteknight dukeleto: I'll take a look at that one later. What compiler you using?
19:38 dukeleto whiteknight: gcc 4.4.3
19:43 Eclesia I just pulled the latest parrot and tryedto compile it but I have this error : http://pastebin.com/m4Ue2bSU
19:43 Eclesia I'm not familiar with 'make' compilation, anyone could have a look ?
19:44 bluescreen joined #parrot
19:44 atrodo Eclesia> have you installed parrot before?
19:44 Eclesia yes
19:44 cotto_work dukeleto++
19:45 Eclesia atrodo: I must uninstall it ?
19:45 atrodo Not sure how to solve it, but that's where that error comes from.
19:45 cotto_work Eclesia: it looks like Parrot is finding some old bytecode.
19:45 plobsing_ the problem is that our makefile doesn't have all pbc files depending on PBC_COMPAT
19:45 plobsing_ so old pbc doesn't always get regenerated
19:46 atrodo Eclesia> That's what I've done in the past, but I suspect there's a way around it that I'm unaware o
19:46 cotto_work Eclesia: did you just update git?  You'll probably need to do make reconfig
19:46 cotto_work *update a git clone
19:46 Eclesia I made : git pull , perl Configure.pl , make          nothing else
19:47 cotto_work ok.  reconfig is better.  It'll clobber anything that might be out of date and rerun configure.pl
19:47 Eclesia ok
19:47 plobsing_ like I said, some old PBC is not catching the PBC_COMPAT change. the quick fix is 'make  realclean; perl Configure.pl; make'
19:48 plobsing_ the full fix, for someone who likes makefile munging, is to update the deps of the offending PBC files.
19:49 cotto_work Yeah.  The need for reconfig is basically scar tissue that we've built to deal with poor pbc dependencies.
19:49 dalek parrot: 09258d5 | dukeleto++ | / (2 files):
19:49 dalek parrot: [TT #1965] Make the Rational PMC act sanely when used in a boolean context, doughera++
19:49 dalek parrot: review: https://github.com/parrot/parrot/commit/09258d54ec
19:50 Eclesia I'm not familiar with all this sorry. :D (Learn programming asm > vb > java  , but not C/C++ so first time I really play with makefiles)
19:50 cogno left #parrot
19:51 cotto_work Eclesia: don't worry about it then.  Just run reconfig often.
19:51 cotto_work (which is a shortcut for make realclean && perl Configure.pl)
19:52 whiteknight dukeleto: Can you open a ticket for me with those warnings? I want to work on them and I don't want to forget it
19:52 Eclesia cotto_work: thanks, it worked this time
19:52 cotto_work Eclesia: Glad to hear it .  Thanks for being patient.
19:54 Eclesia no problem, if you want me to test stuffs on my pc (not to complicated). I'll be glad to help a little when I have time. :)
19:54 wagle left #parrot
19:55 dalek TT #1965 closed by dukeleto++: rational.pmc's get_bool is backwards and not portable
19:55 dalek TT #1965: http://trac.parrot.org/parrot/ticket/1965
19:56 plobsing_ I'd argue that rational.pmc's get_bool is still backwards
19:56 plobsing_ at least it is portable now though
19:57 dukeleto Eclesia: do you need stuff to work on? I can suggest some easy tickets for you to cut your beak on :)
19:57 wagle joined #parrot
19:58 dukeleto Eclesia: git clean -fdx will wipe out any compile-cruft from your git repo, but make sure you don't have any uncommitted files that you care about!
19:58 dukeleto Eclesia: and you will often need to "make realclean" after you update your parrot.git repo
19:58 Coke (issue tracker you can clone and work on locally) - it may not be git, but obra already wrote that.
19:59 dukeleto Eclesia: https://github.com/leto/Util​/blob/master/bin/new_parrot <-- you can steal that for an easy way to compile new a parrot
19:59 Coke (ticket migration at least as painful) HAHA HA HA HA.
19:59 cotto_work Coke: I thought you might have some thoughts.
19:59 Coke (it was a complete and utter (&*# waste of time and energy. I would not recommend repeating it.)
19:59 dukeleto Coke: :)
20:00 Coke (wontfixing based on age alone) bad idea. wontfix it based on wontfixing it.
20:01 cogno joined #parrot
20:01 Coke Eclesia: you either need to use a more recent parrot, or remove your install directory and re-install.
20:01 TimToady phone?
20:01 Eclesia Coke: the problem is solved :) the realclean did the trick
20:01 dukeleto Eclesia: that script assumed that you put $PWD/installed_parrot in your $PATH and that you are updating the git repo with something like "git pull --rebase"
20:02 Coke Eclesia: awesome.
20:02 dukeleto Eclesia: note that my new_parrot script does that already, for you :)
20:02 Eclesia I made my small script already
20:04 dukeleto Eclesia: to each their own
20:04 dalek Heuristic branch merge: pushed 100 commits to parrot/nwellnhof/platform_src by nwellnhof
20:10 Eclesia question : when building parrot, I seen a line about opengl available or not on my pc. does that mean parrot contain a low level api for rendering ?
20:10 Eclesia or is it a plan for parralal computation on the gpu ?
20:11 plobsing_ Eclesia: it contains a relatively small, simple library binding to OpenGL
20:11 plobsing_ simple in the sense that it forwards the C API to you, not in the sense of "easy to use"
20:11 NotFound Eclesia: see examples/opengl/
20:12 dalek TT #1981 created by dukeleto++: Many new warnings like: warning: variable ‘interp’ might be clobbered by ...
20:12 dalek TT #1981: http://trac.parrot.org/parrot/ticket/1981
20:12 dukeleto Eclesia: and our opengl bindings are known to have some problems on OS X, in case that is important to you
20:12 Eclesia nope, I'm on mint
20:13 nwellnhof dukeleto: have you been able to test nwellnhof/platform_src on a bsd system by chance?
20:15 dukeleto nwellnhof: i have not, but I can try now. Do you care between FreeBSD or OpenBSD ?
20:15 nwellnhof dukeleto: any bsd should be fine
20:16 whiteknight nwellnhof: The API work you've done looks good. The IMCC work you've done looks pretty good too.
20:16 whiteknight so big +1 from me
20:18 whiteknight I wish we didn't have to use the PIO_*  macros in IMCC, but I guess it can't be helped
20:18 whiteknight unless we wanted to convert IMCC over whole-hog to reading input from an IO PMC instead of a low-level file handle
20:19 whiteknight and there probably isn't any real reason to make that kind of a change
20:20 nwellnhof whiteknight: i will replace the PIO_* macros with direct function calls like Parrot_io_* after platform_src has been merged
20:22 nwellnhof i also tried to make IMCC read whole input files before, but i see no reason to do it. it only makes things more complicated.
20:24 NotFound There is a reason but I don't think PIO is ready for that: being able to read UTF16 and UTF32 pir sources.
20:24 nwellnhof NotFound: PIO is ready for that now
20:25 NotFound nwellnhof: good
20:25 whiteknight nwellnhof: Let me know when you try to make changes like that to IMCC. I have some work I want to do in IMCC in the near future, and I don't want to conflict with you
20:25 whiteknight let me know when you're working on it, and I'll go do something else for a while
20:27 fperrad left #parrot
20:33 cogno_ joined #parrot
20:35 hudnix left #parrot
20:35 cogno left #parrot
20:37 nwellnhof whiteknight: besides the unicode filename thing, i have no other plans regarding imcc
20:42 dukeleto nwellnhof: i am compiling platform_src on openbsd now
20:42 nwellnhof dukeleto: great, thanks a lot
20:44 dalek parrot/nwellnhof/unicode_filenames: 542c524 | nwellnhof++ | compilers/imcc/main.c:
20:44 dalek parrot/nwellnhof/unicode_filenames: Fix for filenames in IMCC error messages
20:44 dalek parrot/nwellnhof/unicode_filenames: review: https://github.com/parrot/parrot/commit/542c524bfa
20:44 dalek winxed: r738 | NotFound++ | trunk/winxed (2 files):
20:44 dalek winxed: set exit values in stage 1 compiler and check them in the driver
20:44 dalek winxed: review: http://code.google.com/p/w​inxed/source/detail?r=738
20:48 hudnix joined #parrot
20:49 dukeleto nwellnhof: build was successful. Gonna run "make smoke" now
20:49 dukeleto nwellnhof: crap!
20:50 dukeleto nwellnhof: i ssh'ed to the wrong machine. It was a linux machine. d'oh!
20:51 dalek parrot/nwellnhof/unicode_filenames: 8588a4c | nwellnhof++ | compilers/imcc/imc (2 files):
20:51 dalek parrot/nwellnhof/unicode_filenames: [codingstd] Wrap macro args
20:51 dalek parrot/nwellnhof/unicode_filenames: review: https://github.com/parrot/parrot/commit/8588a4c14f
20:53 particle1 joined #parrot
20:53 perlite_ joined #parrot
20:55 plobsing_ left #parrot
20:56 particle left #parrot
20:57 perlite left #parrot
20:57 perlite_ is now known as perlite
21:04 Eclesia question, in pir files, what is the difference between # lines and text between =
21:05 cotto_work Eclesia: can you give an example of what you're talking about?
21:05 Eclesia http://pastebin.com/bnfGQbJa
21:06 GeJ Bonjour everyone.
21:06 cotto_work Ah.  Look up Pod.  It's one of the supported documentation formats in PIR.
21:06 Eclesia hi GeJ, you are french ?
21:07 Eclesia pod ?
21:07 Eclesia some kind of javadoc ?
21:07 cotto_work http://en.wikipedia.org/wi​ki/Plain_Old_Documentation
21:08 GeJ Eclesia: that would be correct.
21:09 Eclesia so bonsoir  Gej :)
21:09 dukeleto Eclesia: # are comments, stuff between = is documentation
21:09 GeJ Eclesia: Exactly, bonjour Eclesia.
21:10 dukeleto Eclesia: perldoc somefile
21:10 Eclesia ok, so I can remove then without breaking anything ^^
21:10 dukeleto Eclesia: Parrot puts POD in many files, not just Perl files. That is a bit non-standard, but you can run perldoc on any file
21:10 dalek parrot/nwellnhof/platform_src: cd1a670 | nwellnhof++ | / (2 files):
21:10 dalek parrot/nwellnhof/platform_src: [codingstd] Run headerizer, fix enum
21:10 dalek parrot/nwellnhof/platform_src: review: https://github.com/parrot/parrot/commit/cd1a670df3
21:12 bacek left #parrot
21:19 whiteknight these unicode changes from nwellnhof++ are all very nice
21:20 whiteknight I'm excited to get so many improvements to our strings and IO systems added in such short order
21:20 dalek winxed: r739 | NotFound++ | trunk/winxed (2 files):
21:20 dalek winxed: allow handle_types_except as modifier in try statement, use it and set exit
21:20 dalek winxed: values in installable driver
21:20 dalek winxed: review: http://code.google.com/p/w​inxed/source/detail?r=739
21:23 bacek joined #parrot
21:24 particle1 is now known as particel
21:24 particel is now known as particle
21:26 dalek winxed: r740 | NotFound++ | trunk/pir/winxed_ (2 files):
21:26 dalek winxed: update installable files
21:26 dalek winxed: review: http://code.google.com/p/w​inxed/source/detail?r=740
21:28 whiteknight left #parrot
21:40 ambs left #parrot
21:42 bluescreen left #parrot
21:49 rurban_ joined #parrot
21:49 cogno joined #parrot
21:51 rurban left #parrot
21:52 rurban_ is now known as rurban
21:53 cogno_ left #parrot
22:01 Andy left #parrot
22:09 plobsing_ joined #parrot
22:32 plobsing_ left #parrot
22:34 Eclesia left #parrot
22:40 nopaste left #parrot
22:40 nopaste joined #parrot
22:46 bacek_at_work ~~
22:47 dalek nqp-rx/nom: feb7c9c | jonathan++ | / (2 files):
22:47 dalek nqp-rx/nom: Add storage_spec structure and various constants for a repr to describe how it likes to be stored inside another one.
22:47 dalek nqp-rx/nom: review: https://github.com/perl6/nqp-rx/commit/feb7c9cc9c
22:47 dalek nqp-rx/nom: 059f70e | jonathan++ | src/metamodel/rakudoobject.h:
22:47 dalek nqp-rx/nom: Add get_storage_spec to REPR API.
22:47 dalek nqp-rx/nom: review: https://github.com/perl6/nqp-rx/commit/059f70e0b2
22:47 dalek nqp-rx/nom: 1eb962d | jonathan++ | src/metamodel/ (6 files):
22:47 dalek nqp-rx/nom: Get all representations to provide a storage spec.
22:47 dalek nqp-rx/nom: review: https://github.com/perl6/nqp-rx/commit/1eb962d735
23:37 whiteknight joined #parrot
23:38 whiteknight good evening, #parrot
23:40 dukeleto particle: have you given 3.0.0 a whirl yet?
23:46 arnsholt left #parrot
23:51 dalek parrot/exceptions_subclass: c5c5992 | Whiteknight++ | / (7 files):
23:51 dalek parrot/exceptions_subclass: use VTABLE_does to determine whether something is a valid exception, not pmc->vtable->base_type
23:51 dalek parrot/exceptions_subclass: review: https://github.com/parrot/parrot/commit/c5c5992008
23:51 dalek parrot/exceptions_subclass: 10fbc43 | Whiteknight++ | t/pmc/exception.t:
23:51 dalek parrot/exceptions_subclass: test for throwing a subclass
23:51 dalek parrot/exceptions_subclass: review: https://github.com/parrot/parrot/commit/10fbc43550
23:51 dalek parrot/exceptions_subclass: 508d4de | Whiteknight++ | t/pmc/exception.t:
23:51 dalek parrot/exceptions_subclass: add a test that we can use finalize_p on a subclass of Exception
23:51 dalek parrot/exceptions_subclass: review: https://github.com/parrot/parrot/commit/508d4de055
23:51 dalek parrot/exceptions_subclass: 559c616 | Whiteknight++ | src/ (3 files):
23:51 dalek parrot/exceptions_subclass: remove most uses of enum_class_Exception from the source. Where tested, use VTABLE_does instead. When building an exception, allow for HLL mapped subclasses
23:51 dalek parrot/exceptions_subclass: review: https://github.com/parrot/parrot/commit/559c6162be
23:52 hercynium left #parrot
23:55 arnsholt joined #parrot

| Channels | #parrot index | Today | | Search | Google Search | Plain-Text | summary

Parrot | source cross referenced