Camelia, the Perl 6 bug

IRC log for #parrot, 2011-09-03

Parrot | source cross referenced

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

All times shown according to UTC.

Time Nick Message
00:26 plobsing_ how about a happy medium: we currently use gettimeofday (which causes a syscall), but there are portable (POSIX) timers that don't use syscalls
00:26 plobsing_ strace shows that clock_gettime(CLOCK_MONOTONIC) doesn't syscall
00:26 plobsing_ *on linux
00:37 cotto_work If a small amount of inline assembly makes that kind of difference, I'll take it.  Pure C is preferable (and of course we need a fallback), but that's a really nice speed increase for a small cost.
00:39 plobsing_ I think we can get pure C, but we need to be more selective of what timing functions we use
00:40 cotto_work unsurprisingly, msvc doesn't like the branch
00:41 * cotto_work heads home.  plobsing_, please experiment.
00:42 dalek TT #2189 created by jkeenan++: t/library/yaml_tiny.t: new test failure
00:42 dalek TT #2189: http://trac.parrot.org/parrot/ticket/2189
00:54 whiteknight joined #parrot
01:01 cotto ~~
01:18 plobsing_ cotto: what do you recommend profiling the profiler on?
01:48 cotto plobsing_, my standard is valgrind, though that fell down gloriously earlier today
01:48 cotto nm.  I was using oofib.pir
01:48 cotto misread
05:23 fperrad joined #parrot
05:39 contingencyplan joined #parrot
06:08 JimmyZ joined #parrot
06:12 dalek parrot: 8b78a4f | cotto++ | api.yaml:
06:12 dalek parrot: fix api.yaml
06:12 dalek parrot: review: https://github.com/parrot/parrot/commit/8b78a4f3ad
06:26 dalek TT #2189 closed by cotto++: t/library/yaml_tiny.t: new test failure
06:26 dalek TT #2189: http://trac.parrot.org/parrot/ticket/2189
07:18 mj41 joined #parrot
08:06 dalek parrot/mls/sub-profiler: a8274ee | cotto++ | src/runcore/subprof.c:
08:06 dalek parrot/mls/sub-profiler: coding consistency nits
08:06 dalek parrot/mls/sub-profiler: review: https://github.com/parrot/parrot/commit/a8274ee2d8
08:32 cotto mls, when will be a good time to talk about the sub profiler?
08:45 dalek parrot/mls/sub-profiler: e4196da | cotto++ | / (2 files):
08:45 dalek parrot/mls/sub-profiler: various cleanups and some initial documentation
08:45 dalek parrot/mls/sub-profiler: review: https://github.com/parrot/parrot/commit/e4196da0c6
08:54 dalek parrot/mls/sub-profiler: 18d17cc | cotto++ | / (2 files):
08:54 dalek parrot/mls/sub-profiler: use typedefs to avoid some "struct" noise
08:54 dalek parrot/mls/sub-profiler: review: https://github.com/parrot/parrot/commit/18d17ccfca
09:00 nbrown joined #parrot
10:00 mj41 joined #parrot
11:06 woosley joined #parrot
11:33 whiteknight joined #parrot
11:35 whiteknight good morning, #parrot
11:41 dalek parrot: 633ac86 | Whiteknight++ | NEWS:
11:41 dalek parrot: Update NEWS for whiteknight/frontend_parrot2 merge. Probably needs better wording
11:41 dalek parrot: review: https://github.com/parrot/parrot/commit/633ac86535
12:02 whiteknight I had never really looked at this callback mess before
12:02 whiteknight and honestly: it's horrible
12:03 * JimmyZ wonders which callback
12:03 whiteknight src/interp/inter_cb.c
12:06 JimmyZ well,  I had a look at this one before, and there is a ticket for it.
12:09 JimmyZ http://trac.parrot.org/parrot/ticket/1991
12:11 zby_home joined #parrot
12:19 whiteknight I haven't seen that ticket before
12:20 whiteknight we don't just need to fix one op. We need to fix the whole system
12:20 whiteknight We probably need to add another routine to wrap user data in a better container, isntead of trying to stuff details
12:20 whiteknight into the prop hash
12:21 whiteknight something like $P1 = wrap_cb_data $P0
12:22 whiteknight msg plobsing when you have a minute, I want to run some ideas past you in the whiteknight/kill_threads branch about callbacks
12:22 aloha OK. I'll deliver the message.
12:35 ambs joined #parrot
12:36 Eclesia joined #parrot
12:36 Eclesia hi
12:36 JimmyZ whiteknight: I agree with you
12:37 dalek parrot/whiteknight/kill_threads: 32ae688 | Whiteknight++ | src/interp/inter_cb.c:
12:37 dalek parrot/whiteknight/kill_threads: UGLY HACK ALERT: The callback system needs an interp, so it can call vtables on the user_data pmc to get the interp. So, since it's early and I'm not thinking straight, store a global reference to a default interpreter to use to get the ball rolling. This fixes remaining test failures in t/pmc/nci.t, but makes me feel bad inside
12:37 dalek parrot/whiteknight/kill_threads: review: https://github.com/parrot/parrot/commit/32ae6883fe
12:37 whiteknight good morning, Eclesia
12:38 whiteknight JimmyZ: I have some ideas about it, but is going to require big redesign
12:39 JimmyZ whiteknight: I think the good things in parrot  are architecture and gmc
12:40 JimmyZ whiteknight: and most others are bad, which is needed [big] redesign
12:40 whiteknight :)
12:40 JimmyZ s/gmc/gms/
12:42 * JimmyZ would like to see them got redesigned one by one ;)
12:54 dodathome joined #parrot
12:55 Eclesia plobsing++ thanks for the exception stack fix
12:57 mj41 joined #parrot
13:06 Eclesia Question : how works the set_global / get_global . I can't acces my pmc when they are in different namespaces.  here is an example :
13:06 nopaste "Eclesia" at 192.168.1.3 pasted "get_global from outer namespace" (48 lines) at http://nopaste.snit.ch/77638
13:07 Eclesia at the end I try to acces my global from another namespace, but it result in a null pmc
13:14 jsut joined #parrot
13:19 JimmyZ Eclesia: get_root_global?
13:21 Eclesia JimmyZ: thanks.
13:32 woosley left #parrot
13:38 mj41 joined #parrot
13:42 dalek nqp: 5c84988 | jonathan++ | src/ (3 files):
13:42 dalek nqp: Start to sketch out new boolification protocol, so we can portably and efficiently put things in boolean context (e.g. avoiding nested runloops in the common case).
13:42 dalek nqp: review: https://github.com/perl6/nqp/commit/5c8498832b
13:42 dalek nqp: b53d224 | jonathan++ | src/ops/nqp.ops:
13:42 dalek nqp: Correct error text.
13:42 dalek nqp: review: https://github.com/perl6/nqp/commit/b53d22440a
13:42 dalek nqp: 1a9cdae | jonathan++ | src/pmc/sixmodelobject.pmc:
13:42 dalek nqp: Update get_bool to use new boolification protocol; we fall back to a v-table override during migration (will rip that code out afterwards).
13:42 dalek nqp: review: https://github.com/perl6/nqp/commit/1a9cdae50a
13:51 dalek nqp: 57988ce | jonathan++ | src/how/NQPClassHOW.pm:
13:51 dalek nqp: Update NQPClassHOW to provide information for the new boolification protocol.
13:51 dalek nqp: review: https://github.com/perl6/nqp/commit/57988ce92e
13:51 dalek nqp: 35da528 | jonathan++ | src/ (2 files):
13:51 dalek nqp: Remove now unrequired uses of is parrot_vtable('get_bool') trait.
13:51 dalek nqp: review: https://github.com/perl6/nqp/commit/35da528b82
13:51 dalek nqp: 4738417 | jonathan++ | src/stage0/ (6 files):
13:51 dalek nqp: Update bootstrap.
13:51 dalek nqp: review: https://github.com/perl6/nqp/commit/473841777a
13:56 ambs_ joined #parrot
13:58 plobsing_ ~~
14:00 plobsing_ whiteknight: I see you msged me, but aloha got amnesia or something.
14:00 whiteknight oh, nice
14:00 plobsing_ anyways, what are your thoughts on callbacks? besides blind rage of course.
14:01 whiteknight did you see the last commit I made to whiteknight/kill_threads?
14:01 whiteknight that fixes the branch, but is obviously lousy. The problem is we need to have an interp so we can call vtables, so we can get the interp
14:02 whiteknight and jamming properties blindly into the userdata prop hash is lousy if an HLL is also using properties for anything
14:02 whiteknight also, the fact that we gc register callbacks and never unregister them is ugly
14:03 plobsing_ yeah, that's hella ugly, but I've come to accept that there's no *good* solutions in this area
14:03 plobsing_ but wrt gc registering callbacks, I thought I deprecated that
14:04 plobsing_ there are better solutions than using one default interp however.
14:04 whiteknight I think that what we can do is store the callback in an array on the Library PMC object
14:04 whiteknight when the library goes out of scope and is freed, the callbacks it might be holding go with it
14:05 whiteknight not that libraries get freed now, but they could
14:05 plobsing_ even if libraries got freed, they'd still be relatively long-lived
14:05 whiteknight likewise, I think we should change U to create an in-memory array where simple indexing can find things of importance, instead of jamming them into an existing PMC
14:05 plobsing_ that doesn't cover the case where users frequently change the callbacks in a library
14:06 whiteknight we could have a method on the Library PMC to change or delete callbacks. Easy if we associate each new one with a key
14:07 plobsing_ whiteknight: if we just delegate managing the lifetime of the callback to the user, we don't need convoluted solutions
14:08 plobsing_ basically "if the library holds a reference to a PMC, STRING, or callback, you need to make sure GC doesn't collect it. you can do that by holding a reference to that in managed code or by using the GC's register/unregister functions"
14:09 plobsing_ users are already on the hook for strings and pmcs. why special-case callbacks?
14:16 schmooster joined #parrot
14:22 whiteknight okay, I'm fine with that. I'm basically just interested in avoiding the memory leak
14:22 plobsing_ agreed
14:22 whiteknight I also want to de-shit the user_data experience
14:23 plobsing_ in terms of finding the interp and parrot userdata from the c userdata, we could pass a struct*. IIRC, I have a deprecation for not doing userdata inplace.
14:24 plobsing_ http://trac.parrot.org/parrot/ticket/1548
14:26 plobsing_ new_callback_p_p_p_s => new_callback_p_p_p_p_s
14:41 redicaps joined #parrot
14:41 redicaps left #parrot
14:45 dalek jsop: eade75a | Whiteknight++ | README:
14:45 dalek jsop: A few small updates to README
14:45 dalek jsop: review: https://github.com/Whitekni​ght/jsop/commit/eade75aaab
14:45 dalek jsop: e45f95c | Whiteknight++ | stage0/ (3 files):
14:45 dalek jsop: Start playing around with adding a symbol table to differentiate between local and global variables
14:45 dalek jsop: review: https://github.com/Whitekni​ght/jsop/commit/e45f95ca9b
14:45 dalek jsop: 3cbf912 | Whiteknight++ | stage0/js/ (2 files):
14:45 dalek jsop: Redo symbol tables. Get local/global variable distinction working well enough.
14:45 dalek jsop: review: https://github.com/Whitekni​ght/jsop/commit/3cbf91238f
14:45 dalek jsop: 3cd6640 | Whiteknight++ | stage0/js/wast.js:
14:45 dalek jsop: Fix method invokes to use the new runtime system
14:45 dalek jsop: review: https://github.com/Whitekni​ght/jsop/commit/3cd66404c0
14:45 dalek jsop: eef7468 | Whiteknight++ | stage0/js/ (4 files):
14:45 dalek jsop: Add in special syntax to add inline Winxed statements. It's extremely ugly. I need to find something better
14:45 dalek jsop: review: https://github.com/Whitekni​ght/jsop/commit/eef746898f
14:45 dalek jsop: b3ff324 | Whiteknight++ | stage0/js/ (3 files):
14:45 dalek jsop: slightly less-bad winxed literal syntax
14:45 dalek jsop: review: https://github.com/Whitekni​ght/jsop/commit/b3ff324670
14:45 dalek jsop: 2dc17b4 | Whiteknight++ | stage0/js/ (2 files):
14:45 dalek jsop: Get constructors working for basic usages. Need tests
14:45 dalek jsop: review: https://github.com/Whitekni​ght/jsop/commit/2dc17b4e9f
15:02 whiteknight Well, I need to rethink the way I pass "this" to functions, but I think it's going pretty well so far
15:02 whiteknight but I need to sign off now
15:13 Eclesia Question : how can I make an equals test ? not the == which rely on the equal function.     but a real 'is the same pmc' ?
15:14 jnthn__ I think there's an eq_addr op
15:16 Eclesia jnthn__: great thanks :)
16:03 dalek nqp: ca42584 | jonathan++ | src/ops/nqp.ops:
16:03 dalek nqp: Add a sanity check.
16:03 dalek nqp: review: https://github.com/perl6/nqp/commit/ca42584055
16:03 dalek nqp: 5d6850e | jonathan++ | src/pmc/sixmodelobject.pmc:
16:03 dalek nqp: Fix some thinkos; drop using a get_bool v-table override as the way we implement 6modelobject's get_bool v-table.
16:03 dalek nqp: review: https://github.com/perl6/nqp/commit/5d6850e525
16:06 benabik o/
16:12 contingencyplan joined #parrot
16:29 logie joined #parrot
16:52 not_gerd joined #parrot
16:52 not_gerd good evening, #parrot
16:53 benabik o/ not_gerd
17:10 cotto ~~
17:10 dalek rakudo/nom: b22077d | jonathan++ | / (6 files):
17:10 dalek rakudo/nom: Implement new approach to boolification. It makes it sufficiently cheaper than in a simple integer-incrementing while loop that we do 20% or so better overall.
17:10 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/b22077d121
17:10 dalek rakudo/nom: 6d41c62 | jonathan++ | src/Perl6/Metamodel/EnumHOW.pm:
17:10 dalek rakudo/nom: EnumHOW needs same updates as ClassHOW for boolification changes.
17:10 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/6d41c621e6
17:11 whiteknight joined #parrot
17:19 dalek rakudo: 1b7dd12 | moritz++ | t/harness:
17:19 dalek rakudo: [t/harness] use backslash on windows
17:19 dalek rakudo: review: https://github.com/rakudo/rakudo/commit/1b7dd12a34
17:22 cotto hi not_gerd
17:26 whiteknight hello cotto
17:32 whiteknight NotFound: ping
17:33 dalek nqp: 3d0c71a | jonathan++ | src/pmc/sixmodelobject.pmc:
17:33 dalek nqp: More boolification fixes.
17:33 dalek nqp: review: https://github.com/perl6/nqp/commit/3d0c71a636
17:47 dalek rakudo/nom: 93eb7cd | jonathan++ | tools/build/NQP_REVISION:
17:47 dalek rakudo/nom: Get boolification fix from NQP.
17:47 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/93eb7cd3ab
17:47 dalek rakudo/nom: e28a5ff | jonathan++ | src/Perl6/Metamodel/BOOTSTRAP.pm:
17:47 dalek rakudo/nom: Get Str, Int and Num boolification to take advantage of the new approach, so we can handle them more efficiently.
17:47 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/e28a5fffb5
17:53 plobsing_ cotto: I played around with clock_gettime, and what I found out is that it always makes a syscall, but sometimes (when dynamically linked to librt) those are hiden from strace (an strace bug I intend to investigate).
17:54 cotto plobsing_, ok.  Do I assume correctly that that means we won't be able to get pure C that's as fast as the inline assembly?
17:55 plobsing_ I looked around and there appear to be no common library functions exposing a pure user-space tick mechanism. many libraries (glibc, mozilla) use rdtsc, but don't deign to expose it to users (who might, you know, find it useful)
17:56 cotto weak, but that's where we find ourselves
17:56 plobsing_ cotto: the only common library that exposes rdtsc in pure C is the linux kernel headers (which not everyone has)
17:57 plobsing_ so the short answer is "no, we can't avoid the inline assembly"
17:57 cotto alright
17:57 plobsing_ of course, I also found out some concerning things about rdtsc
17:57 cotto do tell
17:57 plobsing_ tsc is not guarranteed to be consistent between cores, and frequency scaling can mess it up.
17:58 cotto I saw that too.
17:58 plobsing_ specifically, the relation between real time elapsed, instructions executed, and tsc tick rate may vary if the cpu enters and leaves power saving modes
18:00 cotto I wouldn't expect that to happen too often while profiling code, but it is a concern.
18:01 plobsing_ frequency scaling means there is the potential for cores to be *way* out from each other
18:01 plobsing_ which means if the process gets migrated between cores...
18:02 plobsing_ we may need to implement a simple clock skew detection
18:02 plobsing_ to put an estimated bound on skewing
18:03 plobsing_ afk # acquiring beer
18:05 benabik beer++
18:09 whiteknight why are we going through all this hassle anyway, just to avoid a syscall on the highres timer?
18:10 benabik syscalls are slooooow
18:10 cotto whiteknight, did you see the numbers from last night?
18:10 benabik Namely because using rdtsc caused profiling to take like 25% extra time instead of 125%
18:10 whiteknight cotto: the tv show?
18:11 cotto using rdtsc on x86 takes 1/3 the time of clock_gettime and takes 1/2 the time on x86_64
18:12 cotto it makes me distrustful of valgrind
18:14 plobsing_ valgrind has a simplistic model by default - it counts instructions
18:14 plobsing_ it can also count cache misses and context switches
18:16 plobsing_ the thing is, mls is over-using the timer functionality if all that is wanted is a sub-level profiler
18:16 plobsing_ he calls rdtsc every instruction
18:16 logie joined #parrot
18:16 cotto there's a lot wrong with that code
18:16 plobsing_ the code could be rearranged to only rdtsc at important points (like sub calls)
18:17 plobsing_ which would also improve the time profile, but without using inline-assembly
18:17 plobsing_ but if we want an instruction-level profiler, we're stuck with calling rdtsc that often
18:18 Eclesia is there a way to compile using some kind of controls ? like at least make a F***** check that the function I try to use exist and I give the right number of parameters ?
18:21 plobsing_ Eclesia: you can implement those checks yourself fairly easily. the function call syntax sugar papers over the difference between static and dynamic lookups, but these are both doable from straight PIR.
18:25 dalek rakudo/nom: 068cad4 | moritz++ | t/harness:
18:25 dalek rakudo/nom: [t/harness] use backslash on windows
18:25 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/068cad4738
18:27 Eclesia plobsing_: I'm not in my compiler (I already do the first check), but I have no control over compilation of winxed file
18:29 dalek winxed/using_root: bac03bd | Whiteknight++ | winxedst1.winxed:
18:29 dalek winxed/using_root: Add a new 'using root' statement type, which is almost identical to UsingStatement except it emits a get_root_global opcode instead of a get_hll_global one.
18:29 dalek winxed/using_root: review: https://github.com/Whiteknig​ht/winxed/commit/bac03bd964
18:40 plobsing_ Eclesia: sure you do. now which is it that you would like to do, static or dynamic lookup?
18:40 Eclesia static
18:41 plobsing_ well then obtain the sub by doing 'using static sub'
18:41 plobsing_ now the sub is guarranteed to exist at compile-time or error
18:42 Eclesia plobsing_: nice, is there something similar to check classes and methods ?
18:43 plobsing_ Eclesia: nope, classes don't really exist at compile time ATM
18:44 Eclesia plobsing_: but the methods do exist
18:44 plobsing_ of course you could hack around that by making your classses acquired via subs that are
18:44 plobsing_ Eclesia: methods, in as much as they are subs, do exist. but in a state of limbo that is quite ugly.
18:45 plobsing_ we're currently in the midst of replacing our class system such that classes do exist at compile time
18:58 mj41 joined #parrot
19:09 dalek nqp: a0a9213 | jonathan++ | src/ (2 files):
19:09 dalek nqp: Make a way to both set an object's SC and add it to the SC in a single op.
19:09 dalek nqp: review: https://github.com/perl6/nqp/commit/a0a9213b8b
19:09 dalek nqp: 3088455 | jonathan++ | src/NQP/SymbolTable.pm:
19:09 dalek nqp: Make use of add_object_to_cur_sc_past.
19:09 dalek nqp: review: https://github.com/perl6/nqp/commit/308845540a
19:16 dalek rakudo/nom: e24dd5c | jonathan++ | src/ (4 files):
19:16 dalek rakudo/nom: Lessen the code we generate for creating container descriptors; should save us a bunch of PAST nodes when compiling the setting.
19:16 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/e24dd5c309
19:16 dalek rakudo/nom: e14544e | jonathan++ | / (2 files):
19:16 dalek rakudo/nom: Bump NQP_REVISION and take advantage of add_object_to_cur_sc_past, which should save us the creation of around 12,000 PAST nodes while building the setting. Also makes the output shorter.
19:16 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/e14544ef55
19:39 Eclesia Question : pir can take any character in a var name ?
19:45 dalek rakudo/nom: 2c0badb | jonathan++ | src/Perl6/SymbolTable.pm:
19:45 dalek rakudo/nom: Generate less code (and less PAST nodes as a result) for parameter deserialization.
19:45 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/2c0badbfd8
20:02 jsut_ joined #parrot
20:18 plobsing_ Eclesia: no. best to stick with [a-zA-Z_][a-zA-Z_0-9].
20:18 plobsing_ s/./*/g
20:22 Eclesia :/
20:23 plobsing_ Eclesia: if you need more, you are likely doing something wrong. IMCC is an assembler, nothing more.
20:24 plobsing_ you don't hear gcc devs complaining because their assembler only takes a very small fixed set of identifiers (%rax, %rsp, etc...)
20:26 cotto ~~
20:27 * Eclesia was just asking, trying to find an easy way to avoid any id clash for anonym vars
20:28 moritz keep track of your named vars
20:28 plobsing_ Eclesia: your compiler should mangle var names appropriately.
20:28 moritz generate a name which isn't taken yet
20:28 moritz that's what compilers are for, after all :-)
20:29 moritz (turning user code into sensible low-level code)
20:29 Eclesia or always replace them by $Pn and avoid all use of .local
20:29 plobsing_ the easiest way to mangle is to just keep a counter, and name all PIR variables $P$next_variable_num
20:32 dalek nqp: c1176fb | jonathan++ | src/HLL/SerializationContextBuilder.pm:
20:32 dalek nqp: Expose whether we're in pre-comp mode or not.
20:32 dalek nqp: review: https://github.com/perl6/nqp/commit/c1176fb544
20:32 dalek nqp: abbaf88 | jonathan++ | src/NQP/SymbolTable.pm:
20:32 dalek nqp: Do less work when we're in immediate-run mode. This doesn't build up PAST trees that we're only going to end up throwing away (granted we threw them away quickly, but still...)
20:32 dalek nqp: review: https://github.com/perl6/nqp/commit/abbaf88ef4
20:35 not_gerd Eclesia: when I needed to mangle unicode-names (in this case to C identifiers), I used [0-9A-Za-z] verbatim and encoded everything else in base 62, using _ as escape char
21:01 benabik joined #parrot
21:04 dalek rakudo/nom: 1780b11 | jonathan++ | tools/build/NQP_REVISION:
21:04 dalek rakudo/nom: Get latest NQP so we can use the extra info it has to be smarter about code-gen.
21:04 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/1780b11621
21:04 dalek rakudo/nom: 8dfd5e2 | jonathan++ | src/Perl6/SymbolTable.pm:
21:04 dalek rakudo/nom: Start to be smarter about pre-compilation mode vs. immediate run mode, so we generate less PAST that we throw away. Should improve non-precomp case somewhat (e.g. so we get faster spectest runs). Also marks out code that we'll be able to throw away when we have full deserialization.
21:05 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/8dfd5e2d79
21:05 dalek rakudo/nom: ea5ff6b | jonathan++ | src/Perl6/SymbolTable.pm:
21:05 dalek rakudo/nom: Refactor parameter object building and deserialization code-gen so we can avoid building more PAST in pre-comp mode.
21:05 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/ea5ff6b909
21:05 dalek rakudo/nom: 0635961 | jonathan++ | src/Perl6/SymbolTable.pm:
21:05 dalek rakudo/nom: Be smarter about compilation of code objects. Should be a (little) win both for setting compilation and for immediate-run compilation.
21:05 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/0635961a1f
21:20 jsut joined #parrot
21:28 perlite_ joined #parrot
21:30 dalek rakudo/nom: 5aac384 | jonathan++ | src/Perl6/SymbolTable.pm:
21:30 dalek rakudo/nom: Fix bug introduced in parameter compilation improvements.
21:30 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/5aac38409a
21:45 logie joined #parrot
21:58 zby_home_ joined #parrot
22:23 dalek jsop: e6383dc | Whiteknight++ | t/stage0/winxed_literals.t:
22:23 dalek jsop: Add a test file for the winxed literal syntax
22:23 dalek jsop: review: https://github.com/Whitekni​ght/jsop/commit/e6383dc0a7
22:23 dalek jsop: aecbf7a | Whiteknight++ | / (5 files):
22:23 dalek jsop: Change around whitespace. Pass 'this' as an optional named arg to better mimic JS behavior
22:23 dalek jsop: review: https://github.com/Whitekni​ght/jsop/commit/aecbf7a1d9
22:23 dalek jsop: ce6a590 | Whiteknight++ | stage0/ (2 files):
22:23 dalek jsop: several fixes to the object model to pass 'this' as a named parameter. Some fixes to VariableDeclare wast to prevent double-declarations of global variables
22:23 dalek jsop: review: https://github.com/Whitekni​ght/jsop/commit/ce6a590f6e
22:23 dalek jsop: f632975 | Whiteknight++ | / (8 files):
22:23 dalek jsop: Add a -i option to js2wxst0. Add a runtime library for tests to setup rosella et al. Fix up array constants and the Array constructor/prototype. update 01-rosella_test.t to show how tests should be. Other misc fixes
22:23 dalek jsop: review: https://github.com/Whitekni​ght/jsop/commit/f632975dd7
22:23 dalek jsop: e0ab456 | Whiteknight++ | / (3 files):
22:24 dalek jsop: Pass all commandline args from js0.sh to js2wxst0.js
22:24 dalek jsop: review: https://github.com/Whitekni​ght/jsop/commit/e0ab45613a
22:24 dalek jsop: 725396d | Whiteknight++ | / (4 files):
22:24 dalek jsop: Fix all tests to run and pass again.
22:24 dalek jsop: review: https://github.com/Whitekni​ght/jsop/commit/725396dbc1
22:45 not_gerd whiteknight: are you targetting a specific JS version (in particular ECMA 3, 5 or Mozilla's)?
22:57 PacoLinux_ joined #parrot
23:01 whiteknight not_gerd: no, nothing in particular. Stage 0 is just a toy. Stage 1 will be a "Real" compiler with a real standard to target
23:02 dalek jaesop: fd2743e | Whiteknight++ | README:
23:02 dalek jaesop: update README to reflect new name. The project is now called 'jaesop'
23:02 dalek jaesop: review: https://github.com/Whiteknig​ht/jaesop/commit/fd2743ed4e
23:10 rurban joined #parrot
23:14 rfw joined #parrot
23:21 rurban_ joined #parrot
23:28 redicaps joined #parrot
23:48 redicaps joined #parrot

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

Parrot | source cross referenced