HackerTube.dev

Physics in Clojure - Colin Smith

ClojureTV · 12.8K views · 2017-03-31 · 40:19

Open on YouTube ↗

If playback is restricted in your region, try opening the original video. Use Mark watched to add it to your marked videos.

Overview

Colin Smith introduces Structure and Interpretation of Classical Mechanics and his Clojure port, sicmutils. He shows how higher-order functions and a symbolic algebra system can represent Lagrangian mechanics.

On Hacker News

Recommended as the best introduction to SICM and sicmutils and a showcase of what such symbolic systems can do.

Recommended by 2 HN people across 2 months · HN mentions 2019–2023

Topics

Search by tags

What people said

hcarvalhoalves · 2021-03 · Recommendation

Computer Algebra is criminally underused - it has the potential to make math-heavy critical-path code a lot more clear, testable, observable and bug-free by design. I feel I need to mention "Structure and Interpretation of Classical Mechanics" by Wisdom and Sussman, and the accompanying "scmutils" library, which first implemented in Scheme many of the same features, although this Julia library seems to be more complete. There's also a great one-to-one port to Clojure by Colin Smith [2] in case you want to use it on a more production-friendly environment. The Strange Loop talk [3] is a good showcase of the power and simplicity of these kind of systems. [1] [LINK] [2] [LINK] [3] [VIDEO]

Read the original HN comment ↗
ja-85 · 2019-04 · Recommendation

Thanks, this is a nice port! I worked through SICM using sicmutils as a backup. The MIT Scheme version sometimes "locked up" on my solutions to exercises and sicmutils did not (the Foucault pendulum problem comes to mind). This video is an introduction to SICM and sicmutils: [VIDEO]

Read the original HN comment ↗
erichocean · 2023-12 · Reference

> static typing helps everywhere I think "Structure and Interpretation of Classical Mechanics" is a good example of the kind of software a dynamically-typed Lisp is superior at, beyond the usual suspects like SQL, R, Python, etc. Here's an example of SICM in Clojure: [LINK] And a talk about it's implementation here: [VIDEO]

Read the original HN comment ↗

Sources

Video by ClojureTV, played through YouTube.

Data and selection notes

HN summaries and labels may contain AI errors. HN dates refer to discussions, not video publication.

HN Library: HackerTube export (2026-10-31) and open-index/hacker-news. Upstream summaries and classifications may contain AI errors.

Views, duration and playback status refresh separately from the published catalog. When an update fails, existing data remains visible.

Selection checks
  • SaaS & AI candidates: Topic keywords do not match
  • Editor-approved picks: Editorial review is required

Rule matches identify candidates. They do not guarantee video quality or financial results.

About the library and its sources