Why Racket? Why Lisp?
I think one of the most amazing parts of Racket, and one of the reasons someone should try it out if they haven't, is that the source code and evaluator support images and not just text.  The following link shows one aspect of this:<p><a href="https://docs.racket-lang.org/quick/" rel="nofollow">https://docs.racket-lang.org/quick/</a><p>Just being able to put an image in a comment explaining your algorithm into your code would be huge improvement over the traditional syntax colored ascii you get with most languages and editors.  There are many times I've written an algorithm which is difficult to understand without the associated diagram I drew on the whiteboard or in an image editor.  Racket lets you insert that image or photo directly into your source, and I think this is a significant improvement over putting a link to that image in a comment.<p>Racket also goes a step beyond that by letting images be values which can be assigned to variables or returned from functions.  The link above shows this clearly.  I'm sure there is some value in this as a teaching aid, and I think that's why they did it, but you can also return mathematical plots from your functions and so on.  This feature is similar to the various interactive notebooks people use for Mathematica or Python, so it's not really specific to Racket, but it is interesting to play with.<p>Obviously there are downsides to putting images in your source.  After you do that, your code is no longer ascii, and it won't be something you can edit with vi, emacs, or any non-Racket IDE.  Also I doubt it will play nicely with git any time soon.  However, it's a neat feature of Racket whereas many of the other benefits in the article apply to any Scheme (Chez, Gambit, Chicken, Guile, etc...) or lisp.<p>I wish there was some reasonable standard (like a better version of Rich Text) that was commonly adopted so other languages could put graphical pictures in the source code.