Copper is een programmeertaal die is ontwikkeld als een vervanger voor C, met een sterke focus op minimalisme en eenvoud. De taal biedt diverse moderne functionaliteiten zoals type-overerving, genericity, option-types en een Ruby-stijl syntaxis. Daarnaast onderscheidt het zich door een eenvoudig importsysteem zonder headers en snelle compilatietijden. Copper is uitgebracht onder de BSD-licentie.
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
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