From: ok@goanna.cs.rmit.edu.au (Richard A. O'Keefe)
Subject: Re: Teaching sorts [was Re: What's the best language to start with?]
Date: 1996/08/19
Date: 1996-08-19T00:00:00+00:00 [thread overview]
Message-ID: <4v98io$e99@goanna.cs.rmit.edu.au> (raw)
In-Reply-To: dewar.840034153@schonberg
dewar@cs.nyu.edu (Robert Dewar) writes:
>The one advantage of bubble sort is that it is close to optimal on sorted
>or nearly sorted arrays. You have to be very careful how you write insertion
>sort not to require more compares in the fully sorted case, and you will
>almost certainly find you require more overhead, because of the two nested
>loops.
Hmm.
Here's C code to sort an N-element array a[0..N-1].
void insertion_sort(elt *a, int n) {
int i, j;
/* invariant: a[0..i-1] is a sorted permutation of old a[0..i-1] */
for (i = 1; i < N; i++) {
elt const t = a[i];
for (j = i; j > 0 && t < a[j-1]; j--)
a[j] = a[j-1];
a[j] = t;
}
}
If a is already sorted, this does N-1 comparisons, which is optimal.
I don't see any need for extreme care here.
Let's put that into Ada:
generic
type Element is private;
with function "<"(Left, Right: Element) return Boolean;
type Index is (<>);
type Vector is array (Index) of Element;
procedure Insertion_Sort(A: in out Vector);
procedure Insertion_Sort(A: in out Vector) is
begin
for I in Index'Succ(A'First) .. A'Last loop
-- invariant: A(A'First .. I) is a sorted permutation
-- of old A(A'First .. I).
declare
T: constant Element := A(I);
begin
Insert: for J in reverse A'First .. I loop
if T < A(Index'Pred(J)) then
A(J) := A(Index'Pred(J));
else
A(J) := T;
exit Insert;
end if;
end loop Insert;
end;
end loop;
end Insertion_Sort;
Now let's see bubble-sort, from "Introduction to Abstract Data Types
using Ada" by Hillam. It's figure 11.1.2 on p380.
generic
type ITEM_TYPE is private;
type VECTOR is array (integer range < >) of ITEM_TYPE;
with function "<"(LEFT, RIGHT : ITEM_TYPE) return boolean;
procedure BUBBLE_SORT (V : in out VECTOR);
procedure BUBBLE_SORT (V : in out VECTOR) is
TEMP_ITEM : ITEM_TYPE;
begin
for OUTER IN V'first .. V'last-1 loop
-- note same number of outer loop iterations as insertion sort
for INNER in V'first + 1 .. V'last loop
-- note no early exit
if V(INNER) < V(INNER - 1) then
TEMP_ITEM := V(INNER);
V(INNER) := V(INNER - 1);
V(INNER - 1) := TEMP_ITEM;
end if;
end loop;
end loop;
end BUBBLE_SORT;
This clearly cannot be anywhere near close to optimal for sorted or
nearly sorted arrays, because it always does 1/2N**2 + O(N) element
comparisons. The version of bubble sort that does well in those
cases is called "modified bubble sort" in Hillman, and is in his
figure 11.1.4
generic
type ITEM_TYPE is private;
type VECTOR is array (integer range < >) of ITEM_TYPE;
with function "<"(LEFT, RIGHT : ITEM_TYPE) return boolean;
procedure BUBBLE_SORT (V : in out VECTOR);
procedure BUBBLE_SORT (V : in out VECTOR) is
SORTED : boolean false; -- sic!
TEMP_ITEM : ITEM_TYPE;
IN_PLACE : integer := 0; -- keeps track of number of items known
-- to b in their final place at the
-- beginning of each phase
INDEX : integer := V'first;
begin
while not SORTED and then INDEX < V'last loop
SORTED := true;
INDEX := INDEX + 1;
for INNER in V'first + 1 .. V'last - IN_PLACE loop
if (V(INNER) < V(INNER - 1) then -- sic!
TEMP_ITEM := V(INNER);
V(INNER) := V(INNER - 1);
V(INNER - 1) := TEMP_ITEM;
SORTED := false;
end if;
end loop;
IN_PLACE := IN_PLACE + 1;
end loop;
end BUBBLE_SORT;
This is 20 non-comment lines for the body of "modified bubble sort",
compared with 17 for the body of my Ada insertion sort. But that
could have been shorted if I hadn'tdeclared T as locally as possible so
that I could declare it as a constant. Let's eliminate that block,
and while we're at it, let's eliminate the loop exit in the same of
structured programming purity.
procedure Insertion_Sort(A: in out Vector) is
T: Element;
J: Index;
begin
for I in Index'Succ(A'First) .. A'Last loop
T := A(I);
J := I;
while J > A'First and then T < A(Index'Pred(J)) loop
A(J) := A(Index'Pred(J));
J := Index'Pred(J);
end loop;
A(J) := T;
end loop;
end Insertion_Sort;
Now the funny thing here is that Robert Dewar wrote
>you will almost certainly find you require more overhead
[for insertion sort than bubble sort]
>because of the two nested loops.
But both versions of bubble sort have two nested loops as well!
>A bubble sort is certainly a much simpler solution to the problem
>of optimal sorting of a sorted list,
I do not call 20 lines with two loops and 5 variables
"much simpler" than 14 lines with two loops and 3 variables.
This leaves no apparent use for bubble sort at all.
>For quick sorts, I prefer heapsort to quicksort, because of its bounded
>worst case behavior. Note that there is a little-known modification to
>heap sort that reduces the number of compares to about NlogN compared
>with the normal 2NlogN (the 2 is where Eachus got the O(2N), though of
>course constants don't belong in big-O formulas). As far as I know this
>is not really properly reported in the literature -- I treat it in detail
>in my 1968 thesis, and it is an excercise in Knuth volume 3 (although his
>original answer was wrong, I think I kept that $1 Wells Fargo colorful
>check somewhere as a souvenir :-)
Papers were still appearing in The Computer Journal well after 1968
with improvements on heapsort; I feel so *stupid* for not including
the proper citation in the source code I have. I don't suppose your
thesis is on the Web anywhere (mine certainly isn't).
--
Australian citizen since 14 August 1996. *Now* I can vote the xxxs out!
Richard A. O'Keefe; http://www.cs.rmit.edu.au/~ok; RMIT Comp.Sci.
next prev parent reply other threads:[~1996-08-19 0:00 UTC|newest]
Thread overview: 688+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <sperlman-0507961717550001@p121.ezo.net>
[not found] ` <4rs76l$aqd@ccshst05.uoguelph.ca>
1996-07-15 0:00 ` Should I learn C or Pascal? Ralph Silverman
1996-07-15 0:00 ` Steve Sobol
1996-07-16 0:00 ` Lee Crites
1996-07-17 0:00 ` David Verschoore
1996-07-17 0:00 ` Mark McKinney
1996-07-19 0:00 ` Philip Brashear
1996-07-23 0:00 ` John A Hughes
1996-07-26 0:00 ` Randy Kaelber
1996-07-29 0:00 ` Ralph Silverman
1996-08-06 0:00 ` StHeller
1996-07-17 0:00 ` Anthony Kanner
1996-07-20 0:00 ` TRAN PHAN ANH
1996-07-20 0:00 ` Andy Askey
1996-07-20 0:00 ` steidl
1996-07-21 0:00 ` Andy Askey
1996-07-20 0:00 ` Robert Dewar
1996-07-22 0:00 ` TRAN PHAN ANH
1996-07-23 0:00 ` Ken Garlington
1996-07-20 0:00 ` Mark Eissler
1996-07-25 0:00 ` Erik Seaberg
1996-07-26 0:00 ` What's the best language to start with? [was: Re: Should I learn C or Pascal?] Tim Behrendsen
1996-07-27 0:00 ` Rick Elbers
1996-07-28 0:00 ` J. Christian Blanchette
1996-07-28 0:00 ` Robert Dewar
1996-07-29 0:00 ` Tim Behrendsen
1996-07-30 0:00 ` Arra Avakian
1996-07-31 0:00 ` James Youngman
1996-07-31 0:00 ` Stephen M O'Shaughnessy
1996-08-02 0:00 ` Tim Behrendsen
1996-08-05 0:00 ` Fergus Henderson
1996-08-06 0:00 ` Tim Behrendsen
1996-08-06 0:00 ` Dan Pop
1996-08-06 0:00 ` Tim Behrendsen
1996-08-06 0:00 ` Peter Seebach
1996-08-07 0:00 ` Tim Behrendsen
1996-08-07 0:00 ` James A. Squire
1996-08-07 0:00 ` Peter Seebach
1996-08-08 0:00 ` Tim Behrendsen
1996-08-08 0:00 ` Peter Seebach
1996-08-08 0:00 ` David Weller
1996-08-09 0:00 ` Bob Gilbert
1996-08-10 0:00 ` Tim Behrendsen
1996-08-11 0:00 ` Peter Seebach
1996-08-11 0:00 ` Tim Behrendsen
1996-08-12 0:00 ` Alf P. Steinbach
1996-08-12 0:00 ` Tim Behrendsen
1996-08-13 0:00 ` Szu-Wen Huang
1996-08-11 0:00 ` Craig Franck
1996-08-11 0:00 ` Tim Behrendsen
1996-08-07 0:00 ` Mark Eissler
[not found] ` <01bb83cc$fb <tequila-0708960947140001@tequila.interlog.com>
1996-08-07 0:00 ` Peter Seebach
1996-08-06 0:00 ` Fergus Henderson
1996-08-07 0:00 ` Tim Behrendsen
1996-08-08 0:00 ` Thomas Hood
1996-08-09 0:00 ` Tim Behrendsen
1996-08-17 0:00 ` Lawrence Kirby
1996-08-17 0:00 ` Tim Behrendsen
1996-08-19 0:00 ` Bob Gilbert
1996-08-19 0:00 ` Tim Behrendsen
1996-08-19 0:00 ` Tim Hollebeek
1996-08-20 0:00 ` Tim Behrendsen
1996-08-20 0:00 ` Bob Gilbert
1996-08-21 0:00 ` Tim Behrendsen
1996-08-22 0:00 ` Bob Gilbert
1996-08-22 0:00 ` Tim Behrendsen
1996-09-04 0:00 ` Lawrence Kirby
1996-09-04 0:00 ` Tim Behrendsen
1996-09-06 0:00 ` Bob Gilbert
1996-09-06 0:00 ` Tim Behrendsen
1996-09-09 0:00 ` Bob Gilbert
1996-09-11 0:00 ` Tim Behrendsen
1996-09-10 0:00 ` Jon S Anthony
1996-09-11 0:00 ` Richard A. O'Keefe
1996-09-10 0:00 ` Richard A. O'Keefe
1996-09-10 0:00 ` Kaz Kylheku
1996-09-11 0:00 ` Bob Gilbert
1996-09-11 0:00 ` Jon S Anthony
1996-09-11 0:00 ` Jon S Anthony
1996-09-05 0:00 ` Mark Wooding
1996-09-06 0:00 ` Bob Cousins
1996-09-06 0:00 ` Tim Behrendsen
1996-09-07 0:00 ` Craig Franck
1996-09-08 0:00 ` Tim Behrendsen
1996-09-08 0:00 ` Craig Franck
1996-09-09 0:00 ` Tim Behrendsen
1996-09-10 0:00 ` Richard A. O'Keefe
1996-09-10 0:00 ` Tim Behrendsen
1996-09-11 0:00 ` John Burdick
1996-09-13 0:00 ` Bengt Richter
1996-09-14 0:00 ` Craig Franck
1996-09-06 0:00 ` Robert I. Eachus
1996-09-06 0:00 ` Tim Behrendsen
1996-09-11 0:00 ` Richard A. O'Keefe
1996-09-11 0:00 ` Tim Behrendsen
1996-09-12 0:00 ` Richard A. O'Keefe
1996-09-13 0:00 ` Tim Behrendsen
1996-09-13 0:00 ` Richard A. O'Keefe
1996-09-18 0:00 ` Tim Behrendsen
1996-09-19 0:00 ` Richard A. O'Keefe
1996-09-12 0:00 ` Peter Seebach
1996-09-18 0:00 ` Tim Behrendsen
1996-09-17 0:00 ` George
1996-09-19 0:00 ` Tim Behrendsen
1996-09-24 0:00 ` Matthew M. Lih
1996-09-25 0:00 ` Richard A. O'Keefe
1996-09-26 0:00 ` Mark Wooding
1996-09-25 0:00 ` Bjarne Stroustrup
1996-09-26 0:00 ` Bengt Richter
1996-09-28 0:00 ` Dan Pop
1996-09-26 0:00 ` Jon S Anthony
1996-09-26 0:00 ` Dann Corbit
1996-09-27 0:00 ` Jay Martin
1996-09-27 0:00 ` Tim Behrendsen
1996-09-30 0:00 ` Art Schwarz
1996-09-27 0:00 ` Kent Budge
1996-09-27 0:00 ` George Haddad
1996-09-27 0:00 ` George Haddad
1996-09-27 0:00 ` George Haddad
1996-09-27 0:00 ` George Haddad
1996-09-27 0:00 ` George Haddad
1996-09-28 0:00 ` Matthew Heaney
1996-09-28 0:00 ` Steve Heller
1996-10-01 0:00 ` DJ Kindberg
1996-09-27 0:00 ` Craig Franck
1996-09-27 0:00 ` Bob Cousins
1996-09-28 0:00 ` Jon S Anthony
1996-09-11 0:00 ` Jon S Anthony
1996-09-11 0:00 ` Jon S Anthony
1996-09-11 0:00 ` Craig Franck
1996-09-11 0:00 ` Tim Behrendsen
1996-09-17 0:00 ` George
1996-09-24 0:00 ` Joel VanLaven
1996-09-27 0:00 ` Dann Corbit
1996-09-27 0:00 ` Tom Payne
1996-09-28 0:00 ` Tim Behrendsen
1996-09-18 0:00 ` Jon S Anthony
1996-09-26 0:00 ` Jon S Anthony
1996-10-01 0:00 ` Andrew Gierth
1996-08-22 0:00 ` Bengt Richter
1996-08-22 0:00 ` Tim Behrendsen
1996-08-23 0:00 ` Larry J. Elmore
1996-08-22 0:00 ` Frank Manning
1996-08-31 0:00 ` Bengt Richter
1996-08-31 0:00 ` Frank Manning
1996-08-31 0:00 ` Frank Manning
1996-09-02 0:00 ` deafen
1996-09-03 0:00 ` Frank Manning
1996-09-03 0:00 ` Steve Howard
1996-09-03 0:00 ` Bob Kitzberger
1996-09-03 0:00 ` Tim Behrendsen
1996-09-03 0:00 ` Phil Barnett
1996-08-08 0:00 ` Stephen M O'Shaughnessy
1996-08-09 0:00 ` Stephen M O'Shaughnessy
1996-08-09 0:00 ` Tim Behrendsen
[not found] ` <01bb846d$ <Dvtnon.I49@most.fw.hac.com>
1996-08-09 0:00 ` Tim Behrendsen
1996-08-06 0:00 ` Szu-Wen Huang
1996-08-06 0:00 ` Tim Behrendsen
1996-08-06 0:00 ` Peter Seebach
1996-08-07 0:00 ` Tim Behrendsen
1996-08-07 0:00 ` Peter Seebach
1996-08-08 0:00 ` Tim Behrendsen
1996-08-08 0:00 ` Peter Seebach
1996-08-08 0:00 ` Tim Behrendsen
1996-08-08 0:00 ` Peter Seebach
1996-08-14 0:00 ` Richard A. O'Keefe
1996-08-16 0:00 ` Tim Behrendsen
1996-08-20 0:00 ` Richard A. O'Keefe
1996-08-20 0:00 ` Alan Bowler
1996-08-21 0:00 ` Tim Behrendsen
1996-08-22 0:00 ` Bengt Richter
1996-08-22 0:00 ` Tim Behrendsen
1996-08-31 0:00 ` Bengt Richter
1996-09-01 0:00 ` Maurice M. Carey IV
1996-08-26 0:00 ` Richard A. O'Keefe
1996-08-26 0:00 ` Tim Behrendsen
1996-08-29 0:00 ` Richard A. O'Keefe
1996-08-29 0:00 ` Craig Franck
1996-08-30 0:00 ` system
1996-08-31 0:00 ` Kenneth Mays
[not found] ` <01bb95ba$9dfed580$496700cf@ljelmore.montana>
1996-08-30 0:00 ` Steve Heller
1996-08-31 0:00 ` Clayton Weaver
1996-09-01 0:00 ` Tim Behrendsen
1996-08-26 0:00 ` Mark Wooding
1996-08-30 0:00 ` Richard A. O'Keefe
1996-08-30 0:00 ` Peter Seebach
1996-09-03 0:00 ` Lawrence Kirby
1996-09-01 0:00 ` Joe Keane
1996-09-04 0:00 ` Richard A. O'Keefe
1996-09-03 0:00 ` Arkady Belousov
1996-08-30 0:00 ` Kaz Kylheku
1996-08-26 0:00 ` madscientist
1996-08-29 0:00 ` Richard A. O'Keefe
1996-08-31 0:00 ` Tanmoy Bhattacharya
1996-09-04 0:00 ` Tom Payne
1996-09-04 0:00 ` Patrick Horgan
1996-09-05 0:00 ` Richard A. O'Keefe
1996-09-05 0:00 ` deafen
1996-08-09 0:00 ` Chris Sonnack
1996-08-08 0:00 ` telnet user
1996-08-09 0:00 ` Tim Behrendsen
1996-08-09 0:00 ` Ed Hook
1996-08-09 0:00 ` Mike Rubenstein
1996-08-09 0:00 ` Tim Behrendsen
1996-08-10 0:00 ` Mike Rubenstein
1996-08-12 0:00 ` Tim Behrendsen
1996-08-12 0:00 ` Bob Kitzberger
1996-08-22 0:00 ` Patrick Horgan
1996-08-23 0:00 ` Steve Heller
1996-08-12 0:00 ` Mike Rubenstein
1996-08-12 0:00 ` Mark Wooding
1996-08-13 0:00 ` Mike Rubenstein
1996-08-15 0:00 ` Richard A. O'Keefe
1996-08-12 0:00 ` Tim Behrendsen
1996-08-13 0:00 ` Mike Rubenstein
1996-08-13 0:00 ` Tim Behrendsen
1996-08-13 0:00 ` Giuliano Carlini
1996-08-14 0:00 ` Tim Behrendsen
1996-08-15 0:00 ` Mike Rubenstein
[not found] ` <32 <01bb8923$e1d34280$87ee6fce@timpent.airshields.com>
1996-08-14 0:00 ` Peter Seebach
1996-08-14 0:00 ` Tim Behrendsen
1996-08-14 0:00 ` Peter Seebach
1996-08-07 0:00 ` Dan Pop
1996-08-08 0:00 ` Tim Behrendsen
1996-08-08 0:00 ` Peter Seebach
1996-08-08 0:00 ` Randy Kaelber
1996-08-09 0:00 ` J. Blustein
1996-08-11 0:00 ` Peter Seebach
1996-08-09 0:00 ` Chris Sonnack
1996-08-10 0:00 ` Tim Behrendsen
1996-08-11 0:00 ` Chris Sonnack
1996-08-11 0:00 ` Dan Pop
1996-08-12 0:00 ` Tim Behrendsen
1996-08-12 0:00 ` Chris Sonnack
1996-08-15 0:00 ` Bob Hoffmann
1996-08-09 0:00 ` Dan Pop
1996-08-11 0:00 ` Tim Behrendsen
1996-08-11 0:00 ` Dan Pop
1996-08-13 0:00 ` Tim Behrendsen
1996-08-13 0:00 ` Giuliano Carlini
1996-08-14 0:00 ` Dan Pop
1996-08-14 0:00 ` Tim Behrendsen
1996-08-16 0:00 ` Dik T. Winter
1996-08-12 0:00 ` Peter Seebach
1996-08-13 0:00 ` Tim Behrendsen
1996-08-11 0:00 ` Mark Wooding
1996-08-19 0:00 ` James Youngman
1996-08-18 0:00 ` Sam B. Siegel
1996-08-19 0:00 ` Dan Pop
1996-08-08 0:00 ` Christopher R Volpe
1996-08-08 0:00 ` Teaching sorts [was Re: What's the best language to start with?] Robert I. Eachus
1996-08-09 0:00 ` Robert Dewar
1996-08-10 0:00 ` Al Aab
1996-08-10 0:00 ` Lawrence Kirby
1996-08-12 0:00 ` Steve Heller
1996-08-12 0:00 ` Robert Dewar
1996-08-16 0:00 ` Steve Heller
1996-08-16 0:00 ` Robert Dewar
1996-08-18 0:00 ` Steve Heller
1996-08-18 0:00 ` Robert Dewar
1996-08-18 0:00 ` Steve Heller
1996-08-18 0:00 ` Robert Dewar
1996-08-20 0:00 ` Steve Heller
1996-08-16 0:00 ` Adam Beneschan
1996-08-18 0:00 ` Steve Heller
1996-08-18 0:00 ` Jeff Dege
1996-08-18 0:00 ` Robert Dewar
1996-08-16 0:00 ` Szu-Wen Huang
1996-08-17 0:00 ` Robert Dewar
1996-08-17 0:00 ` Robert Dewar
1996-08-20 0:00 ` Szu-Wen Huang
1996-08-20 0:00 ` Dann Corbit
1996-08-21 0:00 ` Tim Behrendsen
1996-08-21 0:00 ` Dann Corbit
1996-08-22 0:00 ` Richard A. O'Keefe
1996-08-22 0:00 ` Szu-Wen Huang
1996-08-23 0:00 ` Richard A. O'Keefe
1996-08-25 0:00 ` Robert Dewar
1996-08-21 0:00 ` Dik T. Winter
1996-08-21 0:00 ` Tim Behrendsen
1996-08-21 0:00 ` Matt Austern
1996-08-21 0:00 ` Tim Behrendsen
1996-08-21 0:00 ` Tanmoy Bhattacharya
1996-08-22 0:00 ` Dann Corbit
1996-08-22 0:00 ` Mike Rubenstein
1996-08-21 0:00 ` Pete Becker
1996-08-22 0:00 ` Szu-Wen Huang
1996-08-22 0:00 ` Pete Becker
1996-08-22 0:00 ` Robert Dewar
1996-08-22 0:00 ` Robert Dewar
1996-08-24 0:00 ` Joe Keane
1996-08-22 0:00 ` Tanmoy Bhattacharya
1996-08-21 0:00 ` Tanmoy Bhattacharya
1996-08-21 0:00 ` Adam Beneschan
1996-08-22 0:00 ` Andrew Koenig
1996-08-24 0:00 ` Robert Dewar
1996-08-22 0:00 ` Christian Bau
1996-08-22 0:00 ` Larry Kilgallen
1996-08-23 0:00 ` Tim Hollebeek
1996-08-24 0:00 ` Robert Dewar
1996-08-24 0:00 ` Robert Dewar
1996-08-22 0:00 ` (topic change on) Teaching sorts Marcus H. Mendenhall
1996-08-27 0:00 ` Ralph Silverman
1996-08-23 0:00 ` Teaching sorts [was Re: What's the best language to start with?] Andrew Koenig
1996-08-21 0:00 ` Tim Behrendsen
1996-08-22 0:00 ` Robert Dewar
1996-08-22 0:00 ` Mike Rubenstein
1996-08-18 0:00 ` Steve Heller
1996-08-21 0:00 ` Matt Austern
1996-08-23 0:00 ` Tanmoy Bhattacharya
1996-08-23 0:00 ` Adam Beneschan
1996-08-14 0:00 ` Stephen Baynes
1996-08-14 0:00 ` Robert Dewar
1996-08-16 0:00 ` Dik T. Winter
1996-08-16 0:00 ` Joe Foster
1996-08-18 0:00 ` Glenn Rhoads
1996-08-19 0:00 ` Stephen Baynes
1996-08-19 0:00 ` Robert Dewar
1996-08-19 0:00 ` Robert Dewar
1996-08-19 0:00 ` Richard A. O'Keefe [this message]
[not found] ` <dewar.840491732@schonberg>
1996-08-19 0:00 ` Robert Dewar
1996-08-22 0:00 ` Stephen Baynes
1996-08-27 0:00 ` Richard A. O'Keefe
1996-08-14 0:00 ` Robert Dewar
1996-08-13 0:00 ` Robert I. Eachus
1996-08-14 0:00 ` Robert Dewar
1996-08-15 0:00 ` Tom Payne
1996-08-13 0:00 ` Robert I. Eachus
1996-08-13 0:00 ` Lawrence Kirby
1996-08-14 0:00 ` Robert Dewar
1996-08-14 0:00 ` Robert I. Eachus
1996-08-15 0:00 ` Robert Dewar
1996-08-15 0:00 ` Blair Phillips
1996-08-27 0:00 ` What's the best language to start with? [was: Re: Should I learn C or Pascal?] Tanmoy Bhattacharya
1996-08-29 0:00 ` Robert I. Eachus
1996-08-30 0:00 ` Steve Heller
1996-08-30 0:00 ` Tanmoy Bhattacharya
1996-08-07 0:00 ` What's the best language to start with Ian Ward
1996-08-08 0:00 ` Tim Behrendsen
1996-08-09 0:00 ` Robert Dewar
1996-08-11 0:00 ` What's the best language to start with? [was: Re: Should I learn C or Pascal?] Jerone A. Bowers
1996-08-12 0:00 ` Robert I. Eachus
1996-08-05 0:00 ` Chris Sonnack
1996-08-06 0:00 ` Stephen M O'Shaughnessy
1996-08-05 0:00 ` Henrik Wetterstrom
1996-08-13 0:00 ` Chris Sonnack
1996-08-16 0:00 ` Steve Heller
1996-08-16 0:00 ` John Hobson
1996-07-31 0:00 ` AJ Musgrove
1996-08-01 0:00 ` Sam Harris
1996-08-02 0:00 ` Eric W. Nikitin
1996-08-01 0:00 ` Ken Pizzini
1996-08-01 0:00 ` Tim Hollebeek
1996-08-03 0:00 ` Raffael Cavallaro
1996-08-05 0:00 ` Chris Sonnack
1996-07-31 0:00 ` Patrick Horgan
1996-08-08 0:00 ` William Clodius
1996-08-08 0:00 ` William Clodius
1996-08-11 0:00 ` Dik T. Winter
1996-08-11 0:00 ` Fergus Henderson
1996-08-13 0:00 ` Ole-Hjalmar Kristensen FOU.TD/DELAB
1996-08-14 0:00 ` Richard A. O'Keefe
1996-08-15 0:00 ` Teaching sorts [was Re: What's the best language to start with?] Norman H. Cohen
1996-08-16 0:00 ` Steve Heller
1996-08-19 0:00 ` Ted Dennison
1996-08-23 0:00 ` Richard A. O'Keefe
1996-08-23 0:00 ` Ted Dennison
1996-08-24 0:00 ` Robert Dewar
1996-08-27 0:00 ` Richard A. O'Keefe
1996-09-02 0:00 ` Lawrence Kirby
1996-07-28 0:00 ` What's the best language to start with? [was: Re: Should I learn C or Pascal?] Mark Eissler
1996-07-28 0:00 ` Robert Dewar
1996-07-29 0:00 ` Tim Behrendsen
1996-07-30 0:00 ` Paul Campbell
1996-07-30 0:00 ` Robert Dewar
1996-08-02 0:00 ` Tim Behrendsen
1996-08-03 0:00 ` Peter Seebach
1996-08-04 0:00 ` Alf P. Steinbach
1996-08-04 0:00 ` Peter Seebach
1996-08-04 0:00 ` Jerry van Dijk
1996-08-05 0:00 ` Tim Behrendsen
1996-08-04 0:00 ` Peter Seebach
1996-08-05 0:00 ` Chris Sonnack
1996-08-05 0:00 ` Tim Hollebeek
1996-08-10 0:00 ` Mike Rubenstein
1996-08-05 0:00 ` Peter Seebach
1996-08-07 0:00 ` Tom Watson
1996-08-06 0:00 ` Tim Behrendsen
1996-08-03 0:00 ` Patrick Horgan
1996-08-04 0:00 ` Kurt E. Huhner
1996-07-30 0:00 ` What's the best language to start with? [was: Re: Should I learn TRAN PHAN ANH
1996-07-31 0:00 ` What's the best language to start with? [was: Re: Should I learn C or Pascal?] Arne W. Flones
1996-08-02 0:00 ` David Wheeler
1996-08-02 0:00 ` Peter Seebach
1996-08-02 0:00 ` Gary M. Greenberg
1996-08-03 0:00 ` Alf P. Steinbach
1996-08-02 0:00 ` Peter Seebach
1996-08-05 0:00 ` Chris Sonnack
1996-08-05 0:00 ` Peter Seebach
1996-08-06 0:00 ` What's the best language to start with? [was: Re: Should I learn C or Pasca StHeller
1996-08-06 0:00 ` Robert Dewar
1996-08-06 0:00 ` What's the best language to start with? [was: Re: Should I learn C or Pascal?] Robert I. Eachus
1996-08-06 0:00 ` Conrad Herrmann
1996-08-06 0:00 ` Alf P. Steinbach
1996-07-29 0:00 ` Byron B. Kauffman
1996-07-30 0:00 ` Alan Peake
[not found] ` <dewar. <peake.206.002D549F@dstos3.dsto.gov.au>
1996-07-31 0:00 ` P. Cnudde VH14 (8218)
1996-07-31 0:00 ` Nicolas Devillard
1996-08-02 0:00 ` Matt Austern
1996-08-15 0:00 ` Lawrence Kirby
1996-07-31 0:00 ` Stephen M O'Shaughnessy
1996-08-02 0:00 ` Tim Behrendsen
1996-08-05 0:00 ` Mark McKinney
1996-08-05 0:00 ` Mark McKinney
1996-08-05 0:00 ` Mark McKinney
1996-07-31 0:00 ` Tim Behrendsen
1996-07-22 0:00 ` Should I learn C or Pascal? Stephen M O'Shaughnessy
1996-07-23 0:00 ` TRAN PHAN ANH
1996-07-18 0:00 ` Carlos DeAngulo
1996-07-18 0:00 ` Robert Dewar
1996-07-19 0:00 ` Jon Bell
1996-07-22 0:00 ` Tim Oxler
1996-07-22 0:00 ` Janus
1996-07-22 0:00 ` Robert Dewar
1996-07-30 0:00 ` Tim Behrendsen
1996-07-31 0:00 ` Patrick Horgan
1996-07-22 0:00 ` Stig Norland
[not found] ` <01bb7588$236982e0$7b91f780@deangulo>
1996-07-19 0:00 ` Robert Dewar
1996-07-20 0:00 ` steidl
1996-07-19 0:00 ` Dirk Dickmanns
[not found] ` <01bb7591$83087d60$87ee6fce@timpent.airshields.com>
1996-07-19 0:00 ` johnf
1996-07-19 0:00 ` Jason Alan Turnage
1996-07-19 0:00 ` Robert Dewar
1996-07-20 0:00 ` TRAN PHAN ANH
1996-07-22 0:00 ` Ralph Silverman
1996-07-20 0:00 ` Jon Bell
1996-07-20 0:00 ` Robert Dewar
1996-07-21 0:00 ` Alexander Vrenios
1996-07-21 0:00 ` Steve Tate
1996-07-21 0:00 ` Robert Dewar
1996-07-21 0:00 ` Phil Howard
1996-07-21 0:00 ` Robert Dewar
1996-07-22 0:00 ` Steve Tate
1996-07-22 0:00 ` Stephen M O'Shaughnessy
1996-07-25 0:00 ` ++ robin
1996-07-20 0:00 ` Crash
1996-07-20 0:00 ` Robert Dewar
1996-07-23 0:00 ` Ralph Silverman
1996-07-22 0:00 ` Stephen M O'Shaughnessy
1996-07-22 0:00 ` Jeremy Nelson
1996-07-22 0:00 ` Stephen M O'Shaughnessy
1996-07-19 0:00 ` Jeremy Nelson
1996-07-20 0:00 ` Tim Behrendsen
1996-07-22 0:00 ` Ralph Silverman
1996-07-23 0:00 ` Joe Gwinn
1996-07-24 0:00 ` John A Hughes
1996-07-24 0:00 ` Theodore E. Dennison
1996-07-23 0:00 ` John A Hughes
1996-07-19 0:00 ` Craig Franck
1996-07-18 0:00 ` Patrick Horgan
1996-07-18 0:00 ` Robert Dewar
1996-07-19 0:00 ` Billy Chambless
1996-07-18 0:00 ` Jason Alan Turnage
1996-07-19 0:00 ` Vic Metcalfe
1996-07-19 0:00 ` Robert Dewar
1996-07-20 0:00 ` steved
1996-07-19 0:00 ` Peter Seebach
1996-07-20 0:00 ` Robert Dewar
1996-07-22 0:00 ` steidl
1996-07-22 0:00 ` Stephen M O'Shaughnessy
1996-07-23 0:00 ` Richard A. O'Keefe
1996-07-23 0:00 ` Michael Ickes
1996-07-25 0:00 ` Andy Askey
1996-07-24 0:00 ` system
1996-07-20 0:00 ` Jon Bell
1996-07-20 0:00 ` Andy Askey
1996-07-23 0:00 ` Ralph Silverman
1996-07-19 0:00 ` Andrew Gierth
1996-07-19 0:00 ` Scott McMahan - Softbase Systems
1996-07-20 0:00 ` steidl
1996-07-20 0:00 ` Tim Behrendsen
1996-07-21 0:00 ` Rich Maggio
1996-07-21 0:00 ` Robert Dewar
1996-07-22 0:00 ` Ralph Silverman
1996-07-23 0:00 ` Tim Behrendsen
1996-07-19 0:00 ` Reto Koradi
1996-07-23 0:00 ` TRAN PHAN ANH
1996-07-18 0:00 ` Walter B. Hollman Sr.
1996-07-23 0:00 ` Richard A. O'Keefe
1996-07-16 0:00 ` Darin Johnson
1996-07-24 0:00 ` Ralph Silverman
1996-07-17 0:00 ` Aron Felix Gurski
1996-07-19 0:00 ` Andrew Gierth
1996-07-19 0:00 ` Andrew Gierth
1996-07-19 0:00 ` Andrew Gierth
1996-07-21 0:00 ` Laurent Guerby
1996-07-22 0:00 ` Stephen M O'Shaughnessy
1996-07-21 0:00 ` Wayne
1996-07-22 0:00 ` Darin Johnson
1996-07-22 0:00 ` Darin Johnson
1996-07-23 0:00 ` Darin Johnson
1996-07-24 0:00 ` Michael Feldman
1996-07-24 0:00 ` Andrew J Steinbach
1996-07-24 0:00 ` Jon Bell
1996-07-24 0:00 ` John A Hughes
1996-07-24 0:00 ` system
1996-07-24 0:00 ` Ralph Silverman
1996-07-24 0:00 ` TRAN PHAN ANH
1996-07-24 0:00 ` Darin Johnson
1996-07-25 0:00 ` Andy Askey
1996-07-26 0:00 ` Mark Eissler
1996-08-02 0:00 ` Patrick Horgan
1996-08-04 0:00 ` Gary M. Greenberg
[not found] ` <4u76ej$7s9@newsbf02.news.aol.com>
1996-08-06 0:00 ` Ralph Silverman
1996-08-12 0:00 ` Patrick Horgan
1996-08-13 0:00 ` Darin Johnson
1996-08-13 0:00 ` What's the best language to learn? [was Re: Should I learn C or Pascal?] Tim Behrendsen
1996-08-14 0:00 ` Gabor Egressy
1996-08-15 0:00 ` Robert Dewar
1996-08-17 0:00 ` Lawrence Kirby
1996-08-17 0:00 ` Robert Dewar
1996-08-20 0:00 ` Lawrence Kirby
1996-08-16 0:00 ` Mark Wooding
1996-08-17 0:00 ` Dan Pop
1996-08-17 0:00 ` Tim Behrendsen
1996-08-17 0:00 ` Dan Pop
1996-08-18 0:00 ` Mark Wooding
1996-08-20 0:00 ` Peter Seebach
1996-08-21 0:00 ` Szu-Wen Huang
1996-08-21 0:00 ` Tim Behrendsen
1996-08-21 0:00 ` Adam Beneschan
1996-08-17 0:00 ` Peter Seebach
1996-08-18 0:00 ` Tim Behrendsen
1996-08-17 0:00 ` Robert Dewar
1996-08-21 0:00 ` Tanmoy Bhattacharya
1996-08-30 0:00 ` Goto considered really harmful Patrick Horgan
1996-09-04 0:00 ` Dennison
1996-08-14 0:00 ` What's the best language to learn? [was Re: Should I learn C or Pascal?] Peter Seebach
1996-08-14 0:00 ` Tim Behrendsen
1996-08-14 0:00 ` Robert Dewar
1996-08-14 0:00 ` Tim Behrendsen
1996-08-14 0:00 ` Dan Pop
1996-08-14 0:00 ` Robert Dewar
1996-08-15 0:00 ` Joe Foster
1996-08-14 0:00 ` Peter Seebach
1996-08-14 0:00 ` Tim Behrendsen
1996-08-14 0:00 ` Peter Seebach
1996-08-15 0:00 ` Robert Dewar
1996-08-16 0:00 ` Joe Foster
1996-08-18 0:00 ` Tim Behrendsen
1996-08-20 0:00 ` James Youngman
1996-08-21 0:00 ` Szu-Wen Huang
1996-08-15 0:00 ` Bob Gilbert
1996-08-15 0:00 ` DAVID A MOLNAR
1996-08-15 0:00 ` Bob Gilbert
1996-08-18 0:00 ` Tim Behrendsen
1996-08-16 0:00 ` Dr. Richard Botting
1996-08-18 0:00 ` Tim Behrendsen
1996-08-21 0:00 ` Szu-Wen Huang
1996-08-21 0:00 ` Tim Behrendsen
1996-08-22 0:00 ` Mark Wooding
1996-08-23 0:00 ` Bengt Richter
1996-08-23 0:00 ` Clayton Weaver
1996-08-16 0:00 ` Bob Gilbert
1996-08-17 0:00 ` Tim Behrendsen
1996-08-18 0:00 ` Robert Dewar
1996-08-18 0:00 ` Tim Behrendsen
1996-08-26 0:00 ` Patrick Horgan
1996-08-27 0:00 ` Alan Peake
1996-08-27 0:00 ` Steve Heller
1996-08-28 0:00 ` Tom Watson
1996-08-28 0:00 ` Robert Dewar
1996-08-30 0:00 ` Alan Peake
1996-08-31 0:00 ` Robert Dewar
1996-09-03 0:00 ` Alan Peake
1996-09-07 0:00 ` Robert Dewar
1996-09-07 0:00 ` .
1996-08-28 0:00 ` Robert Dewar
1996-08-29 0:00 ` Darin Johnson
1996-08-19 0:00 ` John Hobson
1996-08-19 0:00 ` Tim Behrendsen
1996-08-19 0:00 ` John Hobson
1996-08-20 0:00 ` Szu-Wen Huang
1996-08-27 0:00 ` Richard A. O'Keefe
1996-08-23 0:00 ` Alan Bowler
1996-08-21 0:00 ` What's the best language to learn? [any language except Ada] Bill Mackay
1996-08-22 0:00 ` Robert Dewar
1996-08-23 0:00 ` Larry J. Elmore
1996-08-22 0:00 ` Stephen M O'Shaughnessy
1996-08-24 0:00 ` Alan Brain
1996-08-15 0:00 ` Should I learn C or Pascal? Richard A. O'Keefe
1996-08-17 0:00 ` Alexander J Russell
1996-08-17 0:00 ` Mike Rubenstein
1996-08-17 0:00 ` Lawrence Kirby
1996-08-18 0:00 ` Ken Pizzini
1996-08-19 0:00 ` Richard A. O'Keefe
1996-08-23 0:00 ` Joe Keane
1996-08-16 0:00 ` Dr E. Buxbaum
1996-08-16 0:00 ` Mike Rubenstein
1996-08-16 0:00 ` Lawrence Kirby
1996-08-17 0:00 ` Paul Hsieh
1996-08-17 0:00 ` Mike Rubenstein
1996-08-19 0:00 ` Richard A. O'Keefe
1996-08-20 0:00 ` Mike Rubenstein
1996-08-22 0:00 ` Richard A. O'Keefe
1996-08-22 0:00 ` Mike Rubenstein
1996-08-20 0:00 ` Paul Schlyter
1996-08-20 0:00 ` Mike Rubenstein
1996-08-21 0:00 ` James Youngman
1996-08-22 0:00 ` TRAN PHAN ANH
1996-08-22 0:00 ` Dr E. Buxbaum
1996-08-27 0:00 ` Jeffrey C. Dege
1996-08-27 0:00 ` Ted Dennison
1996-08-27 0:00 ` Craig Franck
1996-08-27 0:00 ` Ted Dennison
1996-08-27 0:00 ` John Hobson
1996-08-27 0:00 ` Steve Heller
1996-08-27 0:00 ` Bob Cousins
1996-08-28 0:00 ` Robert Dewar
1996-09-01 0:00 ` Patrick Horgan
1996-09-12 0:00 ` Delete - Don't Bother to Read This Charles H. Sampson
1996-08-13 0:00 ` Should I learn C or Pascal? Ralph Silverman
1996-08-16 0:00 ` What's the best language to learn? [was Re: Should I learn C or Pascal?] Darin Johnson
1996-08-16 0:00 ` Robert Dewar
1996-08-16 0:00 ` system
1996-08-16 0:00 ` Should I learn C or Pascal? Darin Johnson
1996-08-20 0:00 ` Darin Johnson
1996-08-21 0:00 ` What's the best language to learn? [was Re: Should I learn C or Pascal?] Darin Johnson
1996-08-22 0:00 ` What's the best language to learn? [any language except Ada] Jon S Anthony
1996-08-23 0:00 ` Darin Johnson
1996-08-25 0:00 ` Robert Dewar
1996-08-24 0:00 ` Jon S Anthony
1996-08-05 0:00 ` Should I learn C or Pascal? Sherwin Anthony Sequeira
1996-07-24 0:00 ` Jon S Anthony
1996-07-25 0:00 ` ++ robin
1996-07-25 0:00 ` ++ robin
1996-07-25 0:00 ` ++ robin
1996-07-30 0:00 ` Robert Barnes
1996-07-30 0:00 ` Rob(t.) Brannan
1996-08-01 0:00 ` ++ robin
1996-08-01 0:00 ` Ralph Silverman
1996-08-06 0:00 ` ++ robin
1996-08-01 0:00 ` Tony Konashenok
1996-08-04 0:00 ` Lawrence Kirby
1996-08-09 0:00 ` Verne Arase
1996-07-31 0:00 ` What's the best language to start with? [was: Re: Should I learn C or Pascal?] Darin Johnson
1996-08-02 0:00 ` Alan Peake
1996-07-31 0:00 ` Darin Johnson
1996-08-01 0:00 ` Tim Behrendsen
1996-08-01 0:00 ` Stephen M O'Shaughnessy
1996-08-03 0:00 ` Tim Behrendsen
1996-08-06 0:00 ` Stephen M O'Shaughnessy
1996-08-05 0:00 ` Patrick Horgan
1996-08-06 0:00 ` Szu-Wen Huang
1996-08-06 0:00 ` Dan Pop
1996-08-08 0:00 ` steidl
1996-08-01 0:00 ` Stefan 'Stetson' Skoglund
1996-08-05 0:00 ` Stephen M O'Shaughnessy
1996-08-06 0:00 ` Bob Gilbert
1996-08-07 0:00 ` Stephen M O'Shaughnessy
1996-08-09 0:00 ` Bob Gilbert
1996-08-06 0:00 ` Patrick Horgan
1996-08-01 0:00 ` Andy Hardy
1996-08-07 0:00 ` Fergus Henderson
1996-08-07 0:00 ` Tim Behrendsen
1996-08-08 0:00 ` Szu-Wen Huang
1996-08-08 0:00 ` Tim Behrendsen
1996-08-08 0:00 ` Christopher R Volpe
1996-08-08 0:00 ` Peter Seebach
1996-08-08 0:00 ` Tim Behrendsen
1996-08-08 0:00 ` Peter Seebach
1996-08-09 0:00 ` Tim Behrendsen
1996-08-09 0:00 ` Peter Seebach
1996-08-15 0:00 ` James_Rogers
1996-08-17 0:00 ` Tim Behrendsen
1996-08-10 0:00 ` Mike Rubenstein
1996-08-10 0:00 ` Peter Seebach
1996-08-11 0:00 ` Craig Franck
1996-08-08 0:00 ` Szu-Wen Huang
1996-08-08 0:00 ` Tim Behrendsen
1996-08-09 0:00 ` Szu-Wen Huang
1996-08-09 0:00 ` Tim Behrendsen
1996-08-10 0:00 ` Szu-Wen Huang
1996-08-11 0:00 ` Tim Behrendsen
1996-08-09 0:00 ` some days weren't there at all
1996-08-10 0:00 ` Mike Rubenstein
1996-08-11 0:00 ` Szu-Wen Huang
1996-08-17 0:00 ` Richard Chiu
1996-09-04 0:00 ` Lawrence Kirby
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox