On Perl


Location: Chicago/Delhi, United States

Wednesday, November 10, 2004

Ways to include code/library from another file (eval, do, require and use)

1)  do $file is like eval `cat $file`, except the former:
    1.1: searches @INC.
    1.2: bequeaths an *unrelated* lexical scope on the eval'ed code.

2)  require $file is like do $file, except the former:
    2.1: checks for redundant loading, slipping already loaded files.
    2.2: raises an exception on failure to find, compile, or execute $file.

3)  require Module is like require "Module.pm", except the former:
    3.1: translates each "::" into your system's directory separator.
    3.2: primes the parser to disambiguate class Module as an indirect object.

4)  use Module is like require Module, except the former:
    4.1: loads the module at compile time, not run-time.
    4.2: imports symbols and semantics from that package to the current one.

Wednesday, November 03, 2004

References and Objects

I think Randal writes good books. They might not cover everything (and that's why the Camel Book or the Perl Bible is there), Randal's books are easy to understand.

The new books I found is called Learning Perl Objects, References & Modules By Randal L. Schwartz With Tom Phoenix . If any one wants to learn about references, complex data structures and objects, this is a good book to being with.