Copper

  • Type-overerving voor elk type
  • Genericity
  • Meerdere retourwaarden
  • Out-of-order definities
  • Eenvoudig importsysteem, geen headers
  • Niet alles bevindt zich in de globale naamruimte
  • Uitgestelde statements (Deferred statements)
  • Eenvoudige iteratoren
  • Ruby-stijl syntaxis
  • Option-types
  • Snelle compilatie

Minimalisme

Minimalisme is de belangrijkste functie; de taal is bedoeld om eenvoudig te zijn, zodat iemand met beperkte hersencapaciteit, zoals ik, deze volledig kan begrijpen. De syntaxis is simpel, bijna alles is expliciet en de meeste constructies zijn gangbaar.

Voorbeeld

Een simpel voorbeeld dat verder gaat dan de zinloze "hello world".

class Point
  attr x: Int
  attr y: Int

  def init(x: Int, y: Int)
    self.x = x
    self.y = y
  end

  def translate(dx: Int, dy: Int)
    self.x += dx
    self.y += dy
  end
end

func main: Int
  var pt: Point!
  pt.init(3, 5)
  pt.translate(1, 0)
  println("x = \a, y = \a", pt.x, pt.y)
  return 0
end

import "std"

Licentie

Copper is uitgebracht onder de BSD-licentie.

© 2026 Marc Kerbiquet - Laatst bijgewerkt: 2026-06-20