[talk] Tonight: true(1) and false(1), The Classical Code Reading Group of Stockholm, NYC*BUG Mix Tape Edition
Isaac Levy (.ike)
ike at blackskyresearch.net
Wed Oct 7 09:00:27 EDT 2015
October 10, Wednesday, 1845
OPNsense: true(1) and false(1), The Classical Code Reading Group of Stockholm, NYC*BUG Mix Tape Edition
Read by: George Brocklehurst
Stone Creek Bar & Lounge: 140 E 27th St
Notice: this will be a fun departure from our normal format
A different sort of event, cloned (with blessing) from The Classical Code Reading Group of Stockholm (recently in NYC).
This is a reading group for code. Our focus will be the classics and tools we use every day. The inspiration is the shared metaphors and expressions we have in natural language due to common books (e.g. Hitchhiker's Guide to the Galaxy, Romeo and Juliet) and movies (e.g. Hackers, A Christmas Carol).
True(1) and false(1):
This meetup will concentrate on simple and common commands: true and false. We will start with the OpenBSD true program and compare it to FreeBSD's, Solaris', GNU bash's, and GNU's. They all have different complexity, and some even have different features, which should provide for an interesting discussion.
Feel free to read the source code ahead of time and reflect on some of the talking points or come up with additional ones.
While reading the code consider the following discussion points in addition to any you think of: What is the code boilerplate and why is it there? This is a small program; how did the different implementations demonstrate this? Why does this program exist? What shortcuts did they take and how do those make it easier to read?
For those who don't yet have five variants of true.c on your hard disk, you can find them online:
OpenBSD:
http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/usr.bin/true/true.sh?rev=1.2&content-type=text/x-cvsweb-markup
http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/usr.bin/false/false.sh?rev=1.2&content-type=text/x-cvsweb-markup
FreeBSD:
http://svnweb.freebsd.org/base/head/usr.bin/true/true.c?revision=216370&view=markup
http://svnweb.freebsd.org/base/head/usr.bin/false/false.c?revision=216370&view=markup
Solaris:
https://github.com/illumos/illumos-gate/blob/master/usr/src/cmd/true/true.c
https://github.com/illumos/illumos-gate/blob/master/usr/src/cmd/false/false.c
GNU Bash (builtin):
https://raw.githubusercontent.com/bminor/bash/master/examples/loadables/truefalse.c
GNU Coreutils:
http://git.savannah.gnu.org/cgit/coreutils.git/tree/src/true.c
http://git.savannah.gnu.org/cgit/coreutils.git/tree/src/false.c
This should all take about three hours.
Speaker Bio
George Brocklehurst (of the original Stockholm meetup) will be leading the reading.
A different sort of NYC*BUG meeting, cloned (with blessing) from The Classical Code Reading Group of Stockholm (recently in NYC):
http://www.meetup.com/Classical-Code-Reading-Group-of-New-York/events/224744308/
Special thanks to Mike Burns and George Brocklehurst for bringing this excellent event to NYC!
This is a reading group for code. Our focus will be the classics and tools we use every day. The inspiration is the shared metaphors and expressions we have in natural language due to common books (e.g. Hitchhiker's Guide to the Galaxy, Romeo and Juliet) and movies (e.g. Hackers, A Christmas Carol).
More information about the talk
mailing list