Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 9 Jun 1996 21:25:11 GMT
From:      James Raynard <fqueries@jraynard.demon.co.uk>
To:        jmb@freefall.freebsd.org
Cc:        jbarrm@panix.com, questions@freebsd.org
Subject:   Re: Design & Implementation of 4.4BSD
Message-ID:  <199606092125.VAA04908@jraynard.demon.co.uk>
In-Reply-To: <199606091250.FAA03535@freefall.freebsd.org> (jmb@freefall.freebsd.org)

next in thread | previous in thread | raw e-mail | index | archive | help
>>>>> "Jonathan M. Bresler" <jmb@freefall.freebsd.org> writes:
> 
> Barry Masterson wrote:
> > 
> > Hi,
> > 
> > I'm working my way thru the recently released book entitled
> > "The Design and Implementation of the 4.4BSD Operating System",
> > and have come across some algorithm code samples on pages 199 & 203:
> > 
> > disksort(dq, bp)
> >     drive queue *dq;
> >     buffer *bp;
> > {
> >     if (drive queue is empty) {
> >         place the buffer at the front of the drive queue;
> >         return;
> >     }
> >     if (request lies before the first active request) {
> >         locate the beginning of the second request list;
> >         sort bp into the second request list;
> >     } else
> >         sort bp into the current request list;
> > }
> > 
> > I'm familiar with the basics of c/c++, perl, shell scripts, but this
> > use of "the", "of", "into", "at" is something I've yet to see. It
> > seems a little too human readable to be real code.
> > 
> > What language is this?  Are there other examples of this type of
> > programming in the FreeBSD source code?
> 
> 	its called "psuedo-code".  rather then present the actual source
> 	the authors are presenting the algorithm stripped of the details
> 	of data structures and pointer (etc....) that obscure the purpose
> 	of the code.  rather liek the difference between the blueprints
> 	and the building itself.

It might also be worth mentioning that pseudo-code is very useful when
writing code - first decide what the function is supposed to do, then
write down pseudo-code that describes this in more detail, then write
comments based on the pseudo-code. All you have to do then is fill in
the gaps between the comments! 8-)

> ps.	this is one of the joys of FreeBSD--getting to see the real
> 	code

Absolutely!

-- 
James Raynard, Edinburgh, Scotland | http://www.freebsd.org/~jraynard/
james@jraynard.demon.co.uk         | jraynard@freebsd.org




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199606092125.VAA04908>