Parrot 1.8.0 Zygodactyly released | Parrot 1.9.0 to be released Tues 15 Dec
Set by moderator on 14 December 2009.
japhb kid51, I doubt it. 00:00
I'm not sure we have any tools that can get that kind of info except maybe the profiler, and it's not doing HLL profiling 00:01
00:01 tetragon joined
Tene pmichaud: available for questions about pdd31? 00:01
mikehh All tests PASS (pre/post-config, make corevm/make coretest, smoke (#30923), fulltest) at r43056 - Ubuntu 9.10 amd64 (g++ with --optimize)
pmichaud Tene: Tene sure 00:02
(although I may get interrupted)
japhb afk for a break to mentally digest 00:03
Tene 1) it looks like parse_name is specced as returning an array. This seems to prohibit things like Foo::Bar:ver<5.1.3>:auth<FOO>, or do you expect that those named items would just have some special representation in the array of strings? ['Foo','Bar',':ver...'] ? 00:04
2) Why have you separated load_module from get_module instead of deferring that choice to the HLL? What are the guidelines for when to call load_module and when to call get_module?
00:06 bacek joined
kid51 msg fperrad After Tuesday release, can you test Win32-patch in trac.parrot.org/parrot/ticket/886#comment:7? Thanks. 00:08
purl Message for fperrad stored.
kid51 msg particle After Tuesday release, can you test Win32-patch in trac.parrot.org/parrot/ticket/886#comment:7? Thanks.
purl Message for particle stored.
pmichaud (got interrupted) 00:10
I wasn't particularly dealing with the :from/:ver part of the specification yet. 00:11
I think parse_name is traditionally more about runtime symbol names than module names. (Granted the runtime symbol names need those designations as well.) 00:12
My expectation at this point would be that :ver, :auth, etc should perhaps be more hash-like than array-like, so perhaps we generalize parse_name to return a Capture
or perhaps that's actually a HLL-level decision
since a HLL has to decide internally how it wants to handle naming of multiple-versions of a module 00:13
so yes, in that case (I'm thinking out loud here) using some special representations in the array of strings seems most appropriate
or the HLL decides that it should really be ['Foo';'Bar:ver<2.3>'] 00:14
in some sense the array of strings needs to be treated as opaque data by foreign HLLs
Tene That seems distasteful to me. I'd rather see a capture, or even better, a hash-interface with required attribute 'name', maybe with other defined-but-optional keys.
but, I'm not too picky there. 00:15
seems like ['Foo';'Bar:ver<2.3>'] would invite parsing it twice, which seems a bit silly.
pmichaud why twice?
Tene first to split on ::s, second to pull out the named parts from the last element. 00:16
If you're already parsing the name in the first place, wy not fully parse it there?
pmichaud in some sense, this is also why pdd31 starts to introduce the idea of opaque modules
er, opaque module handls
*handles
my impression of pdd21 (namespaces) was that parse_name was more about variable names than module names 00:17
dalek rrot: r43057 | darbelo++ | branches/pmc_freeze_cleanup/src/pmc_freeze.c:
Avoid leaks on exceptions.
Tene That also seems a bit off to me... you have your opaque handles, and then you have a standard function with a standard return value to actually get information out of them... why not just specify some standard for the return of module loading in the first place?
and skip the opaque handle part.
i expect that your answer to load_module/get_module will touch on what I'm missing there. 00:18
pmichaud my main reason for load_module and get_module separation was to have a way to ask a language "give me the handle to a module you've already loaded" versus "load this module, please" 00:20
I don't think that the only available request should be "load this module and tell me if you failed"
I think we should be able to ask a module "did you load this already?" 00:21
s/module/hll/
I could agree to upgrading parse_name a bit -- I just didn't want pdd31 at this point to stray too far from what we have already
Tene What I mentioned is what we were already using. 00:22
for module loading.
pmichaud ?
I didn't quite follow that last comment. 00:23
Tene svn.parrot.org/parrot/trunk/runtim...parrot.pir -- load_library accepts an array specifying a name and optional named arguments 00:24
Coke pmichaud: wiki.github.com/perl6/nqp-rx/requests - any pointers for me on item #2 in coke wants? 00:25
Tene github.com/tene/steme/blob/master/s.../steme.pir -- same thing in steme, and in rakudo master
Coke pmichaud++ # completing HG.
00:26 fperrad joined
pmichaud Tene: okay, yes, load_library was already accepting an array specifying a name and optional named arguments.... I'm not sure I see the issue 00:27
Tene pmichaud: In that case, I'm imagining something, so feel free to ignore it.
pmichaud in some ways what I wrote in pdd31 was meant to clarify and update things we had done before, as well as provide some new interfaces 00:28
Tene pmichaud: so, when would you use get_module vs load_module ?
pmichaud I'd use get_module if a knew a particular module had already been loaded. 00:29
or if I wanted to query if a particular module was loaded.
in writing the code for HLL::Compiler, it turned out to be a nicer refactor if the "return a module handle" part was separate from the "load a module" part
especially if we end up with languages that share module handles but perhaps have different load semantics
Tene does load_module fail if a module is already loaded? 00:30
pmichaud no
it's kind of like the distinction between "get_namespace" and "make_namespace"
Tene Okay, I get it.
Oh, more... 00:31
japhb is going to be needing the ability to query HLLs for library information, for plumage. "Do you have module Foo::Bar? What version is it? Is it more than 5.10 but less than 6.8?"
pmichaud makes sense, I'd propose some api extensions then 00:32
Tene Seems to me that this should also be exposed through the HLL API, yes?
pmichaud but be careful of that question's phrasing
Coke Tene: btw, check out tcl's [package]
pmichaud it's more like "what versions of Foo::Bar do you have?"
as opposed to "do you have Foo::Bar" 00:33
Tene IME, "Give me all available information about Foo::Bar" is appropriate, yes?
pmichaud sure, that works
darbelo purl: msg plobsing I applied two patches by tewk++ to the branch today, and made some changes afterwards, let me know what you think of them. In particular of r43058. 00:34
purl Message for plobsing stored.
Tene pmichaud: if get_module/load_module returned something with a defined interface instead of opaque, we already have that query. ;)
pmichaud my goal for pdd31 was to get a document started more than decide that we had finished it. And to have a nqp-based implementation for it.
Tene Okay. 00:35
pmichaud I'm fine if we define an interface for that
however
I really want to avoid imposing requirements on hlls at this stage of the game (more)
Coke me posits >> as an end of line marker indicating "more". =-) 00:36
pmichaud at this stage of the game, I'd prefer that a defined interface be adopted by convention and experience than defined a-priori 00:37
Tene Coke: but is Ā» allowed? What about ≫ ?
pmichaud so, rather than encoding something specific in "Compiler API" part of pdd31, I'd prefer that we leave it as "opaque" but then say "here's the module information that HLL::Compiler returns by default, and its defined interface" 00:38
and then create such and object in HLL::Compiler
*an
Tene pmichaud: but you *are* defining something as the return value of get_exports. Is that different? 00:39
pmichaud yes
or, it may not be
the biggest difference is that at this point, I'm more interested in getting exported symbol information from a library than meta-information from it 00:41
it's entirely possible that they should be unified
Tene Okay. I think I understand now. Thanks.
pmichaud but more to the point I was trying to follow allison's dictum (from the previous pdd31) that the requirements imposed on hll writers had to be minimal
I was also trying to create something that could handle export details with simple symbol table entries, instead of having to fill out an entire PMC data structure 00:42
nopaste "coke" at 72.228.52.192 pasted "nqp-rx question..." (27 lines) at nopaste.snit.ch/19083
pmichaud Coke: your question is in my queue, but it'll be about an hour before I can get to it. dinner just landed on the table 00:43
00:43 plobsing joined
pmichaud oh, for the nopaste 00:43
you need
+ Partcl::Grammar.O(':prec<15>, :assoc<unary>', '%unary'); 00:44
otherwise it think it's a binary operator
Coke woot.
00:46 fperrad joined
pmichaud oh 00:46
Coke (that did it, pushing) 00:47
dalek rtcl-nqp: 71f4a01 | coke++ | (2 files):
implement [expr !]
00:48
rrot: r43058 | darbelo++ | branches/pmc_freeze_cleanup (2 files):
Add a dummy self-reference and a #define to the visit_info structure to preserve

