Portable learning
coursePublished source available

What learners can expect

  1. Trace programs as explicit state transformations and reason about values, types, control flow, and observable effects.
  2. Design functions and interfaces that expose inputs, outputs, effects, and coherent responsibilities.
  3. Use lists, dictionaries, sets, strings, CSV, and JSON appropriately while separating representation, parsing, and validation.
  4. Implement small search, sorting, accumulation, grouping, and transformation algorithms and reason about their correctness and scaling.
  5. Diagnose syntax, runtime, and logic failures using traces, invariants, boundary cases, unit tests, regression tests, and properties.
  6. Build controlled numerical experiments and seeded simulations whose parameters, assumptions, and reproducibility are explicit.
  7. Write readable, documented, testable programs and use version-control concepts to make change inspectable.
  8. Build and defend a standard-library scientific/data CLI that validates data, computes reproducible summaries, simulates uncertainty, and passes automated acceptance tests.

Version history

  1. 0.2.0course · MCF 1.1 · 126.0 KiB

0 stars · 0 forks

This repository is an original publication.

No public direct forks yet.