Názor k článku Projekt Gambit – další kvalitní interpret i překladač programovacího jazyka Scheme od binárně-transfóbní dezolát - Aha, takže v Naughty Dog používali Racket v...

  • Článek je starý, nové názory již nelze přidávat.
  • 15. 12. 2020 18:05

    binárně-transfóbní dezolát

    Aha, takže v Naughty Dog používali Racket v minulosti pro éru Playstation 3 - čili Racket použili pro The Last of Us (2013), ale už ne pro druhý díl. V obou případech jde ale o zajímavé použití Lispovkých jazyků (vzhledem k faktu, že u her se nejčastěji na skriptování používá něco jako Lua nebo dnes možná Python).

    Na https://ecraven.github.io/r7rs-benchmarks ten Stalin je v tabulce - akorát že spolu se SISC a TinyScheme jako jediné tři implementace nedokončily ani jeden test (možná špatně zkompilované ? - autor neuvádí použitý OS). Já mám podobný problém s Cyclone Scheme.
    Pokud si dobře vzpomínám, tak Stalin byl vydaný ještě pro R4RS a měl nějaké speciální optimalizace, díky kterým nebyl stoprocentně kompatibilní se standardem. No a jestli jsou ty testy dělané podle R7RS... možná ani není překvapující, že 10+ let starý kus SW propadl.

    "Scheme přakladače moc nezvládají zjistit, kdy přepnout na výpočty v nativnich floatech nebo integerech"
    Typicky Scheme objekty (interně) jsou ukazatele, no a ukazatele jde optimalizovat pro použití jako (nativní) integer celkem jednoduše (protože ukazatele jsou celá čísla, na většině platforem navíc vždy dělitelná 8 nebo 16-ti). S ostatními typy je samozřejmě problém, tam se musí použít typová inference, což má právě třeba Stalin.