← ← ←


Timeline is an event-oriented language used to create flight plans for the Time-Space Manifold, which allows travel through time and space.

Each Timeline program (flight plan) is written for a specific journey through time and space. No flight plan is used more than once. In fact, this is by design. The creation of a general-purpose flight plan proved infeasible and it's easier and more reliable to hand-craft a flight plan for each journey.

This reality shapes the design of Timeline, which eschews abstraction, high level generic concepts, and many features found in general purpose programming languages. Timeline is designed with a focus on observability and predictability. Language features must always be in service of making the flight plan easier to understand and predict.

To aid in this endeavor, Timeline includes a simulator, which runs a Monte Carlo simulation on the flight plan. The simulator includes a model of the known universe, along with a statistical model of areas of space to provide a good estimate of what matter and energy not on the galatic map might be there and disuprt the journey. The output of the simluator is a risk analysis of the proposed flight plan.


After receiving a waiver against the 2048 Ban on Machine Learning Algorithms, Dr. Neil Clarke created a general-purpose pilot using an advanced neural network. Despite early successes, a disasterous journey's failure could not be explained. Becuase of the inherent nature of machine learning algorithms, Dr. Clarke was unable to explain the failure. His waiver was rescinded and he needed a new approach.

Given that a general-purpose pilot was infeasible, Dr. Clarke instead began to program the Time-Space Manifold for a specific journey instead of a general-purpose one. He initially did this in machine code.

The first 23 journeys were a successful. Journey 24, however, was a faiure, but the nature of the failure proved incredibly easy to explain (and thus correct for). After 15 more journeys (2 of which did fail in easily explainable ways), the team agreed that a per-journey approach to programming the flight plan was the right way to go.

Dr. Clarke's method of programming the Time-Space Manifold was to write down pseudo code and hand-translate it to machine code. That pseudo code became the basis of Timeline, and the language was created soon after. Since it's first version, it has powered over 500 journeys through time.


We hope that other fields that offer programmable devices will take inspiration from Timeline and create poweful languages that embrace clear core values and provide only those features needed to solve specific problems.

Timeline itself will continue to evolve based on the usage patterns we see in the field. The simulator itself is under constant improvement to give us a better idea of how we can predict the behavior of our programs.


David Bryant Copeland is the co-author of Timeline, along with Dr. Neil Bell. Mr. Copeland has written numerous programming books, such as Agile Web Development with Rails 6 and The Senior Software Engineer. If you are interested in programming for the web or in a general purpose way (as opposed to programming the Time-Space Manifold), please check out those books.

You can read more about this site in the colophon.