perl 2.0 (no announcement message available)
authorLarry Wall <larry@wall.org>
Sun, 5 Jun 1988 00:00:00 +0000 (00:00 +0000)
committerLarry Wall <larry@wall.org>
Sun, 5 Jun 1988 00:00:00 +0000 (00:00 +0000)
commit378cc40b38293ffc7298c6a7ed3cd740ad79be52
tree87bedf9adc5c88847a2e2d85963df5f94435aaf5
parenta4de7c03d0bdc29d9d3a18abad4ac2628182ed7b
perl 2.0 (no announcement message available)

Some of the enhancements from Perl1 included:

    * New regexp routines derived from Henry Spencer's.
          o Support for /(foo|bar)/.
          o Support for /(foo)*/ and /(foo)+/.
          o \s for whitespace, \S for non-, \d for digit, \D nondigit
    * Local variables in blocks, subroutines and evals.
    * Recursive subroutine calls are now supported.
    * Array values may now be interpolated into lists: unlink 'foo', 'bar', @trashcan, 'tmp';
    * File globbing.
    * Use of <> in array contexts returns the whole file or glob list.
    * New iterator for normal arrays, foreach, that allows both read and write.
    * Ability to open pipe to a forked off script for secure pipes in setuid scripts.
    * File inclusion via do 'foo.pl';
    * More file tests, including -t to see if, for instance, stdin is a terminal. File tests now behave in a more correct manner. You can do file tests on filehandles as well as filenames. The special filetests -T and -B test a file to see if it's text or binary.
    * An eof can now be used on each file of the <> input for such purposes as resetting the line numbers or appending to each file of an inplace edit.
    * Assignments can now function as lvalues, so you can say things like ($HOST = $host) =~ tr/a-z/A-Z/; ($obj = $src) =~ s/\.c$/.o/;
    * You can now do certain file operations with a variable which holds the name of a filehandle, e.g. open(++$incl,$includefilename); $foo = <$incl>;
    * Warnings are now available (with -w) on use of uninitialized variables and on identifiers that are mentioned only once, and on reference to various undefined things.
    * There is now a wait operator.
    * There is now a sort operator.
    * The manual is now not lying when it says that perl is generally faster than sed. I hope.
152 files changed:
Changes [new file with mode: 0644]
Configure
EXTERN.h
INTERN.h
MANIFEST
Makefile.SH
README
Wishlist
arg.c
arg.h
array.c
array.h
cmd.c
cmd.h
config.h.SH
dump.c
eg/ADB [new file with mode: 0644]
eg/README [new file with mode: 0644]
eg/changes [new file with mode: 0644]
eg/dus [new file with mode: 0644]
eg/findcp [new file with mode: 0644]
eg/findtar [new file with mode: 0644]
eg/g/gcp [new file with mode: 0644]
eg/g/gcp.man [new file with mode: 0644]
eg/g/ged [new file with mode: 0644]
eg/g/ghosts [new file with mode: 0644]
eg/g/gsh [new file with mode: 0644]
eg/g/gsh.man [new file with mode: 0644]
eg/myrup [new file with mode: 0644]
eg/nih [new file with mode: 0644]
eg/rmfrom [new file with mode: 0644]
eg/scan/scan_df [new file with mode: 0644]
eg/scan/scan_last [new file with mode: 0644]
eg/scan/scan_messages [new file with mode: 0644]
eg/scan/scan_passwd [new file with mode: 0644]
eg/scan/scan_ps [new file with mode: 0644]
eg/scan/scan_sudo [new file with mode: 0644]
eg/scan/scan_suid [new file with mode: 0644]
eg/scan/scanner [new file with mode: 0644]
eg/shmkill [new file with mode: 0644]
eg/van/empty [new file with mode: 0644]
eg/van/unvanish [new file with mode: 0644]
eg/van/vanexp [new file with mode: 0644]
eg/van/vanish [new file with mode: 0644]
eval.c [new file with mode: 0644]
form.c
form.h
handy.h
hash.c
hash.h
lib/getopt.pl [new file with mode: 0644]
lib/importenv.pl [new file with mode: 0644]
lib/stat.pl [new file with mode: 0644]
makedepend.SH
makedir.SH
malloc.c
patchlevel.h
perl.h
perl.man.1
perl.man.2
perl.y
perldb
perldb.man
perlsh [new file with mode: 0644]
perly.c
regexp.c [new file with mode: 0644]
regexp.h [new file with mode: 0644]
search.c [deleted file]
search.h [deleted file]
spat.h
stab.c
stab.h
str.c
str.h
t/TEST
t/base.cond
t/base.if
t/base.lex
t/base.pat
t/base.term
t/cmd.elsif
t/cmd.for
t/cmd.mod
t/cmd.subval
t/cmd.while
t/comp.cmdopt
t/comp.cpp
t/comp.decl
t/comp.multiline
t/comp.script
t/comp.term
t/io.argv
t/io.dup [new file with mode: 0644]
t/io.fs
t/io.inplace
t/io.pipe [new file with mode: 0644]
t/io.print
t/io.tell
t/op.append
t/op.auto
t/op.chop
t/op.cond
t/op.crypt [deleted file]
t/op.delete [new file with mode: 0644]
t/op.do
t/op.each
t/op.eval
t/op.exec
t/op.exp
t/op.flip
t/op.fork
t/op.goto
t/op.int
t/op.join
t/op.list
t/op.magic
t/op.oct
t/op.ord
t/op.pat
t/op.push
t/op.regexp [new file with mode: 0644]
t/op.repeat
t/op.sleep
t/op.split
t/op.sprintf
t/op.stat
t/op.study [new file with mode: 0644]
t/op.subst
t/op.time
t/op.unshift
t/re_tests [new file with mode: 0644]
toke.c [new file with mode: 0644]
util.c
util.h
version.c
x2p/EXTERN.h
x2p/INTERN.h
x2p/Makefile.SH
x2p/a2p.h
x2p/a2p.man
x2p/a2p.y
x2p/a2py.c
x2p/handy.h
x2p/hash.c
x2p/hash.h
x2p/s2p
x2p/s2p.man
x2p/str.c
x2p/str.h
x2p/util.c
x2p/util.h
x2p/walk.c