|
Parrot 2.0.0 "Inevitable" released! | parrot.org | Priorities: merge branches, remove deprecations | Roadmap: icanhaz.com/parrotroadmap | Latest modified TT's: icanhaz.com/parrotbugs Set by moderator on 9 February 2010. |
|||
| Austin | Wagle, every possible variety of assignment has an "opcode". Each opcode has to be built especially. In your example, there are two complex operations going on at the same time: the concat op, and the indexed-assignment op. | 00:03 | |
| Each of those has a bunch of special cases to deal with. In general, assembly type languages only permit one little bit of complexity per op. (Sometimes less.) | 00:04 | ||
| dalek | rrot: r43976 | whiteknight++ | branches/op_pmcs (3 files): add test files for Opcode and OpLib |
00:06 | |
| Whiteknight | x86 is sort of an exception | ||
| if you count its hundreds of addressing modes as operations | |||
| I've seen plenty of abuses of the lea op | 00:07 | ||
| darbelo | x86 shouldn't be the dominating arch in PCs, much less used as an example ;) | ||
| wagle | Austin: its fine, was just expecting that addressing mode | ||
| Whiteknight | darbelo: shouldn't be, maybe. but it is | ||
| wagle RISC! | 00:08 | ||
| darbelo | Preach it brother! | ||
| wagle | .param string myglobal | 00:10 | |
| .param pmc myvalue | |||
| push_eh aieeee | |||
| $P0 = find_name myglobal | |||
| doesnt generate exception.. is it because its looking for "myglobal" instead of the contents of myglobal? | |||
| darbelo | Okay, first draft of NEWS for tomorrow's release is in. Please check for missing items and typos. | 00:11 | |
| wagle | (no matter what i set myglobal to, an exception isnt raised) | 00:13 | |
| Tene | wagle: no, there is no autoquoting in PIR | 00:16 | |
| find_name(out PMC, in STR) | 00:17 | ||
| Find the name $2 in lexical, current, global, or builtin namespace | |||
| and store it in $1. If the name doesnāt exist either throws an | |||
| exception or sets $1 to PMCNULL, depending on current errors | |||
| settings. See errorson. | |||
| from var.pod | |||
| cotto_work | Whiteknight, what's your plan for that new branch? | 00:18 | |
| Tene | wagle: as well, if it *were* looking for "myglobal", it wouldn't find it, unless you also created a lexical variable named "myglobal" in some outer scope. | ||
| cotto_work | has it crossed your ugly threshold or is that code holding something up? | 00:19 | |
| Tene | wagle: names defined with .local aren't lexical vars, just automatically allocated aliases for registers. | ||
| Whiteknight | cotto, want to reaname funcs mostly | 00:20 | |
| pmc_new -> Parrot_pmc_new, etc | |||
| Tene | wagle: does that answer your question? | 00:21 | |
| wagle | Tene: well, its not generating an exception if the var doesnt exist, just sets P0 to null | 00:22 | |
| Tene | wagle: look at what I quoted from docs/ops/var.pod | ||
| dalek | rrot: r43977 | darbelo++ | trunk/NEWS: First draft of 2.1.0 NEWS. |
||
| rrot: r43978 | whiteknight++ | branches/pmc_func_cleanup: branch to cleanup functions in src/pmc.c |
|||
| Tene | wagle: "If the name doesnāt exist either throws an exception or sets $1 to PMCNULL, depending on current errors settings. See errorson." | 00:23 | |
| wagle | Tene: oh, i looked just at the highlighted stuff (ie, with my name in it) | ||
| Tene | *nod* | ||
| wagle | Tene: i'm not mucking with errorson | ||
| Tene | The default errors setting is to not throw an exception for names that aren't found. | ||
| but to return PMCNULL instead. | |||
| So, it's behaving as specified. | 00:24 | ||
| wagle | well, it WAS earlier, just stopped | ||
| Tene | orly? | ||
| purl | YA RLY. | ||
| Tene | you must have been doing something other than find_name. | ||
| wagle | .PARROT_ERRORS_GLOBALS_FLAG | ||
| Throw an exception if global doesn't exist. Default: on. | |||
| from errorson (I looked at it, decided to do exceptions instead) | 00:26 | ||
| Tene | wagle: You're right. find_name doesn't ever look at the error flags, and doesn't throw an exception. | 00:27 | |
| Austin | wagle++ | ||
| Tene | That's probably a bug. | ||
| Austin | Ooh. Another explorer! | ||
| Tene | However, I don't seem to see PARROT_ERRORS_GLOBALS_FLAG actually used anywhere. | 00:28 | |
| Austin | wagle: Have you created an account on trac.parrot.org yet? | ||
| wagle | huh.. maybe i was throwing an exception when i tried to use the result (and got confused about when the exception was thrown) | ||
| Tene | Yes, that's likely. | 00:29 | |
| wagle | Austin: no.. maybe in a week or three | ||
| Austin | Don't put it off that long! You've already got your first ticket ready to go. | ||
| wagle | hahaha.. ok | 00:30 | |
| Tene | wagle: since you seem to be working with exceptions, I seem to have ended up the resident exceptions guy, so if you have any questions, don't hesitate to poke me directly. | ||
| Austin | Tene: I have some exception questions... :) | 00:33 | |
| Tene | Austin: go ahead. | ||
| wagle | found the source in ./src/global.c... | 00:35 | |
| Austin | How do I create a pir/nqp subclass of Exception PMC that can be thrown? How are type numbers allocated? How do I reproduce the "backtrace" opcode's output using an exception's backtrace attribute? When, exactly, does the "information about the throw location" get set up, and how can I force it? | 00:36 | |
| wagle | i'm not sure how to throw exceptions from down yonder | 00:37 | |
| NotFound | Austin: last time I checked there was a problem in the throw opcode, it checks that his argument is a Exception PMC, any other thing is not allowed. | 00:39 | |
| Tene | You don't subclass Exception. It's unsupported in similar ways to ExceptionHandler, Class, and a few other PMCs that can't yet be subclassed from PIR. | ||
| If it's important to you, I can try to work on it. | |||
| Austin | Yeah, I saw it checking base type, but I figured that just meant the thing at the bottom of the vtable. | ||
| Okay | 00:40 | ||
| So the usage model is "create an Exception and throw it" | |||
| Tene | There isn't any kind of interface for allocating type numbers. No reasonable process at all. Just add something to the list of definitions in Parrot. | ||
| The current vaguely-recommended model is that you put your high-level object int he 'payload' attribute of the Exception | 00:41 | ||
| Kinda. | |||
| Which sucks. | |||
| NotFound | Austin: yes, and any other thing you may need to put in the exception must be in a payload object. | ||
| Austin | (sucks) Yeah. | ||
| Whiteknight | exceptions should be closer to subclasability after the Context PMC was created | ||
| I would like to see a test that proves that it's still not possible to subclass, and then figure out what's standing in the way, if anything | 00:42 | ||
| NotFound | Whiteknight: the filter in throw must be relaxed before any test. | ||
| Whiteknight | NotFound, where? | 00:43 | |
| purl | hmmm... NotFound, is there any reason to keep RT#50092 open? | ||
| Austin | Okay. So I create an Exception, make up my own Type number, and stick details in Payload. | 00:44 | |
| Tene | Austin: the backtrace information comes from the resume continuation. | ||
| NotFound | Whiteknight: core.ops:780 | ||
| Austin | When does the backtrace get set - at throw time, or new time, or can I do it meself? | ||
| NotFound | And the same in 793 | 00:45 | |
| Tene | NotFound: my parrot might not be up-to-date. You're talking about "Parrot_str_new(interp, "exception", 9))"? | ||
| NotFound: 'cos that line isn't relevant. | |||
| Whiteknight | NotFound: that only checks base_type, which can still be Exception if it's a subclass | ||
| Tene | Austin: the resume continuation gets set when you throw the exception. | ||
| Whiteknight | somebody put together a test to prove it doesnt work | ||
| NotFound | Tene: != enum_class_Exception)except->vtable->base_type != enum_class_Exception) | ||
| Tene updates parrot. | 00:46 | ||
| NotFound | Urgh, bad paste | ||
| Tene | Austin: explain "force it"? | ||
| Austin | Tene: I've created an exception, and I want to specify the backtrace details. I guess that means I want to provide a 'resume continuation' ? | 00:48 | |
| NotFound | Whiteknight: mmmm... maybe, but in that case it has restrictions with multiple inheritance. | ||
| Whiteknight | NotFound: whatever, so long as something works | ||
| Tene | Austin: That's unsupported. It wouldn't be too hard to get the 'throw' opcode to allow already-set return continuations to pass through, though. | 00:49 | |
| Austin: explain "specify the backtrace details". Are you hoping to shove some text in there? How are you hoping to specify that? | 00:51 | ||
| NotFound | Isn't that what the two args throw does? | ||
| Austin | Tene: No. I want to give it my own resume continuation. | ||
| I think. | |||
| IOW, if i say " if $something.is_wrong() { Exception.new("something is wrong").throw; } ", or even if I cache the exception creation, I want to be able to redirect the resume continuation away from the throw method and back to the place where it was .new'ed | 00:53 | ||
| Or at the least, back to the caller of throw | 00:54 | ||
| dalek | rrot: r43979 | mikehh++ | trunk/compilers/pirc/src/pircompiler.c: add ASSERT_ARGS |
00:55 | |
| Tene | Austin: so you'd want to pass the return continuation of the current invocation of your throw function, for example. | ||
| wagle | =item C<PMC * Parrot_find_name_op(PARROT_INTERP, STRING *name, void *next)> | ||
| TT #1223 - THIS IS BROKEN - it doesn't walk up the scopes yet | |||
| ... | |||
| so its broken, AND it doesnt throw the exception no matter what | 00:56 | ||
| Austin | Tene: I think I'd want to attach it to the exception. | ||
| Tene | Austin: Yes, you'd want to modify 'op throw' to check for an existing resume continuation. | ||
| wagle | if the exception is turned on, as it is supposed to be, shitloads of stuff is going to break | ||
| Austin | wagle: heh, heh, heh. Welcome to parrot. | 00:57 | |
| wagle wants a cracker | |||
| with cheese | 00:58 | ||
| ok.. how is that handled? break it, and make people fix it? | |||
| Austin gives wagle Taylor Swift. | |||
| Tene | I actually have no idea what the two-arg version of 'throw' is, but the second arg certainly is not a resume continuation. | ||
|
00:59
abqar joined
|
|||
| Whiteknight | Tene: that's a good point. I have no idea what throw_p_p does | 00:59 | |
| Tene | wagle: it will need ot happen in a branch, and someone will need to check with allison to see if there needs to be a deprecation cycle or not. | ||
| wagle | Taylor Swift? | ||
| Whiteknight | DEPRECATE it | ||
| Austin | It looks like "throw with here's your next addr" | ||
| dalek | tracwiki: v4 | plobsing++ | FreezeThawTasklist | ||
| tracwiki: Move pmc_freeze_with_pmcs branch tasks into done category | 01:00 | ||
| tracwiki: trac.parrot.org/parrot/wiki/FreezeT...ction=diff | |||
| Austin | what does "expr NEXT()" return? | ||
| wagle: Cracker, with cheese, right? | |||
| Tene | Whiteknight: it might not need a cycle, 'cos it would be making the behavior change to meet the current spec. | ||
| Austin: gets the address of the op that will execute next. | |||
| cotto_work | Austin, it's the position of the next op. | ||
| see lib/Parrot/OpsFile.pm around line 103 | 01:01 | ||
| Austin | Yeah, so throw_p basically makes $2 = NEXT, which I assume is a crude resume continuation. | ||
| Or perhaps Parrot_ex_throw_from_op is going to fix it | |||
| NotFound | I'm thinking that some of that stuff should me moved fro the ops to the excepcions.c file | ||
| Tene | Austin: throw_p *also* creates a resume continuation and stores it in the 'resume' attribute of the exception. | 01:02 | |
| Austin | Tene: based on the same NEXT result. | ||
| Tene | Right. | ||
| wagle | waugh, i wanted to work on my compiler.. | 01:03 | |
| shockwave | Austin, are you a Parrot developer or user? | ||
| wagle | ph33r mission creep | ||
| Austin | Shockwave: I'm a particularly irritating user, I suspect. | ||
| cotto_work | that about covers it | ||
| NotFound | Tene: =item B<throw>(invar PMC, invar PMC) - Throw the exception in $1 with continuation from $2. | ||
| cotto_work | we need more like him | 01:04 | |
| Tene | the only place the $2 of throw_p_p ends up used is in the end of Parrot_ex_throw_from_op: | ||
| wagle | UTSL | ||
| Tene | address = VTABLE_invoke(interp, handler, dest); | ||
| shockwave | Not in my opinion. I got to the Intermediate code generation in my compiler, and your questions sometimes help me. | ||
| ^ Austin. | |||
| Tene | but I'm not sure if it even makes it to where that's returned | ||
| wagle | the source does something for pp.. no idea what | ||
| Tene | NotFound: I expect that throw_p_p is currently broken, then. It would be great to determine if there were tests for that. | 01:05 | |
| NotFound | Tene: I don't even know how to resume. | 01:08 | |
| nopaste | "tene" at 64.245.157.4 pasted "test demonstrating non-throwability of Exception subclasses" (14 lines) at nopaste.snit.ch/19629 | ||
| Tene | NotFound: $P0 = ex['resume'] \\n $P0() | 01:09 | |
| Whiteknight | NotFound++ | 01:10 | |
| Austin | TT#1448 | ||
| Whiteknight | if we get rid of that filter, should work | ||
| cotto_work | Tene, t/pmc/exception.t and t/pmc/exceptionhandler.t definitely don't touch throw_p_p | ||
| NotFound | Whiteknight: I think the base type is Object, or maybe PMC_proxy | ||
| Tene | Austin: great, thank you. | 01:11 | |
| Whiteknight | somewhere we should be able to tell it's a subclass of Exception | ||
| Austin | That's for "pass through resume c10n | ||
| NotFound | Whiteknight: isa, or does | ||
| Austin | Whiteknight: isa? | ||
| purl | isa is, like, 'hashref[dbix::class::storage::dbi]' => definitely a bug on jnapiorkowski's part since DBIx::Class::Storage::DBI is not a Moose object and therefore there's no TypeConstraint to match this | ||
| Austin | But I think does. | ||
| We're perilously close to acknowledging that Java had a good idea, with 'Throwable' | 01:12 | ||
| NotFound | Austin: we're supposedly more dynamic than that. | ||
| Austin | More dynamic than what? | 01:13 | |
| NotFound | Austin: than requiring a hard coded type. | ||
| Coke | btw, throw "foo" is really "die "foo"" (one line throw an exception). | ||
| Austin | The type in question (Throwable) is an interface (aka: role). | ||
| Presently, we require a PMC type. | 01:14 | ||
| NotFound | Austin: but isa and does are overridable | ||
| dalek | TT #1448 created by Austin_Hastings++: Modify `throw` opcode to pass through pre-configured resume continuation | ||
| Austin | Sure. | ||
| I'm doing that wholesale. :) | |||
| wagle | ok. i sent an email to the devel mailing list asking for how to proceed | 01:17 | |
| Whiteknight | wagle++ | ||
|
01:19
chromatic joined
|
|||
| NotFound | A nice addition might be to set the object in the payload when throwing the "Not a throwable object" exception. | 01:19 | |
| Tene | I'm not really clear at all on VTABLE_{isa,does}, but lemme see what happens if I just try using them. | ||
| NotFound | That way one can throw and catch anything, if wanted. | 01:20 | |
| Tene | NotFound: how is that different from putting it in ['payload'] yourself? | 01:22 | |
| I'm sketchy about abusing automatic behavior like that. | |||
|
01:23
kid51 joined
|
|||
| NotFound | Tene: a lot less code. | 01:23 | |
| Tene | s/automatic behavior/an error reporting facility/ | ||
| Austin | Actually, 'thrower' is settable from pir, but not gettable. | 01:24 | |
| NotFound | I don't see what's abusive. Is using the payload as intended. | ||
| nopaste | "kid51" at 70.85.31.226 pasted "codingstd error observed at r43936" (14 lines) at nopaste.snit.ch/19630 | ||
| Austin | NotFound: I think it may have been the "throw whatever you want" part that got to him. | ||
| payload | oh i think using "payload" _is_ abusive ^^ | 01:25 | |
| nopaste | "tene" at 64.245.157.4 pasted "This seems to work for throwing subclasses of exception... testing it now." (13 lines) at nopaste.snit.ch/19631 | ||
| wagle | whats wrong with line 3? | 01:26 | |
| .param string myglobal | |||
| $P0 = find_name myglobal | |||
| .return $P0 | |||
| cotto_work | Good work putting isa to work | ||
| Tene | We've got a release tomorrow, yes? Should I hold this off until after the release? | 01:27 | |
| cotto_work | wagle, could you please nopaste in the future? | ||
| Tene, no harm in waiting | |||
| wagle | 3 lines? | ||
| purl | rumour has it 3 lines is ok | ||
| Tene | Hmm. Looks like some test failures. | ||
| I'll also add a .handle_types method to ExceptionHandler. | 01:28 | ||
| wagle | i figured it out anyway | ||
| dalek | rrot: r43980 | mikehh++ | trunk/compilers/pirc/src/piremit.c: add ASSERT_ARGS |
||
| NotFound | wagle: .return($P0) | ||
| rrot: r43981 | mikehh++ | trunk/compilers/pirc/src/pirsymbol.c: add ASSERT_ARGS |
|||
| nopaste | "kid51" at 70.85.31.226 pasted "Many codingstd errors in compilers/pirc/src/*.c" (14 lines) at nopaste.snit.ch/19632 | ||
| wagle | tried ()'s and it didnt work the first try.. then it worked.. dunno | ||
| NotFound | Haven't we killed string_from_literal yet? | 01:30 | |
| Tene | I got a ton of dynpmc errors. Maybe I need to realclean or something. | ||
| NotFound: I got warnings with CONST_STRING, and say other uses of string_from_literal in src/ops/*.ops | |||
| NotFound: I saw no uses of CONST_STRING in src/ops/*.ops | |||
| NotFound | Tene: that same op is using Parrot_str_new_constant | 01:31 | |
| Tene | What *should* I use there? I don't know the STRING infrastructure at all. | ||
| kid51 retests, to see if mikehh's commits solved that problem | |||
| Tene | NotFound: ... thank you. Reading comprehension failure. >< | ||
| NotFound | Tene: we need to some cleaning in the .ops files, then. | 01:32 | |
| Or better, in the whole tree | 01:33 | ||
| dalek | tracwiki: v28 | coke++ | BranchDescriptions | ||
| tracwiki: update from script | |||
| tracwiki: trac.parrot.org/parrot/wiki/BranchD...ction=diff | |||
| wagle | where do you find the type names for the new op? | ||
| (documentation) | |||
| Tene | wagle: explain "the type names for the new op"? | 01:34 | |
| You're writing an additional op? | |||
| oh man, I need to figure out svn branches again. hrmph. | 01:35 | ||
| I think I'll just keep this in a private branch until after the release. | |||
| cotto_work | wagle, the op named 'new' is documented in the same place as it's implemented, in src/ops/pmc.ops | ||
| Coke | the pod is also extracted to docs/ops/pmc.pod | 01:36 | |
| purl | okay, Coke. | ||
| cotto_work | the pod? | ||
| purl | i guess the pod is very good if you knwo all about POE and want to figure out how to Apply it ... and very bad if you don't. | ||
| Coke | also docs.parrot.org/parrot/latest/html/ops.html | 01:37 | |
| wagle | pdd17 is it | ||
| FixedPMCArray | |||
| the string 2nd arg | 01:38 | ||
|
01:38
Themeruta joined
|
|||
| Tene | Hmm. I actually get no test failures with this patch, and it's just adding additional behavior, not changing anything... anyone actually object if I commit it to trunk? | 01:38 | |
| Austin | wagle: The new op creates new PMCs. So any PMC is a type name. Look in $_PARROT/src/pmc at the *.pmc files, then guess how they are capitalized. | ||
| kid51 | Tene ... it *is* very close to release time. | ||
| Austin | Or look at the dictionary for PMC entries: trac.parrot.org/parrot/wiki/Parrot%20Dictionary | 01:39 | |
| Tene | wagle: or grep enum_class include/parrot/core_pmcs.h | ||
| kid51: that's why I'm asking. | 01:40 | ||
| kid51 | I'm not the release manager, but if I were, I'd say no, regardless of its merits. | 01:41 | |
| Tene nods. | |||
| kid51 | Patch looks reasonable to me, but it's in such a fundamental source code file that I'd recommend trying it tomorrow night instead. | 01:44 | |
| Tene | treed_: I remember you complaining about throwing subclasses of Exception. I can't find any tickets about it on trac. | ||
| dalek | rrot: r43982 | mikehh++ | trunk/compilers/pirc/src/pirregalloc.c: add ASSERT_ARGS |
||
| wagle | ok.. suppose I have a string with a name of a global in it.. I want to set it to a FixedPMCArray.. how do I do that? (not sure how to look for documentation on how to do that indirection) | ||
| kid51 | mikehh++ Now down to 13 unused assert macros found in total | 01:45 | |
| Tene | $P0 = new 'FixedPMCArray' \\n set_hll_global myname, $P0 | ||
| wagle | Tene thanks | 01:46 | |
| Tene | Austin: looks like I'm going to be working on exceptions again soon, so if you have requests, please make them known. :) | ||
| mikehh | I think I got 'em all now at r43983 | 01:54 | |
| cotto_work | protip: having a 122GB file in your working dir slows down ack | 01:55 | |
| treed_ | Tene: Hm. | ||
| ISTR that it was one of those "Oh, yeah, everyone knows about that." | |||
| Austin | cotto_work: VM image, or horrible mistake? | ||
| treed_ | afk off and on though | 01:56 | |
| cotto_work | closer to' the latter | 01:57 | |
| kid51 | Coke: rm_cflags PASS on linux/i386: smolder.plusthree.com/app/projects/...ails/32214 | 02:00 | |
| dalek | rrot: r43983 | mikehh++ | trunk/compilers/pirc/src/pirpcc.c: add ASSERT_ARGS |
||
| bacek_at_work | mikehh, can you also add ARGIN/ARGMOD decorators for args? | 02:01 | |
| kid51 | r43983: t/codingstd/c_arg_assert.t PASS. Thanks, mike | 02:02 | |
| mikehh | bacek_at_work: I will add them a bit later - if I try now I will probably do something v.stoopid - need a break - like some sleep | 02:05 | |
| bacek_at_work | mikehh, just got to the bed NAO! :) | 02:06 | |
| cotto_work | clock? | ||
| purl | cotto_work: LAX: Mon 6:06pm PST / CHI: Mon 8:06pm CST / NYC: Mon 9:06pm EST / LON: Tue 2:06am GMT / BER: Tue 3:06am CET / IND: Tue 7:36am IST / TOK: Tue 11:06am JST / SYD: Tue 1:06pm EST / | ||
| mikehh | anyway I will try in a few hours if somebody doesn't beat me to it | 02:07 | |
|
02:09
cognominal joined
|
|||
| cotto_work | msg mikehh It looks like there are some short functions in some imcc code that'd be easy to document. | 02:11 | |
| purl | Message for mikehh stored. | ||
| dukeleto | ello | ||
| kid51 | r43984: make fulltest PASS linux/i386 | 02:13 | |
| Hit that release button! | |||
| Austin | cotto_work: VM image, or horrible mistake? | 02:15 | |
| ww | |||
| dalek | rrot: r43984 | mikehh++ | trunk/t/codingstd/c_function_docs.t: remove passing TODO tests from list |
02:17 | |
| kudo/master: f483b59 | (Solomon Foster)++ | src/core/Any-str.pm: Fix shortcomings in the previous trim-leading and trim-trailing implementations. |
02:20 | ||
| kudo/master: 4716fbc | (Solomon Foster)++ | build/Makefile.in: Undo the leak of the alpha spectest hack into master. |
|||
| Whiteknight | kid51: ping | 02:25 | |
| Coke | CONDITIONED_LINE is deprecated, according to lib/Parrot/Configure/Compiler.pm - I don't see a ticket for it. | 02:26 | |
| someone want to add a ticket and get it into deprecated.pod for the release tomorrow? (would be eligible in 2.4) | 02:27 | ||
| Whiteknight | what is it? | ||
| purl | it's it! | ||
| Coke | makefile syntax. | 02:28 | |
| Tene | treed_: So you don't remember opening a ticket about it? I'm hoping to avoid duplicating a ticket. | ||
| Coke | er, makefile.in syntax | ||
| mikehh | All tests PASS (pre/post-config, make corevm/make coretest, smoke (#32215), fulltest) at r43984 - Ubuntu 9.10 amd64 (g++ with --optimize) | 02:32 | |
| dalek | rrot: r43985 | whiteknight++ | branches/vc9: delete this old branch because it's well over a year old and nobody is working on it |
02:33 | |
| wagle | how do i pass a function (sub) as an argument in a call? | 02:36 | |
| Tene | wagle: the same way as anything else... | 02:37 | |
| $P0 = <get a function> \\n foo($P0) | 02:38 | ||
| Austin | wagle: get the sub into a register, then pass it | ||
| wagle | barfs.. but still working on it | ||
| Austin | $P0 = get_hll_global or $P0 = find_lex or whatever | ||
| Tene | wow, t/pmc/role.t is... less than I had hoped. | ||
| nopaste | "Austin" at 68.37.46.53 pasted "Passing a subref" (7 lines) at nopaste.snit.ch/19634 | 02:39 | |
| Austin | wagle: See nopaste | ||
| Tene | oh, class.t is more extensive. | ||
| dalek | TT #1449 created by Austin_Hastings++: Add support for String PMC in NameSpace::get_pmc_keyed | 02:40 | |
| wagle | Austin: ok, thanks | 02:41 | |
| Austin | np | ||
| cotto | good non-morning | 02:43 | |
| wagle | i gotta do table lookups for labels defined in the same file? | ||
| thats not even linktime | |||
| Tene | wagle: that's not the only way to do it. | 02:44 | |
| Austin | Nope. | ||
| wagle: You still talking about passing a sub? | |||
| wagle | Austin: yeah | ||
| Tene | .const 'Sub' $P0 = "foo-subid" | ||
| wagle | Tene: OOOOooooOOOooooh | 02:45 | |
| Austin | Then yeah, you have to either make them constants or look them up in the namespace. I'd go with looking them up in the namespace, since it lets you replace them. | ||
| wagle | forgot about Sub | ||
| Tene | you can also specify :subid('foo-subid') on a .sub declaration | ||
| it all depends on what you want to do, and looking something up in a namespace is the most-generic, and you didn't specify any further... | |||
| wagle | sure... i dont know what to specify.. still learning | 02:46 | |
| Tene nods. | |||
| wagle | the sub name is lambda_0.. whats the most direct way of referring to it as a function value to be passed as an argument? putting quotes around the name makes me think of table lookups, not a link-time binding | 02:49 | |
| Tene | wagle: the {.const 'Sub' $P0 = 'lambda_0'} syntax uses the subid, which is a unique per-compilation-unit identifier. There isn't really a "link-time" with PIR, though, so not quiiiite sure what you're aiming for. | 02:50 | |
| You won't be able to refer to a sub defined in a different file with that syntax, for example. | 02:51 | ||
| Austin | Wagle, are you trying to do lisp? | ||
| Tene | (well, maybe with .include, I guess, but don't use that) | ||
| Austin: He's working on a scheme, last I heard. | |||
| wagle | Austin: Scheme compiler.. *<8-D | ||
| Austin | Then you probably want to look at things related to lexical variables. | 02:52 | |
| I think the "doing-lisp" guys always wind up with lexical subs. | |||
| That is, subs stored in lexical vars. | 02:53 | ||
| Tene | wagle: any way of referring to something else is going to involve *a* table at some point. What properties of "table lookup" do you want to avoid, and what properties of "link-time" are you desiring? | ||
| wagle: {.const "Sub" ...} is resolved once, at compilation time, and won't change later, regardless of changes to namespaces, etc. | |||
| wagle | Tene: ok.. i'm currently having trouble with that .const.. finding the docs now | 02:54 | |
| Tene | wagle: do you want your sub to be present in a namespace or not? | 02:55 | |
| nopaste | "tene" at 76.27.121.193 pasted "Here are two examples" (17 lines) at nopaste.snit.ch/19635 | 02:59 | |
| Tene | wagle: ^ | ||
| wagle | just trying to get your way to work.. cant find the doc for .const | ||
| Tene | wagle: grep '\\.const' docs/ | 03:00 | |
| wagle | oh.. i was trying to use the web | ||
| Tene | docs/pdds/pdd19_pir.pod and docs/pmc/subs.pod | ||
| wagle | silly me | ||
| Tene | google doesn't like punctuation | 03:01 | |
| wagle | no, i have a bunch of urls bookmarked | ||
| Tene | I have no idea what the web presence of parrot's docs are. I've never even tried to look. local documentation is so much more convenient for me. | ||
| it's also mentioned in docs/book/pir/ch03_basic_syntax.pod | 03:02 | ||
| wagle | yeah.. i'm forcing myself to use the opportunity to have to skim through the docs and, in that way, get more familer | 03:04 | |
| Tene | nodnod | ||
| "teach a man to wear a fish costume" and all that. | |||
| Now, that might be not the solution you want at all. You still haven't explained that situation, or what you're wanting to do. :) | 03:05 | ||
| dalek | tracwiki: v154 | Austin_Hastings++ | WikiStart | 03:13 | |
| tracwiki: Added HLL Resources | |||
| tracwiki: trac.parrot.org/parrot/wiki/WikiSta...ction=diff | |||
| tracwiki: v1 | Austin_Hastings++ | HLL%20Resources | |||
| tracwiki: trac.parrot.org/parrot/wiki/HLL%20R...ction=diff | |||
| tracwiki: v155 | Austin_Hastings++ | WikiStart | |||
| tracwiki: Removed HLL-focused stuff to HLL page | |||
| tracwiki: trac.parrot.org/parrot/wiki/WikiSta...ction=diff | |||
| wagle | myresult = lambda_0(myenv,myargs) | 03:17 | |
| produces the error | |||
| error:imcc:syntax error, unexpected VAR, expecting '(' ('myresult') | |||
| wtf? | |||
| Austin | sub names have to be quoted | ||
| myresult = 'lambda_0'(myenv, myargs) | |||
| wagle | i havent had to do that before | ||
| Austin | Then nopaste your code. | 03:18 | |
| wagle checks that statement | |||
| Austin | Did you declare myresult? | ||
| wagle | yeah.. this syntax is wacky, sorry | 03:19 | |
| Austin | You're right. No quotes required. | ||
| dukeleto | Austin: sub names required quotes a long time ago, but not now | ||
| nopaste | "Austin" at 68.37.46.53 pasted "calling the sub" (10 lines) at nopaste.snit.ch/19636 | 03:20 | |
| Austin | That's progress dukeleto! | ||
| dukeleto | Austin: backward and downward, Parrot soldiers! | ||
| Austin | Anybody here understand how the Configure.pl system works? | ||
| In particular, how I can control/configure the individual operations it does? | 03:21 | ||
| cotto | dukeleto, I thought something closer to the opposite was true and that quoted names are preferable. | ||
| dukeleto | Austin: i try to forget when I go to sleep each night, but a little more knowledge sticks around | ||
| Austin | Cotto: I think it depends on whether you're mechanically generated them, or having to type all those **@#@#$@#%%#$%#% quotes by hand. | ||
| dukeleto | cotto: I am not sure, actually. | ||
| wagle | nopaste.snit.ch/19637 | 03:22 | |
| dukeleto | Austin: be more specific | ||
| Austin | dukeleto: I've got this file called VERSION in my tld. When I run Configure.pl, it apparently "checks" it for me, and complains. I want to know what the --stfu switch is for that test. | ||
| cotto | For now both work. | ||
| Austin | wagle: .return (myresult) | 03:23 | |
| dukeleto | wagle: you want ".return()" | ||
| wagle: parens matter :) | |||
| wagle | someone got the line # wrong | 03:24 | |
| dukeleto | Austin: not quite sure. | ||
| Austin sings, "I ran down Division Street. Some of them boys followed me, down to the dry goods store..." | 03:25 | ||
| duke: Any pointers? | |||
| purl | i guess Any pointers is there any book which gives a description?? | ||
| wagle | is "set $P1,2" the same as "$P1 = 2"? | 03:28 | |
| woot.. i applied my first homebrew closure | 03:32 | ||
| cotto | question: Why is imcc ugly? | 03:33 | |
| Austin | wagle: yes, and it's probably not what you want. | ||
| wagle: Be aware of the difference between "assign" and "bind". | 03:34 | ||
| For an integer value, you have to either 'box' it, or create a PMC that can accept it and then assign the integer into that pmc. | |||
| $P0 = box 2 ; or $P0 = new 'FixedStringArray' ; $P0 = 2 | 03:35 | ||
| The first creates a numeric PMC with value=2, the second creates a FixedStringArray and uses the assign opcode to set its dimension. | |||
| So, actually, no. set $P1, 2 is not the same as $P1 = 2, since $P1 = 2 would be "assign". | 03:36 | ||
| I suck at explaining stuff. Sorry. | |||
| wagle | .sub fts | ||
| .param pmc x | |||
| .return(x) | |||
| .end | |||
| Austin | mkey | 03:37 | |
| mkay | |||
| wagle | Austin: setting the size of a fixed size array | ||
| Austin | Has to be done once. | ||
| wagle | ah | 03:38 | |
| ok, whats the accepted way to cast 10 as a pmc? | 03:42 | ||
| Austin | $P0 = box 10 | ||
| cotto | That'll respect any HLL maps you happen to have lying around too. | 03:43 | |
| wagle | box? | ||
| purl | box is, like, gettinga bit cranky anyway, maybe this will make it work better | ||
| Austin | puts it in a box. | 03:44 | |
| cotto | it puts a ISN value into a PMC 'box' | ||
| Austin | You've heard of "autoboxing" ? | ||
| This is no-auto boxing. | |||
| cotto | It's auto if an HLL does it. | ||
| wagle | interesting | 03:45 | |
| whats the diff in effect betweem box and my fts above? | 03:46 | ||
| Austin | Nothing. | ||
| purl | hmmm... nothing is shared - this is why things work | ||
| cotto | let me check on that. I think there's a subtle difference. | 03:47 | |
| shockwave | Is it possible to use getattribute from outside of :method. I get an not found error. | ||
| Austin | Parrot autoboxes constants across calls, so if you say " fts(10) " you'll get a pmc back. | ||
| shockwave: details? | |||
| purl | details are important when programming or my program will not do what you thought you told it to | ||
| wagle | i was doing fts(10) | ||
| shockwave | Austin, pasting. | 03:48 | |
|
03:48
janus joined
|
|||
| nopaste | Someone at 76.119.137.239 pasted "PS C:\\workspace\\platform\\ink\\B" (36 lines) at nopaste.snit.ch/19638 | 03:49 | |
| Tene | shockwave: looks like you're trying to getattribute a string | ||
| not a PMC | 03:50 | ||
| look at the _s_ in getattribute_s-p_sc | |||
| that's _string-pmc_string-constant | |||
| shockwave | Oh, right. | ||
| Let me try it out. | |||
| nopaste | "Austin" at 68.37.46.53 pasted "Looks the same" (31 lines) at nopaste.snit.ch/19639 | 03:51 | |
| Austin | wagle, see nopaste | ||
| Tene | Yes, that's the same. | 03:52 | |
| Austin | Shockwave: Attributes are pmcs, always. | ||
| shockwave | I'm using a string as the return value of getattribute. | ||
| Austin | Do it as two steps. | ||
| shockwave | .local string pkgName | ||
| Austin | $P0 = getattribute object, 'attrname' ; $S0 = $P0 | 03:53 | |
| shockwave | pkgName = getattribute $P1, 'package' | ||
| Get attribute returns a PMC. | |||
| cotto | Austin, other than pcc and efficiency differences, I think those are equivalent. | ||
| shockwave | ? | 03:54 | |
| Austin | Shockwave: Attributes are pmcs, always. | ||
| Do it as two steps. | |||
| $P0 = getattribute object, 'attrname' ; $S0 = $P0 | |||
| (Alternatively, return a String pmc) | 03:55 | ||
| shockwave | When I changed that variable to a pmc, something changed. I get a different type of error, which should be unrelated. | 03:56 | |
| I think that's what I was looking for. | |||
| How can I compate an attribute of a class, which is a pmc, to a string param? This does't work: $I1 = pkgName == pkg | 04:01 | ||
| Tene | use 'iseq' instead of == | 04:02 | |
| nopaste | "Austin" at 68.37.46.53 pasted "PMC vs string" (11 lines) at nopaste.snit.ch/19640 | ||
|
04:06
shamu joined
|
|||
| wagle | how do you do this: | 04:09 | |
| .param string mysubname | |||
| .local 'Sub' mycode = mysubname | |||
| chromatic | You don't; that's not constant. | ||
| Tene | fetch it from the namespace | ||
| wagle | oops.. s/local/const/ | ||
| Tene | .local pmc mycode \\n mycode = get_hll_global ['whatever'], mysubname | 04:10 | |
| shockwave | It takes some time for the book to notice the paste: nopaste.snit.ch/19641 | ||
|
04:10
shamu joined
|
|||
| shockwave | Thanks, Austin. | 04:10 | |
| wagle | doesnt feel efficient to me.. sigh | 04:11 | |
| Tene | wagle: what are you concerned about, exactly? what are you hoping you can do? | ||
| dalek | kudo/master: 65e2d3d | (Solomon Foster)++ | src/core/Any-num.pm: Tweak radians cases of to- and from-radians so that they properly return a Num instead of a Float. |
04:12 | |
| Tene | If you're wanting to look up a sub by name at runtime, you're going to have to look it up in some table somewhere, yes? how else are you hoping to find a sub by name dynamically at runtime? | ||
| I might be misunderstanding your intentions. | 04:13 | ||
| treed_ | He probably means typing-wise inefficient. | ||
| Tene | wagle: is that right? am I misunderstanding "feel efficient"? | 04:15 | |
| treed: I have subclassable exceptions working fine locally. There's some concern about making a change like that the evening before the release, though, so I'll hold off until after the release tomorrow. | 04:16 | ||
| treed nods. | |||
| Tene | treed: I'll also add class-based filters to ExceptionHandler | ||
| treed | I still need to get the object model working, but it's nice to know something's been done on the subclass front. | ||
| Ooh! | |||
| I remember wanting that, too. | |||
| Tene | treed: It's not actually much code... did you ever actually ask me to work on it? | 04:17 | |
| treed | Not you, no. | ||
| There were folks here who debugged it with me. | |||
| Tene | Oh, that explains it. | ||
| purl | Damn right it does. | ||
| treed | Before saying, "Oh, yeah, that makes sense. No, that won't work." | ||
| I could probably dig up logs. | 04:18 | ||
| Tene | eh, not really relevant. | ||
| s/relevant/important | |||
| treed | I think at the time it was kind of a "Oh, boy. Another subclassing problem. *sigh*" | 04:19 | |
| Tene | depending on how I want to do it, it's either one simple change (repeated for push_p_p which is weird), or two. | 04:20 | |
| nopaste | "tene" at 76.27.121.193 pasted "Here's the patch, treed" (35 lines) at nopaste.snit.ch/19642 | ||
| Tene | VTABLE_isa or VTABLE_does | ||
| treed | Huh. | ||
| I figured it'd be something like that. | |||
| wagle | Tene having all this strings running around makes me nervous.. the sigh was to indicate that i expect i need to get used to it | 04:22 | |
| treed | How e lse would you represent it besides strings? | 04:23 | |
| Tene | wagle: but the code you pasted was trying to find a function by its name, given a string. That's what I thought you were trying to do. | ||
| treed | afk | 04:24 | |
| Austin | Tene++ (in advance, for the subclassable exceptions) | 04:25 | |
| wagle | using the strings makes it seem like reflection | 04:26 | |
| and that, at run-time, i'm doing all these lookups | |||
| you assure me that this isnt the case, so, well, umm | 04:27 | ||
| Tene | wagle: What do you want to do *instead*? | ||
| wagle: if you're accepting a sub name at runtime, as indicate by ".param string subname", then there's no way to look it up before you get that name. | |||
| before the function is invoked. | |||
| wagle | i tried to abstract the lookup | 04:28 | |
| Tene | wagle: can you please post some code showing what you're trying to do here? | ||
| wagle | never mind the code i pasted.. i'm not using that | ||
| right now, i want to concentrate on getting the factorial function to just compute.. once i have that, i'll polish it | 04:29 | ||
| Tene | If you want to have your reference to a sub resolved *statically* at *compile-time*, then you need a literal name literally in the program text. | ||
| wagle | i'm hand writing the code i expect my compiler to generate | 04:30 | |
| nopaste | "tene" at 76.27.121.193 pasted "Like this, wagle" (17 lines) at nopaste.snit.ch/19643 | ||
| Tene | if you don't specify a :subid, then it defaults to the identifier after ".sub" | ||
| and that's exactly what PCT generates for you | 04:31 | ||
| wagle | ok.. i see.. lemme do my "just get it to work, THEN polish" thing.. else, I'm just confusing myself and everyone else | 04:32 | |
| Tene nods. | |||
| I'd like to see what you have once you have it working. | |||
| wagle: what's the scheme code that you're using for this example? | 04:34 | ||
| wagle: I'd like to show you the PIR that my scheme compiler generates for the code you're considering. | 04:36 | ||
| dalek | rrot: r43986 | Util++ | trunk/PLATFORMS: Updated PLATFORMS, adding a Darwin, and refreshing a 64-bit Linux. |
05:01 | |
| wagle | I have a specific way I'm trying to do it | 05:02 | |
| Tene listens | 05:03 | ||
| wagle | i had a whole course on building scheme compilers.. just reimplementing that | ||
| when i do, you will see what's in my head.. oh well | 05:06 | ||
| :slurpy doesnt bother to create the array with only 1 arg? | 05:10 | ||
| Tene | It definitely does. | 05:11 | |
| nopaste | "tene" at 76.27.121.193 pasted "example" (9 lines) at nopaste.snit.ch/19644 | ||
| wagle blinks and stares at the code some more | |||
| unpossible | 05:14 | ||
| Austin | Nopaste. | ||
| purl | nopaste is at nopaste.snit.ch/ (ask TonyC for new channels) or paste.scsys.co.uk/ or App::Nopaste or tools/dev/nopaste.pl or at www.extpaste.com/ or paste.scsys.co.uk (for #catalyst, #dbix-class, #moose and others) or gist.github.com/ or paste or gtfo or tools/dev/nopaste.pl or trac.parrot.org/parrot/browser/tru...nopaste.pl | ||
| wagle | oh, i got further than i expected | 05:16 | |
| 3628800 | 05:18 | ||
| ... is the fact(10) | 05:21 | ||
| ok.. i got rid of half the get_hll_global's, but the other half is necessary because the "symbols" dont exist (and arent bound) until run-time... the clever trick of lisp/scheme, is that the symbol is created by the reader, not the compiler, and so you have the O(1) access you want.. but here.. hmm | 05:33 | ||
| nopaste.snit.ch/19645 is where i am now in seeing if the pir I expect to generate will run (which it does) | 05:41 | ||
| main problem is that the symbols need to exist before the compiler runs | 05:43 | ||
| Tene, now that i'm done with this phase, i wouldnt mind seeing what yours generates.. | 05:46 | ||
| most of my code is library, not generated, by the way | 05:48 | ||
| the generated code is _main, lambda_0, and lambda_1 | 05:51 | ||
| oh, and i didnt implement environments yet | 05:52 | ||
| how would you declare a global fixedpmcarray such that .const could find it at compile time? | 05:59 | ||
| Austin | You don't. | ||
| wagle | only sub's? | ||
| Austin | There are some other constants, but aggregate constants are not supported AFAIK | ||
| wagle | well, the aggregrate is constant, the contents of wouldnt be | 06:00 | |
| i wonder if this is the problem solved by lexicals | 06:01 | ||
| Austin | No. | 06:03 | |
| Lexicals and globals are both transient storage. | |||
| wagle | yeah.. someone mentioned that all the scheme implementers ended up there, but this isnt it | ||
| Austin | That was me. But it's because you can redefine the functions. | 06:04 | |
| wagle | haha.. i could define symbols as getters and setters and use multiple dispatch to choose | 06:06 | |
| everyone's on the east coast? | 06:07 | ||
| Austin | Heavens no. | ||
| purl | hell yeah! | ||
| Austin | Bacek is in OZ, Kurahaupo is in NZ. | 06:08 | |
| Moritz is in DE, I think. | |||
| wagle | this channel went quiet about midnight on the east coast | ||
| Austin | Yeah, Whiteknight's in pa.us, and I think Tene is in ma.us. | 06:09 | |
| bacek_at_work | Someone have to be at $dayjob :) | ||
| Austin | :) | ||
| wagle | i'm in portland oregon | ||
| Austin | Really? You're right down the street from a bunch of people. | 06:10 | |
| wagle | yeah.. i talk to dukeleto in person a bit | ||
| Austin | Cotto is in wa.us, I think dukeleto is or was in pdx. | ||
| Particle is out there somewhere, maybe also wa.us. | |||
| bacek_at_work | www.ohloh.net/p/parrot | 06:12 | |
| there is nice map in left bottom corner | |||
| cotto | closer to Redmond, but within a reasonable from Seattle | 06:14 | |
| Austin | LOL! | ||
| That's horribly out of date. | |||
| The east coast contributors are Infinoid and dsugalski. | |||
| Test::More.pir doesn't support null. | 06:18 | ||
| bacek_at_work | Austin, (null) ? | 06:23 | |
| Austin | bacek: Can't pass it to is, doesn't have a special check for it. | 06:24 | |
| *is = is(_, _, String) | |||
| bacek_at_work | ah, yeah... | 06:28 | |
| apparently MMD can't multy-dispatch on Nulls | 06:34 | ||
| Austin | I saw someting about that, but I don't believe it. | 06:35 | |
| It fails on get_string at iseq. | |||
| I think it got dispatched, but didn't check in the PMC, PMC case for null. | |||
| Ima patch | |||
| bacek_at_work | patches are welcome! :) | 06:36 | |
| scratch it | |||
| commits are welcome! | |||
| Austin | Moo! No commits. It's release day. | 06:37 | |
| No xor op? | 06:45 | ||
|
06:47
shockwave joined
|
|||
| Tene | Austin: I'm currently in Utah, and planning to move to San Francisco soon. | 06:50 | |
| Austin | Tene: I'm sorry. | ||
| Tene | np | 06:51 | |
| wagle: you *can* declare a compile-time constant, but I'm not sure of the details. If you mark a sub as :immediate, it's run as soon as it's parsed, and its return value replaces it in the compile-time symbol table, or something like that. | 06:52 | ||
| chromatic | That's right. | 06:55 | |
| Austin | chromatic: where are the test cases for Test::More? | 07:01 | |
| chromatic | t/library | 07:04 | |
|
07:08
cognominal joined
07:12
patspam joined
07:13
patspam joined
|
|||
| dukeleto | Austin: if you need help with Parrot's Test::More, let me know | 07:16 | |
| Austin | I'm getting a bunch of "CONST_STRING split across lines" errors on all kinds of files, which aren't true. | ||
| dukeleto: For some reason I can't build at 43698. So patching is going to be tough. | 07:17 | ||
| *43986 | |||
|
07:19
uniejo joined
|
|||
| Austin | Maybe it's a newline problem. | 07:20 | |
| dos2unix to the rescue | |||
| dukeleto | Austin: i am updating to see if it happens to me | 07:26 | |
| Austin | It was a dos2unix problem. | ||
| My svn client is on windows, so when the \\r\\n's show up, it breaks the linux build. | 07:27 | ||
|
08:00
fperrad_ joined
|
|||
| cotto commits something | 08:05 | ||
|
08:11
iblechbot joined
08:13
bacek joined
|
|||
| bacek | o hai | 08:13 | |
| davidfetter | hai | 08:14 | |
| dalek | rrot: r43987 | cotto++ | trunk (2 files): [docs] document some internal debugger functions (no functional changes) |
08:18 | |
| cotto | examples/c/nanoparrot.c is kinda neat. We should be pointing that out as a good starting place to get a grasp of how Parrot works on a VM level. | 08:22 | |
| It's nice to have a complete VM in <350 loc. | 08:27 | ||
| Austin | Sure, but how does it perform? | 08:28 | |
| Because, I mean, there's still a couple of hours until the release, right? | 08:29 | ||
| cotto | I'm done. | 08:30 | |
| davidfetter | w00t! | ||
| 2.1.0? | |||
| purl | 2.1.0 is not supported | ||
| cotto | davidfetter, darbelo's cutting the release. I'm just saying that I'm done committing stuff for tonight. | 08:31 | |
| davidfetter | ah | ||
| davidfetter will not pester darbelo about pl/parrot until he's had some chance to recover from this | 08:32 | ||
| cotto | I'm on next month | ||
| Austin | So will 2.2 feature the nanoparrot replacing the current vm? | ||
| davidfetter | heh | ||
| Austin | (Surely, <loc implies <bugs, right?) | ||
| davidfetter | .oO(picoparrot, done in 0.3 loc) |
08:33 | |
| cotto | It's nice as a teaching or learning tool. | ||
| nanoparrot? | |||
| Austin | 27 more days. | ||
| 26, really. | 08:34 | ||
| See if you can get it out on Steak & BJ day. | |||
| dalek | rrot: r43988 | bacek++ | trunk/src/gc/gc_inf.c: Add headerizer decorators into GC INF. |
||
| rrot: r43989 | cotto++ | trunk (2 files): [docs] make nanoparrot build and add some missing function docs makefile target, so it won't mess with the release. |
|||
| cotto | Woohoo. bacek's living on the wild side too. | ||
| davidfetter | steak & bj day?!? where do i sign up? | 08:36 | |
| davidfetter <3 steaks | |||
| Austin | davidfetter: Google is your friend. | ||
| cotto | I also got to use the word "Parrotesque". It's been a good day. | 08:38 | |
| davidfetter | o/` today was a good day o/` | ||
| cotto | night, meatbags | 08:40 | |
| cotto can clearly see how much he needs to get to sleep | |||
| Austin | night, bender | ||
| night, bender | 08:41 | ||
| ww | |||
| dalek | rrot: r43990 | bacek++ | trunk/compilers/pirc/src/pirregalloc.c: Headerizer happiness work |
08:50 | |
| rrot: r43991 | bacek++ | trunk/compilers/pirc/src/pirsymbol.c: Headerizer happiness work |
|||
| rrot: r43992 | bacek++ | trunk/compilers/pirc/src/pirregalloc.c: Headerizer happiness work |
|||
| rrot: r43993 | bacek++ | trunk/compilers/pirc/src/main.c: Headerizer happiness work |
|||
| Austin | Invalid type 33 in add_namespace() | 09:17 | |
| What does *that* mean? | |||
| bacek | make realclean | 09:21 | |
| Some stale PMC/PBC left in your build tree | |||
| dalek | kudo/master: c3aaa2e | moritz++ | t/spectest.data: turn on two more passing tests |
09:22 | |
| nopaste | "Austin" at 68.37.46.53 pasted "Patch to add null checking to is(), and add is_null() test, to Test::More" (404 lines) at nopaste.snit.ch/19646 | 09:23 | |
| dalek | rrot: r43994 | bacek++ | trunk/compilers/pirc/src/pircompunit.c: Headerizer happiness work |
09:24 | |
| Austin | No commit - it's release day. | ||
| :) | |||
| rrot: r43995 | bacek++ | trunk/compilers/pirc/src/piremit.c: Headerizer happiness work |
|||
| rrot: r43996 | bacek++ | trunk/compilers/pirc/src/pirmacro.c: Headerizer happiness work |
|||
| bacek | 404 lines - patch not found | 09:26 | |
| dalek | kudo/master: e3a4d9a | moritz++ | t/spectest.data: Turn on 18 more passing test files ulimit -v 1048576 perl tools/update_passing_test_data.pl And then looking closer at lines that start with [SPA] |
09:34 | |
| rrot: r43997 | bacek++ | trunk/compilers/pirc/src/pirregalloc.c: Headerizer happiness work |
09:40 | ||
| Austin | bacek: How did you run the patch? I used patch -p0 < foo.patch and it worked okay. | 09:45 | |
| bacek | Test::More" (404 lines) at nopaste.snit.ch/19646 | ||
| :) | |||
| Austin | ...? | 09:46 | |
| purl quietly listens while the crickets chirp | |||
| bacek | Austin, check number of lines | 09:47 | |
| And classic HTTP response code | |||
| Austin | Ahh... :) | ||
| bacek++ | 09:48 | ||
| bacek | :) | 09:49 | |
| dalek | rrot: r43998 | bacek++ | trunk/compilers/pirc/src/pirmacro.c: Add ASSERT_ARGS |
09:56 | |
| rrot: r43999 | bacek++ | trunk/compilers/pirc/src/pirregalloc.c: Add ASSERT_ARGS |
|||
| rrot: r44000 | bacek++ | trunk/compilers/pirc/src/pirsymbol.c: Add ASSERT_ARGS |
|||
| kudo/master: 4730a80 | masak++ | src/builtins/Str.pir: fixed tailcall to prefix:<?> |
10:08 | ||
| mikehh | All tests PASS (pre/post-config, make corevm/make coretest, smoke (#32220), fulltest) at r44000 - Ubuntu 9.10 amd64 (gcc with --optimize) | 10:16 | |
|
10:20
purl joined
10:22
riffraff joined
10:25
payload joined
|
|||
| mikehh | rakudo - All tests PASS - make test, make spectest_smolder #32221 - parrot at r44000 - Ubuntu 9.10 amd64 (gcc with --optimize) | 10:27 | |
|
10:28
payload joined
10:37
riffraff joined
|
|||
| bacek | mikehh, I'm dcommiting a lot of changes that will fail codetest L) | 10:38 | |
| :) | |||
| c_assert_args for example | 10:39 | ||
| c_arg_assert actually | |||
| Just add ASSERT_ARG if you have time | 10:40 | ||
| dalek | rrot: r44001 | bacek++ | trunk/compilers/pirc/src (2 files): Really use headerizer |
10:45 | |
| rrot: r44002 | bacek++ | trunk/compilers/pirc/src (2 files): Really use headerizer |
|||
| rrot: r44003 | bacek++ | trunk/compilers/pirc/src (2 files): Really use headerizer |
|||
| rrot: r44004 | bacek++ | trunk/compilers/pirc/src (2 files): PIRC: Really use headerizer |
|||
| rrot: r44005 | bacek++ | trunk/compilers/pirc/src (2 files): PIRC: Really use headerizer |
|||
| rrot: r44006 | bacek++ | trunk/compilers/pirc/src (2 files): PIRC: Really use headerizer |
|||
| mikehh | bacek: ok will have a look in a couple of hours - hopefully before darbelo++ does his bit | 10:56 | |
| bacek | mikehh, it's just major cleanup for PIRC. | 10:57 | |
| Doesn't affect anything apart codetest | |||
|
11:00
iblechbot joined
|
|||
| nopaste | "Austin" at 68.37.46.53 pasted "Amended patch for Test::More.is_null, etc., with correct plan" (412 lines) at nopaste.snit.ch/19647 | 11:05 | |
| mikehh | anyway got to go out for a bit - bbl | 11:06 | |
|
11:17
fperrad_ joined
|
|||
| dalek | rrot: r44007 | bacek++ | trunk/compilers/pirc/src (2 files): PIRC: Really use headerizer |
11:19 | |
| rrot: r44008 | bacek++ | trunk/compilers/pirc/src (2 files): PIRC: Really use headerizer |
|||
| rrot: r44009 | bacek++ | trunk/compilers/pirc/src (2 files): PIRC: Really use headerizer |
|||
| rrot: r44010 | bacek++ | trunk/compilers/pirc/src (4 files): PIRC: Really use headerizer |
|||
| rrot: r44011 | bacek++ | trunk/compilers/pirc/src (2 files): PIRC: Really use headerizer |
|||
| rrot: r44012 | bacek++ | trunk/compilers/pirc/src (3 files): PIRC: Really use headerizer |
|||
| rrot: r44013 | jonathan++ | trunk/runtime/parrot/library/P6object.pir: [p6object] Minor fix up for P6object with respect to changes in Rakudo. |
|||
| Austin | Invalid type 33 in add_namespace() | 11:34 | |
| Patching and reinstalling parrot had no effect (other than potentially some karma tomorrow). | 11:35 | ||
| dalek | kudo/master: 2b2da10 | jonathan++ | src/core/operators.pm: Tweak a couple of signatures that should have Mu in. |
||
| kudo/master: 5aca279 | jonathan++ | build/PARROT_REVISION: Bump PARROT_REVISION to get auto-threading fix. |
|||
| kudo/master: 31260a4 | jonathan++ | t/spectest.data: Turn S03-junctions/boolean-context.t back on again. |
|||
| rrot: r44014 | bacek++ | trunk/compilers/pirc/src/piremit.c: PIRC: Add ASSERT_ARG |
12:08 | ||
| rrot: r44015 | bacek++ | trunk/compilers/pirc/src/pirsymbol.c: PIRC: Add ASSERT_ARGS |
|||
| rrot: r44016 | bacek++ | trunk/compilers/pirc/src/pirregalloc.c: PIRC: Add ASSERT_ARGS |
|||
| rrot: r44017 | bacek++ | trunk/compilers/pirc/src/pirpcc.c: PIRC: Add ASSERT_ARGS |
|||
| rrot: r44018 | bacek++ | trunk/compilers/pirc/src/pirmacro.c: PIRC: Really use headerizer |
|||
| rrot: r44019 | bacek++ | trunk/compilers/pirc/src/pirmacro.c: PIRC: Fix ASSERT_ARGS usage |
|||
|
12:17
nbrown joined
12:25
kid51 joined
|
|||
| he | Hmm, ./src/pmc/lexinfo.pmc:151: failed assertion 'v_type == enum_hash_int' | 12:26 | |
| Have core dump and parrot compiled with -g. | 12:28 | ||
| This was during execution of ./parrot runtime/parrot/library/PGE/Perl6Grammar.pir --output=compilers/pge/PGE/builtins_gen.pir compilers/pge/PGE/builtins.pg | |||
|
12:36
fperrad_ joined
|
|||
| nopaste | "shockwave" at 76.119.137.239 pasted ".namespace ['TestXXX' ; 'A'] ." (8 lines) at nopaste.snit.ch/19649 | 12:43 | |
| shockwave | I'm trying to set an attribute of a class: nopaste.snit.ch/19649 | 12:44 | |
| dalek | kudo/master: 0afe11b | moritz++ | t/spectest.data: list-quote-junction.t now passes again |
||
| shockwave | I get this error: | ||
| set_attr_str() not implemented in class 'Class' | |||
| current instr.: 'ink;TestXXX;Test;init' pc 12 (TestXXX.pir:15) | |||
| NotFound | shockwave: addattribute | 12:45 | |
| purl | i heard addattribute was done one the class | ||
| NotFound | Ops | ||
| Austin | Right, the old "class vs object" confusion. | 12:46 | |
| It happened to me, too. | |||
| NotFound | shockwave: you don't need to setattribute in the class object. | ||
| addattribute is enough | |||
| Austin | Shockwave: You are confusing the class, which can "add" an attribute, with an object OF that class, which will later be able to "set" the attribute. | ||
| shockwave | I forot a line there. | ||
| Austin | You add attributes while configuring the class, then you create a new object of that class, then you set the attribute on the object. | 12:47 | |
| shockwave | oh | ||
| Got it. | |||
| Austin | $P0 = newclass ... ; addattribute $P0, 'foo'; $P1 = new $P0 ; setattribute $P1, 'foo', <some value> | ||
| shockwave | I actually think I ran into this issue about 5 years ago, one time I took a quick look at Parrot for curiosity purposes. | 12:49 | |
| Thanks | |||
| Or maybe 3 years ago. | 12:50 | ||
| Austin | But definitely a prime number. | ||
| shockwave | lol | 12:51 | |
|
12:53
fperrad joined
13:03
bluescreen joined
|
|||
| dalek | kudo/master: a6e4c1f | jonathan++ | src/ (3 files): Get prefix:<|> working in argument lists. All of foo(|@a), foo(|%h) and foo($c) work - the last of those never worked properly in alpha (it now passes along both positional and named parts of the capture). |
13:07 | |
|
13:26
bluescreen joined
13:27
he_ joined
|
|||
| dalek | rrot: r44020 | mikehh++ | trunk/CREDITS: modify entry in CREDITS |
13:46 | |
| nopaste | "he" at 158.38.152.119 pasted "stack backtrace of core'd parrot rev 44006, during the build" (94 lines) at nopaste.snit.ch/19651 | 13:49 | |
|
13:51
payload joined
13:54
whiteknight joined
|
|||
| dalek | rrot: r44021 | whiteknight++ | branches/tt_1449: Creating branch to explore TT #1449 |
14:03 | |
| mikehh | All tests PASS (pre/post-config, make corevm/make coretest, smoke (#32225), fulltest) at r44020 - Ubuntu 9.10 amd64 (g++ with --optimize) | 14:04 | |
| dalek | rrot: r44022 | whiteknight++ | trunk/DEPRECATED.pod: Add experimental note about GC_SYS_NAME |
14:20 | |
| TT #1450 created by whiteknight++: Improve handling of experimental features | 14:30 | ||
|
14:31
whiteknight_ joined
|
|||
| dalek | rrot: r44023 | whiteknight++ | branches/tt_1449/src/pmc/namespace.pmc: initial fix for TT #1449. Left in some C++ comments as flags to keep track of changes |
14:36 | |
| whiteknight | Austin: ping | 14:39 | |
| Austin | Whiteknight: pong? | ||
| whiteknight | Austin: created the tt_1449 branch to tackle your issue, have a potential fix committed | ||
| care to test? | |||
| Austin | Which one is that? | ||
| whiteknight | String PMC as a key in Namespace PMC | ||
| Austin | Ah. Got it. | 14:40 | |
| whiteknight | although I've already got a comment on the ticket about a better fix than the one I provided | ||
| dalek | kudo/master: fd288ff | pmichaud++ | src/builtins/Str.pir: Internal call in Str.pir to prefix:<?> should have &-prefix. |
14:41 | |
| Austin | Seems pretty simple to test. Are you going to follow up NotFound's suggestion? | ||
| For myself, I don't see a huge amount of value in the keyed-array access mode. I just don't see when I'd use that. | 14:42 | ||
| But I'll see about getting you some test code. | |||
| whiteknight | Yeah, I'm going to see about planning out the more comlicated behaviors before committing more fixes | 14:44 | |
| Austin | Aww, son of a ... | 14:47 | |
|
14:47
fperrad_ joined
|
|||
| Austin | Okay, this particular piece of perl6 syntax is going to be the source of a fair number of bugs, I'll bet... | 14:48 | |
| I just found out the problem I was having with my function: 5 method declare_class($class, $parent?) {...} 0 | |||
| It's the old "you're missing a character you can barely see." problem. It should have been: 5 method declare_class($class, :$parent?) {...} 0 | 14:49 | ||
| moritz | if you use a named argument, the ? is optional | 14:50 | |
| Austin | In nqp, or P6 ? | ||
| moritz | which makes the two cases a bit more visually distinct | ||
| in Perl 6 | |||
| no idea bout nqp | |||
| Austin | moritz: Apparently, nqp makes it optional regardless of the '?'. | 14:56 | |
| And makes it required with ! | 14:57 | ||
| I have to say, though, that the : is still pretty hard to see. | |||
| Oh frabjous day - more snow. | 14:59 | ||
| NotFound wonders if people from countries with lots of snow tends to make whitespace significant in his designs. | 15:01 | ||
| dalek | kudo/master: 626ff56 | pmichaud++ | src/Perl6/Grammar.pm: Add a more useful nyi error message for supersede. |
15:04 | |
| Coke | Is there still a question about how to declare a fixedpmcarray as a const? | 15:06 | |
| (ah, no, tene covered it, nevermind.) | |||
| Coke figures out why bacek had all those individual commits. :| | 15:07 | ||
| wagle | why does this capture calls with 0 args? | 15:11 | |
| :multi() | |||
| why does this capture calls with 1 args (i mean) | |||
| Coke | it could still be the best match. | ||
| without seeing all your other multis, hard to say. | |||
| wagle | nopaste | ||
| Coke | nopaste.snit.ch | ||
| wagle | but thats not a match.. 8) | 15:12 | |
| Coke | src/mmd.c might explain why parrot disagrees with you. | ||
| dalek | p-rx: 5c81874 | pmichaud++ | build/PARROT_REVISION: Bump PARROT_REVISION. |
15:13 | |
| p-rx: 7db921a | pmichaud++ | (2 files): Add simple form of \\cnnn processing. |
|||
| p-rx: 9bf03df | pmichaud++ | (2 files): Add \\c[nn,nn,nn] form of character specification. |
|||
| wagle | nopaste.snit.ch/19653 | ||
| both times call getter | |||
| Coke | it's not P | 15:14 | |
| it's _ or PMC | |||
| try that. | |||
|
15:14
whiteknight joined
|
|||
| wagle | oh ok (bad docs! bad! no cookie for you!) | 15:15 | |
| moritz | wagle: feel free to submit doc patches - those usually get applied very quick | 15:16 | |
| Coke | +1. | ||
| purl | 1 | ||
| Coke | purl, idiot says what? | ||
| purl | no idea, coke | ||
| Coke | looks like docs/book/pir/ch06_subroutines.pod is the badness. yes? | 15:17 | |
| wagle | still a bug that a 0-arity sub gets passed 1 arg? | 15:18 | |
|
15:18
bubaflub joined
|
|||
| wagle | without complaining? | 15:18 | |
| Coke | 0-arity subs are special. | ||
| they don't complain. | |||
| I don't think this is /desired/, necessarily, but it would break a lot of :main's | 15:19 | ||
| I think that's the line I was given when i complained about it. =-) | |||
| wagle | its :main that is special, not 0-arity | ||
| oh well | 15:20 | ||
| Coke | that /should/ be special, yes. | ||
| ISTR when I tried to patch IMCC to make it squawk, it was hard. but I'm not a c programmer, so.. | |||
| Coke tries to find the ticket... | |||
| TT #1033 | 15:21 | ||
| Please add your vote to how that should work there. | |||
| wagle | url? | 15:22 | |
|
15:22
plobsing joined
|
|||
| Coke | trac? | 15:24 | |
| purl | trac is a web-based software project management and bug/issue tracking system emphasizing ease of use and low ceremony. It provides an interface to the Subversion revision control systems, integrated Wiki and convenient report facilities. projects.edgewall.com/trac/ or Python, SQLite and ClearSilver or killing killtrac or a bug-tracking tool or at trac.parrot.org/parrot/ or slow or REALLY slow | ||
| Coke | ugh. | ||
| trac.parrot.org/parrot/ticket/1033 | |||
| parrot trac? | |||
| purl | rumour has it parrot trac is trac.parrot.org/parrot/ | ||
| dalek | p-rx: b72372c | pmichaud++ | (2 files): Add \\c[UNICODE CHAR NAME] literals. |
||
| wagle | trac.parrot.org/parrot/ticket/1033 | 15:25 | |
|
15:25
Andy joined
|
|||
| wagle | (ie, i found it.. too late) | 15:25 | |
|
15:33
bubaflub joined
|
|||
| dalek | p-rx: 61e9bd4 | pmichaud++ | src/Regex/P6Regex/ (2 files): Add \\c[...] literals to regexes. |
15:35 | |
|
15:37
bubaflub joined
|
|||
| wagle | comment added to 1033 | 15:39 | |
| Coke | danke. | ||
| wagle | is there a reason for an assembly language to not be pedantic about the 3 args to a :main? | ||
|
15:40
lucian joined
|
|||
| wagle | in theory, programs write the asm, not humans.. (yes, I know about practice) | 15:40 | |
|
15:40
theory joined
|
|||
| Coke | env comes in through a PMC, not parameters. | 15:40 | |
| wagle | ok | 15:41 | |
| s/3/2/g | |||
| Coke | and if we enforced a signature, it'd just be a single .param pmc argv :slurpy | ||
| NotFound | :optional | ||
| purl | :optional is probably a flag to an argument | ||
| Coke | NotFound: I suppose, but there's not much harm in passing in a 0-length array. | ||
| wagle | i envisions a :sloppy tag in there somewhere.. 8) | 15:42 | |
| Coke | wagle: you might want to clarify in your comment that when you fixed the bug in your setter that that went away. | ||
| (goodness knows what :multi(P) was being parsed as. a single pmc parameter of class 'P', probably. | |||
| NotFound | A good rule to evaluate if a compiler is really fast: compile something on a phone X-) | 15:44 | |
| wagle | Coke: done, i think | 15:49 | |
| PPPS added. sigh | 15:52 | ||
| wagle forgot his ran out of coffee yesterday, and hasn't gone out for his morning coffee yet | 15:53 | ||
|
15:56
Psyche^ joined
|
|||
| dalek | rrot: r44024 | pmichaud++ | failed to fetch changeset: Update nqp-rx sources with \\c[...] capabilities in strings/regexes. |
15:58 | |
| kudo/master: 2795c05 | jonathan++ | t/spectest.data: Turn S02-builtin_data_types/capture.t back on. |
|||
|
15:59
hudnix joined
|
|||
| bubaflub | i'm using git svn and on trunk (after a `make realclean`) i'm seeing a few files that aren't in the repo / aren't cleaned up: | 16:03 | |
| pmichaud | very possible | ||
| if you let us know or submit a patch, I'm sure it'll get fixed :) | |||
| bubaflub | pmichaud: i can submit a patch, just want to make sure before i set `make realclean` to nuke a vital file | 16:04 | |
| gist.github.com/305618 | |||
| whiteknight | wagle++ | 16:07 | |
| stick it to the man | |||
| Coke | bubaflub: to be sure, remove them by hand, re-config, make, realclean, and see if they are still there. | 16:09 | |
| (they might be leftovers that used to be generated but aren't anymore, therefore no need to clean them.) | 16:10 | ||
| pmichaud | I just looked at it locally -- "make realclean" isn't removing them from my build tree. | ||
| (at least not the json ones) | |||
| Coke | right. but that might be on purpose. | ||
| without looking at the individual files that we're talking about. | |||
| bubaflub | Coke: will do. i'll post my results here. | 16:16 | |
| Coke: after manually removing, `make realclean`, a fresh build, and another `make realclean` those files i listed in the gist are still there. that would imply that they are generated files, yes? | 16:21 | ||
| dalek | p-rx: 42d216f | pmichaud++ | src/stage0/ (3 files): Update bootstrap files. |
16:23 | |
| Coke | bubaflub: ayup | 16:25 | |
| it's easy enough to fix; gimme a sec. | |||
| bubaflub | okey dokey | ||
| Coke | data_json fixed, commit soon as I test. | 16:30 | |
| the opengl ones I think require a small amount of config code. | |||
| bubaflub | Coke++ | ||
| Coke | that's one. | 16:36 | |
| nopaste | "coke" at 65.91.151.194 pasted "bubaflub, try this patch: you'll need to reconfig and realclean." (14 lines) at nopaste.snit.ch/19654 | 16:40 | |
| dalek | p-rx: 4fc27f3 | pmichaud++ | src/HLL/Actions.pm: Unrecognized charname should .panic instead of pir::die. |
||
| p-rx: bbfd1a7 | pmichaud++ | src/stage0/ (3 files): Update bootstrap with improved panic message for charnames. |
|||
| Coke | I thought that configure.pl had a way to track what files were generated so you could just say "delete all of them", but I don't see that, looking at the code. | ||
| so I just added those 2 gen'd files to the list of gen'd library files. | 16:41 | ||
|
16:42
mikehh joined
|
|||
| Coke | whiteknight: two different mailing lists. | 16:42 | |
| one is parrot-dev, the other is parrot-tickets | |||
| bubaflub | Coke: that takes care of the OpenGL generated files. | ||
| Coke | bubaflub: ok. | ||
| dalek | kudo/master: 13ccd20 | jonathan++ | src/b (2 files): Implement captures in signatures. |
16:44 | |
| Coke | whiteknight: nevermind, kept the thread in the ticket. | 16:46 | |
| dalek | rrot: r44025 | whiteknight++ | branches/tt_1449/src/pmc/namespace.pmc: Add use of array types to key NameSpace, on suggestion from NotFound++ |
16:47 | |
|
16:47
iblechbot joined
|
|||
| rrot: r44026 | coke++ | trunk (2 files): cleanup compilers/data_json leftovers; bubaflub++ |
|||
| rrot: r44027 | pmichaud++ | failed to fetch changeset: [nqp]: Update source files with improved charname error message. |
|||
| rrot: r44028 | whiteknight++ | branches/tt_1449/src/pmc/namespace.pmc: [tt_1449] some error handling, need to check what Parrot_get_namespace_keyed_str returns in these situations |
|||
| rrot: r44029 | coke++ | trunk/config/gen/makefiles/root.in: Make sure these 2 opengl files are removed on realclean. bubaflub++ |
|||
| rrot: r44030 | whiteknight++ | branches/pmc_func_cleanup (4 files): rename PMC_is_null to Parrot_pmc_is_null |
|||
| whiteknight | my regex foo is weak | 16:50 | |
| in ack, how do I match "foo" but not "_foo"? I need a negative look-behind assertion, right? | 16:51 | ||
| Andy | that's what I'd do | ||
| Coke | pmichaud: is darbelo ok with you changing nqp-rx moments before release? | ||
| Andy | or, ack foo | ack -v _foo | ||
| pmichaud | Coke: they're very minor changes, and I'm testing heavily. | 16:52 | |
| whiteknight | Andy: and what's the syntax for that? | ||
| purl | the syntax for that is weird | ||
| pmichaud | (and I'm done with them for today) | ||
| darbelo | Coke: I can live with it. | ||
| Andy | whiteknight: It's whatever the syntax is. | ||
| whiteknight | I don't have my trusty camel book here with me | ||
| Andy | it's just regex. | ||
| Coke | ok. just risky since we have no nqp-rx tests internal to parrot, yes? | ||
| negative lookbehind? | |||
| purl | rumour has it negative lookbehind is new in perl 5.005 | ||
| Andy | whenever I'm in your situation, I just ack foo | ack -v _foo | ||
| Coke | whiteknight: "perldoc perlre" | ||
| Andy | and avoid looking it up. :-) | ||
| pmichaud | whiteknight: I think it's (?<!_) | 16:53 | |
| whiteknight | meh, I'll just "make" and let the compiler find the errors for me | ||
| pmichaud | so, (?<!_)foo | ||
| Coke | (though in perlre it's "look-behind" with a dash. | ||
| pmichaud | Coke: (risky) yes, I recognize the slight risk -- as I said, I'm testing pretty heavily. | 16:54 | |
| Coke: and it's also a huge benefit to rakudo's release if these changes make it in before parrot's release. | |||
| whiteknight | might be worthwhile to setup a Parrot make target to checkout a copy of NQP-RX's test suite and run it | 16:55 | |
| pmichaud | well, I already test that nqp-rx passes its own test suite before checking updates into parrot :) | 16:56 | |
| dalek | nxed: r404 | julian.notfound++ | trunk/examples/Xlib.winxed: new Xlib example using NCI directly instead of the parrot example module |
16:57 | |
| Coke | pmichaud: ok. there was no public exposure on the testing or anything, so you can see why i'd ask. =-) | 16:58 | |
| pmichaud | Coke: yes, absolutely. | 16:59 | |
| purl | Quite so. | ||
| Coke | I'll be more concerned when I get around to writing runtime/library in nqp-rx. | ||
| =-) | |||
| pmichaud | lunch break! | 17:00 | |
| dalek | kudo/master: 79e7b62 | pmichaud++ | build/PARROT_REVISION: Bump PARROT_REVISION to get latest \\c[...] fixes. |
17:03 | |
| kudo/master: fdcde82 | pmichaud++ | (3 files): Add <isLu> and other <isProp> subrules. |
|||
| kudo/master: cdf816d | pmichaud++ | src/b (2 files): Merge branch 'master' of git@github.com:rakudo/rakudo |
|||
| kudo/master: 6ef9f8e | jonathan++ | t/spectest.data: S12-class/basic.t should not be in the regressed files list - we run it. |
|||
| kudo/master: b73e000 | pmichaud++ | t/spectest.data: Merge branch 'master' of git@github.com:rakudo/rakudo |
|||
| darbelo | Coke: The release manager guide claims I need to whine at someone to grant me 'editor' privileges. You're it ;) | 17:04 | |
| Same with adding ssh keys for ftp-osl.osuosl.org | 17:05 | ||
| dalek | rrot: r44031 | whiteknight++ | branches/pmc_func_cleanup (83 files): start rename of pmc_new to Parrot_pmc_new |
||
| Coke | darbelo: read further; do you need any other kind of privs? | 17:08 | |
| (I see no "editor" privs granted on the admin screen.) | |||
| lots of developer... | |||
| also, your trac id is... ? | 17:09 | ||
| darbelo is darbelo | |||
| But I think it's meant for parrot.org, not Trac. | |||
| Coke | oh! | ||
| that would have been nice to know. =-) | 17:10 | ||
| you are (no longer) an admin on trac. =-) | |||
| darbelo | Awwww. | ||
| Coke | darbelo: ... did you check to see if you were an editor first before you pinged me? | 17:12 | |
| (you are: editor, member, poster) but not (admin, director) | |||
| i agree with pmichaud. lunch time. | 17:15 | ||
|
17:17
pjcj joined
|
|||
| darbelo | Okay. Release tarbal, for now, at web.fi.uba.ar/~darbelo/parrot-2.1.0.tar.gz please test. | 17:20 | |
|
17:20
mikehh joined
17:27
davidfetter joined
|
|||
| Austin | Whiteknight: If you want foo at start of word, try ack "\\bfoo". If you want foo anywhere but not after _, try "[^_]foo". If you're scripting it, then you need to dig out the full negative-lookback voodoo... | 17:27 | |
| Coke | darbelo: doing a fulltest now on a vanilla platform. | 17:31 | |
| darbelo | Coke++ | ||
| I'm releasing from non-vanilla, so let me know how it goes. | 17:32 | ||
| Coke | SFSG | 17:34 | |
| darbelo: looks mostly good on feather, though I appear to be hung on t/distro/file_metadata.t | 17:37 | ||
| (it's the old svk bug.) | |||
| darbelo | Oh. | ||
| dalek | kudo/master: ed95e25 | jonathan++ | t/spectest.data: Add S06-signature/unpack-array.t to spectest.data. |
17:38 | |
| kudo/master: f5d9b53 | jonathan++ | (2 files): Add a first cut implementation of infix:<xx> so we can pass all of S03-operators/repeat.t again. |
|||
| darbelo | ISTR that killing the svk process unhung the test. | ||
| Also, why are we running metadata tests out of a tarball? | 17:40 | ||
| Coke | the problem is that it keeps running the svk test over and over and over. =-) | ||
| presumably once per sub-test. | |||
| darbelo | Ugh. | ||
| Coke creates an infinite kill-svk loop. | 17:41 | ||
| f it. | 17:42 | ||
| so, mostly good except for that. | |||
| darbelo | Good enough for me. | 17:43 | |
| mikehh | with PLATFORMS should we have the latest dates that the various test were run? | ||
|
17:43
cosimo joined
|
|||
| Coke | darbelo: TT #1451 | 17:44 | |
| ah. it's chunked, so you get N tests * M chunks per test. | 17:45 | ||
| Coke has a "didn't I /write/ that code?" moment. | |||
| dukeleto | 'ello | 17:46 | |
| dukeleto tests the release tarball | |||
| darbelo | 'i | ||
| mikehh | hi | ||
| All tests PASS (pre/post-config, make corevm/make coretest, smoke (#32229), fulltest) at r44031 - Ubuntu 9.10 i386 (g++ with --optimize) | 17:47 | ||
| Coke | docs.parrot.org/parrot/2.1.0/html/ exists, based on that tarball. | 17:48 | |
| I'll link to it from latest when you say boo. | |||
| darbelo | fulltest passes here. | 17:51 | |
| Release tagged and bagged. | |||
| dalek | TT #1451 created by coke++: t/distro/file_metadata.t should not be run from distro tarball. | 17:53 | |
| darbelo | Okay now somebody with ssh access to ftp-osl.osuosl.org needs to execute step 8 of the release manager guide. | ||
| Coke | ok. latest docs now point to 2.1.0 - might take a day for the cache to switch over. | 17:54 | |
| darbelo: good luck finding that person. =-) | |||
| dalek | rrot: r44032 | darbelo++ | trunk (7 files): Bump version numbers for the release. |
17:55 | |
| Coke | darbelo++ | ||
| rrot: r44033 | darbelo++ | tags/RELEASE_2_1_0: Tag the 2.1.0 release. |
|||
| bubaflub | darbelo++ | 17:56 | |
| dukeleto | darbelo++ | ||
| mikehh | darbelo++ | ||
| dukeleto | darbelo: i may have access to ftp-osl. I think anybody who has done a release before can do that. | 17:57 | |
| Coke | dukeleto: not true. most release managers just punt on that step. | ||
| (not even the board all has access. =-) | |||
| darbelo | As I'm doing now ;) | ||
| dukeleto | Coke: i gave allison an ssh key, i think it was for that | 17:58 | |
| darbelo: is there any different in web.fi.uba.ar/~darbelo/parrot-2.1.0.tar.gz and what is tagged as 2.1.0 in svn? | |||
| s/different/difference/ | |||
| mikehh | anyway heading back to amd64 - bbiab | 17:59 | |
| darbelo | There shouldn't be :) | ||
| Coke | I don't think nqp is float only. | ||
| I think it defaults to float. | |||
| you want an int back, you can cast it. | |||
| dukeleto | darbelo: ok. i have a "make fulltest" still running from your initial test tarball, so I just wanted to know | ||
| whiteknight | renaming all these functions is making me so happy | 18:00 | |
| Coke | whiteknight: not to rain on your parade (because it feels like that's all I do when I talk to you, sorry. :( ), but is the rename covered by an existing DEP notice? | ||
| plobsing: ping. | 18:01 | ||
| plobsing | Coke: pong | ||
| Coke | you have a commit bit now, right? | ||
| plobsing | yes. | ||
| Coke | reassigned your old patch from 1329 to you. | 18:02 | |
| my problem with it is that it carps on code like that mentioned in my comment from 3 months. | |||
| so I would make sure you address that before applying the change to the indent checker. | 18:03 | ||
| I for one would be happy with an indent check that was smart enough to allow the for() loop in the comment, PDD be damned. | |||
| (I'll even update the PDD if you like. =-) | |||
| plobsing | Coke: Someone already went through and fixed the legit errors. I've been trying off and on to get it to behave sanely | 18:04 | |
| whiteknight | Coke: yes. All non-standard-named functions have been covered by the notice for months | ||
| Coke: "C API coding standards cleanup [eligible in 1.1]", TT #443 | |||
| darbelo takes a lunch break. | 18:05 | ||
| whiteknight | darbelo: ditto | ||
| Coke | whiteknight++ #thanks. | ||
| plobsing | I don't know how to get it to do so. I think at this point I am willing to admit defeat | ||
| Coke | plobsing: you could have it ignore things inside ()'s, I suppose. | 18:06 | |
| might be overly lenient. | |||
| plobsing | Coke: it's not just that. it chokes plenty of places it shouldn't and probably will until it is able to parse C | 18:07 | |
| which, as it turns out, is actually pretty hard | |||
| (for me at least) | 18:08 | ||
| Coke | plobsing: we could always punt and go for a literal 4-space rule. | 18:09 | |
| I would rather not, but we already cater to codingstandards over sanity in many locations. | |||
|
18:10
mikehh joined
|
|||
| plobsing | Coke: I just wontfix'ed it. | 18:11 | |
| dalek | rrot: r44034 | whiteknight++ | branches/pmc_func_cleanup (37 files): rename the rest of the functions in pmc.c, start updating the rest of the codebase but not complete yet |
18:12 | |
| dukeleto | who was working on parrot on the iphone? | 18:13 | |
| dalek | kapo: 59db593 | austin++ | (17 files): Centralized a bunch of PMC methods in COMMON. Discovered bug probably at bottom of funky behavior of Testcase, DQ. Added some bootstrap tests for P6. Added NameSpace to _base config. Renamed VERSION to VERSION.txt to avoid Configure.pl conflict. Signed-off-by: Austin Hastings <Austin_Hastings@Yahoo.com> |
18:17 | |
| Coke | dukeleto: iphone - i wasn't aware anyone was. | 18:19 | |
| nopaste | "shockwave" at 76.119.137.239 pasted "How to use 'isa' opcode?" (26 lines) at nopaste.snit.ch/19656 | ||
| shockwave | I'm trying to use the 'isa' keyword to determine the inheritance of an object. | 18:20 | |
| But the test is hitting the error message. | |||
| Oh, waith. | 18:21 | ||
| NotFound | shockwave: you can't build keys that way, that syntax is only for constants. | 18:22 | |
| shockwave | NotFound, I didn't get an error. | ||
| I guess this would be related to my other question. | |||
| NotFound | shockwave: imcc diagnostics are not always good. | 18:23 | |
| shockwave | How do I subclass from a class in a certain namespace: $P0 = subclass 'Hash', ['{{PACKAGE}}' ; '{{class}}'] | ||
| Those that apply there as well? | |||
| plobsing | NotFound: this line seems to be working for me | 18:24 | |
| $S1 = sig_table[$S0; field_name] | |||
| are hash keys magic in imcc? | |||
| NotFound | plobsing: maybe I'm outdated with that. | 18:25 | |
| pmichaud | registers have been in keys for a long time... at least since 2004 | 18:26 | |
| unless they got taken out at some point | |||
| shockwave | This doesn't work: $P0 = subclass ['TestXXX' ; 'A'], ['{{PACKAGE}}' ; \t'{{class}}'] | ||
| dalek | TT #1329 closed by plobsing++: [PATCH] extend scope of t/codingstd/c_indent.t | ||
| shockwave | I guess for adding to non built-in class, one has to use a different method. | 18:27 | |
| pmichaud | subclass works for non-builtins | ||
| NotFound | shockwave: get the class object from the key, and the use it for subclassing. | 18:28 | |
| shockwave | Yeah. I was trying the other way first in case I could evade having to create an instance just for subclassing. | 18:29 | |
| Hopefully is lightweight. | |||
| NotFound | shockwave: get_class does not create an instance | 18:31 | |
| Coke | (not of the original class, anyway. it does instantitate a Class object, IIRC) | ||
|
18:31
theory joined,
shamu left
|
|||
| shockwave | In the docs, under Inheritance: docs.parrot.org/parrot/latest/html/...s.pod.html | 18:32 | |
| I has this: $P3 = subclass $P2, 'Bar' | |||
| Isn't $P2 an instance acquired using 'new' opcode? Whas is get_class()? | 18:33 | ||
|
18:33
chromatic joined
|
|||
| NotFound | shockwave: get_class gives you the class object give his name or key | 18:33 | |
| shockwave | NotFound: using 'new' ? | 18:34 | |
| NotFound | shockwave: using get_class | ||
| dalek | kudo/master: 5245dca | pmichaud++ | build/PARROT_REVISION: Bump PARROT_REVISION to Parrot 2.1.0. PARROT_REVISION frozen until |
18:36 | |
| NotFound | $P0 = get_class ['{{PACKAGE}}' ; '{{class}}'] | ||
| shockwave | I'm giving it a try. Editing some autogenerated code. | 18:38 | |
| NotFound. Thanks, it worked! :) | 18:40 | ||
| Coke | if I didn't dislike pir so much at this point, I would consider trying to update the book. =-) | 18:42 | |
| dukeleto | Coke: do you dislike PIR or IMCC or both? | 18:43 | |
| Coke | pir. I have no specific beef with IMCC - it's as impervious to me as PIRC is. | 18:44 | |
| darbelo comes back. | 18:45 | ||
| Coke | I mean, it beats PASM, that's for sure. =-) | ||
| dukeleto | Coke: i find PIR quite agreeable | ||
| Coke | depends on what you're doing. if you're writing a compiler, I vote for nqp-rx. | 18:46 | |
| dukeleto | other than svk tests, everything passes on darwin-ppc for the 2.1.0 tarball | ||
| Coke | (why are we even testing for svk anymore? the one user we had (chromatic) now uses git-svn.) | ||
| dukeleto | can we delete svk tests? | ||
| do they do anything other than waste peoples time? | 18:47 | ||
| particle | svk is no longer maintained | ||
| we should drop it asap | |||
| dukeleto | Coke: i totally agree. but some people seem to think PIR needs to be replaced | ||
| whiteknight thinks that | |||
| purl | thinks that is a good enough reason | ||
| whiteknight | PIR is lousy in all regards | ||
| dukeleto | particle: that is all I need to hear. can it just be deleted or does any dep cycle come into effect | 18:48 | |
| whiteknight: I know, you were the "some people" i was thinking of | |||
| particle | dukeleto: it's not part of our api | ||
| svk can be dropped forthwith | |||
| dukeleto | particle: good. I just like to ask and be sure. | ||
| particle: svk is actually in a few parts of parrot. the tests but also some of the scripts in tools/dev | 18:49 | ||
| PerlJam | whiteknight: PIR is fine for human understanding :) | ||
| darbelo | Okay, as soon as an authorized party uploads the tarball I'll start with the announcements. | ||
| dukeleto | particle: you are saying that all svk-related tests can be removed? | ||
| whiteknight | dukeleto: there's a reason why most projects are written in NQP now. And there's a reason why IMCC is a disgusting mess | ||
| dukeleto | whiteknight: just to be sure, I think IMCC needs to be replaced, but I don't think PIR itself is so evil | 18:50 | |
| whiteknight | PerlJam: it is "fine" for humans, but it's not great. It's also not great in terms of parsablity | ||
| cotto_work | darbelo, I can do that. Where's the tarball? | ||
| darbelo | web.fi.uba.ar/~darbelo/parrot-2.1.0.tar.gz | 18:51 | |
| whiteknight | dukeleto: It's not the root of all evil, but it grew in a very organic and disorganized fashion, subscribed to no particular design methodology, and doesn't excel in any area | ||
| particle | dukeleto: i suggest you create a branch for svk removal, send a list mail giving 3 days for comment on why it shouldn't be ripped out, start working, get warnocked, and rip it out | ||
| dukeleto | whiteknight: i read your blog posts on it and agree with much of what you said, but I think PIR can be improved/fixed | ||
| darbelo | whiteknight: You can apply that description to about a third of the codebase. | ||
| dukeleto | particle: ok | ||
| Coke | dukeleto: I don't think it needs to be /replaced/ no. It's fine for machines to target, or for smaller stuff. (i'd never recommend anyone use PASM for writing, just reading.) | ||
| whiteknight | dukeleto: first thing is to ask what the end-goal of the fixes are? What do we hope to gain by fixing it? | 18:52 | |
| Coke | after years of writing it, though, I'm very very very glad I have another alternative in nqp-rx. | ||
| whiteknight | To make it easier to parse, use PASM instead. To make it better for programmers, use NQP instead | ||
| cotto_work | darbelo, md5sum 9d3fb336868c8a66216d7d7e50e8b3b9 look good? | ||
| Coke | oooh, the gmake extensions I built into configure's makefile generator are still there. | ||
| (which get translated into the LCD makefile syntax when you build the makefile) | 18:53 | ||
| PerlJam | NQP still needs to drop down to PIR occasionally. I'd hate for that to end up being "drop down to PASM" instead. | ||
| er, humans writing NQP that is. | |||
| dalek | kudo/master: 1e7c195 | (Solomon Foster)++ | src/core/Num.pm: It should be !from-radians, not .from-radians. |
||
| kudo/master: 76aa9dd | (Solomon Foster)++ | src/core/Num.pm: Implementation for acotanh. |
|||
| kudo/master: 41b9fea | (Solomon Foster)++ | src/core/Num.pm: Implement acotan. |
|||
| kudo/master: d1cb483 | (Solomon Foster)++ | src/core/Num.pm: Port alpha's acosec to master. |
|||
| darbelo | cotto_work: Yep. | ||
| dalek | kudo/master: cc3f629 | (Solomon Foster)++ | src/core/Complex.pm: Reactive the remainder of the Complex trig functions that were turned off. |
||
| kudo/master: 30f5ef4 | (Solomon Foster)++ | src/core/Complex.pm: Reactive Complex.asin again. |
|||
| cotto_work | It's uploaded. It usually takes a few minutes to get to all the mirrors. | 18:54 | |
| Do you want to get your ssh key on that machine? | |||
| Coke | cotto_work: yes. =-) | 18:55 | |
| can I ping you on that when I get home and have access to my desktop? | |||
| cotto_work | sure | ||
| Coke | ok. rm_cflags branch now supports @foo?bar@ substitution in makefiles; that should make it possible to conditionalize the warnings per-file. | 18:57 | |
| so we can have @ccwarn@, and also @ccwarn?src/string/api.c@ | 18:58 | ||
| (eventually won't matter once we generate all these rules at config time, but this will help during the xition. | |||
| cotto_work | #ps in 91 | 18:59 | |
| dukeleto | whiteknight: i mostly want to fix IMCC, i am not so sure how to fix PIR | ||
| whiteknight | dukeleto: that's exactly the point though, PIR isn't worth fixing since there are better alternatives | 19:00 | |
| write stuff in NQP now. NQP and PCT and other code generators should produce PASM or (gasp!) PBC directly | 19:01 | ||
| dalek | rrot: r44035 | coke++ | branches/rm_cflags (2 files): Allow @foo?bar@ replacement when generating makefiles. |
||
| Coke | dukeleto: is it worth fixing IMCC, given PIRC? | ||
| dukeleto | whiteknight: i don't quite follow you. NQP is written in PIR. So you want to rewrite NQP in PASM? | ||
| Coke: I meant to say "replace IMCC with a working PIRC" | 19:02 | ||
| Coke | dukeleto: if think th epreference there would be to generate PBC. | ||
| whiteknight | dukeleto: PIR can stay around. IMCC can stay around. We can turn IMCC into a standalone program that converts PIR->PBC | ||
| NQP can stay as it is, as one of the few programs that use PIUR | |||
| PIR | |||
| Coke | dukeleto: ok. I have a patch that will let you set a C define during Config. you should totally take that and use it to switch whether we're using IMCC or PIRC. | ||
| whiteknight | all new work can be NQP | ||
| dukeleto | whiteknight: that is where i slightly disagree. IMCC needs to be put down | 19:03 | |
| dukeleto has to go to a meating | |||
| PerlJam | whiteknight: and for those bits of NQP where the programmer needs to "talk to the metal" they would use what? | ||
| whiteknight | dukeleto: so then kill IMCC in a fire, replace with PIRC, make PIRC a stand-alone PIR->PBC converter, etc | ||
| PerlJam: NQP has the ability to write all Parrot ops that I have seen | |||
| PerlJam: and in the rare event that somebody needs PIR, we will have a compiler for it (IMCC and/or PIRC) | 19:04 | ||
| NotFound | whiteknight: Winxed is such rare event, | ||
| plobsing | whiteknight: a good feature of PIR and PASM is they aren't so vulnerable to PBC_COMPAT bumps. I don't want to have to recompile everything all the time. | 19:05 | |
| whiteknight | but that's like asking "shouldn't everything be written in ASM just because some people need ASM to 'talk to the metal'?" | ||
| plobsing: that's a good point, but NQP would be even more divorced from PBC_COMPAT changes | |||
| and in any case, we need a more robust PBC system | |||
| something that is more tolerant of changes | |||
| plobsing holds breath, turns blue, and passes out waiting for that to happen | 19:06 | ||
| Coke | whiteknight: if you're generating PBC, no, it's more closely tied to PBC_COMPAT. | 19:07 | |
| (generating -and saving- PBC) | |||
| whiteknight | Coke: in that case, only the PBC code generator is tied to it | ||
| as opposed to ALL PIR code tied to it now | |||
| NotFound | I don't think that imcc, pirc, or whatever name must be a stand-alone program. We have load_language, compreg and all such nice things. | ||
| Coke | ... all pir is not currently tied to PBC COMPAT. | ||
| i can rerun my .pir and it doesn't care if pbc_compat changed. | |||
| whiteknight | Coke: what PBC_COMPAT changes are you talking about, exactly? | 19:08 | |
| Coke | I cannot rerun my .pbc ; if you're talking about having nqp generate pbc instead of pir (and cache it), then that is a problem. | ||
| whiteknight: any time pbc_compat changes, all PBCS must be recompiled. | |||
| whiteknight | because for most cases of a direct NQP->PIR translator, PBC_COMPAT changes won't break it either | ||
| Coke: so we won't write our code directly in PBC | |||
| we'll use something higher-level, like, say, NQP | 19:09 | ||
| dukeleto is back | |||
| whiteknight | most PBC_COMPAT changes involve a change in OPS or PMC numbering, and those numbers can be determined by any code generator | 19:10 | |
| NotFound | whiteknight: I don't want to write pir by hand, but I want to write pir code generators. | ||
| whiteknight | NotFound: So you want to write a generator that produces middle-level code that's slow to parse and compile? | ||
| NotFound: if you're writing a code generator, generate PASM directly | 19:11 | ||
| or, and we're developing these tools now, create your own PBC | |||
| NotFound | whiteknight: I can, but I don't want to be forced to. | ||
| dukeleto | whiteknight: i agree that if you are generating code, might as well generate PASM rather than PIR | 19:12 | |
| whiteknight | NotFound: that's cool too. And like I said: we'll keep around IMCC/PIRC as a standalone PIR->PBC compiler | ||
| NotFound: so you can generate whatever you want, and call the next compiler in line to continue the process | |||
| Winxed produces PIR, IMCC compiles PIR->PBC, Parrot runs PBC | 19:13 | ||
| that's fine too | |||
| Coke | huh. where is ccwarn actually set? | ||
| (in config) | |||
| whiteknight | dukeleto: considering that there tends to be a direct relationship between lines of PIR and snippets of PASM, it's not hard to update existing code translators | ||
| PerlJam | whiteknight: where does lorito live? | 19:14 | |
| whiteknight | PerlJam: eventually everything will be written in Lorito. PIR will be a macro level over Lorito, PASM will be a macro level over Lorito, etc | 19:15 | |
| PerlJam: so no changes | |||
| or, no architectural ones | |||
| PerlJam | gotcha | ||
| Coke | AHAHAHAHAHAH. | 19:16 | |
| @ccwarn@ is never set. | |||
| plobsing | whiteknight: I saw your 'systemp' language at github. how does that factor into all of this? | ||
| Coke | but it's buried in the set inside CFLAGS, so you'd never notice. | ||
| frikkin' awesome. | 19:17 | ||
| whiteknight | plobsing: that was just a test, I think I'm going to abandon it | ||
| plobsing: I wasn't able to produce a consistent grammar for it internally that would be an improvement over anything we already have | |||
| dalek | rrot: r44036 | whiteknight++ | branches/pmc_func_cleanup (16 files): finish the bulk of the conversions, parrot builds |
19:18 | |
| darbelo | Release announced! | ||
| plobsing | shoot! I was hoping for an HLL where I didn't have to fight with the parser over op selection. | ||
| whiteknight | plobsing: if you want to collaborate and make it a reality, that would be cool | 19:19 | |
| I keep hoping Austin's Close language will mature soon | |||
| plobsing | Yeah, that looks good too, but from what I can tell, is a little more divorced from the guts of parrot. | 19:22 | |
| NotFound | plobsing: you can take a look at winxed. | ||
| PerlJam | darbelo++ | 19:25 | |
| cotto_work | It's a little odd that the release announcement doesn't have a link to download the release. | ||
| darbelo | It point to parrot.org/download | 19:26 | |
| PerlJam | darbelo: not announced on parrot.org | 19:27 | |
| dukeleto | darbelo: you gonna write a release post on parrot.org ? | ||
| darbelo | I did. I'm seeing it now on the parrot.org front page. | 19:28 | |
| Coke | darbelo: there is no link in the email that just went to parrot-dev | ||
| PerlJam | darbelo: weird. | ||
| Coke | PerlJam: it's there; referesh? | ||
| refresH/ | |||
| whiteknight | what's the release name? | ||
| Coke | F5 | ||
| darbelo | whiteknight: "As | 19:29 | |
| Scheduled." | |||
| PerlJam | I've refreshed quite a bit I can tell you. I still only see the 2.0.0 release announcement. | ||
| moderator | Parrot 2.1.0 "As Scheduled" Released! | 19:29 | |
| Coke | the links work on the website, of course; I think you just cut and pasted the rendered HTML into text to get the email announcement, which is slightly borked. | 19:29 | |
| www.parrot.org/news/2010/Parrot-2.1.0 | |||
| I see it even if I log out. | 19:30 | ||
| (so it's not that I'm special) | |||
| ps? | |||
| purl | ps is postscript or process status or see "parrotsketch" or non-vector?! or annoying. | ||
| Coke | parrotsketch? | ||
| purl | i guess parrotsketch is a status meeting for parrot core committers held every Tuesday at 18:30 UTC in #parrotsketch | ||
| PerlJam | maybe I'm special in a bad way | ||
|
19:30
bacek joined
|
|||
| PerlJam | :) | 19:30 | |
| Coke | that's wrong, innit? | ||
| it's at 20:30 now, right? | |||
| bacek yawning | 19:31 | ||
| 6:30 AM | |||
| Coke | bacek: UTC, doofus. :P | ||
|
19:31
bacek joined
|
|||
| Coke | bacek: UTC, doofus. :P | 19:31 | |
| particle | time? | ||
| purl | i think time is 19:31:02 2010 and (did you mean "clock"?) or flowing like a river or the fire in which we burn | ||
| particle | err | ||
| clock? | |||
| purl | particle: LAX: Tue 11:31am PST / CHI: Tue 1:31pm CST / NYC: Tue 2:31pm EST / LON: Tue 7:31pm GMT / BER: Tue 8:31pm CET / IND: Wed 1:01am IST / TOK: Wed 4:31am JST / SYD: Wed 6:31am EST / | ||
| chromatic | KAPOW | 19:32 | |
| wagle | zow? | ||
| darn | |||
| Coke | yay. CFEclipse has adopted a regular (though odd) release schedule. | 19:33 | |
| dukeleto | darbelo: developer download link on parrot.org needs updating | ||
| Coke | www.parrot.org/download ? | 19:34 | |
| dalek | rrot: r44037 | coke++ | branches/rm_cflags/config/auto/warnings.pm: Turns out @ccwarn@, though referenced, was not defined for the common gcc case. Change this, so we can override it. |
19:35 | |
| darbelo | dukeleto: done. | ||
| purl | dalek: that doesn't look right | ||
| rrot: r44038 | chromatic++ | trunk/src/call/args.c: [pcc] Replaced VTABLE access to number of args/params with macro use. |
|||
| rrot: r44039 | chromatic++ | trunk/src/gc/alloc_resources.c: [GC] Extracted the helper function free_memory_pool() from Coverity (CID #438 and #439) and was overly cute anyway. No functional changes. |
|||
| purl | changes is part of the communication in a release, and should involve actual human thought | ||
| rrot: r44040 | chromatic++ | trunk/src/pmc/string.pmc: [PMC] Replaced some uses of get_string VTABLE internally with direct access to modest benchmark improvement for Rakudo. |
|||
| rrot: r44041 | chromatic++ | trunk/src/string/api.c: [str] Simplified Parrot_str_concat() to avoid creating more STRING headers than It's less code, anyhow. |
|||
| darbelo | ... or not. The redirect isn't getting updated. | 19:36 | |
| PerlJam | There has got to be a cache of some sort between me and parrot.org. | 19:37 | |
| darbelo | And now it is. | ||
| PerlJam | the home page *just* updated (I've been continually refreshing) | ||
| Coke | chromatic: was r44040 originally doing an explicit copy instead of just relying on COW? | ||
| (why do we even HAVE Parrot_str_copy if we have COW strings?) | 19:38 | ||
| darbelo | For giving strings to outsiders? | ||
| dalek | website: darbelo++ | Parrot 2.1.0 Released! | 19:39 | |
| website: www.parrot.org/news/2010/Parrot-2.1.0 | |||
| PerlJam | But 2.0.0 is still at the top of www.parrot.org/category/news/news | ||
| dukeleto hears a parrot string say "moo" | |||
| whiteknight | can we merge tickets 784, 562, and 1040 if they're all the same issue? | 19:40 | |
|
19:40
lucian_ joined
|
|||
| whiteknight | And then, I hope, we can work on a fix for it | 19:40 | |
| Coke | aside from the fact that trac doesn't really support merging tickets, yes. | ||
| dukeleto | darbelo: dev release link still points to 1.9.0 | ||
| Coke | trac-- | ||
| I would pick one to be the master, and put a prefix in the description on the other two tickets to point to the master. | 19:41 | ||
|
19:41
lucian joined
|
|||
| whiteknight | Coke: gotcha | 19:41 | |
| Coke | (and put prefix the master with a pointer to dups) | ||
| darbelo | dukeleto: I land at ftp://ftp.parrot.org/pub/parrot/releases/devel/2.1.0/ when I follow it. | ||
| PerlJam | dukeleto: and the supported release still points to 2.0.0 for me too | ||
| Coke | PerlJam: that IS the supported release. :P | ||
| dukeleto | particle: can we remove SVK instructions from parrot.org/download as well? | ||
| darbelo | PerlJam: That's as it should be. | ||
| Coke | dukeleto: yes. | ||
| PerlJam | oh, right. | ||
| PerlJam was looking for things to be wrong because the home page hadn't updated | 19:42 | ||
| chromatic | Coke, Parrot_str_copy() *does* COW. | ||
| PerlJam | For instance ... a snapshot just taken ... feather.perl6.nl/~duff/parrot.org.png | 19:43 | |
| dukeleto | ok, i was seeing a cached copy. parrot.org looks correct now | ||
| dalek | nxed: r405 | julian.notfound++ | trunk/winxedst1.winxed: minor classes and functions renaming |
19:44 | |
| dukeleto | news of parrot 2.1.0 is now sliding down the tubes of the socialwebs | 19:47 | |
| whiteknight | w00t | 19:48 | |
| darbelo++ | |||
| mikehh | All tests PASS (pre/post-config, make corevm/make coretest, smoke (#32232), fulltest) at r44037 - Ubuntu 9.10 amd64 (gcc with --optimize) | 19:49 | |
| darbelo | PerlJam: I think I fixed it now. Can you check? | ||
|
19:49
lucian_ joined
|
|||
| PerlJam | darbelo: you mean for News? No, it's still got 2.0.0 at the top | 19:50 | |
| dukeleto | PerlJam: you are seeing cache | 19:51 | |
| PerlJam wonders where this cache lives. | |||
| darbelo wonders where PerlJam lives. | 19:52 | ||
| dukeleto | PerlJam: restart your local power company and then reboot your computer. The cache should then be fixed. | 19:53 | |
| PerlJam | Well, I've opened this page in several different browsers and tried to force reloads, so that makes me tend to think that the cache isn't on my local system | ||
| bacek | PerlJam, it says 2.1.0 in my browser. | 19:54 | |
| PerlJam | (unless all of konquerer, chrome, firefox, epiphany, etc. share the same cache) | ||
| bacek | "Transparent" ISP cache? | 19:55 | |
| PerlJam | I haven't knowingly installed caching software either. | ||
| bacek: could be though that would be weird (I'm on a university campus) | |||
|
19:55
KingOfKarlsruhe joined
|
|||
| whiteknight | darbelo: still intending to rename ImageIO? | 19:56 | |
| dalek | kapo: a6b4d2d | austin++ | (8 files): Started bootstrap tests for UnitTest classes. |
19:57 | |
| plobsing | darbelo: I have done some cleanups on ImageIO pmc in tt362 branch | ||
| darbelo | plobsing: Ohh, I missed that. Is it recent? | ||
| plobsing | 2 days old. | ||
| it adds ImageIOSize pmc to satisfy TT362 | 19:58 | ||
| darbelo | I'll have to look that one up. I don't recall it's contents. | ||
| PerlJam | I just conferred with some colleagues in another build (still on the same campus) they too see 2.0.0 rather than 2.1.0 at www.parrot.org/category/news/news | ||
| nopaste | "chromatic" at 173.50.130.127 pasted "Make the fast core truly the default (fails annotation tests)" (69 lines) at nopaste.snit.ch/19657 | ||
| bacek | hmm... | 19:59 | |
| chromatic | There's another 4% performance improvement, if we can fix the tests. | ||
| bacek | On /news/news still saying 2.0 for me | ||
| darbelo | PerlJam: Maybe you campus runs a cache or proxy? | ||
| PerlJam | darbelo: bacek isn't on my campus :) | ||
| NotFound | That's funny, I see 2.0 while unlogged, after logging 2.1 | 20:00 | |
| PerlJam | NotFound: ah, a clue. I'm trying all of this without being logged in. | ||
| PerlJam logs in to see if there's a difference. | |||
| NotFound | Afetr logout, keeps 2.1 | ||
| PerlJam | yep, shows 2.1.0 when I'm logged in. | 20:01 | |
| I'm going to blame drupal at this point :-) | |||
| NotFound | Maybe some problem with the server clock confuses the caches? | ||
| PerlJam | nah, I think it's just the drupal is broken in some subtle way. | 20:02 | |
| wagle | dukeleto: i didnt get find_name to generate an error or exception. i looked at the source and saw that Parrot_find_name_op() didnt even try to throw an exception, so I gave up and deleted the code. The documentation says that it will pay attention to the errorson() flag for unbound vars returning null (default is to throw exception). But there's a billion different ways to fetch a variable binding, and find_name is just one of | ||
| them. I found NOTHING paying attention to the errorson() flag. What should I do to help? | |||
| PerlJam | I'm going to stick with that for now :) | ||
| bubaflub | (i see 2.1.0 on front page, 2.0.0 on news/news) | 20:03 | |
| i see what happened there | |||
| perhaps it's because it's tagged with "news" (lower-case n) and not "News" (upper-case N) | |||
| darbelo blames drupal too. | 20:04 | ||
| bubaflub | yep, the release notice for 1.7.0 is on the front page tagged with "news" and is not in news/news | ||
| dalek | kudo/master: 61f3368 | jonathan++ | src/binder/bind.c: Cache some type IDs and a commonly used string to win a little performance in the binder (few percent). |
||
| darbelo | bubaflub: There's two news tags, some release are missing one. I think I put both on 2.1 | 20:05 | |
| bubaflub | darbelo: that should solve the Hardy Boys and the case of the missing news item | ||
| i'm heading home from work; catch ya tomorrow #parrot people | 20:07 | ||
| Coke | chromatic++ # making the deprecated vultures back off. (yes, that's me.) | ||
| PerlJam | interesting ... when you add a trailing / it shows 2.1.0, without the /, you get 2.0.0 | ||
| Coke | the article is marked as "published" and "promoted to front page". | 20:08 | |
| PerlJam | (while not logged in) | ||
| Coke | on ... the hostname? | ||
| er, "/" (eaten by irssi) | |||
| dalek | rrot: r44042 | chromatic++ | trunk (4 files): [src] Changed the (static, thus no deprecation necessary) parseflags() to use us switch to the fast core when we get annotations working properly there. |
||
|
20:08
ZeroForce joined
|
|||
| darbelo | That's bizzare. | ||
| Coke | for me, "..org" -> "..org/" automagically. | ||
| PerlJam | Coke: www.parrot.org/category/news/news vs. www.parrot.org/category/news/news/ | 20:09 | |
| Coke | ... don't check news, check the home page? | ||
| www.parrot.org/ | |||
| PerlJam | Coke: homepage appears fine now. | 20:10 | |
| Coke | It is also in the News & Releases categories. | ||
| purl | okay, Coke. | ||
| Coke | [:facepalm:] | ||
| purl, are you rainman? | |||
| purl | coke: i don't know | ||
| Coke | PerlJam: at a guess, something on your end was caching news | 20:11 | |
| (but not news/) | |||
| PerlJam | Coke: only if it's campus-wide (possible, but I don't think so) | ||
|
20:11
whiteknight joined
|
|||
| PerlJam still blames drupal | 20:11 | ||
| Coke | it is possible for them to have the cache and proxy in place and have you not even know it. | 20:12 | |
| PerlJam | it's the most likely culprit from where I sit | ||
| whiteknight | chromatic: what were the performance results of the GC threshold? | ||
| particle | could be varnish | ||
| Coke | it is also possible that drupal is caching as well. | ||
| purl | okay, Coke. | ||
| Coke | DIE PURL DIE | ||
| purl | NYOOMMMMM SPLAT | ||
| PerlJam | I *know* drupal does various forms of caching. | ||
| I also know drupal is quirky | |||
| Coke | ... in which case, stop complaining about it. =-) | ||
| mikehh | All tests PASS (pre/post-config, make corevm/make coretest, smoke (#32233), fulltest) at r44041 - Ubuntu 9.10 amd64 (g++ with --optimize) | 20:13 | |
| Coke | (you could also try passing in query params to see if that changes it next time.) | ||
| PerlJam | an admin person can just turn the caching off though | ||
| IIRC drupal has 3 levels of caching (without any additional modules): none, "normal", and aggressive. | 20:15 | ||
| Coke | PerlJam: It's set to normal, min lifetime: 30m. | 20:17 | |
| it's probably the 30m that killed you | 20:18 | ||
| I just dropped it to 10m. | |||
| er... no. I just TRIED. 4 times. | |||
| it's still 30m. | |||
| ... | |||
| ... maybe it's cached. | |||
| PerlJam | heh | 20:19 | |
| chromatic | whiteknight, ~13% improvement on the PIR fib benchmark, ~4% on the NQP benchmark. | ||
| dukeleto said he could give some better numbers. | |||
| whiteknight | wowers | ||
| chromatic | Exactly. | 20:20 | |
|
20:20
bacek_ joined
|
|||
| whiteknight | Tene: can you commit that patch to a branch? | 20:22 | |
|
20:22
joeri joined
|
|||
| whiteknight | Tene: actually, nothing stopping you. Put it in trunk if it's ready. The release is out | 20:23 | |
| cotto_work | #ps in 6 | 20:24 | |
| 5 | |||
| Tene | whiteknight: I have trouble with svn branches. Most times I've tried svn branches in the past, I've screwed something up and needed to have someone else clean up after me. | 20:26 | |
| dalek | kudo/master: 74bddc2 | pmichaud++ | src/Perl6/Grammar.pm: Correct misspelled supersede (bkeeler++). |
20:27 | |
| kudo/master: 9267d1e | pmichaud++ | src/binder/bind.c: Merge branch 'master' of git@github.com:rakudo/rakudo |
|||
| whiteknight | Tene yeah, they can be a pain. | ||
| cotto_work | bacek, is your #ps report complete? It looks like it might have skipped some lines. | 20:28 | |
| bacek | cotto_work, I probably just forgot about what I have done :) | ||
| Tene | aka q1q | 20:29 | |
| Coke | msg wagle you have to .include the file that defines that constant. | ||
| purl | Message for wagle stored. | ||
| whiteknight | damnit he's a magical coding robot, not a magical remembering robot | ||
| bacek | whiteknight, lol :) | 20:30 | |
| whiteknight | :) | ||
| Coke | Tene: branches in svn-<current> are much better. | ||
| darbelo | ps in 0 | 20:31 | |
| Coke | (as long as you started the branch in svn-<current>) | ||
| Util | All tests PASS (fulltest) at r44041 - Ubuntu 9.10 x86 (gcc 4.4.1) | 20:32 | |
| darbelo ponders qiq | 20:33 | ||
| plobsing | qiq? | 20:34 | |
| darbelo | like q1q but imaginary. | ||
| plobsing | purl, no clever quip for that one? | ||
| purl | plobsing: no idea | ||
| Tene | darbelo: miswin | ||
| wagle | Coke thats errors.pasm | 20:35 | |
|
20:38
allison joined
|
|||
| Coke | qiqqity. | 20:38 | |
| q1qq1ty? | |||
|
20:38
jsut_ joined
|
|||
| allison | Ah, inflight wireless internet, lovely. | 20:38 | |
| Coke | mmmhehehe. | 20:39 | |
| welcome to #parrot, can I get you a beverage? | |||
| allison | :) | ||
| cotto_work | nice | ||
| dalek | rrot: r44043 | whiteknight++ | branches/pmc_func_cleanup (2 files): last two changes that I can find in the core repo. Parrot builds and passes all coretests |
20:41 | |
| rrot: r44044 | Util++ | branches/autoprops: Removing rusted branch; will re-branch when I work on TT#994 again. |
|||
| Util | whiteknight: TT #768 was a spam ticket | 20:43 | |
| dalek | kudo/master: 9df5b4a | jonathan++ | t/spectest.data: Turn S06-multi/type-based.t and S06-multi/proto.t back on. |
20:45 | |
| kudo/master: 8d9598e | jonathan++ | src/ (3 files): Various corrections to handling of where clauses and type captures, which was the main issue we faced in getting us doing most of S06-multi/type-based.t again. |
|||
| Coke | tene: durak.org/sean/pubs/software/versio...rging.html , look for "svn merge ^/trunk" | 20:46 | |
| moderator | Parrot 2.1.0 "As Scheduled" Released! | Tasks: PCC deprecations branch, HLL subclassing and MMD branch | 20:48 | |
|
cognominal joined
|
|||
| Coke wonders why tools/build/cc_flags.pl was modified in the vtable_massacre branch. odd. | 20:58 | ||
| dalek | rrot: r44045 | chromatic++ | branches/fix_hll_mmd: Branch to fix HLL subclassing and MMD |
||
| Coke smacks dukeleto for his late, mid-stream report! | 20:59 | ||
| Tene | allison: the main driver here is cardinal, which has a detailed exceptions model that I'm really wanting to support, as well as class-based filters. | 21:02 | |
| dalek | kudo/master: 5c09ebb | jonathan++ | src/core/Bool.pm: Implement Bool.ACCEPTS. |
||
| kudo/master: cad6d12 | jonathan++ | t/spectest.data: Turn S03-smartmatch/any-bool.t back on. |
|||
| allison | Tene: that makes sense, so you you're looking for the best way to hook into the Parrot exceptions | ||
| Tene: in cardinal, are they a full exception hierarchy? as in, actually subclasses inheriting from a base class? | 21:03 | ||
| Tene | allison: Yes. | ||
| Well, in ruby they are. | |||
| whiteknight | how to regenerate the test PBCs? | ||
| Tene | allison: pdd23 also describes a parrot type hierarchy. | ||
| allison | Tene: it seems to make sense to duplicate the Ruby hierarchy as closely as possible | 21:04 | |
| Tene: yes, we defined it as a parrot type hierarchy, but in practice it turned out to be more heavyweight than we need in core parrot | |||
| Tene: but, we need to allow languages to define full exception hierarchies | |||
| Tene | we also need to support things like "catch any IO exceptions, from any language" | 21:05 | |
| allison | Tene: so, if you encounter any difficulties doing that with Ruby, it shows we need some more core work | ||
| Tene: (it should be possible now, but I suspect it may be checking "isa" Exception in a few places) | |||
| Tene | allison: Yes, that's right. That's what I've done locally. | ||
| Well, it's not even doing "isa", it's checking the base_type, so not even subclasses of Exception work in current Parrot. | 21:06 | ||
| allison | Tene: even worse :) | ||
| Tene | I've been trying to work out if that should be 'isa' or 'does', and it looks like it's the latter. | ||
| allison | Tene: a switch to 'does exception' should work fine, double-checking that the core Exception type actually declares 'provides exception' | 21:07 | |
| Tene | I need to confirm that I can reimplement a class from PIR that does 'exception' and works. | ||
| it currently doesn't, but I added it for testing. | |||
| allison | I'm not sure we have a PIR way of declaring 'provides' yet, but we should | ||
| Tene | I'll figure something out. | 21:08 | |
| allison | Tene: aye | 21:09 | |
| Tene: when you do, let's give the exceptions PDD a quick once-over to make sure it matches any revisions in the design | |||
| Tene | Right. | ||
| bacek | whiteknight, sh tools/dev/mk_native_pbc --noconf | 21:11 | |
| whiteknight | thanks! | 21:12 | |
| dalek | rrot: r44046 | coke++ | failed to fetch changeset: Merge latest changes from trunk |
21:15 | |
| rrot: r44047 | whiteknight++ | trunk (88 files): merge the op_pmcs branch. This bumps PBC_COMPAT, which is going to require a realclean after updating. Also, I haven't regenerated the test PBCs yet, so the packfile tests are failing |
|||
| rrot: r44048 | whiteknight++ | branches/op_pmcs: delete this branch, merged to trunk already |
|||
| rrot: r44049 | allison++ | branches/pcc_reorder_results: Creating branch for PCC deprecation item to reorder set_returns and get_results. |
|||
| Coke | gah. I just updated my branch to the latest merge and now there's another one? =-) | 21:21 | |
| chromatic | No kidding. | ||
| Coke | good problem to have. | ||
| chromatic | At least we can do `git rebase`... wait, I'll come in again. | 21:22 | |
| whiteknight | it's release day, the branches come crashing in | ||
| Coke | chromatic: LINE! | ||
| chromatic | These pretzels are MAKING me thirsty. | ||
| Tene | git rebase chromatic #parrot | ||
| chromatic | These branches coming in are making me <<<thirsty===crashing>>>. | 21:23 | |
| Tene | OH SHIT A MERGE CONFLICT | ||
| GET THE SLEDGEHAMMER | |||
| Coke | ok. is trunk safe now after bacek's fixup? | 21:25 | |
| chromatic | Should be. | 21:26 | |
| bacek | Coke make test is still running on my box | ||
| Coke | chromatic: rakudo doesn't need breathing room, they're using the 2.0 release. | ||
| er, 2.1 | |||
| dalek | kudo/master: 0161485 | (Solomon Foster)++ | src/core/Any-num.pm: Remove fossil "is export" from Any.sec. |
21:27 | |
| kudo/master: 40e481e | (Solomon Foster)++ | src/core/Num.pm: Fix the definition of cosech. |
|||
| chromatic | There's a difference between the "I will die if I don't eat this week!" need and the "I'm going to go crazy with all of these little details, can you come back later?" need. | 21:28 | |
| Coke | I am very happy that 'svn merge ^/trunk' seems to be dtrt. I hope it works on mergeback as smoothly. | ||
|
21:28
hercynium joined
|
|||
| Coke | I do wonder why docs/book/* seems to be getting updated all the time. | 21:30 | |
| chromatic | SVN merge properties. | 21:31 | |
| Coke | yes, but shouldn't I have already gotten all of those? | ||
| or shouldn't I get them on EVERY file? | |||
| ah well. I'll close my eyes and think of England. | |||
| dalek | rrot: r44050 | bacek++ | trunk/t/native_pbc (4 files): Rebuild native PBCs |
21:33 | |
| chromatic | I *think* it's only files that already had merge properties thanks to 1.5 merge tracking, but the cross between an elephant and a rhinoceros. | ||
| Coke | 16:33 < Coke> chromatic: I bet my problem is that some people aren't using the "new" svn merge. | 21:36 | |
| 16:34 < darbelo> Coke: git-svn users for sure don't. | |||
| 16:34 < Coke> e.g.: ports/debian/parrot.install.in | |||
| 16:34 < Coke> just added : | |||
| 16:34 < Coke> /branches/op_pmcs/ports/debian/parrot.install.in:43820-44044 | |||
| 16:34 < Coke> ... but that branch didn't touch that file, did it? | |||
| perhaps if we get down to NO branches, we can kill all the merge properties and start over. =-) | |||
| chromatic | I know Allison had branched for the book with SVN 1.5. | ||
| allison | a stock SVN merge doesn't leave merge traces through the tree, it only shows modified files | 21:37 | |
| I haven't figured out what tool is leaving the traces, but it is annoying | |||
| merge properties are pretty useless | 21:38 | ||
| Coke | merge properites are how svn-latest does it, no? | ||
| Since you no longer have to merge specific revision numbers. | 21:39 | ||
| allison | Coke: AFAIK, yes | ||
| Coke | ah. you mean, "something else is adding them and screwing it up." I'm thinking an old version of svn. | 21:40 | |
| ... like the one used by git-svn? =-) | |||
| bacek | Coke, trunk should be clean at r44052 | ||
| chromatic | I doubt git-svn would use SVN properties. Git has a much better way of tracking nodes. | 21:41 | |
| Coke | ah well. as long as it works (even if it's really noisy), that's all I care about for now. | ||
| allison | Coke: indeed | 21:42 | |
|
21:42
bluescreen joined
|
|||
| Coke | ok. merging trunk into my branch, I get a ton of packfile errors. | 21:42 | |
| (even after a realclean.) | 21:43 | ||
| there goes 10m of my life. | |||
| should those op* pmcs be static or dynamic? | |||
| chromatic | You weren't doing anything with those ten minutes anyway, just sitting around humming the theme song to Alf. | ||
| particle | here, lucky lucky lucky... | 21:44 | |
| Coke | ... gah. no, that's the NEXT ten minutes. | ||
| (you 9*&#$#) | |||
| ah, it's bacek's fault! | 21:45 | ||
| ;) | |||
| bacek | Coke NO WAY! | ||
| Coke | bacek - did you fix the pbcs wrongly the first time? | ||
| bacek | But I did fix them from second attempt :) | ||
| Coke | ok. trying the merge again... | 21:46 | |
| bacek | C'mon! Merging is easy! :-P | 21:49 | |
| Coke | just slow. | ||
| dalek | rrot: r44051 | bacek++ | trunk/src/pmc (2 files): Unconsting strings in OpLib/OpCode. Fix c++ build |
||
| rrot: r44052 | bacek++ | trunk/t/native_pbc (4 files): Rebuild native PBCs (again, after realclean...) |
|||
| Coke | I am now getting tree conflicts on every merge, because of the wierd mergeinfo on a file I deleted. | ||
| thankfully that's easy to fix. =-) | 21:50 | ||
| dalek | kudo/master: 3030f55 | jonathan++ | src/Perl6/Actions.pm: Make sure we don't crash and burn if somebody writes double semicolon in their code! |
||
| kudo/master: a73f7b3 | jonathan++ | t/spectest.data: Turn S06-advanced_subroutine_features/return.t back on. |
|||
| darbelo | How can a nonexistant file causes a tree conflict with another nonexistan file? | 21:51 | |
| Coke | I deleted it. it's still alive on branch. | ||
| bacek | "svn - every conflict is possible!" | 21:52 | |
| Coke | so when branch is erroneously updated with mergeinfo, I am given the new mergeinfo. | ||
| (and then I throw it away. muahhaha.) | |||
| darbelo | Coke: Oh I misread. But the one I mentioned is still possible. | ||
| It happened to me. | |||
|
21:54
ruoso joined
21:57
brooksbp joined
|
|||
| dalek | nie: r101 | allisonrandal++ | trunk/README: Some updates to the main readme. |
21:57 | |
| Coke | ugh. 'ack' on feather is very old. | 22:00 | |
| Coke installs a frsh one locally. | |||
| Andy | that's why I always have ~/bin/ack | ||
| chromatic | I heard you had the source code to Ack tattooed on your own bad self. | 22:02 | |
| Coke | andy - iwbni betterthangrep.com/ linked to whatever you're using for issues. | ||
| github.com/petdance/ack/issues ? | 22:03 | ||
| Coke wishes that github.com/petdance/ack/issues#issue/88 was fixed. =-) | |||
| Andy | yes | ||
| Coke ponders forking and trying to make that work. | |||
| Andy | Not until 2.0 | ||
| Coke cries. | 22:04 | ||
| Andy | make a new filetype that is .mak | ||
| Coke | doesn't search Makefile, then, do it? | 22:05 | |
| (I could do --make --makefrag, I suppose, but at that point, easier to just abuse the shell.) | |||
| dalek | rrot: r44053 | coke++ | branches/rm_cflags (91 files): merge latest changes from trunk. (we need to figure out where all these wrong mergeinfo records are coming from) |
22:06 | |
| Andy | Coke: It will search whatever type it knows. | 22:11 | |
| So just creating a makefrag type, you get it searched automatically. | |||
| By default, ack searches all file types it understands. | |||
| dalek | nxed: r406 | julian.notfound++ | trunk/winxed.winxed: use the .pbc instead of the executables from the driver when stage > 0 |
22:12 | |
| kudo/master: 88f3c6e | jonathan++ | src/Perl6/Grammar.pm: Add a missing case of unspace. |
22:14 | ||
| kudo/master: 3603f51 | jonathan++ | src/builtins/Routine.pir: Add back reviewed assuming implementation. |
|||
| kudo/master: ff97a28 | jonathan++ | t/spectest.data: Turn two assuming tests back on. |
|||
| Coke | Andy: I want something that searches just .mak and Makefile | 22:17 | |
| (and .mk would be fine too) | 22:18 | ||
| Andy: hey, you're a "clean build" kind of guy. | |||
| We only support warnings (right now) on gcc. I am thinking that we should move config/auto/warnings.pm into config/auto/gcc.pm | 22:19 | ||
| (all compilers can twiddle with 'ccwarn' to their hearts content.) | |||
| darbelo | +1 | ||
| purl | 1 | ||
| Coke | Also, if there are any files known to hate a particular option for that compiler, it should go into config/auto/<compiler>.pm as an exception to the rule. | 22:20 | |
| Andy | OK | ||
| I haven't looked at any of that in forever. | |||
| Right now I'm dealing with the new tidy | |||
| Coke | ? | ||
| Andy | I have no opinion on your compiler options question. | 22:21 | |
| Coke | hokay. | 22:22 | |
| I'll just make it work and we can go from there. =-) | |||
|
22:22
Whiteknight joined
|
|||
| Coke | hurm. I ponder warnings-<compiler> instead.... except that involves messing with config steps, which is a pain point for me. original plan it is. | 22:23 | |
| dalek | nxed: r407 | julian.notfound++ | trunk/Makefile: fix and rearrange Makefile dependencies to avoid buliding most fakecutables when |
22:27 | |
| Coke wonders why the conf object doesn't have a printIfVerbose method. | 22:28 | ||
| (how much boilerplate would that save) | |||
| chromatic | This is Perl. Embrace the boilerplate. | 22:29 | |
| Coke | ... no? | ||
| chromatic | What, our "Hello, world!" is shorter than Java's. Clearly we win. | ||
| Coke | pick a name for that method. mine's too java-like. | 22:30 | |
| (and I'll open a ticket.) | |||
| NotFound | pfv | ||
| Or more meaningful: cry | 22:31 | ||
| darbelo | whine() | ||
| NotFound | Hey, what an idea: cry: same as say, but output to stderr X-) | 22:32 | |
| darbelo | NotFound++ | ||
| Coke goes for "debug" | |||
| darbelo boooos | 22:33 | ||
| NotFound | Coke: much less poetic | ||
| Coke | you may bikeshed the ticket. | ||
| KingOfKarlsruhe | hi, how can I read the integer representation of an character inside a string? (i am trying to save a string into an pmc "ResizableIntegerArray" in PIR) | ||
| Coke | but only if you write the patch that implements it. | ||
| KingOfKarlsruhe: $P1 = box $S0; $I0 = $SO | 22:34 | ||
| NotFound | KingOfKarlsruhe: a string iterator is a good way | ||
| KingOfKarlsruhe | thank you Coke | ||
| Coke | iterator for sting to int? seems like overkill. | ||
| (if the string is really a String, you can leave off the box.) | |||
| (and do $I0 = $P0) | |||
| I /think/ this works. testing. =-) | 22:35 | ||
| NotFound | Oh, I misread, I was thinking about character codes. | ||
| Coke | yup, seems to. | ||
| (note that ; isn't really a command separate in PIR, also) | |||
| dalek | TT #1452 created by coke++: add method debug to $conf object | 22:38 | |
| Coke ponders a wholesale removal of AUTHOR information. | 22:39 | ||
| dalek | kudo/master: 5594188 | pmichaud++ | src/core/Iterator.pm: Remove incorrect Iterator.Seq, improve Iterator.Str . |
22:40 | |
| kudo/master: 9d1d903 | pmichaud++ | src/core/Range.pm: When stringifying or numifying Range, just ask $.iterator directly |
|||
| kudo/master: 2bb2172 | pmichaud++ | src/core/Iterator.pm: Add a working version of Iterator.Seq . |
|||
| kudo/master: 04f3504 | pmichaud++ | src/ (10 files): Merge branch 'assign' \tsrc/binder/bind.c |
|||
| kudo/master: 33b1bf9 | pmichaud++ | (10 files): Merge branch 'master' of git@github.com:rakudo/rakudo |
|||
|
22:42
kid51 joined
|
|||
| Coke | kid51: you are welcome to steal TT#1452, as I may not get back there for a week or 3. | 22:42 | |
| dalek | nie: r102 | allisonrandal++ | trunk/Lib/test/bootstrap/lists.py: Add a test for 'del', already implemented. |
22:53 | |
| kudo/master: 72a8b74 | jonathan++ | src/ (4 files): Get us implementing prefix:<!> in terms of .Bool, plus add some missing .Bool methods. |
23:49 | ||