And another update (things are going much better than I expected):
FalconJx can now emit a fully functional version of the
FlexJSTest_again demo application. You can see it in action here
(provided you use Chrome or Firefox, I just noticed):

http://people.apache.org/~erikdebruin/flexjs/

Onwards and upwards ;-)

EdB


On Wed, Mar 27, 2013 at 9:58 PM, Erik de Bruin <e...@ixsoftware.nl> wrote:
> I'd have to look into it for specifics, but of the top of my head it
> seems that this most depends on the implementation in the FlexJS JS
> framework. Emitting the strings required by that framework should
> really be easy enough. If needed we can "look forward" into AST to
> look for binding information. I do this in several other places
> already. Even the binding expressions shouldn't be too much of a
> problem, again depending on how this will be handled by the JS
> framework.
>
> EdB
>
>
>
> On Wed, Mar 27, 2013 at 9:36 PM, Alex Harui <aha...@adobe.com> wrote:
>> [Bindable] results in extra codegen.  Binding expressions with {} is a whole
>> other ball of work.
>>
>> I think in FalconJX you might have to modify the node tree in several places
>> when you hit a [Bindable] node.
>>
>> It isn't working correctly in FalconJS either, but my "customer" needs it so
>> I'm hacking a fix.
>>
>>
>> On 3/27/13 1:28 PM, "Erik de Bruin" <e...@ixsoftware.nl> wrote:
>>
>>> No, not yet. How is this set up in FlexJS? I'm sure I can read Metadata and
>>> Databinding information, so I guess it depends on the requirements for the
>>> emitted JS if I can easily implement this ;-)
>>>
>>> EdB
>>>
>>>
>>>
>>> On Wednesday, March 27, 2013, Alex Harui wrote:
>>>
>>>> Does FalconJX handle [Bindable]?  My "customer" is using it.
>>>>
>>>>
>>>> On 3/27/13 11:56 AM, "Michael Schmalle" <apa...@teotigraphix.com> wrote:
>>>>
>>>>>
>>>>> Quoting Erik de Bruin <e...@ixsoftware.nl>:
>>>>>
>>>>>> Another one popped into my head just now: I have a gut feeling there
>>>>>> is a bit of circular logic going on in the whole 'backend',
>>>>>> 'blockwalker' and 'emitter' construct. More specifically in the way
>>>>>> the references to them are passed around as arguments in the
>>>>>> constructors for the various classes. But I can't wrap around it well
>>>>>> enough to figure out whether it's wrong and if so, what might be done
>>>>>> about it. Don't get me wrong, it works well, it's just that it somehow
>>>>>> isn't "elegant". And that's in no way a comment on the effectiveness
>>>>>> or quality of your code, just something I thought I'd share and see
>>>>>> what you think.
>>>>>
>>>>> Actually I think it works fine. The problem you are facing is with the
>>>>> MXML emitter I am sure. This adds complexity to what you are trying to
>>>>> accomplish and it is circular from the perspective of using AS within
>>>>> MXML.
>>>>>
>>>>> There is a buffer writer(output stream), a writer, a visitor and emitter.
>>>>>
>>>>> Each one takes a dependency of its parent. Trust me, if there is a
>>>>> child that knows about its parent I am blind. Like I said, the block
>>>>> walker is a visitor and the emitter is a visitor. You cannot escape
>>>>> the fact there is recursion.
>>>>>
>>>>> If you can think of a more elegant way to set it up, by  all means
>>>>> write a prototype. Remember, I wrote this with an atom bomb under me
>>>>> and lighting in the sky, there may be parts that could be logicalized.
>>>>>
>>>>> I have another full compiler in Randori that I am going to use as a
>>>>> proof of concept with compiler plugins and my ASDoc compiler I wrote.
>>>>> So I guess we both can experiment, we can agree to leave the core
>>>>> alone for the time being.
>>>>>
>>>>>
>>>>>> EdB
>>>>>>
>>>>>>
>>>>>>
>>>>>> On Wed, Mar 27, 2013 at 7:41 PM, Erik de Bruin <e...@ixsoftware.nl>
>>>> wrote:
>>>>>>> Mike,
>>>>>>>
>>>>>>> Just kidding ;-)
>>>>>>>
>>>>>>> I'm really happy with FalconJx, once you get to know it it's a
>>>>>>> pleasure to work with. I hope my last commits didn't give you any
>>>>>>> additional work in your other projects? I did my best to leave all the
>>>>>>> APIs alone.
>>>>>>>
>>>>>>> There are plenty of TODOs in the code, and I would also like to
>>>>>>> suggest some kind of code review or something (I'm not used to working
>>>>>>> in groups, but that seems like a nice thing to do), since I've been
>>>>>>> piling on stuff. I did my best to keep everything clean and in line
>>>>>>> with the spirit of the rest of the code, but there are some areas
>>>>>>> where I'd like to have a second opinion. Like with the code that is
>>>>>>> copied between the DOC and JS emitters, seems there might be room for
>>>>>>> improvement there. Also of note is the way I've implemented the AS
>>>>>>> emitting within the MXML emitter, not really sure if I did the right
>>>>>>> thing there. And finally (not really, but this is all I can think of
>>>>>>> for now, after the marathon hacking I did today) there is the whole
>>>>>>> "programming to interfaces, not implementations" part that we nearly
>>>>>>> adhere to, but not quite, we might have another look at that as well.
>>>>>>>
>>>>>>> EdB
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> On Wed, Mar 27, 2013 at 7:33 PM, Michael Schmalle
>>>>>>> <apa...@teotigraphix.com> wrote:
>>>>>>>> No thats not what I meant.
>>>>>>>>
>>>>>>>> I am saying with the Randori project compiler, I have not had to
>>>> touch the
>>>>>>>> core framework for weeks and it is compiling 1000's of lines of code.
>>>> And
>>>>>>>> application code now.
>>>>>>>>
>>>>>>>> What I meant to say was, the design keeps people in the correct
>>>> spaces. :)
>>>>>>>>
>>>>>>>> Note; I AM SURE there are as3 bugs coming, its just nice not
>>>>>>>> having to chase
>>>>>>>> them right now.
>>>>>>>>
>>>>>>>> Mike
>>>> Alex Harui
>>>> Flex SDK Team
>>>> Adobe Systems, Inc.
>>>> http://blogs.adobe.com/aharui
>>>>
>>>>
>>
>> --
>> Alex Harui
>> Flex SDK Team
>> Adobe Systems, Inc.
>> http://blogs.adobe.com/aharui
>>
>
>
>
> --
> 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

Reply via email to