Parrot 3.7.0 "Wanda" | parrot.org | Log: irclog.perlgeek.de/parrot/today | #parrotsketch meeting Tuesday 19:30 UTC
Set by moderator on 25 August 2011.
00:03 whiteknight joined
whiteknight good evening, #parrot 00:08
if I had a dollar for every time it was awesome for Gnome to freeze and need to be forcibly restarted, I'd have no dollars 00:09
plobsing: plobsing++ for doing all that work on the frontend_parrot2 branch! I don't have any hard requirements for it. Obviously more work to do but this is a good stopping point. I'll send an email to parrot-dev about a merge 00:12
plobsing ubuntu is an easy on-ramp for windows users. they wouldn't feel comfortable without having to reboot now and then. 00:14
whiteknight I can't tell where the problem is either. I don't know if it happens in unity, or in gnome, or somewhere deeper in the stack 00:21
but the screen freezes up and becomes unresponsive (though the mouse still moves) sometimes when I close the laptop lid 00:22
so I switch to a different tty, do a service gdm restart, and login again
cotto_work whiteknight: I very occasionally get freezes too and I'm running fluxbox as the window manager. 00:23
plobsing my dwm only freezes up when firefox blocks all the cpu/memory. I've taken to running it under nice with some quotas. 00:25
whiteknight firefox behaves when I threaten to switch to chrome
plobsing funny, I had the same experience with liferea (rss reader)
whiteknight the more I use chrome, the more I like it. I use it a lot when I'm at work 00:26
plobsing hasn't worked for a year. last week, I started looking into different solutions, and wouldn't you know it, it works like a charm.
whiteknight I do my development in firefox because it has hot plugins. I do all my personal stuff in chrome
soh_cah_toa yeah, new firefox eats up *a lot* of resources 00:27
plobsing it usually works fine if you disable scripts
*which is probably a good idea anyways
whiteknight plobsing: Can you comment on TT #1916 with some kind of grand master plan?
I'm inclined to say "yeah, we're not going to do that"
plobsing it would cut down on vtables 00:28
whiteknight soh_cah_toa: they claim some future release, like Firefox 47.6 will have better memory usage
plobsing: can we do freeze/thaw without those vtables? is Visit enough?
plobsing whiteknight: yes
soh_cah_toa i doubt it
plobsing freeze/thaw are always called immediately prior to visit 00:29
whiteknight plobsing: you know that system better than I do. I haven't taken the time to really learn it, because I haven't hit a high level of frustration yet
you keep it running so well, that I don't need to complain about it
plobsing freeze/thaw are for leaf-nodes (ints, nums, strings). visit is for non-leaves (pmcs). the distinction is no longer useful. 00:30
since we do both visits simultaneously
whiteknight ok 00:31
man, I have too much email 00:32
plobsing I can work on clearing out some of the deprecations this week (I have a week or two free until $work starts)
whiteknight I only have the attention span to deal with like 3 or 4 at a time, so when I get hit with a huge trac bomb it screws me up for a week
plobsing: yeah, I have some deprecations I want to kill too. The kill_threads branch is high on my list 00:33
we'll be able to close a dozen tickets at least when that ship sails
plobsing: if you have time, pick a project you want to work on. I'm sure you've got some really great ideas just dieing to get out 00:43
plobsing I put more than my fair share of tickets into track. I might as well pay up now and then. 00:44
whiteknight there's a reason tickets hang around for so long: because it's not fun to deal with them 00:45
NotFound: ping
my preferred strategy is to take the things that tickets complain about, and delete them outright. Then, the tickets are suddenly invalid :) 00:47
cotto_work whiteknight: have you talked to jnthn__ about the copyright on the 6model code? 00:49
00:54 nbrown joined 01:00 herat joined
whiteknight cotto_work: no 01:00
I haven't talked to him at all since I started that branch.
I pinged him a few times. 01:01
plobsing: I'm failing a few codetests on the frontend_parrot2 branch. I'll get those knocked off tomorrow probably 01:04
01:07 woosley joined
plobsing codetests? huh. I thought I tried those. 01:08
whiteknight I never run codetests until I'm ready to merge
and I'm always disappointed 01:09
plobsing blarg. where did these fails come from? 01:10
plobsing goes and runs fulltest again
whiteknight soh_cah_toa: ping 01:11
soh_cah_toa whiteknight: PONG!
whiteknight soh_cah_toa: you're release manager for september 01:12
soh_cah_toa yup
whiteknight PREPARE FOR PAIN
soh_cah_toa uh oh
whiteknight also, we're going to make sure it's a good one
soh_cah_toa do you think it's possible to have the new debug segment by then or is that another release away? 01:14
dalek rrot/whiteknight/kill_threads: 50322ad | Whiteknight++ | t/src/embed.t:
You don't need to pass the parent interp reference when you create a new interp now.
soh_cah_toa i'm thinking the next one
but that's just a guess
plobsing soh_cah_toa: your the release manager, it's your call 01:15
whiteknight soh_cah_toa: probably a release away. We're probably going to merge whiteknight/frontend_parrot2. Probably whiteknight/kill_threads
plobsing s/your/you're/
whiteknight msg dukeleto I GOT YOU A PRESENT: github.com/parrot/parrot/commit/50322ada08
aloha OK. I'll deliver the message.
soh_cah_toa 6model maybe?
whiteknight soh_cah_toa: maybe, sure
soh_cah_toa ok
whiteknight I think that branch is passing most tests right now, but we need to coordinate with NQP folks to make sure it works 01:16
soh_cah_toa around what time before the release should i start doing "release manager things"?
i was thinking within the next few days 01:17
whiteknight soh_cah_toa: I suggest you give it a quick practice run a few days before
soh_cah_toa ok
whiteknight about a week before, send an email to parrot-dev with your plan (when the code freeze will be, what to focus on, when the release will be cut) 01:18
the kill_threads branch might be a problem. Right now, callbacks are broken
so I need to find a way to fix that
plobsing whiteknight: should be easy - have them default to synchronous callbacks (current default is async) 01:19
then cut out all the async bs
whiteknight Yeah, what it needs is just some time spent staring at it
and if I can drool a little with my mouth agape, that's bonus points
whiteknight is heading to bed. Goodnight 01:24
01:28 jsut_ joined, awwaiid_ joined
cotto ~~ 01:32
02:15 kid51 joined 02:21 lateau left
dalek rrot: c5bc4dd | jkeenan++ | config/gen/config_pm.pm:
Dedupe elements in embed-ldflags.
02:25
rrot: 714a2f7 | jkeenan++ | / (6 files):
Merge branch 'master' of git@github.com:parrot/parrot
kid51 whiteknight wrote: "they claim some future release, like Firefox 47.6 will have better memory usage." Don't *we* make that claim? ;-) 02:26
02:27 soh_cah_toa joined
plobsing kid51: mozilla is a bigger fish than we. I'd hold them to a slightly higher standard. 02:28
dalek rrot/whiteknight/frontend_parrot2: d4e10b7 | plobsing++ | frontend/parrot2/prt0-old.pir:
remove old prt0
02:29
rrot/whiteknight/frontend_parrot2: 9c436c0 | plobsing++ | MANIFEST:
mk_manifest_and_skip
rrot/whiteknight/frontend_parrot2: 1873b7e | plobsing++ | frontend/parrot2/ (2 files):
codingstd fixups
rrot/whiteknight/frontend_parrot2: 19a36c4 | plobsing++ | t/codingstd/copyright.t:
ignore missing copyright in generated files
02:30 herat joined
plobsing msg whiteknight fixed codetest problems on frontend_parrot2. thanks for pointing those out. we should be good to go now. 02:33
aloha OK. I'll deliver the message.
benabik msg whiteknight I think jnthn is on vacation for a week or two, so it'll probably be a while before you hear back from him. 03:02
aloha OK. I'll deliver the message.
kid51 msg whiteknight Getting build failure in frontend_parrot2 branch on Darwin. Will post details in a.m. 03:07
aloha OK. I'll deliver the message.
03:30 nbrown joined
tadzik frontend_parrot2 build fails here: gist.github.com/1180175 04:20
dukeleto ~~ 05:00
tadzik hello dukeleto 05:01
dukeleto tadzik: wazzup 05:04
whiteknight++ # my hero 05:05
tadzik dukeleto: oh, holiday time slowly becomes learning time 05:07
05:20 logie joined
dalek kudo/nom: 53b1d8f | tadzik++ | src/Perl6/Grammar.pm:
Fix S02-whitespace_and_comments/begin_end_pod.t
05:35
05:38 SHODAN joined 06:23 fperrad joined 07:25 mj41 joined
dalek rrot/whiteknight/frontend_parrot2: 25edcb4 | NotFound++ | frontend/parrot2/ (2 files):
fix C++ build
07:34
07:53 muixirt joined 08:24 lucian joined 08:28 baest joined 08:37 jsut joined 08:44 jsut_ joined 08:49 ambs joined 09:44 woosley left 10:00 preflex_ joined 11:17 mls joined
mls Hi, anybody here to discuss a invoke/callcontext feature? 11:18
(needed to fix a rakudo memory leak) 11:19
nine cotto: pong 11:21
11:31 Kulag joined
moritz mls: I guess your chances are better when the US awakes again 11:47
mls ok, will try again later... 11:52
Coke or the dev list. 12:10
12:12 redicaps joined 12:13 kid51 joined
nopaste "kid51" at 192.168.1.3 pasted "frontend_parrot2 build failure on Darwin at 19a36c410" (561 lines) at nopaste.snit.ch/75977 12:14
kid51 Note: This box does have gmp and has built Parrot in master thousands of times. 12:16
arnsholt Who was the hero who moved Parrot from SVN to git? 12:28
12:49 JimmyZ joined 13:04 JimmyZ joined
lucian anyone know the URL for the google code repo? 13:14
13:22 baest joined
JimmyZ code.google.com ? 13:22
13:30 bluescreen joined 13:32 RobertLJ joined
lucian JimmyZ: i meant parrot's repo 13:33
for gsoc
Coke arnsholt: dukeleto did a lot of the work. 13:37
even better, we started out with CVS.
bubaflub lucian: code.google.com/p/google-summer-of-...foundation 13:44
dukeleto arnsholt: i did most of it, with lots of help from cotto 13:47
lucian bubaflub: ah. thanks 13:49
13:57 cosimo joined 14:19 muixirt left 14:21 whiteknight joined
whiteknight good morning, #parrot 14:21
tadzik good morning whiteknight 14:24
whiteknight hello tadzik
14:41 logie joined 14:54 JimmyZ_ joined
NotFound whiteknight: pong 15:03
whiteknight good morning NotFound 15:07
NotFound Good evening
whiteknight I need a way to call get_root_global from Winxed. I am working on a patch that adds a "using root parrot.Foo.Bar.baz" syntax. Does that sound like a good idea?
15:08 dmalcolm joined
whiteknight using Foo.Bar.baz calls get_hll_global, and I can't see any obvious way to call get_root_global 15:08
NotFound whiteknight: for functions, vars, or both? 15:09
whiteknight at the moment, functions.
I mean, the same thing should be usable for vars too, right?
15:10 ambs joined
NotFound At some point, but the ideas for accessing global vars are not mature yet. 15:10
whiteknight I ran into the problem because I was putting my new javascript compiler code in the JavaScript hll namespace, but I'm trying to call things from Rosella which are in "parrot" 15:11
NotFound I must fix the HLL modifier usages, but that may take a while. 15:13
Let me try a few things...
whiteknight okay, the patch to add "using root" is very simple, I'll keep that around in case you want it 15:14
dukeleto mls: what did you want to talk about? 15:15
mls hi dukeleto! 15:28
jnthn uses a little hack in the reakudo ops to do a kind of tailcall without modifying the arguments 15:29
dukeleto mls: howdy!
mls: link to the code?
mls (function perl6_enter_multi_dispatch_from_onlystar_block in perl6.ops) 15:30
He does a "Parrot_pcc_set_signature(interp, cur_ctx, cur_ctx);" before calling invoke
dukeleto mls: do you have a link to the code on github? which branch are we talking about?
mls nom.
github.com/rakudo/rakudo/blob/nom/.../perl6.ops 15:32
lines 713-737
The idea is to reuse the current callcontext 15:33
works pretty well, but there's a memory leak: sub's invoke() allocates a new set of registers and the old ones don't get freed 15:34
So I "fixed" it locally by adding a Parrot_pcc_free_registers(interp, cur_ctx) call before calling invoke 15:36
With that change, no memory is leaked. But I need to patch parrot, as Parrot_pcc_free_registers is not exported
So I see two ways: either export Parrot_pcc_free_registers or change parrot so that it frees the old registers if the current ctx is reused 15:37
JimmyZ mls: which is better? 15:38
mls Well, both work. The question is what you parrot guys think about reusing the call context. Should that be an "official" way? 15:39
whiteknight yeah, callcontexts are objects which the user can modify to a certain degree
plobsing mls: that's wrong
mls what exactly is wrong?
plobsing if the subs are from different packfiles you will get very confusing errors
whiteknight I thought the callcontext freed the register set on gc destroy?
plobsing you shouldn't reuse the callcontext
whiteknight why not reuse it, if you update the namespace and hll values? 15:40
you'll lose backtrace frames, but that's not horrible in all cases
plobsing I believe we have something that does that already
but doing it *manually* is wrong 15:41
I recall morph being the way to do it, but I could be wrong
mls background: this is to invoke perl6 multis: there's a little stub that chooses the correct sub and then invokes it. That's why it *has* to get rid of the backtrace frame 15:42
plobsing mls: if you just want to get rid of the backtrace, you could tailcall
mls Yes, it's a lightweight tailcall. A tailcall that doesn't modify the args
whiteknight CallContext.morph resets some things but is horribly ugly 15:43
plobsing whiteknight: but it is *supported*
whiteknight plobsing: it shouldn't be
plobsing which means when parrot changes, things don't fall down around us
mls That's why I'm asking on this list: we need some supported way for rakudo
plobsing which *will* happen if rakudo goes off and pokes into our calling conventions at such a deep level
whiteknight CallContext.morph is used to reuse the context as the return call
that's not what he wants, I don't think 15:44
and either way, it's very specialized and crufty. We should put a better interface onto it
plobsing mls: is nom at the point where you have to be doing these optimizations? isn't it a little premature?
jnthn__ mls: ooh, you found the leak!
mls++
mls Well, jnthn needs to answer that... 15:45
Ah, speaking of jnthn... welcome back!
jnthn__ Appears I just got back from the airport at a useful point :)
oh, *that's* what was leaking. huh... :S 15:46
That change got a > 30% speed improvement on multi invocation. I'd rather patch it not to leak that lose it.
s:2nd/that/than/
mls (it leaks 40 bytes per multi invokation) 15:47
atrodo jnthn__> 30% over doing it which way (curious)
plobsing jnthn__: there has been talk about changing callcontext and pcc more generally. when that happens your optimization will probably cease to work
jnthn__ atrodo: Creating a fresh call context. 15:48
atrodo jnthn__> Okay, that makes a lot of sense 15:49
whiteknight We want the ability to more flexibly reuse callcontexts
so that patch is a small version of what we would like to have in the future
atrodo whiteknight> Or make them cheaper?
jnthn__ plobsing: That's fine, I don't consider that optimization covered by deprecation policy. But I do expect Parrot devs to look at this as "we should provide a sane way to do something like this".
whiteknight atrodo: yes, cheaper will happen too, but we want the ability to reuse them too 15:50
plobsing I think this situation begs for call arguments and execution context to be separated
whiteknight plobsing: arguably, yes
atrodo whiteknight> Yes, both would be ideal
jnthn__ heh. They got unified only a year or so ago :P
whiteknight they were unified for the wrong reasons. It did speed up some benchmarks, but killed other optimization opportunities
mls Anyways, the patch I was suggesting was to change invoke to free the registers if caller_ctx == context 15:51
whiteknight mls: put together a pull request?
mls before calling Parrot_pcc_allocate_registers
whiteknight mls: We can review it that way
arnsholt dukeleto: Did you write up a sketch of how you did it or something? 15:52
whiteknight jnthn__: you have a few spare moments to chat about 6model?
arnsholt We have a ginormous SVN repo here at uni I'm considering looking into moving to git, and some previous experiences seem like a good idea to start with 15:53
dukeleto arnsholt: possibly, a long time ago. It was mostly "git svn clone + git filterbranch + pixie dust + sweat and tears"
arnsholt: this might be interesting to you: github.com/leto/Util/tree/master/b...conversion 15:54
arnsholt Right. I'll look into that and svn2git then. Thanks!
Ooh, that does look interesting. Cheers!
dukeleto arnsholt: read this: blog.woobling.org/2009/06/git-svn-abandon.html 15:56
arnsholt: i did a simpler version of that.
mls diff: gist.github.com/1181233
dukeleto arnsholt: i didn't do any grafting, tho
mls Another way would be to change Parrot_pcc_allocate_registers to free the old register set if some are already allocated 15:57
jnthn__ whiteknight: Not right now - just back from a few day trip away.
dukeleto arnsholt: what does ginmorous mean? how many svn commits? How big (on disk) is the entire svn repo and how big is a current checkout?
jnthn__ whiteknight: Can find time soon though.
whiteknight jnthn__: okay, I've started the move to parrot core. branch whiteknight/6model. It's mostly a copy+paste effort so far. 15:58
mls Maybe patching Parrot_pcc_allocate_registers is the cleaner way
jnthn__ whiteknight: ok :) 15:59
arnsholt dukeleto: Don't recall how many commits, but on-disk size of about 6 gigs IIRC
dukeleto arnsholt: of one revision, or entire history? 16:01
arnsholt: also, the size of the largest file in the history is important. If you have massively sized files, git will run out of memory
arnsholt That last might be a problem
dukeleto arnsholt: git assumes all files can be mmap'ed, and occasionally has a few of them in memory, so the largest file should be <= 1/3 of the RAM 16:02
arnsholt I'm not very familiar with the repo (it belongs to the research group I'm doing my PhD with) but IIRC there are some biggish files in there 16:03
Part of my position is supposed to be non-research tasks (education, collecting and collating resources and such) and lobbying for git might be a semi-productive thing to do 16:04
16:14 jevin joined 16:21 jevin joined 16:55 nbrown joined
cotto_work ~~ 17:04
nine: pong 17:05
17:10 benabik joined
Coke points at TT #2184 - looks mergable to me now. 17:58
NotFound++ # btw.
nine cotto_work: been offline for a couple of days due to my girlfriend moving in
cotto_work nine: was that what you pinged me about? 18:06
whiteknight: is the rosella build broken? 18:17
whiteknight I didn't think so 18:19
I can look at it in a bit
nopaste "cotto_work" at 192.168.1.3 pasted "rosella build log" (83 lines) at nopaste.snit.ch/76046 18:23
nine cotto_work: nope...just replied to your ping :)
cotto_work nine: ok. What are your thoughts on the current threading code? Do you think you'd benefit from ripping it out yourself or do you want to start from a Parrot without any attempts at thread-awareness? 18:24
or do you think there's enough there to be worth saving 18:25
whiteknight cotto_work: ah, probably a quick typo from last night. I'll fix it up soon
nine: I started a branch whiteknight/kill_threads to rip out threads. Much of the work is done, but you're welcome to participate in it if you want 18:28
or, I can scrap the branch and you can do it your own way
or, you can make me do the rest of the work and feast upon the results
dalek rrot/all-hll-test: bc79ad6 | cotto++ | tools/dev/all_hll_test.pl:
add winxed, rosella and lua, localize %ENV
18:37
nine cotto_work: I think the glue code for OS threading support may come in handy at some point. Other than that I think a non-threaded greenlet/tasklet/whateverlet implementation will be a good first step. 18:39
whiteknight: I'll have a good look at your branch tomorrow :)
whiteknight awesome. it's pretty hack'n'slash 18:42
18:53 davidfetter joined 18:55 davidfetter_ joined 18:59 contingencyplan joined
dalek sella: 11c26f7 | Whiteknight++ | src/ (5 files):
It looks like Winxed is generating nonsensical get_attribute_i_p_s opcodes sometimes. Fix those so Rosella builds again
19:11
19:13 lucian joined
dukeleto cotto_work++ # all-hll-test branch 19:18
cotto_work dukeleto: the question now is how to best glue it together. 19:19
I'm thinking something like aloha, except that it only yells when something's broken.
and provides a link to the relevant output 19:20
whiteknight in a few days, you can add jsop to that as well. It has a small test suite now 19:22
actually, nevermind. It has all sorts of external dependencies right now 19:23
cotto_work doesn't mind 19:24
dukeleto cotto_work: i like rss feeds
cotto_work dukeleto: I was thinking an irc bot. 19:26
dukeleto cotto_work: multiple forms of notification are best 19:27
cotto_work dukeleto: I want to get it working as quickly as possible. Once it's in a minimum viable form, we can make it be a proper solution. 19:29
#ps in now
19:30 lucian joined 19:31 benabik joined
dukeleto cotto_work: works for me 19:32
19:33 lucian joined 19:35 davidfetter joined 19:47 RobertLJ1 joined
dalek nxed: 7324131 | NotFound++ | winxedst1.winxed:
fix ZeroCheckerExpr, some == 0 and != 0 were generating wrong code
19:50
lucian plobsing: I've had issues with trying to work around the implicit self in winxed code 19:56
plobsing ah, see, winxed forwards the implicit self that IMCC provides
you can work around it by not using winxed's class syntax sugar 19:57
lucian And my winxed code was supposed to be callable from python
Yeah, that's what I ended up doing
I fetch the method, then call it
plobsing if you add_method a normal (non-method) sub to a class, it gets the invocant as the first param, as python expects 19:58
lucian But it still leaves find_method on python objects broken
But python doesn't expect that at all
plobsing lucian: how so? find_method is just get_attr_keyed_str in python, is it not? 19:59
lucian Google python bound methods if you're curious
lucian can't google efficiently from his phone
Ah, yes
Must've misunderstood
But there's no self passed to the method 20:00
Let c be an instance of C, c.foo is a bound method, with self already curried in 20:01
plobsing so set up the closure yourself 20:02
lucian But C.foo does take self as argument
dalek nxed: 2e0995e | NotFound++ | / (3 files):
update installable files and NEWS
lucian That's what I was doing, but had some odd failures
Gave up on find_method
plobsing can you report those failures? 20:03
lucian Not now, no internet (just on this phone)
NotFound How does native python deal with that? Checking at runtime? 20:05
plobsing ok, but please do so eventually, find_method is key to hll-interop. if it isn't working for you, that's a problem we should fix.
lucian NotFound: check what at runtime? 20:06
NotFound It the thing to be called need self as argument.
lucian No, functions use descriptors 20:07
When you try to get an attribute that isn't an attr on the obj, but is on the class, it let's that class attr describe itself
Functions describe themselves as bound methods (closures over self) 20:08
it does happen at runtime, so you weren't wrong 20:11
20:15 zby_home joined 20:24 kj joined
dalek rrot: 49f09cd | NotFound++ | ext/winxed/ (2 files):
update winxed snapshot to 2e0995ee77
20:29
cotto_work hio kjs 20:35
long time no see
kjs hey cotto_work 20:45
yeah i know
dalek TT #2187 created by plobsing++: "Constant Table" is misleading 20:47
TT #2187: trac.parrot.org/parrot/ticket/2187
20:52 bluescreen joined
cotto_work kjs: rl happens. You're welcome back whenever you find the time. 20:52
kjs :-) thanks! I'm kinda in lurking mode now ;-) 20:53
20:56 RobertLJ1 joined
dukeleto oops 21:13
benabik oops?
dukeleto accidentally banned the number 5
21:13 kj joined
benabik Ah. What were you trying to do? 21:14
dukeleto benabik: nothing. Hence the oops. 21:19
21:24 davidfetter_ joined 22:04 soh_cah_toa joined
soh_cah_toa cotto_work: so what's going on w/ m0 lately? haven't heard much talk about it in a while 22:17
cotto_work soh_cah_toa: atm I'm thinking about how to get our HLLs some regular testing. I want to change the deprecation policy, but I want to have my suggested alternative implemented and working (fsvo) before I throw the idea out there. 22:23
soh_cah_toa cotto_work: you mean actually writing tests for hll's yourself or providing a framework for hll's to write their own tests? 22:26
cotto_work soh_cah_toa: running their tests 22:27
soh_cah_toa ah, i kinda like that idea. so we'd offer a hll-independent test harness that hll's can tailor to their language (or use "out of the box") 22:29
22:30 rfw joined
cotto_work soh_cah_toa: no. just have a script that builds parrot, builds HLLs and runs the tests they already have 22:30
soh_cah_toa oh i see
cotto_work make test or parrot setup.pir test (or whatever)
soh_cah_toa neat 22:33
what's changing about the deprecation policy?
cotto_work soh_cah_toa: I'd rather post about it once hll testing script is ready to go. 22:37
soh_cah_toa sure
cotto_work hopefully, a lot
plobsing I'm fairly sure nobody is happy about the dep policy at this point 22:45
so (a lot changes)++ 22:46
23:02 bubaflub joined 23:18 Coke joined 23:25 Coke joined
Coke cotto_work: let me know if you need help setting up either of the partcl's. Happy to skip any currently failing tests so we at least don't get regressions. 23:25
cotto_work Coke: if you can make test pass (by skipping tests or otherwise), I'll be happy to add it to the script. 23:27
23:31 kid51 joined 23:32 Coke joined 23:34 whiteknight joined 23:38 Coke_ joined
dalek m-eta-wink-kzd: fc66dfb | plobsing++ | bootstrap/winxed-compiler.dual:
differentiate between "new A" and "new A()" winxed syntax
23:41
m-eta-wink-kzd: 3f86a77 | plobsing++ | bootstrap/ometa-base.winxed:
Failer doesn't have a winxed constructor
m-eta-wink-kzd: 545843b | plobsing++ | src/OMetaWinxed (2 files):
rebootstrap
23:42
m-eta-wink-kzd: e125b43 | plobsing++ | t/character-classifier.Ωη:
ometa grammars don't have winxed constructors
soh_cah_toa plobsing: what's ohm-eta-wink-kzd?
plobsing soh_cah_toa: it is ometa for winxed
but I called it Ωη;)XD 23:43
soh_cah_toa what's ometa?
plobsing *github doesn't allow those chars and were good sports about not banning me for a potential injection attack
23:43 Coke joined
soh_cah_toa aha! i get it :) 23:44
plobsing soh_cah_toa: ometa is a generalization of PEG (parsing expression grammars), which in turn is more or less a pretty syntax over recursive descent parsing
ometa is more general than PEG in that it can match arbitrary iterables, not just strings. so for example, it can transform ASTs as well as generating them in the first place. 23:45
soh_cah_toa wow, interesting. can't believe i never heard of that before 23:46
plobsing PEG is kinda new and hasn't caught on much since up until recently it was thought to have bad complexity compared to other algorithms 23:47
but then they came up with packrat, which ometa also does
soh_cah_toa i haven't really delved into anything outside cfg's 23:48
plobsing not even lalr? that's everywhere. 23:49
23:49 Coke joined
soh_cah_toa a little bit, but the dragon book is really confusing in those chapters 23:49
23:54 Coke_ joined 23:55 plobsing joined
kid51 There have been some additional commits to whiteknight_parrot2 branch by NotFound, but they don't solve the build failure on Darwin I reported earlier today. 23:57
Whereas master builds fine on Darwin and fails only the select.t test previously reported. 23:58
soh_cah_toa: As next release manager, you will have to monitor these test failures and press for a solution. 23:59
plobsing kid51: that's the -lgmp problem correct?
kid51 plobsing: Yes.