leo Vegas

LeoVegas Casino

200% welkomstbonus + 200 Free Spins!

Clojure op OCI en Leovegas

Speciaal voor de techneuten onder ons willen wij via deze weg berichten dat wij op korte termijn de functionele programmeertaal Closure gaan gebruiken op de website. Wanneer je Clojure vergelijkt met de programmeertaal die we op dit moment voornamelijk gebruiken (Java), kunnen we concluderen dat Clojure, ( je spreekt het trouwens uit als Kloozjer) in tegengenstelling tot Jave een functionele programmeertaal is. We kunnen hier een klein voorbeeld van geven:

Als we in Java bijvoorbeeld willen uitzoeken of een string uitsluitend uit whitespace karakters bestaat, dan zou dat op de volgende manier gaan:

public class StringUtils {
  public static boolean isBlank(String str) {
    int strLen;
    if (str == null || (strLen = str.length()) == 0) {
      return true; 
    }
    for (int i = 0; i < strLen; i++) {
      if ((Character.isWhitespace(str.charAt(i)) == false)) {
        return false; 
      }
    }
    return true; 
  }
}

Als we het bovenstaande in Clojure zouden programmeren, dan zou dat er als volgt uitzien:

(defn blank? [s] (every? (fn [c] (Character/isWhitespace c)) s))

Zoals je wel kunt zien is de Clojure versie vele malen korter! We kunnen nog lang en breed uitweiden over wat nu precies de technische reden is waarom we gebruik gaan maken van deze programmeertaal, maar waar het op neer komt is dat het los van een stuk minder tikken, veel effectiever, netter en eleganter is. Een mooi kenmerk van Clojure is dat je de kracht van functioneel progrogrammeren hebt en ook nog eens gebruik kunt maken van Java Libraries.

Voor de kenners hebben we een overzicht samengesteld van de Closure eigenschappen, gekoppeld aan andere talen:

  • Lazy evaluation / lazy lists: Haskell
  • Persistente datastructuren: Haskell en andere puur functionele talen
  • Dynamic typing: Javascript, PHP, Python, etc
  • Type hinting (voor performance): diverse dynamisch getypeerde talen
  • Code-is-data en metaprogrammeren met macro’s: Lisp
  • Interoperabiliteit met Java/JVM: Groovy, Scala
  • Protocols (soort van interfaces, maar krachtiger): Objective-C
Voor de niet technische lezers:

De verandering in sommige delen van de website doen wij eenvoudigweg omdat het zodoende voor de programmeurs makkelijker wordt om aanpassingen te doen.Als aanpassingen sneller en effectiever gemaakt kunnen worden betekent dit ook weer, dat uiteindelijk de klant/ eindgebuiker, weer optimaal van de website gebruik zal kunnen maken. Als bezoekers van de website zullen jullie er ook geen hinder van ondervonden.

Overigens is de omschakeling naar deze programmeertaal een tendens. Meerder review websites binnen onze branche maken deze stap. ook hebben wij vernomen dat verschillende operators, zoals bijvoorbeeld Leovegas ook langzamerhand de overstap maken.

 

Lost Password