> > > Racket doesn't play well with existing code bases (except C things) > > and so my hypothesis is simply that to gain adoption of Racket, you > > need to solve problems that aren't in the "production path." Good > > thing there are *lots* of those! All those Python scripts you have? > > All of those Perl scripts that no one understands anymore? Those are, > > in my opinion, the way in. > > Funny story: That's how I cam back to Racket/Scheme. Several years ago I > worked on a web application written in Common Lisp. I needed some > "electronic duct tape" work done. I didn't use Common Lisp because of > its slow startup time and I was unhappy with shell scripts either. > Therefore I remembered that there was PLT Scheme/Racket around with > "batteries included". So nowadays lot of these tasks are now done using > Racket. >
There are some really neat packages that help make writing these sorts of scripts in Racket easier. The Rash <http://docs.racket-lang.org/rash/> language is designed with a line-based syntax and pipelining features similar to traditional shell scripting languages, but because it's a Racket lang you can import Racket libraries for use in your script and you can extract parts of your shell script into regular Racket modules as the script grows in complexity. There's also the Scripty <http://docs.racket-lang.org/scripty/> language, which does something a bit weird: it lets you write what packages a script depends on inside the script itself, and when the script is run it will automatically check to see if they're installed and prompt the script user to install them if they're not. This lets you use whatever packages you like in your Racket scripts without burdening your coworkers with the task of making sure those packages are installed and up to date before trying to run the script. -- You received this message because you are subscribed to the Google Groups "Racket Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to racket-users+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.