Stories
Slash Boxes
Comments
NOTE: use Perl; is on undef hiatus. You can read content, but you can't post it. More info will be forthcoming forthcomingly.

All the Perl that's Practical to Extract and Report

The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
 Full
 Abbreviated
 Hidden
More | Login | Reply
Loading... please wait.
  • I'd say: go for it.

    I've found that many people, including myself, can have trouble grokking functional programming after years of any other sort. If you get Scheme in there before, say, Perl, I would imagine they'd end up a better programmer (being able to grasp all sorts of different languages).

    --
      ---ict / Spoon
  • Scheme is really optimal for teaching a beginner of any age how to program, simply because you get around the basic stuff quickly and into more advanced things. The PLT group has been doing a LOT of research into making programming accessible to beginners -- you should in particular look at the How to Design Programs book, as well as a couple of papers by Shriram Krishnamurthi that deal with using Scheme as a web language. Links of importance:
  • Sounds like a great idea to me. I wish someone had taught me scheme at 11. I'd say do everything as functional as you can, though; no imperative style. That will be easy enough to learn later.

    --
    J. David works really hard, has a passion for writing good software, and knows many of the world's best Perl programmers
    • I agree about doing it as functional as possible and I plan to.

      I think that strictly speaking, even sequencing operations is procedural, not functional.

      So,

      (html-meta ...)
      (html-table ...)
      (html-footer ...)

      Is essentially procedural in nature.

      The functional way to do this, I believe, would be something like:

      (map html-gen
            '((meta parm1 parm2 parm3)
                (table parm1 parm2 parm3)
                (footer parm1 parm2 parm3)))

      Maybe I

      • I'm not as into Lisp and functional programming as I want to be, so I can't provide expert insight. All I can say is what I wish. :)

        Definitely search out Paul Graham's material on the net and absorb.

        Should I really go to the trouble of eliminating sequencing?

        I am not educated enough to say on that, yet.

        If I'm going to go this route, no setq's either. Just call the outer driver with literal lists.

        I do think avoiding setq's is good.

        I learned scheme followed by Lisp, and the way I was taught mad

        --
        J. David works really hard, has a passion for writing good software, and knows many of the world's best Perl programmers
          • Definitely search out Paul Graham's material on the net and absorb.

          I'm familiar with Paul Graham, but from what I can tell, he leans heavily toward Common Lisp and is pretty advanced. I prefer stuff like SICP [mit.edu], HtDP [htdp.org], the refreshingly simple TYSiFD [neu.edu] and The Scheme Programming Language [scheme.com]. All online! None of these texts is appropriate for my 11 year old, but I'm using some of their approaches as inspiration.

          • Bah! There are plenty of scheme programmers here (and I'm not talking about folks like me who can't
  • Sounds cool.

    One word of caution -- make sure your daughter appreciates the dangers of RSI, and takes regular breaks, etc.. A friend of mine did a ton of programming as a child, and after many years of continuous abuse, his wrists failed (in a BIG way) in college. Last time we talked he was still writing in one-inch tall letters.