incubator-flex-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Erik de Bruin <e...@ixsoftware.nl>
Subject Re: [FalconJx::GoogEmmitter] Moving forward
Date Thu, 27 Dec 2012 14:12:44 GMT
My day is really nearly over, so I won't do anything but dig around a
bit more to get more 'into' the code. So you go ahead with your todo,
please.

Once I've figured out what I can do and how I should do it, I'll
notify you to see if we're in a state to receive my efforts.

Ok?

EdB



On Thu, Dec 27, 2012 at 3:09 PM, Michael Schmalle
<apache@teotigraphix.com> wrote:
>
> Quoting Erik de Bruin <erik@ixsoftware.nl>:
>
>> Excellent.
>>
>> Mike, question: can we somehow separate out the 'goog' specific code
>> some more? Just wondering... If someone wants to start a different
>> parsing for JS, it might be less work to separate out 'goog' entirely
>> at this point than try and do that only when the need arises. I was
>> thinking about the JSDocEmitter, which can do with an extra layer of
>> abstraction, I think. And some code in JSEmitter is also 'goog'
>> specific. As this requires 'some' refactoring, I'm hesitant to start
>> without consulting with you first ;-)
>
>
> Actually, the intent was that the JSEmitter holds all code that is universal
> to JS.
>
> You are seeing reminiscence of goog because I haven't taken it all out yet
> with the refactors.
>
> So, goog needs to be completely ripped out of the JSEmitter. I really don't
> think we need another layer, since if you take out the goog stuff from
> JSEmitter like I was going to do, you already have that layer in the
> JSGoogEmitter.
>
> Does this make sense?
>
> The jsdoc emitter is the same, I need an injection point to give the emitter
> an instance of it from the backend implementation. Probably need an
> interface like IDocEmitter the IJSGoogEmitter extends.
>
> Anyway, what do you want to do, because that is to close of quarters for me
> to work today if you are refactoring the JSEmitter.
>
> Mike
>
>
>
>
>
>> EdB
>>
>>
>> On Thu, Dec 27, 2012 at 2:21 PM, Michael Schmalle
>> <apache@teotigraphix.com> wrote:
>>>
>>> Looks good Erik!
>>>
>>> Welcome to the party. Like I said, lets try to communicate what we are
>>> working on so we aren't creating merge conflicts, I hate those.
>>>
>>> Not much I would have done differently. Just 1 thing;
>>>
>>> Pay special attention to indents a newlines.
>>>
>>> foo.bar.A.method1 = function(p1, p2, p3, p4) {
>>>         p3 = typeof p3 !== 'undefined' ? p3 : 3;
>>>         p4 = typeof p4 !== 'undefined' ? p4 : 4;
>>>
>>>         return p1 + p2 + p3 + p4;
>>> }
>>>
>>>
>>> should probably be;
>>>
>>> foo.bar.A.method1 = function(p1, p2, p3, p4) {
>>>         p3 = typeof p3 !== 'undefined' ? p3 : 3;
>>>         p4 = typeof p4 !== 'undefined' ? p4 : 4;
>>>         return p1 + p2 + p3 + p4;
>>> }
>>>
>>> Without the newline to keep the code generation consistent. How would I
>>> get
>>> it to work? ...svn update :)
>>>
>>> Check out my last commit 5 minutes ago. If you are confused why and what
>>> I
>>> did ask.
>>>
>>> PS For block headers, there is a special handling of indents with no body
>>> code AST.
>>>
>>>
>>> Mike
>>>
>>>
>>>
>>> Quoting Erik de Bruin <erik@ixsoftware.nl>:
>>>
>>>> Mike,
>>>>
>>>> I've implemented and committed an alternative way of handling default
>>>> parameter values, including a test. Not particularly to make my point
>>>> with regard to which we should use (if we have to chose at all), but
>>>> mostly to see how I can contribute from my end.
>>>>
>>>> Please let me know how I did and what you would like me to do
>>>> differently. Thanks.
>>>>
>>>> EdB
>>>>
>>>>
>>>>
>>>> On Thu, Dec 27, 2012 at 11:56 AM, Michael Schmalle
>>>> <apache@teotigraphix.com> wrote:
>>>>>
>>>>>
>>>>> Hey,
>>>>>
>>>>> I have no plans other than to keep trudging away. There is still a lot
>>>>> of
>>>>> work to be done.
>>>>>
>>>>> As far as moving to the falcon repo, I don't want to do that yet. You
>>>>> are
>>>>> more than welcome to commit code where it is (just happens to be in my
>>>>> whiteboard).
>>>>>
>>>>> Did you notice what I did to implement the parameters? If you havn't,
>>>>> you
>>>>> might want to take a look at the commit and diffs.
>>>>>
>>>>> The object is to NOT comment out or override anything in the
>>>>> ASBlockWalker.
>>>>> I refactored that parameter code to the base ASEmitter, added API and
>>>>> then
>>>>> overrode the method in JSGoogEmitter. Get it?
>>>>>
>>>>> Also did a trick to allow a hook into the beginning of a function block
>>>>> to
>>>>> inject code. We can do that anywhere it's needed, I don't see a lot of
>>>>> situations like that though.
>>>>>
>>>>> Rules are, you change something before you commit ALL unit tests must
>>>>> pass,
>>>>> how ever you changed code.
>>>>>
>>>>> This is exactly why I want it in the whiteboard still, I don't want
>>>>> people
>>>>> looking at it in falcon "thinking" something that it is not yet.
>>>>>
>>>>> PS You should post a thread here what you are currently working on so
I
>>>>> don't step on your feet.
>>>>>
>>>>> Oh yeah, I have had plenty of out of body experiences through the years
>>>>> gazing at parser and compiler code, so I know exactly what you are
>>>>> talking
>>>>> about, I guess in current times, it's the light bulb going off. :)
>>>>>
>>>>> Mike
>>>>>
>>>>>
>>>>>
>>>>> Quoting Erik de Bruin <erik@ixsoftware.nl>:
>>>>>
>>>>>> Mike,
>>>>>>
>>>>>> I've spent some time with the js.codegen this week... Nietzsche was
>>>>>> right: "Battle not with monsters lest ye become a monster; and if
you
>>>>>> gaze into the abyss the abyss gazes into you." Having said that,
I
>>>>>> think I might be ready to contribute to that part of FalconJx.
>>>>>>
>>>>>> What are your plans (moving the project to the falcon/ repo so 'the
>>>>>> public' can commit; refactoring, etc.)?
>>>>>>
>>>>>> 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
>>
>
> --
> 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

Mime
View raw message