WhyNot?

Teach Parsing with Programming

Category: Course Subjects
Responses: 4 (3 in support, 0 neutral, 1 in opposition)
Number of views: 475
Tracking: Track this idea
Community Rating:Average AverageYour Rating:

I've noticed that understanding how compilers parse a programming language greatly helps me understand the language, as well as aid me in writing and debugging.

In college, I've taken courses for Java, C++, sh, and PHP, and only the C++ teacher even mentioned parsing. This makes it difficult for me, as a college-employed tutor for these courses, to aid students in learning the languages.

I'd like to see the concept of parsing taught alongside programming languages. A programming language becomes intuitive if you understand how it's parsed.

MikeMol, Oct 20 2004

What do you think of this idea or comment?
(You can change your vote at any time)

agree I agree no opinion No opinion disagree I disagree

Users who liked this idea also liked:

Better Brake Light (341 votes) Very strong
Airport charity (127 votes) Very strong
Attachment Notation (121 votes) Very strong
Aerial pictures in flight (170 votes) Very strong
Refrigerator (88 votes) Very strong
Audio-in Jacks in Cars (148 votes) Very strong
GPS and Digital Photos (138 votes) Very strong
Ending the war on drugs (187 votes) Very strong
This concept is great! (109 votes) Very strong
like IMDB but for government (84 votes) Very strong

Other ideas in category (Course Subjects):

Comments from other members:

Add your comment

MikeMol: Why don't you start a blog on the benefits of parsing? The college where you tutor probably gives you an account that you can use for such purposes. Explain what parsing is, how it applies in various languages (maybe including English), how it helps in transferring skills from one language to another,and how it benefits the learner. Give illustations in each language.

You can send the people you are tutoring to read it. Maybe even get the teachers to read it. Maybe get other stidents to read it. Maybe develop more with questions people ask you. Maybe extend it to other general programming concepts. It probably won't make you rich, but it might look good on your bio.

A relevant example of parsing English text: Nothing is ever done in the passive voice.

sevans, Oct 21 2004

I often note the fact that the classes I learned the most in at college were my compiler design classes--where I learned more than just parsing, for certain, but that was a key component. I already knew how to program far before I started college, which may skew my experience.

When I learned to program, I had not the slightest idea of parsing. I was just putting statements into a computer and it would do things. That was cool. Because it was cool, I wanted to learn more. It wasn't until much later that I learned about parsing, and it was only interesting because it was relevant: I'd built up a foundation of understanding that allowed me to see how parsing was relevant to me, and for that matter I was trying to write a compiler and needed to understand it. When I first started programming, looking at BNF grammars would have been quite intimidating, irrelevant (as far as I could tell), and, well, boring.

In fact, I'd put parsing and compiler design at the advanced end of the curriculum--so if you're tutoring for beginning PHP, for instance, I wouldn't expect the teacher to go into that concept with any more than a brief mention. Yes, understanding parsing means that you can understand intuitively how a language works. But I would propose that understanding parsing is something that only comes after you already have a pretty strong grasp of how programming works to begin with.

I think that it's simply a difficult challenge to teach people programming, and that either a person has the right aptitude or they don't. And if they have the aptitude, you probably aren't seeing them as a tutor. It puts the cart before the horse: until they have a good grasp of programming, they won't be able to make much use of the idea of parsing.

TimMensch, Oct 24 2004