I have a question about the new behavior.
(ObResearch: actually, I checked the drracket, racket, and gui repos, and I
couldn’t find any new push, so I couldn’t check the code myself.)
Does it simply strip newlines, as Jack suggested, or does it signal an error?
The latter seems less likely to
Shriram, have you ruled out the classic multi-paste prolem? It looks very much
like that’s what you’re seeing here.
That is, if you paste a string that ends with a newline into the “do what I
mean” box, it will appear still to be blank. So you paste it again. So you
paste it again. Eventually
Can you be more specific? Are there particular programs that you can point to?
I think the solution to your problem is going to depend a bit on the kind of
slowdowns that you’re seeing.
> On Sep 7, 2020, at 05:04, Denis Maier wrote:
> I've started working
Has anyone here developed a reasonable workflow for exporting slideshow
presentations to google slides? It appears that google slides cannot import
PDFs or SVGs. It looks like it has support for importing PPT files,
unsurprisingly, but AFAIK slideshow won’t export ppt files. I have no idea how
Yes, there is documentation for this feature! Here are two ways to get it:
1) On a machine with 7.8 installed, run `raco docs prop:struct-field-info` at
the command line, or (equivalently) highlight the word in drracket and hit F1.
Both of these open a web browser window pointed at your local
This release announcement mistakenly omitted two important contributors: Tim
Brown, and Dionna Amalie Glaze. Many thanks for their help!
> On Aug 3, 2020, at 09:35, John Clements wrote:
> Racket version 7.8 is now available from
Racket version 7.8 is now available from
* Racket CS may become the default Racket implementation in the next
release. With the improvements in this release, Racket CS provides all
of the functionality of Racket BC (the current default
Let me jump in here and say a few things that maybe everyone already knows :).
The stepper’s annotation places a *ton* of annotation on a computation, and
allows the reconstruction of the full computation. Errortrace does less, and
The both share a goal of allowing the
Ryan, I just tested your pull request, and… it doesn’t make much difference in
One important thing that I realize that I *totally neglected* to mention is
that I’m running CS racket here, not BC. Based on my experiments, it appears
1) CS is much faster than BC for both
> Paulo Matos
> 'John Clements' via Racket Users writes:
>> Bang! I was wrong. Here’s another similar trace:
>> raco setup: 6 running:
>> raco setup: 4 running: /jbc-utils/
To Advait Raykar:
In response to a Slack thread about a scrubbing interface for sound playback:
Looks like you folks covered all the bases on rsound. It sounds like the
"right" interface for this would be something that plays a file from start to
finish but also allows you to asynchronously
Good to hear from you!
Unfortunately, it’s going to be really hard to help you without more
Can you give us some context on what your goal is, here? Is this part of a
class? Your problem seems very under-specified.
> On May 27, 2020, at 8:53 PM, Med Ra wrote:
Okay, I could just be putting my foot in my mouth, here, but it sounds like
you’re describing the kinds of things that are typically done by a
type-checker. Have you considered adding a type-checking pass? It would contain
an environment that maps names like “h1” to “types” that indicate that
> So far, I have made two attempts to work around these issues: (1) by creating
> a metamodel-like data structure using Racket structs, and transforming syntax
> objects into struct instances; or (2) using syntax objects only and attaching
> context data to each of them as a syntax
100% yes but no. I am a long-time gradescope user, and I’ve been very happy
with it. However, my usage has been entirely with scanned paper exams. I like
the work that Gradescope has been doing, but I haven’t engaged with any of
their tools beyond the paper-scanning ones, so I definitely don’t
I think I maybe get this error every time I start up. Is this normal? I tried
moving all prefs files aside to see if it was a configuration error, and … same
In fact, even when I go into the three listed directories (pkgs/algol60,
collects/racket, collects/syntax/parse/lib) and delete
Racket version 7.7 is now available from
* Racket CS remains ready for production use---thanks to those who have
been putting it into practice to help iron out the remaining
kinks---and it now supports a C API for embedding into other
applications. See the
Wait! I got it! I forgot. It’s not hash-lang. I have to choose the language via
the “choose language…” menu.
Sorry for the noise, folks.
> On Apr 28, 2020, at 3:28 PM, 'John Clements' via Racket Users
> Okay, I have several things to say about Father Time.
Okay, I have several things to say about Father Time.
Thing one: running through these demos (frtime/demos) is kind of astonishing.
There just doesn’t seem to be enough code for it to do what it’s doing. The
father time programs are *incredibly* concise distillations of behavior. The
Alongside everything else, I started exploring writing code to post GraphQL
queries (specifically in order to interact with Canvas). The language’s syntax
is yet another needlessly complicated approximation to s-expressions, but I do
have some things working. Not sure if I should put together a
Are you asking because you’d like your own code using SXML to be typed, or
because you’d like the sxml implementation to be typed? I think another way of
asking this is: are you worried about bugs in your code, or about bugs in
Oleg’s code? I think that rewriting the sxml library into TR would
n Mac it's:
> > previous window: Shft + Cmd + ~
> > next window: Cmd + ~
> > or
> > previous window: Cmd +
> > next window: Cmd +
> > On Tue, Apr 21, 2020 at 4:29 PM 'John Clements' via Racket Users
> > wrote:
> > Here’s
> On Tue, Apr 21, 2020 at 4:29 PM 'John Clements' via Racket Users
> Here’s a question I have about both DrRacket and Emacs. It often happens in
> my workflow (grading files, for instance) that I want to set up a list of
> files, and then have an easy way to move forward o
Here’s a question I have about both DrRacket and Emacs. It often happens in my
workflow (grading files, for instance) that I want to set up a list of files,
and then have an easy way to move forward or back in that list (“next file”,
“previous file”). I see that emacs has a function called
First off: you’re very close.
Thing two: I think you need a clearer comment on the meaning of the “months”
vector. Your description does not actually say what the vector represents or
Thing three: Here’s my question to you. Suppose that I tell you a year and a
month and the result
Relevance: our build scripts make automated queries to GitHub.
Historically, GitHub has allowed authentication using query parameters; both a
user token and a client user/password pair could be specified as part of the
URL. It now appears that this is being deprecated, per
Many thanks! Should I cancel my pull request?
> On Mar 21, 2020, at 18:34, Robby Findler wrote:
> I've pushed something so that racket:text% will indent better when it
> doesn't have a display.
> On Fri, Mar 20, 2020 at 4:32 PM John Clements
>> Made a pull
Right, sorry, I should have added… doing *that* (eliminating the traces for
production code) is almost trivial: just make a macro that’s defined to
disappear when a flag is set:
(define-for-syntax production-flag #f)
(define-syntax (debug-only stx)
(syntax-case stx ()
It sounds like you’re looking for a way to have the trace inserted for you by a
debugging tool, so you don’t have to remember to take it out again later. This
wouldn’t be hard to do, but (as far as I know) no one’s taken the time to do it.
> On Mar 21, 2020, at 8:43 AM, Nicholas Papadonis
]: *** [plain-in-place] Error 2
make: *** [in-place] Error 2
make 240.77s user 75.70s system 398% cpu 1:19.32 total
> On Mar 20, 2020, at 3:11 PM, 'John Clements' via Racket Users
> Here’s the tail of a build of racket HEAD that just failed during a call to
> realloc(). I went
Here’s the tail of a build of racket HEAD that just failed during a call to
realloc(). I went back far enough to be sure I had a full record of what was
running on cores 0-7.
I strongly suspect this is not reproducible, and I don’t think there’s any
further information that would be useful
Made a pull request, many thanks!
> On Mar 20, 2020, at 1:36 PM, Robby Findler wrote:
> Looks right to me!
> On Fri, Mar 20, 2020 at 3:26 PM John Clements
> Could I add a note like this to the docs for the indentation function?
> “NB: indentation results depend on the
Could I add a note like this to the docs for the indentation function?
“NB: indentation results depend on the graphical context associated with the
object; it may be necessary to associate the object with an editor-canvas and
frame in order to get the expected results."
That text might not
(list table rx1 rx2 rx3 rx4))
> (send t tabify-all)
> (send t get-text)))
> (values untabbed tabbed lambda-tabbed)))
> On 3/20/20 3:12 PM, ‘John Clements’ via Racket Users wrote:
>> That actually solves a bunch of
Ah! this solves the issue. many thanks.
> On Mar 20, 2020, at 1:03 PM, Robby Findler wrote:
> Looks like you need a display or the text gets confused about how big
> (in pixels) characters really are:
> #lang racket/gui
> (require framework)
> (define f (new frame% [label ""]))
> (define t
That actually solves a bunch of problems for me… but strangely, not the initial
one. If, for instance, I tabify
using the tabify-all method, the line with the four gets an indentation of 2,
not 8. This is definitely different from DrRacket’s behavior.
Any idea how to fix this?
Please ignore, thanks.
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 view this discussion on the web visit
I’m sure many other people have something like this, but here’s “Lab 5” from my
currently-running PL course:
It introduces church numeral encodings and also this kind of true-false
encoding as small programming challenges in
Wait, we *all* have postmark libraries?
> On Jan 23, 2020, at 16:29, Jens Axel Søgaard wrote:
> Den tor. 23. jan. 2020 kl. 01.47 skrev Matthew Butterick :
> I concur on Postmark. For 2+ yrs I've used it with the Racket web server for
> mbtype.com. I pass the server settings to
Belatedly: awesome, many thanks!
> On Jan 27, 2020, at 02:39, Sean Kemplay wrote:
> This is a good (free) course that takes you the lates best practices of JS
> (getting more functional), react and then react native.
Have you taken a look at How To Design Programs? At the end of section one, you
should have what you need to build these games and others like them:
> On Feb 3, 2020, at 03:31, Wilzoo wrote:
> Hi guys, so I am working on rolling dice
"expected a string convertible to an integer, got: ~e"
> On Feb 15, 2020, at 10:37, 'John Clements' via Racket Users
>> (string2value "-1234"
> (string2value "-1234")
- : Integer
> (string2value "abcd")
- : Integer
Is this your desired behavior?
> On Feb 12, 2020, at 16:43, Alain De Vos wrote:
> I came to the following result as conversion function :
> #lang typed/racket
> (: string2value (-> String
Many thanks! These look good.
> On Jan 26, 2020, at 05:15, Darren Newton wrote:
> You Don't Know JS https://github.com/getify/You-Dont-Know-JS
> The tutorial
I’m grading code, and one of my students keeps leaving out spaces in weird
[(< x 3)(+ x 1)]
[else (f(g 9))])
I took a quick look in the style guide, and it doesn’t seem to have much to say
about this. Here’s what it has:
Don’t pollute your code with spaces at the
> 3. Use `unsafe-require/typed`
> 4. Use the third argument to `index-of?`
> On Sun, Dec 15, 2019 at 9:28 PM 'John Clements' via Racket Users
>> It looks like my quick attempt at importing index-of into TR is running into
>> a problem
It looks like my quick attempt at importing index-of into TR is running into a
problem. Here’s the program I ran:
[index-of (All (T) ((Listof T) T -> (U False Natural)))])
(index-of '(n s e w) 'n) ;; returns... #f?
The problem here is that the piano notes are not all the same duration.
Specifically, your chord (chord 60 64 67) is a bit longer:
(rs-frames (chord 60 64 67)) -> 161634 frames
(rs-frames (piano-tone 72)) -> 144000 frames
There are a lot of ways of solving this, including clipping the two
> On Dec 3, 2019, at 2:29 PM, James Platt wrote:
> On Nov 27, 2019, at 12:42 PM, Darth Vadør wrote:
>> I am having the same problem, and I am pretty sure that this is because the
>> new DMG uses the novel APFS format, which is not readable by our old HFS
>> As far as
> What would be the magic xattr command?
> 27 November 2019 20:26 "'John Clements' via Racket Users"
> This is 100% workaround rather than a fix, but have you considered using the
> minimal racket tarball:
This is 100% workaround rather than a fix, but have you considered using the
minimal racket tarball:
…and then manually blessing the binaries using xattr and then installing the
rest of the system
Racket version 7.5 is now available from
* Almost all of Racket version 7.5 is distributed under a new,
less-restrictive license: either the Apache 2.0 license or the MIT
It looks to me like you’re looking for “raco pkg update —clone” or “raco pkg
update —link”, but I may be mistaken.
raco pkg update —clone drracket
in, say, your home directory should clone the package that includes the
drracket collection (and possibly others that are
Forgive me if I’m missing something important, but I see messages like this all
the time when I’m using two installations of racket simultaneously on one
machine. It suggests to me that you need to recompile using a raco make, or
just delete the compiled files. Again, apologies if I’m
hmm, I don’t see that. Perhaps it’s already been fixed? If this persists for
you, maybe you can show the output of
curl -v -o “/tmp/index.html” “https://download.racket-lang.org/“
> On Oct 22, 2019, at 2:28 PM, calvin tolman wrote:
> this url is broken:
Nice! Many thanks for sharing this.
> On Sep 21, 2019, at 2:06 AM, Alex Harsanyi wrote:
> A few days ago I posted about adding maps to the DrRacket REPL -- while a
> nice demo, this is not why I implemented the `map-snip%` object. The reason
> I implemented it is because I wanted to
Oh! and in fact, you already bundled it as a pkg:
> On Sep 7, 2019, at 2:23 PM, Alex Knauth wrote:
>> On Sep 6, 2019, at 1:04 PM, 'John Clements' via Racket Users
Perhaps I just don’t know how to search the racket docs correctly, but IIUC
there’s no support for Streams in the current TR implementation? I just want to
use stream-cons, empty-stream, stream-first, and stream-rest. I guess the easy
workaround is just to use thunks to roll my own stream, but
The gen:stream documentation has this example:
(define-struct list-stream (v)
[(define (stream-empty? stream)
(empty? (list-stream-v stream)))
(define (stream-first stream)
(first (list-stream-v stream)))
(define (stream-rest stream)
Want to play with this code, show it to students and co-workers.
> On Aug 25, 2019, at 14:52, Zachary Romero wrote:
> Here is a little tessellation design I made along with some helper functions
> to generate them:
In that case, perhaps you can watch the calls to dlopen with strace? See
for something that might be helpful.
> On Aug 20, 2019, at 11:30, James Platt wrote:
agreed, very cool. Tempted to mess with projections.
> On Jul 31, 2019, at 10:45, Stephen De Gabrielle
> Very nice! Thank you so much!
> Looks like an opportunity for some remixing :o
> On Wed, 31 Jul 2019 at 01:58, Alex Harsanyi wrote:
> Here is a map of the
Are you referring to section 6.3, which defines modules as individual
It appears to me that this code would work fine if specified in the style shown
earlier in section 6.1, where each module appears in its own file, begins with
a #lang declaration, and the one referred to the
I’m not looking at the code here, but I believe the issue here is that the
handin-server receives user code in a serialized-could-contain-images-format
that can’t be decoded properly without importing the gui libraries.
It seems not implausible to me that you could special-case all-text
Perhaps you need to configure your lib-search-dir setting?
> On Aug 19, 2019, at 15:42, James Platt wrote:
> I'm having an issue where I can't
What distribution and platform do you have selected? The “variant” menu will
only appear for certain choices of distribution and platform.
> On Aug 9, 2019, at 12:04, 'Joel Dueck' via Racket Users
> On Win10 / Firefox the "variant" selector does not appear for me, I'm not
That’s a really nice example of the uses of abstraction in non-programming
> On Jul 30, 2019, at 19:04, Daniel Prager wrote:
> Here's a photo of the original quilt from Red Pepper Quilts (not my work):
> More images, including details, here:
Version 220.127.116.110 is now available for testing from
(Note that this is not available from the usual download site.)
If all goes well, we will turn this version into a v7.4 release
within a couple of weeks.
This release is the first
I think the idea is that you can right-click on the image in the documentation
using your browser and save it, then use the Insert Image menu in DrRacket to
open the image you just saved. Does this make sense?
> On Jun 28, 2019, at 11:26, Bryan Pierce wrote:
> Hello everyone!!
It may be that ‘raco’ is not in your path. An alternative is to use the
“Package Manager” that’s built into DrRacket, under “File>Package Manager…” to
install libraries such as iracket.
> On Jun 23, 2019, at 09:10, Arie Schlesinger
> I am trying to install racket for jupyter
I’m responding to my own message, because (thanks to Andy Keep) I’ve now
discovered a big chunk of the answer.
Specifically, it looks Jeremy Siek’s compilers class includes a textbook
written by him and Ryan Newton whose preface appears to answer all of my
questions; specifically, that they
Racket version 7.3 is now available from
Racket-on-Chez continues to improve. Snapshot builds are currently
available at pre.racket-lang.org, and we expect that Racket-on-Chez
will be included as a
Hmm… While I certainly agree that functional languages are good at manipulating
program representations, this job (manipulating programs) is more or less *the
one thing* that Racket does better than any other language. So… I guess I’d be
more likely to use Racket to manipulate Haskell programs
> On May 11, 2019, at 07:15, Josh Rubin wrote:
> Some people in their 60's do crossword puzzles to keep their mind sharp. I
> want to return to compiler hacking. I have experience with the ideas and code
> from many old compilers - MIT MacLisp and Rabbit (the grandfather of all
In dealing with students, it’s a constant frustration to me that students don’t
realize that clicking the ‘run’ button triggers both compilation and running.
Also, in my own work, I sometimes forget to compile things at the command line,
and then wonder why my programs are taking forever to
Well, I see two things going on here.
First, this example is an interesting one, because there’s no stack trace to
display; the (/ 1 n) is the only “frame” left on the “stack”, because the call
to sub2 has already returned, and the body of “reciprocal” is in tail position
with respect to the
There’s a paper at the most recent ICFP from Simon Peyton Jones (et al., I’m
guessing) on make languages, IIRC.
> On Apr 16, 2019, at 2:09 PM, Greg Hendershott
> I have a shallow understanding of GNU Make, which is only somewhat
> less-shallow as a result of recently
I haven’t checked, but my recollection is that this is/was a pointer to the
dearly departed winooski. I believe that we will get this running again, we
appear to have the replacement machine at least partly provisioned, but I
wouldn’t expect it to be up in the next day or two.
> On Apr
I’m glad to hear it! I think that it may not fail in nice ways for deeply
nested s-expressions, but that not be an issue for you. I do think that there
should be a nicer way than using a text%.
> On Apr 4, 2019, at 11:14 AM, Stephen Foster wrote:
> Thanks, John. Actually, when you
Oog… I don’t really think dynamic-require is the right tool here at all.
Setting the current-output-port seems vastly more reasonable.
> On Apr 1, 2019, at 12:19, Chansey wrote:
> More elegant way is combining with-output-to-file with dynamic-require
> (with-output-to-file FILE
Yep, excellent idea. I’ve added the ’tabular’ tag to csv-writing.
> On Mar 15, 2019, at 3:24 AM, jackhfi...@gmail.com wrote:
> I think we should all work towards making our existing code in this area more
> discoverable, so we can get a better sense of what libraries for working with
I would suggest maybe just using racket here:
(for/list ([file (in-directory "/tmp")]
#:when (regexp-match #px"\\.rkt$" file))
I was doing some very low-key monte carlo testing today, and I wanted to
whether it would magically get faster if I used TR. The short answer is … well,
wait on that. Here’s my program; it’s supposed to check the likelihood that
three randomly chosen numbers in the interval 0-1 could be the
I wanted to format binary search trees for a data structures exam. I spent
literally hours trawling through old source code to see how I’d done it before…
graphviz? tikzpicture? … before giving up and doing what I should have done in
the first place, looking in the racket docs. Tree-layout does
I may be missing something obvious, here, but why are you using the name “else”
to bind the result in the match clause? I usually use the name “other”, which
might solve your problem.
> On Feb 25, 2019, at 4:32 PM, Shu-Hung You
> When using a case expression with an else
When I paste that code into a file called `foo`, it runs fine. Transcript:
hardy:/tmp clements> cat foo
(: fn (-> String Symbol))
(define (fn str) 'foo)
hardy:/tmp clements> racket foo
I can’t honestly guess what the problem
Has anyone explored the idea of a “big-step stepper”? It wouldn’t be a
“stepper” at all, of course, just a big tree, but you could imagine a learning
tool that allows you to explore the evaluation of a term by unfolding parts of
its big-step tree. Generating the raw data for this tree would be
I’m not that surprised :).
My guess is that our json reader could be sped up quite a bit. This looks like
the heart of the read-json implementation:
(define (read-json* who i jsnull)
;; Follows the specification (eg, at json.org) -- no extensions.
(define (err fmt . args)
Github Classroom is trying to do this, but they’re not doing it well. I’ve used
it several times, and managed to make it work, but the experience has been very
me-programming-heavy, and not so great for the students. I think gradescope may
have just merged with a company that’s trying to
I’m pleased to announce that I had a good reason to extend the glpk package to
provide an interface to glpk’s mixed integer programming package; this means
that if you can express your problem as a sequence of linear constraints on a
set of variables where some of them need to be integers, you
Looks like… this is still the case? Specifically, reloading
pkgs.racket-lang.org still shows that all packages are missing documentation. I
thought I’d seen a message suggesting that this was resolved, but it appears I
> On Feb 16, 2019, at 8:08 PM, David Storrs wrote:
I struggled with whether to send that message… I saw the name, “random access
lists”, thought, “hmm, I wonder what that would like”, and clicked on the link.
I wound up reading a bit about whether I should use (first impresssion)
superficial or in-depth contracts, and ran out of steam pretty
Good to know; I also use define-runtime-path with abandon, and was not aware of
possible consequences of casting too wide a net.
> On Feb 10, 2019, at 09:49, Philip McGrath wrote:
> I think this is probably a consequence of the quirk of `define-runtime-path`
The pointer to RaLists would be much more enticing if we could convince David
Van Horn to begin his documentation with a couple of small examples….
> On Feb 13, 2019, at 14:35, Stephen De Gabrielle
> I should note that anyone with a GitHub account can edit
Okay, so this is Racket Users vs. Facebook (I’m asking this question in both
places). I think racket-users will win, personally. Sorry for the fairly OT
Here’s the question: Do any of you that run classes with multiple
instructors/TAs/etc. use some kind of issue tracker to manage course
Yes, this should appear in the web page. FWIW, raco commands come with a
standard “—help” flag:
raco molis-hai --help
raco molis-hai [ ... ]
where is one of
-b , --bits : Number of bits of entropy
-n , --passwords : Number of passwords generated
-o , --model-order : Order of the
> On Feb 8, 2019, at 15:01, George Neuner wrote:
> On Fri, 8 Feb 2019 08:37:33 -0500, Matthias Felleisen
>>> On Feb 6, 2019, at 3:19 PM, George Neuner wrote:
>>> The idea that a compiler should be structured as multiple passes each
>>> doing just one clearly
Also, if you use duckduckgo as your default search engine, it looks like you
can prepend !archive or !wayback (turns out !a goes to amazon, sigh).
> On Feb 2, 2019, at 14:08, Neil Van Dyke wrote:
> Justin Zamora wrote on 2/2/19 3:39 PM:
>> Thanks! I always forget about archive.org!
Truly excellent news! Can’t wait to hear about it at the next RacketCon.
> On Jan 31, 2019, at 14:46, Christopher Lemmer Webber
> I've mentioned that my goal has been to advance the
> federated/decentralized social web in Racket on here before. Here's
> some news:
First off, many thanks for bringing to my attention the fact that Ryan has
started racket-izing SQL! And thanks, Ryan, for racket-izing SQL! Maybe I can
stop stapling together all of those long horrible strings now.
Next, to answer your question, I believe that eval is not necessary here, and
1 - 100 of 430 matches
Mail list logo