[racket] Racket in the large

From: gonzalo diethelm (gdiethelm at dcv.cl)
Date: Sat Aug 20 23:15:59 EDT 2011

I would like to thank everyone for their thoughtful answers. I will try to summarize a bit and then present my conclusions at the end. One minor note: I did try to clearly differentiate between Scheme and Racket in my original post; I am fully aware they are separate and different languages.

1. There definitely are enterprise-class applications in the wild which were built with Scheme and/or Racket. The following were mentioned: some of Disney World's virtual rides, the control system for some Boeing / USAF telescope arrays, a large enterprise system interacting with PostgreSQL, a simulator that helps the process of pricing hall structures, and a system used to convert data files between two very different hardware architectures.

2. It is possible to build console, GUI and web apps with Racket. There are countless console apps everywhere; DrRacket is a good example of a complicated GUI app; it is likely that the PLaneT server is implemented in Racket (could anyone please confirm this)?

3. Scheme (current standard) is the third-best language there is. Racket is the second-best language. It is not clear which would be the overall best language (this was tongue in cheek, I assume, but I would love to hear the answer).

4. Racket is a rather recent language that is just beginning to take off, and things are looking very bright.

5. There might be a Racket software engineering book soon, planned by Neil Van Dyke. I declare myself as a sure customer.

6. I think there is one thing missing in Racket, and this was also pointed out during the discussion: database drivers for major DBMSs (I would say at least Oracle, DB2 and SQL Server on the commercial front, and PostgreSQL, SQLite and MySQL on the open source front). In addition to that, I think Racket would be greatly enhanced by a single relational data access layer that would hide the differences between specific RDBMSs and facilitate switching from one to another. (Note: I am not trying to dictate anything about Racket, just voicing my opinion).

My conclusion is that I will keep learning and using Racket for my future projects; I fully expect that learning experience to be a thoroughly entertaining personal journey. Heartfelt thanks to everyone who contributed answers to my questions, and to those who have brought Racket to where it stands today. You guys rock.

Posted on the users mailing list.