Beefy Boxes and Bandwidth Generously Provided by pair Networks
Don't ask to ask, just ask
 
PerlMonks  

Re^3: Perl Cannot Be Parsed: A Formal Proof (meh)

by adamk (Chaplain)
on Jan 22, 2008 at 00:14 UTC ( #663485=note: print w/ replies, xml ) Need Help??


in reply to Re^2: Perl Cannot Be Parsed: A Formal Proof (meh)
in thread Perl Cannot Be Parsed: A Formal Proof

I suspect he also knew the business about rand(). But with his many hours of real life experience trying to statically parse Perl, he focused on the stronger proof -- the one that would give him the most information about what he was up against in creating PPI.

You pretty much nailed it exactly.

From a practical perspective there's about 5-10 things that, in various combinations, make Perl impossible to parse.

However, there's a big difference between what we believe and what we can prove.

And so from the perspective of knowing absolutely that Perl 5 can't be parsed, the Halting Problem approach was by far the most straight forward way to do it (at least to a layman like me).

This realization let me finally put the possibility of a complete parser out of my mind, and once I wasn't distracted by completeness any more, I had the chance to evaluate and actually define what "good enough" would mean for a "Perl 5 parser".

And that perspective on the problem was the one that took the code in the direction of the working solution.


Comment on Re^3: Perl Cannot Be Parsed: A Formal Proof (meh)

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://663485]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others surveying the Monastery: (7)
As of 2014-09-21 16:26 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    How do you remember the number of days in each month?











    Results (172 votes), past polls