Skip to content

A memorial center for Dennis Ritchie, the grandfather of UNIX, B, BCPL, ALTRAN, and Multics. One of the most underrated people in the history of computing.

License

Notifications You must be signed in to change notification settings

seanpm2001/SNU_2D_DennisRitchieMemorial

Repository files navigation


The SNU-DennisRitchieMemorial project

Dennis_Ritchie_2011.jpg This image failed to load. It may be due to the file not being reached, or a general error. Reload the page to fix a possible general error.

By:

Top

README.md


Read this article in a different language

🌐 List of languages

Sorted by: A-Z

Sorting options unavailable

( af Afrikaans Afrikaans | sq Shqiptare Albanian | am አማርኛ Amharic | ar عربى Arabic | hy հայերեն Armenian | az Azərbaycan dili Azerbaijani | eu Euskara Basque | be Беларуская Belarusian | bn বাংলা Bengali | bs Bosanski Bosnian | bg български Bulgarian | ca Català Catalan | ceb Sugbuanon Cebuano | ny Chichewa Chichewa | zh-CN 简体中文 Chinese (Simplified) | zh-t 中國傳統的) Chinese (Traditional) | co Corsu Corsican | hr Hrvatski Croatian | cs čeština Czech | da dansk Danish | nl Nederlands Dutch | en-us English English | EO Esperanto Esperanto | et Eestlane Estonian | tl Pilipino Filipino | fi Suomalainen Finnish | fr français French | fy Frysk Frisian | gl Galego Galician | ka ქართველი Georgian | de Deutsch German | el Ελληνικά Greek | gu ગુજરાતી Gujarati | ht Kreyòl ayisyen Haitian Creole | ha Hausa Hausa | haw Ōlelo Hawaiʻi Hawaiian | he עִברִית Hebrew | hi हिन्दी Hindi | hmn Hmong Hmong | hu Magyar Hungarian | is Íslenska Icelandic | ig Igbo Igbo | id bahasa Indonesia Icelandic | ga Gaeilge Irish | it Italiana/Italiano | ja 日本語 Japanese | jw Wong jawa Javanese | kn ಕನ್ನಡ Kannada | kk Қазақ Kazakh | km ខ្មែរ Khmer | rw Kinyarwanda Kinyarwanda | ko-south 韓國語 Korean (South) | ko-north 문화어 Korean (North) (NOT YET TRANSLATED) | ku Kurdî Kurdish (Kurmanji) | ky Кыргызча Kyrgyz | lo ລາວ Lao | la Latine Latin | lt Lietuvis Lithuanian | lb Lëtzebuergesch Luxembourgish | mk Македонски Macedonian | mg Malagasy Malagasy | ms Bahasa Melayu Malay | ml മലയാളം Malayalam | mt Malti Maltese | mi Maori Maori | mr मराठी Marathi | mn Монгол Mongolian | my မြန်မာ Myanmar (Burmese) | ne नेपाली Nepali | no norsk Norwegian | or ଓଡିଆ (ଓଡିଆ) Odia (Oriya) | ps پښتو Pashto | fa فارسی |Persian pl polski Polish | pt português Portuguese | pa ਪੰਜਾਬੀ Punjabi | No languages available that start with the letter Q | ro Română Romanian | ru русский Russian | sm Faasamoa Samoan | gd Gàidhlig na h-Alba Scots Gaelic | sr Српски Serbian | st Sesotho Sesotho | sn Shona Shona | sd سنڌي Sindhi | si සිංහල Sinhala | sk Slovák Slovak | sl Slovenščina Slovenian | so Soomaali Somali | [es en español Spanish | su Sundanis Sundanese | sw Kiswahili Swahili | sv Svenska Swedish | tg Тоҷикӣ Tajik | ta தமிழ் Tamil | tt Татар Tatar | te తెలుగు Telugu | th ไทย Thai | tr Türk Turkish | tk Türkmenler Turkmen | uk Український Ukrainian | ur اردو Urdu | ug ئۇيغۇر Uyghur | uz O'zbek Uzbek | vi Tiếng Việt Vietnamese | cy Cymraeg Welsh | xh isiXhosa Xhosa | yi יידיש Yiddish | yo Yoruba Yoruba | zu Zulu Zulu ) Available in 110 languages (108 when not counting English and North Korean, as North Korean has not been translated yet Read about it here)

Translations in languages other than English are machine translated and are not yet accurate. No errors have been fixed yet as of March 21st 2021. Please report translation errors here. Make sure to backup your correction with sources and guide me, as I don't know languages other than English well (I plan on getting a translator eventually) please cite wiktionary and other sources in your report. Failing to do so will result in a rejection of the correction being published.

Note: due to limitations with GitHub's interpretation of markdown (and pretty much every other web-based interpretation of markdown) clicking these links will redirect you to a separate file on a separate page that isn't the intended page. You will be redirected to the .github folder of this project, where the README translations are hosted.

Translations are currently done with Bing translate and DeepL. Support for Google Translate translations is coming to a close due to privacy concerns.


Index

00.0 - Top

00.1 - Title

00.2 - Read this article in a different language

00.3 - Index

01.0 - Description

02.0 - About

03.0 - 2021-update

04.0 - Notable works

04.1 - The C programming language

04.1.1 - The B programming language (precursor)

04.2 - ALTRAN

04.3 - UNIX

04.3.1 - Multics (precursor)

04.4 - The C programming language (book)

05.0 - Awards and honor

06.0 - History

06.1 - Pre-history

06.2 - Alpha History

06.3 - Beta History

06.4 - Modern History

07.0 - Wiki

08.0 - Copying

09.0 - Credits

10.0 - Authors

11.0 - Installation

12.0 - 404 page

13.0 - Version history

14.0 - Software status

15.0 - Sponsor info

16.0 - Contributers

17.0 - Issues

17.1 - Current issues

17.2 - Past issues

17.3 - Past pull requests

17.4 - Active pull requests

18.0 - Resources

19.0 - Contributing

20.0 - About README

21.0 - README Version history

22.0 - Technical notes

23.0 - Footer

23.9 - End of file


SNU-DennisRitchieMemorial

A memorial center for Dennis Ritchie, the grandfather of UNIX, B, BCPL, ALTRAN, and Multics. One of the most underrated people in the history of computing.


About

See above. This project is a memorial to Dennis Ritchie, who was a computer science pioneer born on September 9th 1941 and went on to create various contributions to computer science still used today, with the help of Ken Thompson, such as the C programming language, the UNIX operating system, and more. Although not a household name, it is said that if you had a magnifying glass for looking inside a computer, you could see his works everywhere, most notably for the standards he made, the C programming language, the UNIX operating system, and the UNIX philosophy.

Circa 2021 October 12th, Dennis Ritchie was found dead in his apartment. His death was not ruled a suicide, but was attributed to worsening prostate cancer and heart disease. Unfortunately, his death was largely overshadowed by the death of Apple founder Steve Jobs (if Dennis Ritchie didn't create what he did, Apple would be a very different company today, or not one at all, so it is sad to see his death get overshadowed like this)


2021 update

This project received a big update to its tributes on 2021 September 9th, on this day, Dennis Ritchie would have been 80 years old. Unfortunately, he died on 2011 October 12th

On this day, the project was modernized and received its own website. The official language of the project was also changed to C, Dennis's most notable contribution to computer science behind UNIX. HTML is now ignored.


Notable works

The C programming language

The_C_Programming_Language_logo

The C programming language is one of Dennis Ritchies most notable works, and is available on nearly every current computer in the world. It was created in the year 1970 and superceded the B programming language. It has still been going strong, and as of 2021, it has been in the top 3 for most used and most liked programming languages since 2001 or earlier. Source needed

Here is an early example of functions in K&R C (Ken and Ritchie C)

long some_function();
/* int */ other_function();

/* int */ calling_function()
{
    long test1;
    register /* int */ test2;

    test1 = some_function();
    if (test1 > 0)
          test2 = 0;
    else
          test2 = other_function();
    return test2;
}

Here is the famous C Hello World program:

main()
{
    printf("hello, world\n");
}

And here is a conforming version of the above sample:

# include <stdio.h>

int main(void)
{
    printf("hello, world\n");
}

The B programming language

BCPL, or the B programming language was the precursor to the C programming language. Although not widely used, it was the foundation of what the C programming language was built on.

Source code sample:

/* The following function will print a non-negative number, n, to
   the base b, where 2<=b<=10.  This routine uses the fact that
   in the ASCII character set, the digits 0 to 9 have sequential
   code values.  */

printn(n, b) {
        extrn putchar;
        auto a;
        /* Wikipedia note: auto declares a variable with automatic
           storage (lifetime is function scope), not "automatic typing"
           as in C++11. */

        if (a = n / b)        /* assignment, not test for equality */
                printn(a, b); /* recursive */
        putchar(n % b + '0');
}

Another sample:

/* The following program will calculate the constant e-2 to about
   4000 decimal digits, and print it 50 characters to the line in
   groups of 5 characters.  The method is simple output conversion
   of the expansion
     1/2! + 1/3! + ... = .111....
   where the bases of the digits are 2, 3, 4, . . . */

main() {
	extrn putchar, n, v;
	auto i, c, col, a;

	i = col = 0;
	while(i<n)
		v[i++] = 1;
	while(col<2*n) {
		a = n+1 ;
		c = i = 0;
		while (i<n) {
			c =+ v[i] *10;
			v[i++]  = c%a;
			c =/ a--;
		}

		putchar(c+'0');
		if(!(++col%5))
			putchar(col%50?' ': '*n');
	}
	putchar('*n*n');
}
v[2000];
n 2000;

These samples are from Dennis Ritchie and Ken Thompsons book on the C programming language.

ALTRAN

ALTRAN (ALgebraic TRANslator) is a programming language based on FORTRAN that allows for Algebraic translations. It is not very well known, but it is something he made.

Source code sample:

     PROCEDURE MAIN # SIMPLE EXAMPLE OF USE OF FTNOUT
     LONG ALGEBRAIC (X:10,Y:10) F
     ALTRAN FTNOUT
     OPTS(201,72) # FTNOUT REQUIRES A LINE LENGTH OF 72
     F = EXPAND( (X+2*Y+1000000)**3 )
     WRITE F # PRINT F
     WRITE (25) " FUNCTION F(X,Y)"
                "C EXAMPLE PROG WRITTEN WITH FTNOUT." ,
                F ,
                " RETURN"™,       " END"
# WE HAVE WRITTEN A SIMPLE PROGRAM ON UNIT 25, NOW WE INVOKE FTNOUT TO
# THIS ALTRAN OUTPUT TO LEGAL FORTRAN.
     FTNOUT
     END

UNIX

_UNIX does not have its own logo

Dennis Ritchie was one of the 2 original creators of the UNIX operating system and its design philosophy.

UNIX is still widely used today, but not the original system. The UNIX philosophy is still shared in many major modern projects, such as Linux (and its 600+ distributions) BSD (FreeBSD, NetBSD, DragonflyBSD, OpenBSD, MacOS, etc.) Solaris, and more.

UNIX_Structure.png

Pictured: the UNIX file structure.

Multics

Multics_logo.gif

MULTICS Multiplexed Information and Computing Service was the precursor to the UNIX operating system. It has been said that Multics "has influenced all modern operating systems since, from microcomputers to mainframes." [better source needed, WARNING: Google link](https://www.google.com/books/edition/The_Tym_Before/kn9eDwAAQBAJ?hl=en&gbpv=1&bsq=page 66)

The C programming language book

The book on the C programming language was created by Dennis Ritchie and Ken Thompson. It was the first detailed guide to the C programming language.


Awards and honor

Dennis Ritchie received some of the highest awards in computer science for his contributions, including:

  • IEEE Emanuel R. Piore Award (1982)

  • Turing Award (1983)

  • National Medal of Technology (1998)

  • IEEE Richard W. Hamming Medal (1990)

  • Computer Pioneer Award (1994)

  • Computer History Museum Fellow (1997)

  • Harold Pender Award (2003)

  • Japan Prize (2011)


History

This project has a short history so far.

Pre-history

This project was developed under SNU 3. Its development started on 2020 January 16th, but wasn't made public until 2020 June 3rd, when it was uploaded to GitHub during a transition phase (the start of the Git era, and the first month where I started converting my private projects like SNU into public projects)

Alpha history

On 2020 June 4th, this project received a Wiki, and its own README.md file.

On 2021 June 17th, after over a year of no development, this project was brought slightly up to code, and its next big update was planned for 2021 September 9th, the 80th birthday of Dennis Ritchie. This project also received its own organization today.

On 2021 September 9th, this project received a massive documentation and content update and was brought up to date to celebrate 80 years of Dennis Ritchies life and afterlife. This project also received its own website today.

Beta history

No Beta history to show for this project.

Modern history

No Modern history to show for this project.


Wiki

Click/tap here to view this projects Wiki

If the project has been forked, the Wiki was likely removed. Luckily, I include an embedded version. You can view it here.


Copying

View the copying license for this project here (if you haven't built the project yet with the makefile, here is the original link: COPYINGL

Please note that you also have to follow the rules of the GNU General Public License v3 (GPL3) which you can view here


Credits

View the credits file for this project and see the people who got together to make this project by clicking/tapping here


Authors

View the authors file for this project and see the authors of this project by clicking/tapping here


Installation

View the installation instructions file for this project here

Requirements: Jekyll, GitHub emulator (may not exist yet)


404 page

Test the 404 page for this project by clicking/tapping here

Getting a different 404 page? View the 404 page directly by clicking/tapping here


Sponsor info

SponsorButton.png

You can sponsor this project if you like, but please specify what you want to donate to. See the funds you can donate to here

You can view other sponsor info here

Try it out! The sponsor button is right up next to the watch/unwatch button.


Version history

Version history currently unavailable

No other versions listed


Software status

All of my works are free some restrictions. DRM (Digital Restrictions Management) is not present in any of my works.

DRM-free_label.en.svg

This sticker is supported by the Free Software Foundation. I never intend to include DRM in my works.

I am ussing the abbreviation "Digital Restrictions Management" instead of the more known "Digital Rights Management" as the common way of addressing it is false, there are no rights with DRM. The spelling "Digital Restrictions Management" is more accurate, and is supported by Richard M. Stallman (RMS) and the Free Software Foundation (FSF)

This section is used to raise awareness for the problems with DRM, and also to protest it. DRM is defective by design and is a major threat to all computer users and software freedom.

Image credit: defectivebydesign.org/drm-free/...


Contributers

Currently, I am the only contributer. Contributing is allowed, as long as you follow the rules of the CONTRIBUTING.md file.

    1. seanpm2001 - 54 commits (As of 2021 Thursday September 9th at 7:00 pm)
    1. No other contributers.

Issues

Current issues

  • None at the moment

  • No other current issues

If the repository has been forked, issues likely have been removed. Luckily I keep an archive of certain images here

Read the privacy policy on issue archival here

TL;DR

I archive my own issues. Your issue won't be archived unless you request it to be archived.

Past issues

  • None at the moment

  • No other past issues

If the repository has been forked, issues likely have been removed. Luckily I keep an archive of certain images here

Read the privacy policy on issue archival here

TL;DR

I archive my own issues. Your issue won't be archived unless you request it to be archived.

Past pull requests

  • None at the moment

  • No other past pull requests

If the repository has been forked, issues likely have been removed. Luckily I keep an archive of certain images here

Read the privacy policy on issue archival here

TL;DR

I archive my own issues. Your issue won't be archived unless you request it to be archived.

Active pull requests

  • None at the moment

  • No other active pull requests

If the repository has been forked, issues likely have been removed. Luckily I keep an archive of certain images here

Read the privacy policy on issue archival here

TL;DR

I archive my own issues. Your issue won't be archived unless you request it to be archived.


Resources

Here are some other resources for this project:

Project language file A | Project language file AB

View the editor configuration file for this project

View the linguist attributes file for this project

View the Git Ignore file for this project

View the organization for this project

Build/view the makefile for this project

Join the discussion on GitHub

View the issues/Raise an issue for this project

No other resources at the moment.


Contributing

Contributing is allowed for this project, as long as you follow the rules of the CONTRIBUTING.md file.

Click/tap here to view the contributing rules for this project


About README

File type: Markdown (*.md *.mkd *.markdown)

File version: 2 (Thursday, 2021 September 9th at 7:00 pm)

Line count: 0,770


README version history

Version 0.1 (Sunday, March 21st 2021 at 7:50 pm)

Changes:

  • Started the file
  • Added the title section
  • Added the index
  • Added the about section
  • Added the Wiki section
  • Added the version history section
  • Added the issues section.
  • Added the past issues section
  • Added the past pull requests section
  • Added the active pull requests section
  • Added the contributors section
  • Added the contributing section
  • Added the about README section
  • Added the README version history section
  • Added the resources section
  • Added a software status section, with a DRM free sticker and message
  • Added the sponsor info section
  • No other changes in version 0.1

Version 0.11 (Friday, July 16th 2021 at 9:20 pm)

Changes:

  • Updated several sections with corrected template syntax
  • Added the history section
  • Updated the language list switcher section
  • Updated the file info section
  • Updated the file history section
  • No other changes in version 0.11

Version 0.11B (Friday, July 16th 2021 at 9:25 pm)

Changes:

  • Fixed the footer, removed bad link (ddg.com does not redirect to duckduckgo)
  • Updated the file info section
  • Updated the file history section
  • No other changes in version 0.11B

Version 0.12A (Thursday, July 22nd 2021 at 6:26 pm)

Changes:

  • The typo SNU Erotica was removed entirely
  • Added a better name than file.svg
  • Fixed the title section
  • Fixed the index
  • Added the history section
  • Minor formatting fixes
  • Updated the file info section
  • Updated the file history section
  • No other changes in version 0.11B

Version 0.13 (2021, Saturday August 21st 2021 at 5:02 pm)

Changes:

  • Times are now compliant with ISO:8601 and use YYYY-MM-DD rather than MM-DD-YYYY
  • Updated the title section
  • Fixed and update template links
  • Updated the index
  • Added the copying section
  • Added the credits section
  • Added the installation section
  • Added the 404 page test section
  • Updated the resources section
  • Updated the contributors section
  • Added the technical notes section
  • Updated the footer
  • Updated the file info section
  • Updated the file history section
  • No other changes in version 6 (0.13)

Version 0.14 (2021, Tuesday August 24th 2021 at 9:31 pm)

Changes:

  • Times are now compliant with ISO:8601 and use YYYY-MM-DD rather than MM-DD-YYYY
  • Updated the index
  • Added the authors section
  • Updated the footer, adding support for the Swisscows search engine as a 4th option
  • Updated the file info section
  • Updated the file history section
  • No other changes in version 6 (0.13)

Version 1 (Thursday, June 4th 2020 at 3:13 pm)

Changes:

  • Started the file
  • Added the about section
  • Added the Wiki section
  • Added the version history section
  • Added the contributors section
  • Added the about README section
  • Added the footer section
  • No other changes in version 1

Version 2 (Thursday, 2021 September 9th at 7:00 pm)

Changes:

  • Adopted the GitHub pages V7 template and inherited its history
  • Updated the title section
  • Updated the index
  • Updated the about section
  • Added the notable works section, plus several subsections
  • Added the awards and honor section
  • Updated the history section
  • Updated the footer, adding support for the safe.duckduckgo search engine
  • Updated the file info section
  • Updated the file history section
  • No other changes in version 2

Version 3 (Coming soon)

Changes:

  • Coming soon
  • No other changes in version 3

Version 4 (Coming soon)

Changes:

  • Coming soon
  • No other changes in version 4

Technical notes

All times are UTC-7 (PDT/Pacific Time)

The encoding is UTF-8 and is compatible with Unicode 5.0 and up


You have reached the end of the README file

( Back to top | Exit to GitHub | Exit to Bing | Exit to DuckDuckGo | Exit to Safe.DuckDuckGo | Exit to Ecosia | Exit to Swisscows )

EOF