Turns are Better than Radians (2022)

Programmers and mathematicians are weighing the benefits of representing angles as “turns” (fractions of a full rotation) rather than traditional radians or degrees, especially in graphics, games, and numerical code. Advocates argue that turns map cleanly to fractions, fixed‑point integers, and phase cycles, and can avoid unnecessary π conversions in trig functions, while critics note that radians are deeply tied to calculus, Taylor series, and clean derivative formulas. The exchange broadens into questions about whether angles should count as true units in dimensional analysis, how well programming language type systems model physical units, and what math libraries and compilers would need to support alternative angle conventions efficiently.

Angle Units and Dimensionality

  • Strong debate over whether angles are truly “dimensionless” or just treated that way by convention.
  • Radians, degrees, gradians, turns, etc. convert via scale factors, implying “units” even if the official SI dimension is 1.
  • Some argue units behave like types: they multiply/divide but you shouldn’t apply sin/log/exp to dimensionful quantities; arguments of trig and exponentials should be pure scalars.
  • Others note physics routinely defines functions on unitful domains (e.g., wavefunctions), so the “no units in functions” rule is more convention than necessity.

Turns vs Radians in Mathematics

  • Several commenters stress that radians are the “natural” unit for calculus:
    • Small-angle approximations sin(x) ≈ x and cos(x) ≈ 1 − x²/2 rely on radian definition.
    • Derivatives stay clean: d/dx sin(x) = cos(x); using turns introduces constant 2π factors (e.g., d/dx sin_turn(x) = 2π cos_turn(x)).
    • Euler’s formula, differential equations, and many geometric/spherical formulas become messier under turns.
  • Others counter that for pure geometry or periodic phenomena, [0,1) in turns is conceptually nice, and π’s ubiquity partly reflects historical convention.

Turns vs Radians in Programming and APIs

  • Pro-turns points:
    • Representing angles as fractions of a turn gives exact binary fractions (e.g., quarter-turns) and easy wrapping with modular arithmetic.
    • Works well with fixed-point and integer hardware; was common in older 8‑bit game engines and fantasy consoles.
    • Many implementations of sin/cos internally normalize by 2π anyway; direct turn-based APIs (or sinpi/cospi-style half-turn APIs) avoid repeated conversions and some rounding artifacts.
  • Skeptical points:
    • Standard math libraries and numerical methods (Taylor/minimax polynomials, derivatives, optimization) are built around radians.
    • Compilers generally won’t optimize away multiply/divide-by-π sequences safely due to floating‑point semantics.
    • Using turns in code that conceptually works in radians risks confusion unless units are encoded in the type system.

Other Angle Systems and Use Cases

  • Mentions of degrees for human intuition and divisors, gradians (400 per turn), and “mils” in artillery for simple distance–angle relations.
  • Some propose richer angle types carrying units, or representing angles as (sin, cos) tuples to minimize trig calls.

Overall Tone

  • Broad agreement: radians remain best for calculus and theoretical work; turns (or cycles) can be convenient and efficient in certain programming and engineering contexts, especially when phases and wrapping dominate.