on this branch and pass al freeze/thaw tests. This should allow us to merge our changes back to trunk without waiting for a deprecation boundary.
00:50
darbelo purl: msg plobsing I don't know if I'll be available in the next 16 or so hours. So, eel free to revert any changes I've made that you disagree with. We should probably figure out a common strategy for the pmc_freeze_cleanups too.
purl Message for plobsing stored.
plobsing I was just going to say you're on a roll!
darbelo Heh, my roll's mostly tewk++'s work. And it's finished for today. 00:51
plobsing Although I'm not quite sure about limiting the scope of the packfile if we're moving to packfile generation in stead of using a STRING as a buffer 00:52
But it is definitely cleaner in the short term. 00:53
darbelo I figured we could try a two step approach: first clean up as much as we can while staying ccompatible, do a round of HLL-testing and merge back to trunk as soon as posible.
Then re-branch and do the compat-breaking stuff so it can land right after 2.0 is released. 00:54
That way we get two branch that live less than a month and are easier to merge to trunk. 00:55
But I have to go now. I'll try to get back nline in a few hours. See ya!
plobsing darbelo++ # good plan
chromatic Great plan. 00:56
00:57 abqar joined
dalek rtcl-nqp: 5c9d4dd | coke++ | src/Partcl/commands/main.pm:
fix unset's arg handling.
00:59
01:10 fperrad joined 01:16 patspam joined 01:19 Whiteknight joined 01:32 fperrad joined
pmichaud Coke: (item #2, interpolating captured components) -- at the moment that's a bit expensive to implement naively, and the non-expensive approach requires a nqp refactor. 01:34
not a big refactor, but a non-trivial one.
(actually it's more of a regex refactor than an nqp one) 01:37
dalek rrot: r43059 | pmichaud++ | failed to fetch changeset:
[nqp]: Update with latest sources.
01:38
01:38 jsut_ joined 01:49 JimmyZ joined 02:00 fperrad joined 02:05 egalia joined
dalek TT #604 closed by pmichaud++: pge, debug and visibility, tools 02:08
Coke pmichaud: ok. any way to get that behavior in the Action? I tried, but $<extra> was an RPA, which was not what I expted.ected. 02:23
02:25 fperrad joined
dalek rtcl-nqp: fbaf3fc | coke++ | TODO:
this is impacting multiple test files.
02:31
rtcl-nqp: db16f1a | coke++ | src/Partcl/commands/file.pm:
Add several placeholder builtins; gets us further through several .t files
kid51_at_dinner make fulltest: Darwin/PPC: PASS at r43056 02:39
dukeleto 'ello
kid51 dukeleto, hello 02:40
JimmyZ good morning, #parrot
dukeleto JimmyZ: howdy
we have a release tomorrow, exciting! 02:42
dukeleto has been swamped in meatspace
cotto not really, but that's the point of monthly releases ;) 02:43
kid51 meatspace?
purl i think meatspace is as opposed to the cyber kind.
nopaste "kid51" at 70.85.31.226 pasted "linux/i386: context_unify3 branch: r43059: make corevm/coretest has many test failures" (2994 lines) at nopaste.snit.ch/19085 02:53
03:15 kid51 joined
dukeleto cotto: i still find our monthly release exciting, but I hope the release manager doesn't ;) 03:30
make fulltest PASS on r43059 darwin/x86 03:36
03:49 diakopter joined 03:59 integral joined 04:48 iblechbot joined 04:56 ZeroForce joined
dukeleto wow, evidently .include 'blah.pbc' is allowed and makes funny things happen 04:57
cotto I'd guess that you're not saying it makes parrot tell a funny joke. 04:59
dukeleto cotto: silent death 05:01
where do I go to learn about making a fakecutable?
chromatic man pbc_to_exe 05:03
(let's see if pervasive laziness applies also to documentation)
dukeleto chromatic: No manual entry for pbc_to_exe 05:06
ack -a pbc_to_exe docs/ returns nothing # :(
chromatic What would you like to know? 05:07
dukeleto chromatic: i want to make an executable out of Tapir 05:09
chromatic: i have a .pir file which includes 2 pbc's
chromatic I haven't tried this and advise you to fire up your bug client, but I'd turn them all into PBC files, use pbc_merge, and then pbc_to_exe on the result. 05:10
dukeleto chromatic: i want to make a binary that bundles the all three together, without the 2 PBC's which are included having to be installed
chromatic: ooh, i haven't used pbc_merge before
chromatic: trying now 05:11
cotto chromatic, how current is the packfile pdd? 05:15
chromatic I thought I read that it's very close, barring some changes to annotations. 05:17
... but I don't know much about packfiles.
dukeleto chromatic: creating the fakecutable worked, but I got: 05:19
A method named 'is_pass' already exists in class 'Tapir;Stream'. It may have been supplied by a role.
chromatic: is that a bug on my part or pbc_to_exe ?
chromatic Do you have :init and :load on any sub in your code?
dukeleto chromatic: yes 05:21
chromatic: i add attributes to an object in a method that has both :init and :load
chromatic: that was the first way I got it to work. what is the correct way? 05:22
chromatic I think only :init is necessary.
However... this is a messy part of PIR/PBC isomorphism.
dukeleto chromatic: i only have an is_pass method defined in one place in one class 05:24
chromatic: same error if I only use :init
chromatic Okay, switch it to :load. 05:25
dukeleto chromatic: that seems to make stuff work, but some tests fail, which I shall investigate. can you explain to me the difference between having :load, :init and both? 05:28
chromatic :load executes only when loading from bytecode.
:init executes right after compilation.
The effects of :init should be frozen into PBC. 05:29
dukeleto chromatic: i need that stuff because one of my classes instantiats the other inside 05:30
chromatic: Class '[ 'Tapir' ; 'Stream' ]' not found 05:31
current instr.: 'parrot;Tapir;Parser;parse_tapstream' pc 155 (lib/Tapir/Parser.pir:88)
now I get that error, when i only have :load
nopaste "chromatic" at 72.87.39.97 pasted "bacek: this patch fixes many, many segfaults on context_unify3, but it's not quite correct" (25 lines) at nopaste.snit.ch/19087
chromatic Hm. 05:32
Last idea, try :init :anon.
msg bacek Please see nopaste.snit.ch/19087 for a partial cure to context_unify3 woes.
purl Message for bacek stored.
plobsing msg darbelo r43056 introduced bugs for me (amd64) in t/pmc/packfile*. It appears that the packfile makes PF_fetch* use functions from src/byteorder.c to read the buffer. Still investigating. 05:35
purl Message for darbelo stored.
bacek_at_work chromatic, I did remove pop_context from invoke_from_sigobject...
At least I think so...
chromatic Still here for me. 05:36
Now I'm not getting the output from the plan(test_number) calls in pure-PIR test files, but I'm not getting seggies and I'm getting the rest of the output. That helps.
dukeleto chromatic: :anon looks promising. why does that help?
bacek_at_work chromatic, trac.parrot.org/parrot/changeset/43...ext_unify3 05:37
it's... weird.
chromatic :anon :init trips the "Do something special with bytecode" magic.
dukeleto chromatic: that sounds ..... magical
chromatic shhhhh 05:38
See my message about PBC constants from last week.
bacek_at_work, maybe I didn't get a recent rebase. 05:39
bacek_at_work chromatic, latest changeset is r43046 in branch
chromatic Checking. 05:40
Could be I was working off of an old version.
Yep, looks that way. 05:44
dukeleto chromatic: i have a fakecutable for Tapir passing its own test suite! thanks! chromatic++ 05:47
chromatic What did you have to do, dukeleto? 05:48
bacek_at_work, some of the failures come from CURRENT_CONTEXT(interp) being PMCNULL.
In t/compilers/imcc/reg/alloc_1.pir, the context is PMCNULL in the invokecc op. 05:49
bacek_at_work chromatic, I'll put assert from your nopaste and try to find out real problem. Later today. 05:50
chromatic I'll keep poking at it too. 05:53
dukeleto chromatic: i had to use :load :anon and load_bytecode on the PBC's instead of include()'ing PIR 06:01
bacek_at_work chromatic, major problem afair was with attributes. Which prevent Test::More from work.
chromatic I see that. 06:03
dukeleto it looks like load_bytecode 'foo.pir' works. should it? 06:04
chromatic There's no other way to load PIR. 06:05
dukeleto chromatic: .include() ? 06:07
chromatic: i was thinking that load_bytecode should only work for *.pbc files. is that correct?
chromatic: this is the commit where i changed over to a fakecutable in tapir: leto.net/gitweb/?p=tapir.git;a=comm...733a3faeb0 06:16
dalek pir: 7ae5c81 | dukeleto++ | t/03-parse_tapstream_error.t:
[t] Add a basic test for a passing exit code

  (kadath)(~/git/tapir master )$ ~/svn/parrot/parrot t/harness.pir t/*.t
t/00-sanity.t ................. failed 0/0 tests, exit code = 1 t/01-parse_plan.t ............. failed 0/0 tests, exit code = 1 t/02-parse_tapstream.t ........ failed 0/0 tests, exit code = 1 t/03-parse_tapstream_error.t .. failed 0/0 tests, exit code = 1 FAILED 4 test(s) in 4/4 files
06:23
pir: b2e6ebd | dukeleto++ | (8 files):
Make a fakecutable and PBC's which can be more easily dropped into external projects # chromatic++

Thanks to chromatic++ for showing me the ":load :anon" black magic trick.
pir: 445fd64 | dukeleto++ | (3 files):
load_bytecode should use the PBC's and update 'make clean'
dukeleto github just came back up 06:24
dukeleto is using Tapir to run the Regexp::Common test suite 06:25
what is the best way to time PIR code in PIR? i want to print out the runtime of the test suite. do I have access to anything other than walltime from PIR? 06:27
cotto dukeleto, interesting question. There's no pir-level integration with the profiling runcore atm. 06:28
what were you hoping for interface-wise? 06:29
dukeleto cotto: it would be nice if I could get something like : 0 wallclock secs ( 0.04 usr 0.01 sys + 0.02 cusr 0.01 csys = 0.08 CPU) in PIR
diakopter cotto or bacek_at_work: do you have a couple of minutes to look at examples/benchmarks/primes.pasm with me?
cotto diakopter, did you mean chromatic or was that intentional? 06:30
diakopter intentional
cotto what about it?
diakopter line 51
if you run: parrot primes.pasm what does it output for "last"
cotto looks OK to me. ;) 06:31
4999
diakopter ok. I have parrot r42559 06:32
and it outputs 5001 06:33
for last
on amd64
linux
cotto that's odd 06:34
also, unexpected
diakopter is that the right way to invoke? parrot primes.pasm ?
cotto It seems to be. I don't see any arg processing. 06:35
diakopter also, primes_i.pasm is misdocumented; its max candidate is 10000, not 50000 06:36
cotto Those could use some cleanup. 06:37
diakopter interestingly, primes_i.pasm has the same algorithm 06:38
but does the right thing
sounds like a misoptimization 06:40
does anyone have linux amd64 who'd be willing to build parrot r42559 (release 1.8.0 it appears)? 06:41
anyway, the machine on which I'm experiencing the issue is the machine that hosts rakudo/rakudo-ng for p6eval on #perl6 on freenode 06:44
afk& # please reply; I'll backlog
# also, I'd be glad to give a shell account to anyone on that machine if you'd like to diagnose it 06:45
cotto diakopter, I'll have 64-bit linux at work. I can play with it then if nobody beats me to it. 06:48
NotFound diakopter: I fixed that problem 1-2 weeks ago 06:49
cotto sweet. I don't have to do anything. 06:52
NotFound++
NotFound r42611 -> [examples] fix primes.pasm to show the same "last is" as the other versions 07:05
diakopter oh? cool. what was the problem 07:08
oh 07:09
cotto I was kinda hoping for some exotic platform-dependent bug that could be tickled from pasm, but a non-bug is a good second choice. 07:11
NotFound I located that problem when checking a benchmark comparaison that PacoLinux was doing with Winxed. 07:25
07:45 ZeroForce joined
chromatic bacek_at_work, what's the use of Parrot_pcc_[gs]et_signature()? 08:11
Isn't a context its own signature, or is that storage for the signature of an impending call?
Do we need to remove Parrot_pcc_get_signature calls from a lot of the code?
08:25 bacek joined 08:28 riffraff joined
dalek rrot: r43060 | gerd++ | trunk/NEWS:
rid of the first item of: Converted Contexts to GC structures (NEWS)
08:30
mikehh All tests PASS (pre/post-config, make corevm/make coretest, smoke (#30926), fulltest) at r43059 - Ubuntu 9.10 amd64 (g++) 08:49
cotto good news for release day 09:13
09:47 bacek joined 09:50 payload joined
mikehh All tests PASS (pre/post-config, make corevm/make coretest, smoke (#30933), fulltest) at r43060 - Ubuntu 9.10 amd64 (gcc) 09:50
chromatic bacek, this is tricky. I made Parrot_pcc_get_signature check for PMCNULL and return the CallContext itself, but that didn't help too much. 09:51
bacek chromatic, erm...
chromatic Just a hunch. 09:52
bacek chromatic, are you trying to fix attributes problem?
chromatic I hadn't reached that point yet.
bacek ah, ok.
chromatic I figured as long as some of the IMCC tests failed, there's little point in trying something more complex.
bacek which one? 09:53
chromatic t/compilers/imcc/syn/op_20.pir
src/call/context.c:792: failed assertion 'Parrot_pcc_get_regs_used(interp, ctx, REGNO_STR) > idx'
bacek "someone" didn't pop context after
..use 09:54
(afk for few minutes)
chromatic get_params maybe should do that.
No... Continuation.invoke() seems better. 09:56
Though Parrot_continuation_rewind_environment() appears to do so. 09:57
JimmyZ hello chromatic 10:06
chromatic Hello. 10:10
JimmyZ chromatic: Does array.pmc needs to change to use GET_ATTR syntax? 10:13
chromatic: s/needs/need/
chromatic array.pmc is rarely used. It's probably not worth your time to update. 10:23
JimmyZ chromatic: ok, I had updated it, but just change SELF.foo() to STATICSELF.foo() :) 10:24
chromatic Okay. 10:26
10:29 bacek joined
bacek chromatic, yes, rewind_env usually DTRT 10:31
(I just found at lease one case of using uninitialised CallContext. Fixed in r43061)
dalek rrot: r43061 | bacek++ | branches/context_unify3 (5 files):
Allocate CallContext in pcc_prepare_call if it wasn't allocated before
10:41
rrot: r43062 | fperrad++ | trunk/t/op/arithmetics.t:
[t] fix the use of PIR todo
rrot: r43063 | fperrad++ | trunk/t/op/io.t:
[t] fix the use of PIR todo
rrot: r43064 | fperrad++ | trunk/t/pmc/float.t:
[t] fix the use of PIR todo
chromatic t/compilers/imcc/syn/regressions_2.pir looks suspicious. 10:51
The continuation in returncc is wrong. 10:53
I wonder if it's uninitialized.
bacek chromatic, I'm working on t/compilers/imcc/syn/pcc_7.pir... something goes very wrong here 10:55
chromatic Something's definitely wrong in our continuation handling. 10:56
dalek rrot: r43065 | chromatic++ | branches/context_unify3/src (2 files):
[ops] Reformatted code; no functional changes.
10:57
rrot: r43066 | chromatic++ | branches/context_unify3/src/call/context.c:
[PCC] Fixed a C90 violation; no functional changes.
bacek chromatic, Coroutine.invoke is wrong 10:58
10:58 payload joined
chromatic It's a big wad of code. 10:59
bacek line 146.
We already pushed new context at this point
I'll try to fix it
chromatic Ahh yes. 11:00
Is it as easy as grabbing ->from_ctx?
bacek chromatic, something like this 11:11
chromatic t/compilers/imcc/syn/regressions_2.pir segfaults because in Continuation.invoke from the returncc, the Continuation's pc (cc->address) is NULL.
bacek I'll look at it after fixing Coro 11:14
chromatic Hmm, if I add the end opcode, everything works. 11:16
It reaches the end of the sub and tries to return, even though it has nowhere to go. 11:17
... meaning something wrong in the initial context or its Cont.
... but only if it's the first sub in a file (not marked :main) and if there's been a push_eh. 11:27
That's all I can do tonight. 11:31
moritz t/pmc/eval.t failed test 12 in 'make testr' 11:34
bacek chromatic, good night. I'm still fighting with Coro... 11:37
dalek rrot: r43067 | bacek++ | branches/context_unify3/src/ops/core.ops:
Remove setting caller_ctx in op get_params.
12:19
rrot: r43068 | bacek++ | branches/context_unify3/src/pmc/coroutine.pmc:
Update Corotine.invoke to use already pushed CallContext.
12:40 payload joined
bacek msg chromatic Sigh... r43065... merge_signature_for_tailcall. I've lost last hour trying to find out why branch is more broken than before... 12:49
purl Message for chromatic stored.
12:50 JimmyZ joined, whiteknight joined
moritz oh noes, context_unify3 killed my computer 12:57
I ssh'ed into my home computer and ran 'make coretest' there, foolishly without resource limits 12:58
12:58 barney joined
moritz now I can't reach it anymore 12:58
whiteknight urg.
I haven't looked hard at that branch yet, I think I should 12:59
Coke "Already up-to-date. 13:01
"Already up-to-date."?
purl i heard "Already up-to-date." was the saddest messages there is.
dalek rtcl-nqp: cb7399b | coke++ | src/Partcl/commands/ (3 files):
make p6.vim happier.
13:12
rtcl-nqp: 2d7ce87 | coke++ | (3 files):
Add several placeholder builtins; gets us further through several .t files
Coke msg tene any luck figuring out my CONTROL issue? 13:15
purl Message for tene stored.
whiteknight win32-msvc15: all tests pass (but perl failed uploading the archive to smolder for some reason) 13:25
oh nevermind. It did upload to smolder, but perl exited with an error anyway 13:28
great
Coke Hey, anyone want to write some NQP? =-)
whiteknight how much, and for what?
Coke bits. for partcl. 13:29
some builtins could use some work.
13:30 mj41 joined 13:31 JimmyZ joined
Coke [string] has a lot of subcommands that a) have tests, b) have a description on tcl.tk, and c) have the hook where the code goes. 13:31
whiteknight I dont know anything about TCL 13:32
Coke not really a problem. =-)
whiteknight I'm more of a PIR guy than an NQP guy. 13:33
Coke here's your chance to learn! =-)
(nqp really is much nicer than pir.)
JimmyZ yes 13:34
whiteknight I won't debate that it's a cleaner language. I'm just more comfortable at lower-levels
Coke is led on by WK! 13:35
13:35 lucian joined
whiteknight what do you need written? I can take a look 13:37
13:37 mikehh joined 13:39 payload joined 13:47 tetragon joined
Coke whiteknight: there's just lots of stuff to do; for example, implementing [string length <foo>] 13:49
[string] is in src/Partcl/commands/string.pm - look for eq 'length' for the code for that subcommand.
whiteknight it's in the partcl-nqp repo? 13:50
Coke www.tcl.tk/man/tcl8.5/TclCmd/string.htm#M38 has the tcl info on tht subcommand. t/cmd_string.t has tests.
(yes.)
I've been trying to do the error handling as I go, but even the base functionality will get us a few more tests.
(At the pir level, this is just the length opcode.) 13:51
whiteknight: I can add you as a contributor. github id?
whiteknight "Whiteknight"
Coke done. have fun. =-) 13:52
dalek rrot: r43069 | whiteknight++ | trunk/PLATFORMS:
Update win32-x86-msvc9.0 which passed all tests this morning (smolder #30939)
13:56
whiteknight urg, I just got hijacked by work. No time to hack partcl today :( 14:05
or, at least not until my boss leaves
Coke heh. 14:11
ooh. [string is <class> -failindex should be pretty trivial if I do everything as a rule.) 14:13
14:14 patspam joined
Util Trying to build a PBC bytecode string in a PIR test, I run into this issue. This line of code: $S0 = "\\xFE" 14:19
causes the error: "Malformed string".
Is there an easy workaround?
Coke set a binary encoding on the string? 14:20
Util Coke: on the string itself, or on the string register? And how do you set it? 14:21
Coke string.
$S0 = binary:"\\xFE" # untested.
Util Coke: Worked! Thanks! 14:22
Coke tested. works here.
Util: np.
Util: I think that's part of the unicode endian marker. 14:24
14:24 mikehh joined
Coke so you'll always have FFFE or FEFF to indicate the order. 14:24
... but those aren't valid strings either. *shrug*. =-)
but since you're not writing unicode, it don't matter. 14:25
14:31 ruoso joined 14:38 mikehh joined
whiteknight is trying to run as many tests as possible before the release 14:50
speaking of, when is Gerd planning to put it out?
pmichaud good morning, #parrot 15:01
whiteknight good morning pmichaud
dalek rrot: r43070 | whiteknight++ | trunk/PLATFORMS:
update PLATFORMS to show OpenSolaris2009.06-x86-gcc3.4.3, a new platform where Parrot builds but fails two math-related tests. See smolder #30941.
Coke moritz: you were timtowdi.org, yes? 15:05
moritz Coke: aye
whiteknight atan, acos, and asin all fail tests on OpenSolaris 15:06
I wonder why that is
fperrad pmichaud have you seen irclog.perlgeek.de/parrot/2009-12-12#i_1828932 ? 15:07
pmichaud fperrad: looking 15:08
fperrad: in what sense do you mean "crashes"? 15:09
it doesn't compile, it compiles but gives an error, ... ? 15:10
15:10 kthakore left
fperrad fails with a back trace 15:10
pmichaud is it possible to come up with a smaller example that exhibits the error?
Coke moritz: what was the hostname? 15:11
moritz timtowtdi.org 15:12
purl i think timtowtdi.org is now unblocked, ie svn shoudl work again.
Coke ... i must have spelled it wrong 100 times. thanks. =-)
moritz purl: timtowdi.org is misspelled 'timtowtdi.org' 15:13
purl OK, moritz.
Coke moritz: that should help, danke ^_^ 15:15
15:16 bubaflub joined
dalek rrot: r43071 | coke++ | trunk/PLATFORMS:
alphabetize
15:17
nopaste "fperrad" at 93.11.7.221 pasted "a fragment of grammar with the problem (for pmichaud)" (38 lines) at nopaste.snit.ch/19089 15:24
15:34 shockwave joined
shockwave This is kind of a generic question. Can a language targetting parrot, which is strongly typed and object oriented, be made to support covariant return types on overriden methods, and contravariant arguments on normal methods? 15:36
15:38 Psyche^ joined
NotFound shockwave: I think that the only good answer to such question is a working implementation. 15:43
shockwave @NotFound, well, I'm asking in theory. 15:44
15:44 bubaflub joined
NotFound shockwave: in theory, the answer is always yes. 15:44
shockwave @NotFound, I will try it soon. But I wouldn't mind a "probably", or better yet "Definietly" 15:45
Ok. I guess I'm just going to have to try and see for myself. 15:46
Thanks, @NotFound
NotFound shockwave: What kind of language, a version of one that already exists, or created from scratch? 15:49
15:49 rhr joined
NotFound Just curious 15:50
shockwave from scratch 15:51
purl from scratch is fun
Coke shockwave: can you explain the covariant/contravariant a bit? 15:58
and what is the difference between "overridden" and "normal" ? is normal actually "inherited" ? 15:59
shockwave @Coke, Wikipedia does a better job than me: en.wikipedia.org/wiki/Covariance_an...science%29
@Coke, en.wikipedia.org/wiki/Covariance_an...r_science) 16:00
@Coke, a normal method would be a method added to a class, as usual.
@Coke, an overriden method is one declared in a subclass that matches the signature of a method in the base class. 16:01
@Coke, an overriten method is like a C++ virtual method. 16:02
Coke I am not as convinced as notfound that you can do that out of the box, no.
esp. when it comes to return types. 16:03
shockwave @Coke, neither of them, co- or contra?
Coke I have only used parrot objects for infrastructure stuff, not to support an actual language's object system, though. 16:04
I would definitely ask on list first.
shockwave @Coke, For the language I'm designing, the compiler is written in C++, and translates the code down to PIR. The compiler's analyser finds out alot of information about the type as it goes along. And, of course, it has this information available when translating to PIR. 16:05
NotFound Coke: I don't said it has to be easy, just possible ;) 16:06
Coke NotFound: I didn't get the impression he was asking if he could handroll everything he wanted in pir, but if the vm supported this. 16:12
I don't think parrot's object model supports that.
shockwave Coke: Since I'm going to compile down to PIR, if it can be done via PIR, and it's doable for me. 16:13
then* it's doable for me.
Coke shockwave: I am thinking you'd have to hand roll your argument checks inside the method. 16:14
shockwave Coke: I don't mind that, as long as there is a way to get it accomplish.
Coke: My goal is for the language to support things that are important to me. The implementation will get better as time comes along. 16:15
(^^^ that's about my language)
NotFound And having a language that needs that will be a good way to see if something can be added to parrot to support it. 16:17
shockwave @NotFound, sweet.
I'll probably have a working implementation of this in about 3 months. I'm 3 and 1/2 months into it, and I'm making good progress. 16:18
NotFound But note that parrot is not specially intended to strong typed languages.
shockwave @NotFound, I know. I just like the scripting language to be strongly typed in order to catch certain types of errors I usually make, specially when changing large portions of the code. 16:19
The language is designed to support large codebases. I feel that having strong typechecks aids alot when changing code in large codebases like that. 16:20
NotFound Good to know I'm not the only one writing a compiler targetting pit in C++ X-) 16:22
s/pit/pir
shockwave :-) 16:23
16:26 darbelo joined 16:34 shockwave left
diakopter dukeleto: more comparison results: optimized parrot takes 1.441s on fib.pir; mono 2.6 takes 0.071s for the same program 16:35
... now to port arriter 16:37
Coke woof. 16:48
moritz I guess mono has the advantage of type analysis on its side, as well as a working JIT 16:49
NotFound diakopter: What language, C# ? 16:53
diakopter NotFound: yes
NotFound diakopter: Can you add the C# version to examples/benchmarks? 16:55
diakopter I submitted a parrot CLA a year or two ago; I never heard back 16:56
NotFound I think two years aho pafo wasn't even born ;) 16:57
s/aho/ago 16:58
diakopter nevertheless: parrot.pastebin.com/d5db9dbdf
16:58 davidfetter joined
NotFound Thanks, I'll add it. 16:58
diakopter oh wait. 17:00
forgot to sw.Stop(); after the _fib() call. So it was including the I/O time. without the I/O time, mono outputs: fib(28) = 317811 17:01
Elapsed: 00:00:00.0000592
dukeleto diakopter: if you submitted a CLA and never heard back, you should send it again :) 17:02
diakopter sigh. ID10T error
17:02 theory joined, gerd joined
cotto diakopter, once you send one in, you can ping particle every 5 minutes to see if it's arrived yet. 17:02
diakopter make that Elapsed: 00:00:00.0111256 17:03
NotFound: corrected parrot.pastebin.com/d698eef30
Coke what's the name on the CLA? 17:05
diakopter Matthew Wilson
I'm quite sure I submitted it before the parrot foundation existed 17:06
Coke then it's not a PaFO CLA, but a perl CLA, yes?
diakopter I guess
Coke parrot cla? 17:07
cla?
purl cla is Contributor License Agreement or www.perlfoundation.org/contributor_..._agreement or www.parrot.org/foundation/legal or www.parrot.org/files/parrot_cla.pdf
gerd I want to checkout parrot for release 1.9.0 17:08
NotFound gerd: uh, sorry, forgot to ask
Just committed r43072 17:09
Coke NotFound: did you update manifest? fix svn props?
gerd Can I start?
NotFound gerd: pleas wait a moment...
gerd Okay no problem 17:10
17:10 Zak joined
dalek rrot: r43072 | NotFound++ | trunk/examples/benchmarks/fib.cs:
[examples] C# version of benchmark/fib, diakopter++
17:11
NotFound gerd: done, r43073 17:14
gerd Okay so I will start to update to 1.9.0 17:15
cotto woohoo! release time! 17:18
moritz doughnuts for our release manager! 17:19
davidfetter mmm...doughnuts :d 17:21
gerd make fulltest is running 17:22
Result: FAIL 17:25
Test Summary Report
-------------------
t/op/annotate.t (Wstat: 11 Tests: 29 Failed: 0)
Non-zero wait status: 11
Parse errors: Bad plan. You planned 33 tests but ran 29.
Files=222, Tests=7085, 89 wallclock secs ( 1.58 usr 1.98 sys + 31.15 cusr 41.47 csys = 76.18 CPU)
dalek rrot: r43073 | NotFound++ | trunk (2 files):
[cage] update MANIFEST and svn props
17:27
Coke gerd: hurm. I've done fulltest 2c today and not seen tha failure. 17:29
bad skip logic?
bubaflub Coke: t/op/annotate.t passes on my rig 17:30
gerd Okay I will checkout again and try I again
bubaflub gerd, if that happens again, can you run prove -v t/op/annotate.t and then nopaste the output
so we can get a better look at the error 17:31
Coke (note that you might need to run it in a specific core, since you were using fulltest)
theory seen chromatic 17:35
purl chromatic was last seen on #parrot 6 hours, 4 minutes and 10 seconds ago, saying: That's all I can do tonight.
theory fucking slacker
dalek kudo/master: 55f51dc | pmichaud++ | docs/spectest-progress.csv:
"2009-12-15 00:00",7ef3861,32225,504,543,2027,35172,38173,453
gerd make fulltest is running again 17:36
dalek nxed: r265 | julian.notfound++ | trunk/ (2 files):
operator [ ] in stage 1
17:38
gerd make fulltest fails again
japhb By the way, did we institute the "cooling off period" after the release and before new branches are merged? Or did that get tabled or voted down?
gerd The output of prove follows: 17:39
cotto_work japhb, I don't remember anything like that.
gerd prove -v t/op/annotate.t --also fail 17:41
Failed 4/33 subtests
japhb IIRC, it was a suggestion after one of the times where merges happened immediately after the release was cut, and the HLLs didn't have time to test against it, and flag any problems, before the trunk went all to hell again.
Like I said, I don't remember what happened to the suggestion, though.
cotto_work japhb, actually I do remember something like that. I bet pmichaud would remember since he probably felt the most pain. 17:43
particle actually i think it was a merge just before a release that meant the 2-days-later rakudo release wouldn't work with the just-cut-parrot release 17:49
bubaflub gerd: can you get me the output of running just that test file? 17:50
something like prove -v t/op/annotate.t would do
or even ./parrot t/op/annotate.t
gerd ok 26 - annotations for caller sub returend with level 1
ok 27 - annotations from caller sub returned at point of call with level 1
ok 28 - annotations for outer sub returend with level 1
ok 29 - annotations from outer sub returned at point of call with level 1
Failed 4/33 subtests
Test Summary Report
-------------------
t/op/annotate.t (Wstat: 11 Tests: 29 Failed: 0)
Non-zero wait status: 11
japhb particle: Actually, now that you mention it ... didn't parrot's release get cut on a branch, and then merges happened before a trunk revision existed that contained the true release?
gerd Parse errors: Bad plan. You planned 33 tests but ran 29.
Files=1, Tests=29, 0 wallclock secs ( 0.03 usr 0.01 sys + 0.01 cusr 0.02 csys = 0.07 CPU)
Result: FAIL
[gz016@vgerd2 trunk]$ 17:51
bubaflub gerd: that's strange, it's not running the last test 17:54
let me look at this a bit and i'll get back to you.
barney Looks fine on 32bit Linux
bubaflub yeah, i'm building on Mac OS X 10.6
gerd: what system/architecture are you running? 17:55
i.e. what does `uname -a` output?
Coke japhb: that happened once.
gerd uname -a 17:56
Linux vgerd2.zimt.uni-siegen.de 2.6.29.6-217.2.8.fc11.x86_64 #1 SMP Sat Aug 15 01:06:26 EDT 2009 x86_64 x86_64 x86_64 GNU/Linux
purl Infobot 0.43.3 alpha (oznoid+#perl)
japhb Coke: yes. I was asking if we'd made a policy around it, or not.
gerd I run it on an 64 bit machine
Coke until rakudo stops relying on their being a trunk version that corresponds to a release version, please avoid it.
s/their/there/
japhb :-)
Coke *once - happened a few times, but only caused trouble after rakudo. 17:57
17:58 mikehh joined
diakopter NotFound: here's a C# edition of arriter parrot.pastebin.com/d6a197928 18:01
whiteknight might not be able to attend #ps. Work meeting conflict
diakopter optimized parrot: 0.813s mono: 0.078s 18:03
Coke diakopter: depressing. 18:04
but faster than partcl vs. tcl
diakopter Coke: have you seen Eagle? 18:06
eagle.to/ 18:07
I'd be glad to run some benchmarks with eagle-on-dlr-on-mono-on-linux
18:08 whiteknight joined
darbelo clock? 18:08
purl darbelo: LAX: Tue 10:08am PST / CHI: Tue 12:08pm CST / NYC: Tue 1:08pm EST / LON: Tue 6:08pm GMT / BER: Tue 7:08pm CET / IND: Tue 11:38pm IST / TOK: Wed 3:08am JST / SYD: Wed 5:08am EST /
cotto_work #ps in 19 18:11
Let's see some reports!
diakopter dukeleto: which of the benchmarks is parrot particularly/comparatively good at 18:12
Coke diakopter: nope
diakopter: (benchmarks) sure. glad to help implement whatever's needed to run the benchmark on partcl. 18:13
18:14 chromatic joined
Coke ps? 18:25
purl well, ps is postscript or process status or see "parrotsketch" or non-vector?! or annoying.
Coke "parrotsketch"?
parrotsketch?
purl parrotsketch is, like, a status meeting for parrot core committers held every Tuesday at 18:30 UTC in #parrotsketch
Coke clock?
purl Coke: LAX: Tue 10:25am PST / CHI: Tue 12:25pm CST / NYC: Tue 1:25pm EST / LON: Tue 6:25pm GMT / BER: Tue 7:25pm CET / IND: Tue 11:55pm IST / TOK: Wed 3:25am JST / SYD: Wed 5:25am EST /
Coke so, ps in 5? =-)
japhb yup
Util and reports sooner!
darbelo Coke++ # best #ps report EVAR! 18:28
18:28 mikehh joined
japhb #ps now 18:30
diakopter optimized parrot takes 0.866s on stress2.pasm; mono takes 0.085s on parrot.pastebin.com/d28362df0 18:33
NotFound: ^^ another to commit if you wish
darbelo 10x? Ouch. 18:34
mikehh All tests PASS (pre/post-config, make corevm/make coretest, smoke (#30942), fulltest) at r43073 - Ubuntu 9.10 amd64 (g++ with --optimize) 18:35
Util mikehh: which GC book? 18:36
diakopter those are fixed arrays, but I can try it with ArrayList if you like 18:37
NotFound diakopter: not a good moment right now. Can you attach it to a ticket? 18:38
mikehh Util: Garbage Collection by Richard Jones
gerd I run the Configure without optimize now I will run it wiht optimize
bubaflub gerd: that might not fix your problem, but you are welcome to give it a shot 18:40
mikehh Util :full title Garbage Collection: Alogrithms for Automatic Dynamic Memory Management by Richasrd Jones and Rafael Lins 18:41
Util mikehh: found it; thanks 18:42
mikehh Util: you might want to check www.cs.kent.ac.uk/people/staff/rej/...cbook.html 18:45
gerd I can starting to go to version 1.9.0 anyway, should I start?
darbelo pmichaud++ 18:46
Util mikehh: thanks! BTW, local university library has: Garbage collection in the District of Columbia. April 1, 1918.
FAIL
Coke i have a git repo with a remote branch. how do I create a local branch to work on it?
moderator Parrot 1.8.0 Zygodactyly released | Parrot 1.9.0 to be released Tues 15 Dec | Priorities: documentation review, tutorials, and context_unify3 branch 18:46
moritz Coke: git checkout -b branchname --track origin/brancname 18:47
chromatic I usually use git co -b local_branch_name remotes/branch
moritz newer gits --track automatically, I think
chromatic Should explain it. 18:48
I don't know the difference between origin/branch and remotes/branch. That could be a git-svn artifact here.
pmichaud ("cooling off period") there's not a problem with things landing shortly after a release. It's things changing shortly before a release that cause pain. 18:50
dalek nxed: r266 | julian.notfound++ | trunk/ (2 files):
try statement in stage 1
moritz chromatic: "origin" is just the default name of a remote
Coke pmichaud: does "make spectest" have to pass on rakudo-ng before it -> master?
chromatic Thanks, moritz.
barney make fulltest succeeds on 32bit Linux
Coke (hurm. I thought I just checked out ng and ran make spectest and had it pass 100%) 18:51
Util moritz: I think that "origin" is a GitHub-specific convention
pmichaud I'm not aiming for everything pass... but we need to be passing much more than we are now.
moritz Coke: ng's spectest doesn't run all the files that master runs 18:52
pmichaud oh, 100% pass on ng just means it's 100% pass of the limited set of tests it chooses to run
Coke ah.
got some todo passed, btw.
pmichaud I want it to be passing on-the-same-order-of-tests that master is
mikehh All tests PASS (pre/post-config, make corevm/make coretest, smoke (#30943), fulltest) at r43073 - Ubuntu 9.10 amd64 (gcc with --optimize)
pmichaud master is currently at 84.5% of the test suite, so I'd want master to be at least in the 70%ish range
Coke is there a test target I can run in ng that highlights the failures?
particle bubaflub: what's your real name? 18:53
bubaflub Bob Kuo
pmichaud Coke: I'm not aware of one
bubaflub could be under Robert
particle received last week
bubaflub particle: awesomesauce
particle i wish we had a space for irc nick there, i don't know names<->nicks well enough yet 18:54
Coke particle: ... it's email. they can always mention it in the email. =-)
particle email? to a po box? 18:55
cotto_work Anything is possible. 18:56
18:56 mikehh joined
dalek tracwiki: v7 | cotto++ | CottoTasklist 18:56
tracwiki: trac.parrot.org/parrot/wiki/CottoTa...ction=diff
darbelo particle: Sure, print it out ...
particle you people are all thinking backwards 18:57
i received robert kuo's paper-based cla in my physical mailbox.
darbelo .ton era ew oN
Coke particle: post it notes. 18:58
turns out it's even easier to annotate physical paper. =-)
whiteknight I tried 3 times to fax my CLA 19:00
I don't have a scanner to scan+email it
Coke what happened when you faxed it?
(it gets turned into an attachment and emailed to us)
19:01 mikehh joined
whiteknight I was getting an error about "this number does not exist" or something 19:02
particle did you use a 1? 19:03
kids today don't remember life before mobile phones... 19:04
chromatic "Oh no, I dialed a six instead of a seven... now I have to start over, and this number has nines in it!"
bubaflub rotary phones are coming back in style
cotto_work looks forward to a mobile rotary phone 19:05
bubaflub one of our house phones had a little switch for pulse/tone dialing
whiteknight I used a 1, I tried 3 separate times 19:07
it might be my fax machine, and my mad fax skillz are lacking
Coke pmichaud: should be deprecate pge and old-nqp? 19:08
*we
darbelo Aren't they already?
Coke darbelo: not officially. 19:09
pmichaud Coke: I think yes.
or, if not deprecate them, at least mark them as "unmaintained"
Coke pmichaud: as do I. I don't want to have to maintain both tiers.
s/tiers/versions/
diakopter on the ArrayList (essentially ResizablePMCArray) edition of stress2, mono takes 0.26s 19:13
gerd Should I do the "svn commit" to 1.9.0 now? 19:16
chromatic Do it! 19:17
gerd Done 19:18
Patterner yay!
moritz gerd++ 19:20
cotto_work gerd, did crow.pir ever get fixed? 19:21
barney gerd++
cotto_work gerd++
dalek rrot: r43074 | gerd++ | trunk (10 files):
update to version 1.9.0
19:22 kj joined
gerd cotto_work: no crow.pir seem not to be fixed 19:24
cotto_work how annoying 19:25
dukeleto 'ello 19:28
gerd: crow.pir was broken since before 1.7.0 release. i wrote the 1.7.0 release by hand
19:29 lucian joined
dukeleto gerd: also, let me know when things go out, so I can tweet/dent appropriately 19:29
Coke (there's a ticket for crow.pir) 19:30
dukeleto Coke: we should deprecate/unmaintain pgegrep and friends as well 19:33
cotto_work It's nice that we have enough volunteers that any given committer only has to care about the release process maybe once a year.
darbelo I'd expect that if they had to care more we would have less. 19:34
particle how did crow break? it's a simple script...
darbelo The json compiler is the actual broken piece. 19:36
crow.pir simply exposes it.
dalek rrot: r43075 | barney++ | trunk/ChangeLog:
Fixed a date in ChangeLog.
19:38
rrot: r43076 | gerd++ | tags/RELEASE_1_9_0:
tagged release 1.9.0
darbelo $P0 = get_root_global [ 'JSON' ], '$escapes' is handing a NULL PMC, to the displeasure of the next line, which tries to use that PMC.
particle ah 19:39
dukeleto it should be data_json 19:40
19:43 mikehh joined
darbelo dukeleto: If I do that I get ""load_language" couldn't find a compiler module for the language 'data_json'" 19:44
And what's up with the json/data_json thing? Can't we have just one name for the thing? 19:47
dukeleto darbelo: see the long parrot-dev conversations about it 19:48
darbelo: some people decided that data languages should be prefixed with data_ and JSON in all caps causes some problems in the build chain on some platforms or some junk
darbelo: other people didn't like that but then nothing more happened 19:49
darbelo: patches welcome!
purl rumour has it patches welcome is ponies welcome or Set Objectives, Achieve Results! or swahili for "Put up or shut up."
19:53 bacek joined
diakopter in the realm of better (for parrot) news (perhaps), addir.pir is slightly faster than addit.cs on mono parrot.pastebin.com/d32e97340 I say "perhaps" because varargs_adder is coercing to double every time by stringifying each operand and parsing to double *every* time. 19:56
addit.pir I mean 19:57
C# operator + can work among double and int, but doesn't coerce from string to numeric, afaik. 19:58
Coke My solution? rip out json. 20:04
(I was kind of annoyed at the whole mess, as it seemd to work fine before the switch.) 20:05
not annoyed enough to undo it, though. 20:06
20:08 whiteknight joined, patspam joined 20:14 darbelo joined
whiteknight what's the status of the release? 20:15
nopaste "chromatic" at 72.87.39.97 pasted "bacek, this Continuation patch fixes some tests and breaks some others" (14 lines) at nopaste.snit.ch/19091 20:16
cotto_work whiteknight, it's been tagged
whiteknight cotto_work: awesome 20:17
Coke someone let me know when there's an ftp-able version. 20:22
dukeleto tag it and bag it 20:27
cotto_work can I frag it? 20:28
dukeleto cotto_work: only if you clean up after
cotto_work You're no fun anymore.
bacek chromatic, sorry, I will not have time to do any work on context_unify3 this morning. 20:31
chromatic, btw, can you revert r43065 please? 20:32
gerd Coke: the release in on the ftp-server I am still working on the website 20:35
dukeleto gerd++ 20:36
gerd: let us know if you need help with something
chromatic All of it, or the commit to src/call/args.c? 20:37
bacek src/call/args.c 20:41
purl src/call/args.c is reporting "17 unused assert macros" when run through t/codingstd/c_args_assert.t
Coke docs.parrot.org updated.
purl, forget src/call/args.c
purl Coke: I forgot src/call/args.c
Coke may take a day or so to get through the cache. 20:42
(accessible immediately as: docs.parrot.org/parrot/1.9.0/html/
dalek tracwiki: v8 | cotto++ | CottoTasklist 20:51
tracwiki: rearranging and cleanup
tracwiki: trac.parrot.org/parrot/wiki/CottoTa...ction=diff
Coke <the critic>Patch my code! Patch my code!Patch my code!Patch my code!</the critic> 20:58
dalek rrot: r43077 | chromatic++ | branches/context_unify3/src/call/args.c:
[PCC] Reverted mistaken change from r43065.
20:59
darbelo Oh, we have a bsdlint target. 21:02
Too bad it uses options that this bsd's link doesn't support ;) 21:03
s/link/lint/
21:10 patspam joined
dalek rrot: r43078 | bacek++ | branches/context_unify3/src/ops/core.ops:
Revert "Remove setting caller_ctx in op get_params."
21:15
bacek chromatic, get_params' setting of caller_ctx is wrong. I don't have time to fix it now... 21:17
$dayjob time 21:18
21:18 hercynium joined 21:23 joeri joined, joeri left 21:36 payload joined
dukeleto sure seems quiet in here 21:53
Coke AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGH 21:54
dukeleto that is much better
21:55 joeri joined
Tene TURNS THE VOLUME UP TO 11 21:55
Coke Tene: any chance to look at my various CONTROL issues? 21:57
Tene Coke: I think the gf is planning to go out tonight, so I might be able to. My life has been kind of falling apart lately. Could you send me email talking about all of it 21:59
?
Tene at allalone.org
dalek nxed: r267 | julian.notfound++ | trunk/ (2 files):
switch, break and some fixes in stage 1
22:02
Tene Argh... the parrot Getopt::Obj is *almost* usable from HLLs, but it doesn't use the right namespaces.
.namespace ["Getopt::Obj"] instead of ['Getopt';'Obj']
darbelo Ouch. 22:03
Tene ><
NotFound Tene: yes, I was planing to ask about that in #ps one of this weeks.
But is usable from Winxed anyway ;)
darbelo Changing that to the right namespace would break code, right? 22:04
Tene This also means that any attempt to work around it is going to be a pain, because ["Getopt::Obj::Spec"] isn't actually nested.
chromatic Seems like a bugfix to me.
Tene Oh, maybe... if we just grab the namespaces and install them into the old names at :load time, it might work.
Coke (life falling apart) it's not that important. =-) 22:05
my problem, that is.
Tene Coke: I'd love to work on Parrot tonight.
Coke k.
NotFound Tene: I was thinking about trying that, but lacked the time.
darbelo I'm guessing that "::" was a valid namespace separator in the past. Right?
Tene darbelo: no. 22:06
darbelo: it's just a name that looks separated.
oh, I also need to fix the newclass stuff.
darbelo That's just silly code then.
Tene darbelo: ack 'namespace.*::' runtime/ 22:07
There's a lot of it.
NotFound Maybe the easy way is just to duplicate the code, deprecate the old, and delete it at the end of cycle,
Tene NotFound: it is arguable that some of those libraries should move out of parrot core...
chromatic Can we get a list of the afflicted libraries? 22:08
22:08 bacek joined
Tene All of SDL 22:08
Data::Dumper
purl Data::Dumper is written entirely in Perl, so it ought to work anywhere that Perl does! :-) or a good alternative to Storable. or or YAML for when you don't want my eyeballs poked with lots of {[ ]},s
moderator Parrot 1.9.0 released | parrot.org/ 22:08
Tene Getopt::Obj 22:08
NotFound Tene: my comment was only for GetOpt
chromatic No backwards compatibility concerns for SDL; patch away.
Coke Tene: done. 22:09
Tene Argh, can't, really need to get back to $realjob.
AFK
chromatic Anyone can do it!
Coke darbelo: (silly) that code predates the ability to have multi-part keys, mmkay?
chromatic ATTENTION ALL LURKERS: spread holiday cheer (unless you hate holidays, are not particularly cheerful, or have a mean boss watching over your shoulders now). 22:10
Coke BAH HUMBUG!
Coke queues up patrick stewart as scrooge to cheer for the ghosts.
22:12 he joined
darbelo Coke: Point taken. 22:12
purl Hey, give that back!
Coke AFK 22:18
dukeleto hearts Parrot Getopt::Obj 22:20
current dev release still points to ftp://ftp.parrot.org/pub/parrot/releases/devel/1.8.0/ 22:21
can someone fix www.parrot.org/release/developer and make the damn thing automatic or something? 22:22
dukeleto takes a breath
i am almost offended that SVK is still listed on parrot.org/download 22:23
but i guess people still use it, even though it has been end-of-lifed
chromatic It's still better than straight SVN, last time I tried straight SVN. 22:24
dukeleto chromatic: I guess I can't say, since I have never used SVK
NotFound They killed SVKenny? 22:25
chromatic I've used a few VCSs; SVK was one of the least annoying.
22:25 iblechbot joined, cbarrett joined
moritz when i tried to use SVK I wasn't up to the distributed model 22:26
I guess I'd handle it better now
chromatic Git is an improvement over SVK, but SVK was a huge improvement over SVN.
moritz mercurial also seems nice, though I haven't used it extensively yet
chromatic It was okay. It didn't bother me much, but I didn't do much with it. 22:27
It was definitely slower than Git the last time I used it, but that was a year ago.
moritz I think it still is
pmichaud speed is one of git's explicit goals
moritz but for the relatively small project I used it on (eigen, a linear algebra lib in C++) it was fine speed-wise 22:28
dukeleto pmichaud: hence the hand-tuned SHA1 code in assembly ;)
moritz they surely use that a lot :-) 22:30
tewk_ dukeleto, didn't know about hand-tuned assembly, I'll have to go look at that :) 22:31
PerlJam dukeleto: how come git isn't listed on parrot's download page? 22:32
Tene I tried to use SVK once. Read through some instructions, but I couldn't actually get it to do anything at all. 22:33
dukeleto PerlJam: because there is still push-back for supporting git and it is an un-official mirror. but if you wanted to add something about our un-official github mirror, that would be awesome 22:36
tewk_: block-sha1/sha1.c in the git repo is filled with asm 22:37
i have updated the URL redirects 22:41
japhb Coke, I've now got my account on blogs.perl.org, with first post already up: blogs.perl.org/users/geoffrey_broadwell/ ... can you add it to Planet Parrot, please? 22:42
dukeleto www.parrot.org/release/current and www.parrot.org/release/developer are now correct
darbelo japhb: ping 22:49
japhb darbelo, pong
darbelo Your name pops up in various of the data_json files, do you have any clues that might help fix crow.pir? 22:50
japhb darbelo, looking 22:51
darbelo TT #1326
japhb rebuilding parrot; will try to fix when that is done 22:53
darbelo japhb: No hurry, I'm not doing a release 'till January ;) 22:54
22:55 payload joined, kid51 joined
Coke japhb: what's the RSS feed? 23:01
purl i heard the RSS feed was doable
japhb Coke, lemme check
Coke I see no obvious links on the top level url. 23:02
japhb Hmmm, from the page source it looks like blogs.perl.org/users/geoffrey_broadwell/atom.xml
dalek tracwiki: v137 | gerd++ | WikiStart 23:03
tracwiki: trac.parrot.org/parrot/wiki/WikiSta...ction=diff
Coke japhb: done. 23:04
good luck on this one. =-)
japhb Coke: thanks!
Coke I didn't see a previous entry for you.
so, no clue what happened.
japhb huh.
Maybe it got deleted when it was filled with FAIL 23:05
Coke checks svn repo.
japhb will chuckle ruefully if the old feed was just *never added*
Coke hurm.
it does look like that's possible. :|
my apologies for any angst.
japhb ... which might be because there were problems with u.p.o feeds, so no one bothered. 23:06
Not a big deal.
purl not a big deal is relative
Coke nah, those work.
"worked", anyway.
japhb What's the url for PP anyway? 'planet.parrot.org' doesn't work 23:07
Coke parrotcode 23:08
purl parrotcode is in the same cvs are parrot or editable by coke, chromatic and allison
dalek website: gerd++ | Parrot 1.9.0, "Blue-fronted Amazon" Released!
website: www.parrot.org/news/2009/Parrot-1.9.0
Coke ... do we actually have sponsors atm?
not organizationally, anyway. 23:09
japhb Ah, OK, got it
I'm not listed in the Subscriptions list
Coke ISTR when it worked, it took a while to refresh.
japhb k
Coke so, check in an hour, a day, and then complain to me.
japhb will do
Coke (or just email ask and cc me.)
japhb :-)
Coke I'm going to remove Chip and Leo; Anyone see an issue with that? 23:10
japhb not I
Coke Done. 23:13
afk 23:19