Erik,
Don't get me wrong man, you are awesome in what you are doing!!!
The problem is we are talking through email and code and if I talked
to you in person for about an hour, I could tell you the little design
decisions I made and why.
Please do not take anything I say as something like I couldn't make
the exact same mistake. I will, trust me.
Actually I whole heartily encourage you to do exactly what you did
because nothing is learned from trying to be perfect. As a matter of
fact, when I am programming and designing things I try to make
mistakes and break things because you end up understanding more.
If I was standing next to you I would give you a pat on the back for
being a partner with me right now. :)
Mike
Quoting Erik de Bruin <e...@ixsoftware.nl>:
Ah, I'm more sloppy than I thought, sorry again. I did test, but I had
that 'debug' method hanging around, so they all passed.
I like really atomic commits, but that's not at all that easy (I'm not
complaining, mind you), as the changes needed to make some tests pass
are all over the place ;-)
I guess things will improve when we get more experience with the
codebase and with working together, please be patient.
I think I'll take that week off now, too :-)
EdB
On Sun, Dec 30, 2012 at 9:08 PM, Michael Schmalle
<apa...@teotigraphix.com> wrote:
Erik,
Did you run all the tests before you committed? I have 9 failures and had an
error assertOutDebug not found.
I also see now what happened to the semi-colan debacle.
I should have told you this but when testing a function/method, it will not
have the semi-colon because it's the larger container, in this case the
TypeNode emit that will add the semi-colon. So you will test for semi-colons
when you test a class with methods.
I'm going to fix these tests so they all pass and commit them.
In my experience working with large frameworks and testing them, its not a
good idea to have a bunch of hanging code not committed. Since we are
working together it will make it easier if you do more discrete commits
right now.
We also have to get rid of those NASTY globals, I'm going to add
configuration variables soon for this so they get reset automatically
(JSConfiguration) in the setup of the Backend.
Remember run the whole suite before you commit, if you did and they all
passed I think you are changing to much at a time. :)
Mike
Quoting Erik de Bruin <e...@ixsoftware.nl>:
I've finished implementing the code to make the "Method Members" tests
pass. I needed to reroute some of the AS emitter code in order to
allow the JS emitter to override the writing of the function closing
block so I could output the closing semicolon, please feel free to
check my implementation and brutally comment on my hacks :-)
EdB
On Sat, Dec 29, 2012 at 1:35 AM, Michael Schmalle
<apa...@teotigraphix.com> wrote:
Quoting Erik de Bruin <e...@ixsoftware.nl>:
Mike,
New 'layout' looks great!
I figured as much. I sat in front of the package explorer for about 30
minutes thinking about package names in sentences. I knew I would be
looking
and searching through these for hours to come, if you see anything that
should be changed, we should do it sooner than later.
I'm adding test classes one by one, when i have "all" the code for the
'asserts' figured out. The tests will fail (obviously), but with the
tests in place if will be much easier for me to work on the actual
code. I'll be away for much of next week, but maybe I get some time
this weekend to work on this a bit more.
Right, I'm sure you have a life as well. I might sneak in and make a
couple
tests work so it might help your context when doing your tasks.
I think I am going to focus back on AS3 and the walker impl to get it
more
abstract. I'll hand the JS to you for the next couple weeks. :)
EdB
On Fri, Dec 28, 2012 at 12:34 PM, Erik de Bruin <e...@ixsoftware.nl>
wrote:
I'm on the commit list, and I try to make it a habit to Update before
I start any work, so no need for a separate notification, but thanks.
EdB
On Fri, Dec 28, 2012 at 12:31 PM, Michael Schmalle
<apa...@teotigraphix.com> wrote:
HAH!
You got me, wow I was so organized starting this project. :)
I'm looking about 1-2 hours if everything goes right. I hate these but
this
is what you get for being a mad scientist sometimes. After this we
should be
good to go, I think all the reorganization will make sense.
I'll let you know when I commit if you aren't watching the commits
list.
It's funny, I now remember in the very beginning putting the tests in
js
and
thinking this doesn't make sense...
Mike
Quoting Erik de Bruin <e...@ixsoftware.nl>:
MIke,
When do you expect this 'mother of all refactors' to land? If 'soon',
I'll hold off on committing more tests and make them work on the
'new'
code first, no worries.
And I did mean "org.apache.flex.js", it is the package structure for
'compiler.jx.tests'... Maybe that also needs 'a little' refactoring?
EdB
On Fri, Dec 28, 2012 at 12:15 PM, Michael Schmalle
<apa...@teotigraphix.com> wrote:
Erik,
FYI I am doing this refactor right now and it's big, so when you do
an
svn
update, you will have to rub your eyes for a second. I wanted to to
do
this,
now your tests in the 'org.apache.flex.js.internal.js.codegen.goog'
gave
me
the reason. ;-) There is no 'org.apache.flex.js' package, I think
you
meant
'org.apache.flex.compiler'. :)
Before I commit this huge update, I will make sure your tests are
running
correctly.
Mike
Quoting Erik de Bruin <e...@ixsoftware.nl>:
Mike,
While trying to stay out of your hair in the FalconJx code, I
thought
I might spend some time translating the tests you wrote for the AS
output to tests for the JS + 'goog' output. I'm doing this by
copying
the AS tests, renaming them, converting them to subclasses of the
AS
tests and pointing them to the 'GoogBackend' (using the code from
your
test class).
An observation: some methods of JSGoogEmitter rely on 'globals'
like
'classDefinition', which are not set when the methods are called
from
the tests. I'm not very familiar with JUnit (or unit testing in
general), so a little pointer on how to fix this would be much
appreciated.
Meanwhile I'll put all the tests (with the 'assertOut' commented
out)
in a 'goog' package in 'org.apache.flex.js.internal.js.codegen'.
Maybe
we want to put the 'goog' Emitter classes of the compiler also in a
'goog' package, to increase the separation between them and other
output types?
EdB
--
Ix Multimedia Software
Jan Luykenstraat 27
3521 VB Utrecht
T. 06-51952295
I. www.ixsoftware.nl
--
Michael Schmalle - Teoti Graphix, LLC
http://www.teotigraphix.com
http://blog.teotigraphix.com
--
Ix Multimedia Software
Jan Luykenstraat 27
3521 VB Utrecht
T. 06-51952295
I. www.ixsoftware.nl
--
Michael Schmalle - Teoti Graphix, LLC
http://www.teotigraphix.com
http://blog.teotigraphix.com
--
Ix Multimedia Software
Jan Luykenstraat 27
3521 VB Utrecht
T. 06-51952295
I. www.ixsoftware.nl
--
Ix Multimedia Software
Jan Luykenstraat 27
3521 VB Utrecht
T. 06-51952295
I. www.ixsoftware.nl
--
Michael Schmalle - Teoti Graphix, LLC
http://www.teotigraphix.com
http://blog.teotigraphix.com
--
Ix Multimedia Software
Jan Luykenstraat 27
3521 VB Utrecht
T. 06-51952295
I. www.ixsoftware.nl
--
Michael Schmalle - Teoti Graphix, LLC
http://www.teotigraphix.com
http://blog.teotigraphix.com
--
Ix Multimedia Software
Jan Luykenstraat 27
3521 VB Utrecht
T. 06-51952295
I. www.ixsoftware.nl
--
Michael Schmalle - Teoti Graphix, LLC
http://www.teotigraphix.com
http://blog.teotigraphix.com