Re: [racket-users] My son's game in Racket
FYI, I think the Mac version is out of date. Dropbox says the mac installer file is two weeks old, and the windows version is a few hours old. On Mon, Aug 24, 2015 at 12:27 PM, John Carmack jo...@oculus.com wrote: We “released” my 10 year old son’s game that was done in Racket: www.1k3c.com I’m still taking a little heat from my wife for using an obscure language instead of something mainstream that is broadly used in industry, but I have nothing but good things to say about using Racket and DrRacket for a beginning programmer, and highly recommend it. I can’t recommend 2htdp/universe for this sort of thing, though. I had to drop to the native GUI bitmaps for performance reasons, hack around the lifecycle to support a separate editor window, and I still don’t know how to make the Quit menu item actually exit the app on the Mac version. I completely understand the reasoning for the way 2htdp/universe is built, and saying that a “real” project should use the grown-up APIs is fine, but the evolution from making a little animation to controlling it somehow to fleshing it out into a game is so natural that recommending a fairly big rewrite is unfortunate. I’m a big booster of functional programming, but I’m not sure that the functional drawing paradigm ever really sank in while my son was working with it, rather it felt like you just drew everything backwards with missing parenthesis at the end. I suspect that using the standard imperative GUI drawing code will make perfect sense to him. I’m not sure yet if we are going to migrate to the regular GUI code for upcoming work, or jump all the way to OpenGL so he can learn the joys of “Why is the screen all black?” -- 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. -- 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.
Re: [racket-users] eval PSA (was Sending Closures to Places)
One example of eval being used for extremely practical purposes is with SQL. Many practical programmers regularly generate SQL strings which are then passed to a remote server, which are then evaluated. Indeed, all the same sorts of arguments against eval may be made against SQL: 1. SQL is confusing: it is executed in a completely separate environment, it breaks lexical scope, and it has a wildly different everything from the Ruby I am used to, so why should we use it? 2. SQL is vulnerable to injection attacks. The programmer must be responsible for understanding this and know how to identify and address these faults. But why should we use it given these risks? 3. Even if 1 above wasn't true in many ways, it still introduces a layer of indirection. Do we really need that? Yet, SQL seems to enjoy some success. I might say: eval is a powerful tool that requires some thoughtful consideration, and should be used judiciously. Sent from my iPhone On Aug 5, 2015, at 7:11 AM, Michael Titke michael.tied...@o2online.de wrote: On 04/08/2015 16:34, Alexis King wrote: And that, I think, is the problem: eval seems a lot like a “one size fits all” approach to problem solving. ... We write in high-level languages for a reason. There’s no reason to stunt their ability to abstract by directly calling eval. I do understand that attitude of staying on top of a platform and in the high levels of a high level language. Exactly for those reasons some have written that pityful subroutine called eval and others even maintain it from time to time - just to not get your feets wet ;-) if not for a very good reason. -- 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. -- 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.
Re: [racket-users] Correction: Half-life was *not* written in a Lisp after all.
Crash bandicoot is the one example I know. Is that what you were thinking of? Sent from my iPhone On Jul 25, 2015, at 8:02 AM, Hendrik Boom hend...@topoi.pooq.com wrote: On Sat, Jul 25, 2015 at 12:04:07AM +, John Carmack wrote: Half-life was written in C on my Quake 1 codebase. Thank you for the correction. Now I get to wonder what the truth behind the rumour was. Evidently not half-life. -- hendrik -- 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. -- 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.
Re: [racket-users] What limits would you put on racket?
I think he's asking, when would you *not* use racket for something? What problems is it particularly suited towards, and what areas is it weak in? I'd also like to know how the list would answer this. PS sorry for forgetting to cc the list on my last msg Matthais. On Thu, Jul 23, 2015 at 9:59 AM, Matthias Felleisen matth...@ccs.neu.edu wrote: On Jul 23, 2015, at 12:51 AM, Sayth Renshaw flebber.c...@gmail.com wrote: Hi Just getting reacquainted with Racket going back through HTDP 2nd edition and the edx intro course. Is there a point where you would say yeah Racket shouldn't go there, it's best at A B or C you should go to Chez, Sbcl, CCL etc. What do you mean? -- 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. -- 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.
Re: [racket-users] Emacs Lisp as a Racket Language?
This is an excellent idea. I have no idea if this is being worked on, but I would love to help such an effort. On Thu, Jul 2, 2015 at 3:36 PM, Greg Davidson greg.david...@gmail.com wrote: Is there interest in creating a Gnu Emacs Lisp Racket Language, along with the underlying APIs (perhaps tied to DrRacket) sufficient to compile and run Gnu Emacs Lisp extension packages? Is there prior or ongoing work for such a project? For some years there has been an attempt to port Gnu Emacs to run under Guile Scheme. A big stumbling block is the vast amount of extensions written in Emacs Lisp and continuing development thereof. Racket seems to be a *much* better platform for such a project than Guile, don't you think? _Greg (a long-time ambivalent Emacs user tired of Emacs Lisp) -- 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. -- 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.