Study the implementation of DrRacket...

114 views
Skip to first unread message

Steve Beisner

unread,
Sep 21, 2017, 11:00:14 AM9/21/17
to Racket Developers
(Posted here because the group description says for those "interested in the implementation of Racket.")

This is probably obvious to experienced Racket programmers... but I'm new to both Racket and
its code base, and studying the DrRocket IDE application looks like it might be good path to mastering
both. (I ultimately want to rewrite an existing GUI-intensive web app in another language as a Racket
desktop application.)

The DrRacket IDE looks like a nice, not-too-complex example of racket GUI programming.
Can someone point me to or provide information on setting up the DrRacket repository 
(https://github.com/racket/drracket) as a DrRacket project for study / modification / building?
  • How to get the github repository in my local DrRocket IDE for study / modification?
  • How to build?
I'm guessing the answer may be somewhere in the voluminous Racket docs... pointer?

Thanks for your help.

SteveB

Matthias Felleisen

unread,
Sep 21, 2017, 11:30:48 AM9/21/17
to Steve Beisner, Racket Developers
Let me recommend that you rebuild Scheme Esq. from our 1999 paper “The Revenge of the Son of the Lisp Machine”.

https://www2.ccs.neu.edu/racket/pubs/#icfp99-ffkf

This is a bit outdated and needs an update anyway, but once you get the sense of how to build a mini-drracket, you can point people here to your Github repo and they can suggest improvements.

[Asumu Takikawa also renovated this piece of code recently and we can point you there later.]

Jens Axel Søgaard

unread,
Sep 21, 2017, 11:40:16 AM9/21/17
to Steve Beisner, Racket Developers
As an alternative GUI program to study, there is AcitivityLog2:


--
You received this message because you are subscribed to the Google Groups "Racket Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to racket-dev+unsubscribe@googlegroups.com.
To post to this group, send email to racke...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/racket-dev/9c4c88c8-60f6-4b42-8ac0-9a22e0600f41%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.



--
--
Jens Axel Søgaard

Sam Tobin-Hochstadt

unread,
Sep 21, 2017, 12:03:45 PM9/21/17
to Steve Beisner, Racket Developers
Here's how to install Racket and have a cloned version of DrRacket
that you can play with:

> git clone git://github.com/racket/racket
> cd racket
> make # this will build racket, install all the standard packages, and compile them
> mkdir extra-pkgs # this directory is listed in .gitignore for this purpose
> cd extra-pkgs
> raco pkg update --clone drracket # clone the drracket repo and point raco pkg at the clone

Sam
> email to racket-dev+...@googlegroups.com.

Steve Beisner

unread,
Sep 21, 2017, 12:22:22 PM9/21/17
to Racket Developers
Trying to run this inside DrRacket (version 6.10.1)
  • Downloaded and unzipped the repository from https://github.com/alex-hhh/ActivityLog2
  • Opened  "ActivityLog2-master/rkt/main.rkt" in DrRacket IDE
  • Pressed "Run" in toolbar... it starts running.
  • After a couple of minutes of running with no output, I get, in red, in the status
    area of the IDE: "Background expansion terminated abnormally (out of memory)"
Am I doing something wrong?

Thanks,
SteveB


On Thursday, September 21, 2017 at 10:40:16 AM UTC-5, jensaxel wrote:
As an alternative GUI program to study, there is AcitivityLog2:

2017-09-21 17:00 GMT+02:00 Steve Beisner <steveb...@gmail.com>:
(Posted here because the group description says for those "interested in the implementation of Racket.")

This is probably obvious to experienced Racket programmers... but I'm new to both Racket and
its code base, and studying the DrRocket IDE application looks like it might be good path to mastering
both. (I ultimately want to rewrite an existing GUI-intensive web app in another language as a Racket
desktop application.)

The DrRacket IDE looks like a nice, not-too-complex example of racket GUI programming.
Can someone point me to or provide information on setting up the DrRacket repository 
(https://github.com/racket/drracket) as a DrRacket project for study / modification / building?
  • How to get the github repository in my local DrRocket IDE for study / modification?
  • How to build?
I'm guessing the answer may be somewhere in the voluminous Racket docs... pointer?

Thanks for your help.

SteveB

--
You received this message because you are subscribed to the Google Groups "Racket Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to racket-dev+...@googlegroups.com.

To post to this group, send email to racke...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/racket-dev/9c4c88c8-60f6-4b42-8ac0-9a22e0600f41%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Jens Axel Søgaard

unread,
Sep 21, 2017, 1:05:15 PM9/21/17
to Steve Beisner, Racket Developers
2017-09-21 18:22 GMT+02:00 Steve Beisner <steveb...@gmail.com>:
  • Opened  "ActivityLog2-master/rkt/main.rkt" in DrRacket IDE
Am I doing something wrong?


According to the build instructions:

you need to use "run.rkt".

/Jens Axel

Steve Beisner

unread,
Sep 21, 2017, 1:20:26 PM9/21/17
to Racket Developers
Oops... thanks -- that did it.  Thanks for the help.
Reply all
Reply to author
Forward
0 new messages