Krystall (programmeringsspråk)

Crystal er et objektorientert programmeringsspråk designet og utviklet av Ary Borenszweig og Juan Wajnerman, samt over hundre oppførte bidragsytere. Crystal er utviklet med åpen kildekode under Apache 2.0-lisensen, og syntaksen er inspirert av Ruby . Type variabler og argumenter blir sjekket statisk uten at det er nødvendig å spesifisere det i koden.

Historisk

Arbeidet med språket begynte i juni 2011, med målet å skape et språk med Ruby's eleganse og produktivitet og hastigheten, effektiviteten og sikkerheten til statisk skriving av et kompilert språk. Opprinnelig kalt Joy , og prosjektet ble raskt omdøpt til Crystal .

Den kompilatoren Crystal ble først skrevet i Ruby, men ble omskrevet senere i Crystal bli et språk egen vert i 2013. Den første offisielle versjonen ble lansert i juni 2014. Og i juli 2016, Crystal tiltrer TIOBE indeksen .

Beskrivelse

Selv om det ser ut som Ruby-språket i sin syntaks, samler Crystal seg til mye mer effektiv innfødt kode ved hjelp av en LLVM- backend . Prisen å betale for dette er forbudet mot å bruke de dynamiske aspektene ved Ruby. Nylige ytelsestester har vist at Crystal presterer stort sett likt C for et bredt spekter av beregningsoppgaver. Språket har automatisert søppelinnsamling og tilbyr for øyeblikket en Boehm-samler . Crystal har et makro-system, støtter generisitet og overbelastning av operatører.

Eksempler

Bonjour Monde

Her er den enkleste måten å skrive en "Hello World" i Crystal:

puts "Hello World!"

Eller ved å bruke en objektorientert programmeringsstil :

class Greeter def initialize(name) @name = name.capitalize end def salute puts "Hello #{@name}!" end end g = Greeter.new("world") g.salute

HTTP-server

# A very basic HTTP server require "http/server" server = HTTP::Server.new do |context| context.response.content_type = "text/plain" context.response.print "Hello world, got #{context.request.path}!" end puts "Listening on http://127.0.0.1:8080" server.listen(8080)

Referanser

  1. Krystallkildekode
  2. (no-US) María Inti David , "  Historien bak #CrystalLang  " , Manas Technology Solutions ,1 st april 2016( les online , konsultert 11. oktober 2018 )
  3. “  Hvorfor Crystal programmeringsspråk? | Motion Express | Ruby, Rails, Golang & DevOps  ” , på motion-express.com (åpnet 11. oktober 2018 )
  4. Farvel Ruby torsdag
  5. Hvorfor Crystal programmeringsspråk?
  6. Crystal 0.1.0 utgitt!
  7. (i) Ramon Wartala, "  Crystal - En Ruby programmering språk-esque  " , Linux Magazine,2016(åpnet 16. mars 2016 )
  8. Noen standarder for forskjellige språk
  9. Krystallimplementeringer for The Computer Language Benchmarks Game
  10. Er vi raske ennå?

Eksterne linker