Oh yes! General practical BNF parsing Marpa provides sets a true benchmark
and, rhetorical as it may seem, we only touched the tip of the opportunity
iceberg.


On Wed, Jul 9, 2014 at 8:09 AM, John Alvord <[email protected]>
wrote:

> thanks for the advice!  Marpa is  helping me stretch for the first time in
> years.
>
> John Alvord
> On Jul 8, 2014 9:39 AM, "Ruslan Shvedov" <[email protected]> wrote:
>
>> John, the article isn't actually mine, it's amon
>> <http://stackoverflow.com/users/1521179/amon>'s to illustrate his answer
>> to this stackoverflow question
>> <http://stackoverflow.com/questions/17275748/scripting-read-condition-written-in-words-and-converting-into-c-ternary-opera>
>> .
>>
>> That being said, on a careful reading it looks like the final
>> transformation is left as an exercise for the assiduous reader.
>>
>> On a related note, you may find this implementation (article
>> <http://jeffreykegler.github.io/Ocean-of-Awareness-blog/individual/2013/03/bnf_to_ast.html>,
>> code <https://gist.github.com/jeffreykegler/5121769>) of the The
>> Interpreter Design Pattern from the Design Patterns book useful. It looks
>> more complete.
>>
>> In my experience, building a translator with Marpa::R2 boils down to
>> developing a parser for the source language and then processing the
>> abstract syntax tree (AST, ASF stands for abstract syntax forests, which
>> are useful the case of ambiguous grammars/inputs) by traversing and
>> transforming in into the AST of the target language, which can then be
>> serialized to a text in the target language.
>>
>> Hope I got your question right; if I didn't, feel free to say so.
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>> On Tue, Jul 8, 2014 at 7:06 PM, John Alvord <[email protected]>
>> wrote:
>>
>>> Ruslan - I truly appreciate your analysis and explication.
>>>
>>> With great respect - it seems like the document is only 90% complete,
>>> since the final steps to produce what the user user wanted
>>>
>>> ==============================================
>>> So I excel sheet I have string like below:
>>>
>>> If ((Myvalue.xyz == 1) Or (Frmae_1.signal_1 == 1)) Then a = 1
>>> else a = 0;
>>>
>>> This I have to convert into:
>>>
>>> a = (((Myvalue.xyz == 1) || (Frmae_1.signal_1 == 1))?1:0)
>>>
>>> How this can be handled in perl?
>>>
>>> ===============================================
>>>
>>> was never documented. I certainly do not expect that - or any - level of
>>> hand holding, but your post does seem to stop short of the goal.
>>>
>>> John Alvord
>>>
>>>
>>>
>>>
>>>
>>> On Thu, Jun 26, 2014 at 7:12 AM, Ruslan Shvedov <
>>> [email protected]> wrote:
>>>
>>>> http://longanswers.blogspot.de/2013/06/transforming-syntax.html
>>>>
>>>>
>>>> On Thu, Jun 26, 2014 at 4:43 PM, John Alvord <
>>>> [email protected]> wrote:
>>>>
>>>>>  I have been successful  enough parsing a mini-language. Now someone
>>>>> wants me to do a translator from that language to a newer flavor.
>>>>>
>>>>> Are there any examples so far...  to get a head start from the ASF to
>>>>> another language?
>>>>>
>>>>> John Alvord
>>>>>
>>>>> --
>>>>> You received this message because you are subscribed to the Google
>>>>> Groups "marpa parser" group.
>>>>> To unsubscribe from this group and stop receiving emails from it, send
>>>>> an email to [email protected].
>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>
>>>>
>>>>  --
>>>> You received this message because you are subscribed to the Google
>>>> Groups "marpa parser" group.
>>>> To unsubscribe from this group and stop receiving emails from it, send
>>>> an email to [email protected].
>>>> For more options, visit https://groups.google.com/d/optout.
>>>>
>>>
>>>  --
>>> You received this message because you are subscribed to the Google
>>> Groups "marpa parser" group.
>>> To unsubscribe from this group and stop receiving emails from it, send
>>> an email to [email protected].
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>
>>  --
>> You received this message because you are subscribed to the Google Groups
>> "marpa parser" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to [email protected].
>> For more options, visit https://groups.google.com/d/optout.
>>
>  --
> You received this message because you are subscribed to the Google Groups
> "marpa parser" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"marpa parser" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to