Sunday 20 September 2020

Computer Science Reference List

CS Reference List

This is a collection of papers, websites and books that I have found useful when researching into computer science. Mainly into programming paradigms and languages, focusing on understanding OOP

OOP



Phenomena and Concepts

Website

http://people.cs.aau.dk/~normark/oop-csharp/html/notes/intro-oop_themes-phen-concepts-sect.html

About

Learning how objects relate to philosophical concepts and phenomena, provides a starting point to model objects.

Archived

  • Wayback machine (20/09/2020)

Specialization of classes

Website

http://people.cs.aau.dk/~normark/oop-csharp/html/notes/inheritance_themes-specialization-sect.html#inheritance_specialization-sect_section-title_1

About

A description of inhertiance using sets.

Archived

  • Wayback machine (20/09/2020)

A Tour of C++

Blog post

https://www.informit.com/articles/article.aspx?p=25003

Archived

  • Wayback machine (all pages available 20/09/2020)

Programming with abstract data types

PDF

https://dl.acm.org/doi/10.1145/942572.807045

About

Barbara Liskov defines the concept of an ADT which underpins OOP classes.

Archived

  • Present on the ACM website (27/12/2020)

A universal modular ACTOR formalism for artificial intelligence

PDF

https://dl.acm.org/doi/10.5555/1624775.1624804

About

A paper that describes how OOP classes can become functional entities.

Archived

  • Present on the ACM website (27/12/2020)

ALGOL bulletin No. 21 - AB21.3.6 "Record Handling"

About

An old ALGOL bulletin paper that defines records and their relation to types.


Record handling

URL

https://www.computerhistory.org/collections/catalog/102724664

About

C.A.R Hoare defines classes and subclasses.


On Understanding Data Abstraction

About

This paper describes what the difference between an Object (OOP) and ADT (abstract data type) is.


SIMULA INFORMATION - Common Base Language





Modules



Criteria for modularity

About

A white paper describing how to modularize a program.

Archived

  • Google drive (20/09/2020)

 


C++



CUED - C++ Namespaces

URL

CUED C++ Namespaces

About

Relating namespaces to Contexts (DDD).

Archived

  • Wayback machine (27/12/2020)

 

 


Software Engineering


Structured Design W.Stevens, G.Myers, and L.Constantine

About

A explanation of Structed Design in a seminal paper.


Structured Analysis for Requirements Definition D.T.Ross and K.E. Schoman, JR

About

A brief explanation of Requirements Definition and a brief system design cycle.


The delta system description language motivation, main concepts and experience from use - Petter Handlykken and Kristen Nygaard 1981

About

Interesting paper on concepts and language to define systems.

 

No comments:

Post a Comment

The difference between class and object.

 The difference between class and object is subtle and misunderstood frequently. It is important to understand the difference in order to wr...