5 ms·
What is the use case for this?
by hit8run 11mo ago
What is the use case for this?
- gus_massa 11mo agoIt's a general purpouse language. Reusig an old comment, I used it for * A bot to reply emails that uses IMAP, SMTP and web scrapping. (It's not 100% automatic. It replies only the easy cases and adds labels so I reply the tricky ones.) * An program to cleanup Moodle backups that uses gzip and xml. I compiled it and send it to my coworkers. (The backups have too much info, so before restoring it in another site it's better to remove the unused parts.)
- Zambyte 11mo agoAs the other reply said, it is general purpose. It has a focus on education tooling, and language design (languages can be easily implemented on Racket)
- hatmatrix 11mo agoWhat are some difference between the education tooling around Racket and that which enables "industrial" applications Common Lisp is known for?
- spdegabrielle 11mo agoThat's a good question. The education tooling is all optional (so their only impact is perceptual) DrRacket, teaching languages, and supporting libraries are all optional. (see Minimal Racket - just the compiler and package manager https://download.racket-lang.org/releases/9.0/#:~:text=SHA256%3A%C2%A039f035f90e20b531203988ab5b661fd9b15edbe58fc6806a1ee762dcc2ba53f9-,Minimal%20Racket,-%3F%C2%A0 https://download.racket-lang.org/releases/9.0/#:~:text=SHA25... ) I'd like to know what tooling is missing from Racket that is available in major general purpose languages like C#, Java, or Common Lisp implementations?
- evdubs 11mo agoJava has the VisualVM. https://visualvm.github.io/ https://visualvm.github.io/ I would love a similar tool for Racket.
- vindarel 11mo agobetween CL, some say it's the debugging and interactive experience: https://gist.github.com/vindarel/c1ef5e043773921e3b11d8f4fe1ca7ac https://gist.github.com/vindarel/c1ef5e043773921e3b11d8f4fe1...
- gus_massa 11mo agoI think SBCL has better support for annotations. You can claim that a variable is an int and the compiler will thrust you and generante fast code. You can use Typed Racket to add annotations. The compiler will verify your that your claims are consistent and perhaps add some runtime checks when you read data or use other external sources. It will remove most of the internal checks, but not all of them. (Probably some features of Racket like impersonators make generating fast code faster, but on the other hand allows Typed Racket and other variants/libraries to ensure external objects behave correctly.) Disclaimer: I use "Plain" Racket, so both descriptions may be slightly wrong.
- gus_massa 11mo agoToo late to edit: > impersonators make generating fast code faster should be > impersonators make generating fast code harder
- bjoli 11mo agoI used it to write a macro processor for C which allowed me to write some macros with s-expressions and have it expand to a lot of C code. That way I could actually write real macros for C. I have also written GUI apps for various things. Kind of like what I did with TCL back in the day. I wrote a little maths game for my son. I also wrote a static site generator in it that allowed me to execute racket code at compile time (interpreting each markdown file as a source file).
- Jehuty64 11mo agoI wrote custom language for designing Age of Empires 2 Random Maps. Basically AoE2 already supports it, but the underlying language is very very primitive. While I am not aware of anyone actually using what I made, it was mostly nice learning experience. https://github.com/Erbenos/aoe2-rms https://github.com/Erbenos/aoe2-rms Because its on top of Racket, you get usual high-level language faculties for basically free.
- YouAreWRONGtoo 11mo agoYou can solve the versioning problem on your GitHub page by using Nix.
- igouy 11mo agohttps://blog.cloudflare.com/topaz-policy-engine-design/ https://blog.cloudflare.com/topaz-policy-engine-design/
- spdegabrielle 11mo agoThe developers spoke at RacketCon this year https://youtu.be/7Twlh-Opq5E?si=JkWxLib8HTnjVjPI https://youtu.be/7Twlh-Opq5E?si=JkWxLib8HTnjVjPI
- evdubs 11mo agoI use it for trading options. https://github.com/evdubs/renegade-way https://github.com/evdubs/renegade-way
- YouAreWRONGtoo 11mo ago[dead]