Beefy Boxes and Bandwidth Generously Provided by pair Networks
There's more than one way to do things
 
PerlMonks  

Re: Teaching Perl inside an Academic Course

by flyingmoose (Priest)
on Mar 10, 2004 at 15:42 UTC ( [id://335484]=note: print w/replies, xml ) Need Help??


in reply to Teaching Perl inside an Academic Course

EUREKA!

Why didn't I think of this before. Well, yes, Perl has a *perfect* place to fit into a pure academic education. Finite Automata.

Why? It's 95% about grammars and parsing. I took a whole class that dwelt in the mathematics of it all, and we *mentioned* lexx and yacc and sed and awk, but did not get into gory details since they were rather...well..gory and different. Perl unites these. At the time, I new Perl, but was not aware of cool things like Parse::RecDescent and Parse::YAPP

I think Perl (combined with grading programs using Test::More or equivalent, could be used to provide some programming context to what is, in general, a rather rigorous (and potentially arcane) mathematics course.

One could start with simple regexes to mention Kleene Star, and then write more complex grammers using the various Parse:: modules and so on.

In fact, I think Perl is probably the best language to use in such a course, provided one is told how to do it cleanly. Finite Automata is usually a 3rd year course, so it would not be the first language for a student, and they would already have the discipline required to wield Perl like the mighty blade it is.

I'm not quite sure if it's applicable in terms of State machines, turnig machines, and so on...but for the grammar portion, it would be perfect. If a short (say 10 pages) of sample Perl were provided as a reference jump start. Make the Camel and/or Llama optional books for those that really want to understand the language, but for simple parsing, diving too deep might not be required.

Log In?
Username:
Password:

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

How do I use this?Last hourOther CB clients
Other Users?
Others rifling through the Monastery: (9)
As of 2024-03-28 18:54 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found