Stories
Slash Boxes
Comments

SoylentNews is people

posted by mrpg on Saturday December 16 2017, @03:09PM   Printer-friendly
from the #! dept.

Lifehacker has an Interview with Brian Fox, the author of the Bash shell.

Brian Fox is a titan of open source software. As the first employee of Richard Stallman’s Free Software Foundation, he wrote several core GNU components, including the GNU Bash shell. Now he’s a board member of the National Association of Voting Officials and co-founder of Orchid Labs, which delivers uncensored and private internet access to users like those behind China’s firewall. We talked to him about his career and how he works.

[...] I first recall being interested in technology at the age of 6. My father, a physicist at Bolt, Beranek and Newman, had a teletype machine in the basement of the house we were living in. It connected to BBN via a modem. The baud rate was probably around 110bps—quite low. I used to hold down the CTRL key while pressing “G”, which would cause the bell to ring.

[...] I joined with my other 4 co-founders in 2017 to create the Orchid Protocol for a truly decentralized, surveillance-free internet.


Original Submission

 
This discussion has been archived. No new comments can be posted.
Display Options Threshold/Breakthrough Mark All as Read Mark All as Unread
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
  • (Score: 4, Informative) by crafoo on Saturday December 16 2017, @08:28PM (1 child)

    by crafoo (6639) on Saturday December 16 2017, @08:28PM (#610779)

    I like bash. Pretty good shell. It reminds me of the fact it was written to replace the Bourne shell. Ever look at the source code? A study in C preprocessor macro abuse (the Bourne shell, not bash).
    http://minnie.tuhs.org/cgi-bin/utree.pl?file=V7/usr/src/cmd/sh/mac.h [tuhs.org]

    Here are some of my favorite macros from the Bourne source code:

    #define IF if(
    #define THEN ){
    #define ELSE } else {
    #define ELIF } else if (
    #define FI ;}
    #define LOOP for(;;){
    #define SKIP ;
    #define DIV /
    #define TRUE (-1)

    the TRUE define is maybe my favorite, for it's simplicity.

    I also was reading some code C++ recently that had:
    #define private public
    Yeah, I guess. Sometimes it's just easier to just hammer in those screws.

    Starting Score:    1  point
    Moderation   +2  
       Interesting=1, Informative=1, Total=2
    Extra 'Informative' Modifier   0  
    Karma-Bonus Modifier   +1  

    Total Score:   4  
  • (Score: 1, Insightful) by Anonymous Coward on Saturday December 16 2017, @09:17PM

    by Anonymous Coward on Saturday December 16 2017, @09:17PM (#610795)

    Uh-huh. So the TRUE define is good for bitwise comparisons since all bits are 1.