gsoc_import_engine / Demo / comparisons /

Filename Size Date modified Message
2.3 KB
30 B
1.5 KB
1.2 KB
2.2 KB
Subject: Re: What language would you use?
From: Tom Christiansen <>
Date: 6 Nov 1994 15:14:51 GMT
Newsgroups: comp.lang.python,comp.lang.tcl,comp.lang.scheme,comp.lang.misc,comp.lang.perl
Message-Id: <39irtb$3t4@csnews.cs.Colorado.EDU>
References: <39b7ha$> <39hhjp$lgn@csnews.cs.Colorado.EDU> <39hvsu$>

If you're really into benchmarks, I'd love it if someone were to code up
the following problems in tcl, python, and scheme (and whatever else you'd
like).  Separate versions (one optimized for speed, one for beauty :-) are
ok.  Post your code so we can time it on our own systems.

0)  Factorial Test  (numerics and function calls)

        (we did this already)

1)  Regular Expressions Test

    Read a file of (extended per egrep) regular expressions (one per line), 
    and apply those to all files whose names are listed on the command line.
    Basically, an 'egrep -f' simulator.  Test it with 20 "vt100" patterns
    against a five /etc/termcap files.  Tests using more elaborate patters
    would also be interesting.  Your code should not break if given hundreds
    of regular expressions or binary files to scan.  

2)  Sorting Test

    Sort an input file that consists of lines like this

        var1=23 other=14 ditto=23 fred=2

    such that each output line is sorted WRT to the number.  Order
    of output lines does not change.  Resolve collisions using the
    variable name.   e.g.

        fred=2 other=14 ditto=23 var1=23 

    Lines may be up to several kilobytes in length and contain
    zillions of variables.

3)  System Test

    Given a list of directories, report any bogus symbolic links contained
    anywhere in those subtrees.  A bogus symbolic link is one that cannot
    be resolved because it points to a nonexistent or otherwise
    unresolvable file.  Do *not* use an external find executable.
    Directories may be very very deep.  Print a warning immediately if the
    system you're running on doesn't support symbolic links.

I'll post perl solutions if people post the others.

Tom Christiansen      Perl Consultant, Gamer, Hiker

 "But Billy! A *small* allowance prepares you for a lifetime of small
 salaries and for your Social Security payments."    --Family Circus
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.