Software-update: Racket 7.9

Racket logo (79 pix)Racket is een ontwikkeltaal waarmee andere ontwikkeltalen ontwikkeld kunnen worden. Daarnaast kan gewoon in Racket zelf ontwikkeld worden. Het stond eerder bekend onder de naam PLT Scheme en komt uit de Lisp-Scheme-familie. Voor de achtergrond verwijzen we naar het manifesto, geschreven onder leiding van Matthias Felleisen. De ontwikkelaars hebben versie 7.9 van Racket uitgebracht, met de volgende aankondiging:

Release Announcement for Version 7.9:
  • Racket CS may become the default Racket implementation in the next release. If, between this release and the next, no bugs are discovered in Racket CS that are more serious than those typically discovered in Racket BC, then Racket CS will become the default for the next release. (Serious Racket CS bugs were found since the v7.8 release, but they’re ever fewer and farther between.)
  • Various improvements to Check Syntax arrows and renaming, thanks to Sorawee Porncharoenwase.
  • Full support for struct type properties in Typed Racket, developed by Fred Fu.
  • Racket CS now supports parallel garbage collection, along with improvements for place-local-allocation and incremental promotion.
  • Unix platforms now use the XDG filesystem conventions for the locations of per-user configuration and library files by default, but legacy paths are still used where they exist already.
  • Scribble improvements by Sorawee Porncharoenwase, William Bowman, and Shu-Hung You.
  • Improvements to the plot library from Alex Harsányi and Bert De Ketelaere.
  • The datum form from syntax/datum works with syntax pattern variables and syntax-parse attributes.
  • Unicode input works with recent versions of libedit in addition to libreadline. On Mac OS, a compatible version of libedit is included with Racket.

Racket

Versienummer 7.9
Releasestatus Final
Besturingssystemen Windows 7, Linux, BSD, Solaris, UNIX, Windows Server 2012, Windows 8, Windows 10, Windows Server 2016, Windows Server 2019
Website Racket
Download https://download.racket-lang.org/
Licentietype Voorwaarden (GNU/BSD/etc.)

Door Bart van Klaveren

Downloads en Best Buy Guide

04-11-2020 • 15:52

4

Submitter: begintmeta

Bron: Racket

Update-historie

10-'22 Racket 8.6 3
05-'22 Racket 8.5 0
02-'22 Racket 8.4 7
11-'21 Racket 8.3 0
07-'21 Racket 8.2 0
05-'21 Racket 8.1 0
02-'21 Racket 8.0 0
11-'20 Racket 7.9 4
08-'20 Racket 7.8 0
05-'20 Racket 7.7 0
Meer historie

Reacties (4)

4
4
2
1
0
0
Wijzig sortering
Nooit van gehoord. Heeft iemand hier een project voorbeeld en/of praktische toepassing, waarom ik een (nieuwe) taal zou willen ontwikkelen?
Nooit van gehoord. Heeft iemand hier een project voorbeeld en/of praktische toepassing, waarom ik een (nieuwe) taal zou willen ontwikkelen?
Scheme (wat nu Racket genoemd wordt) is een typische academische taal. Het voordeel is dat je die kan gebruiken om veel zaken te bestuderen: zo hebben wij die gebruikt om o.a. filesystem, RDB, garbage collection en compilers te schrijven. Ik dacht dat het in de academische wereld ook voor een aantal wetenschappelijke projecten gebruikt werd, maar pin me daar niet op vast.
Als je er eens in wilt duiken, bereid je dan voor op veel (en dan bedoel ik véél) haakjes. Typische IDE is Dr. Racket, maar vergelijk dat niet met full blown Visual Studio/IntelliJ IDEA/Eclipse/... want dat zit niet op hetzelfde niveau.
Een eigen DSL maken kan hier mee gok ik.
Denk aan iets als Puppet. Use cases zijn divers. Een eigen scripttaal waarmee je dingen wil beperken die er mee gedaan worden kan.
Plugin talen zouden denk ik ook mogelijk moeten zijn.
Grappig om te zien dat je tekeningetjes tussen de commando regels worden geplaatst. Dat heb ik sinds MSX screen 2 niet meer gezien. Gezien de sponsoren (zie onderaan de homepage) wordt het ook wel buiten de academische wereld gebruikt.
Typisch voor Lisp talen is dat:
You know the value of everything, but the costs of nothing.
Deze quote van een van de Lisp guru's (zie Hackers and Painters) is dat je alles gedefinieerd hebt, maar geen idee hebt hoeveel tijd het kost om het uit te rekenen. Feitelijk bouw je een AST in het geheugen die je pas met eval() aanroept.

Op dit item kan niet meer gereageerd worden.