Documents
This is a collection of documents dealing with computer science concepts.
WARNING! If you see "Incomplete", it is incomplete! Many incomplete documents end in random sentences, and are at best half-baked. If you read an incomplete document, I am not responsible for the resulting confusion.
Languages
| Name | Description |
|---|---|
| Language Aspects | A list of aspects that make languages expressive. Includes an analysis of a few popular languages. |
| CLOS Advantages | A summary of CLOS advantages over some other common object systems |
| Closures | OO replaces the need for closures |
| Continuations | Structured programming replaces the need for continuations |
| Covariant Function Inheritance | Covers the definition of covariant function inheritance. |
| The Dynamic Dispatch Problem | Incomplete. Dynamic dispatch creates a problem with interface specifications. |
| Infix Operators | The advantages of infix operators |
| Lazy Evaluation | Incomplete. Semantics of Lazy Evaluation |
| Macros and Higher Order Functions | Looking at the various aspects of functions as parameters. |
| Multimethods | Multimethod protocols |
| Partial Evaluation | Comparing Partial Evaluation with Lazy Evaluation and Currying |
| Prototype Inheritance | A description of how inheritance can be implemented in a prototype based language. |
| Refactorings | Incomplete. A random list of refactorings. |
| Whitespace | Incomplete. Should whitespace have semantic meaning in a language? |
Meta Object Protocol
| Name | Description |
|---|---|
| Inheritance and Instantiation | A clean, formal definition of inheritance and instantiation and the relationship between them. |
| Inheritance or Encapsulation | For single inheritance systems, when should we inherit, when should we encapsulate? |
| Multiple Instantiation | The implementation of multiple Instantiation |
| Primitive Attributes | A list of minimal primitive functionality in a computing environment. |
| Reflection | Incomplete, An enumeration of some types of reflection. |
Database Application
| Name | Description |
|---|---|
| Aggregation Semantics | Incomplete, description of aggregation semantics in an OO environment and its relationship to spaces. |
| Aggregation Types | Describe the types of aggregation for implementing fast incremental versions. |
| Object-Table Mapping | How DBOS maps class definitions to tables |
| Record or Attribute Locking | Advocates the use of fine attribute level locking. |
| Self Joins | Incomplete, Adding a ninth database operator |
| Spaces | Description of spaces and why they are useful |
| UID Management | How the DBOS manages Unique IDs. |
| Var_Elem_Rec | A look at the relationship between variables, elements and records. |
DBOS Function Model
| Name | Description |
|---|---|
| Deadlock Avoidance | The DBOS avoids deadlocks by removing the conceptual mistake called "resources". |
| Function | Definition of a DBOS function |
| MSM | The Messaging State Machine definition |
| Return | Return values are modeled as messages. |
| Exceptions | Exceptions are a specialization of returns. |
Other Important DBOS Aspects
| Name | Description |
|---|---|
| Bit Field | Information and order are related . |
| Projects | Incomplete. Projects manage programming assumptions. This is an investigation into how assumptions should be managed. |
| Stability | How to implement a stable reflective system |
| Template | Definition of the template |
| Versioning | Incomplete, look at the implementation of versioning to the DBOS |
| Visual API | Overview of concepts in the DBOS visual API. |
Other Documents
| Name | Description |
|---|---|
| Definitions | List of definitions both for DBOS and generally |
| Garbage Collection | An investigation into a GC technique |
| Migration | A high level review of migration, and an attack plan for implementation. |
| References | Describes what references and symbols are, and how they are modeled in a reflective architecture |
| Serialization | Incomplete |
| State Machines | Incomplete, Examine the continuum from DFA to NDFA, and find an 0(n) conversion. |