[racket-users] Re: The history of hygiene for definition contexts
Alexis King writes: > So, my question: when was hygiene for internal definitions first worked out, > and did it make it into any papers, specifications, or documentation? > Hopefully someone (probably Matthew) can provide some insight. I saw an interesting talk about the history of hygenic macro technology at HOPL-IV. I haven't read the paper, but maybe you might ;-). William D. Clinger and Mitchell Wand. 2020. Hygienic macro technology. Proc. ACM Program. Lang. 4, HOPL, Article 80 (June 2020), 110 pages. DOI:https://doi.org/10.1145/3386330 Eric. -- --- Eric Eide.University of Utah School of Computing https://www.cs.utah.edu/~eeide/ . +1 801-585-5512 . Salt Lake City, Utah, USA -- 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. To view this discussion on the web visit https://groups.google.com/d/msgid/racket-users/m1fsvyuzk0.fsf%40cs.utah.edu.
[racket-users] CFP: PLOS '21: 11th Workshop on Programming Languages and Operating Systems
eure de Lyon Chia-Che Tsai, Texas A&M University Carsten Weinhold, Barkhausen Institute ORGANIZING COMMITTEE Antonio Barbalace, The University of Edinburgh Eric Eide, University of Utah Pierre Olivier, The University of Manchester Olaf Spinczyk, Osnabrueck University -- 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. To view this discussion on the web visit https://groups.google.com/d/msgid/racket-users/m1im1obew1.fsf%40cs.utah.edu.
[racket-users] Re: new racket-lang.org website
Robby Findler writes: > Hi all: as you may know if you follow dev@, we've been revising the > website. The new version went live last night; please have a look: > https://www.racket-lang.org/ Usually I don't reply just to say "This is very nice," but I want to make an exception in this case. This is very nice! I especially like the Typed Racket, Scribble, and Datalog snippets! -- ------- Eric Eide . University of Utah School of Computing http://www.cs.utah.edu/~eeide/ . +1 (801) 585-5512 voice, +1 (801) 581-5843 FAX -- 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. To view this discussion on the web visit https://groups.google.com/d/msgid/racket-users/m1364atnem.fsf%40cs.utah.edu.
[racket-users] Announce: Clotho 1.0.0 Released
I am pleased to announce that Clotho version 1.0.0 is available. You can find it in the Racket package catalog at: https://pkgs.racket-lang.org/package/clotho Clotho provides controllable randomness functions for Racket programs, allowing sequences of random values to be recorded, replayed, and manipulated at a fine grain. You can learn more about Clotho by reading the online documentation: https://docs.racket-lang.org/clotho/index.html ...and by reading the following paper, which will be presented at the upcoming Scheme '20 workshop: Pierce Darragh, William Gallard Hatch, and Eric Eide. Clotho: A Racket library for parametric randomness. In Proceedings of the 2020 Scheme and Functional Programming Workshop (Scheme 2020), August 2020. https://www.flux.utah.edu/paper/darragh-scheme20 Thanks --- Eric. -- --- Eric Eide . University of Utah School of Computing http://www.cs.utah.edu/~eeide/ . +1 (801) 585-5512 voice, +1 (801) 581-5843 FAX -- 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. To view this discussion on the web visit https://groups.google.com/d/msgid/racket-users/m1k0yf1n92.fsf%40cs.utah.edu.
[racket-users] CFP: PLOS '19: 10th Workshop on Programming Languages and Operating Systems
Do you use Racket in the implementation of operating systems or "OS-like" systems? Consider submitting a short paper about your work to the PLOS '19 workshop! Papers are due on August 9, a little over a month from now. Eric. --- CALL FOR PAPERS Tenth Workshop on Programming Languages and Operating Systems (PLOS 2019) October 27, 2019 Huntsville, Ontario, Canada http://plos-workshop.org/2019/ Sponsored by ACM SIGOPS In conjunction with SOSP 2019 http://www.sigops.org/sosp/sosp19/ Paper submission deadline: August 9, 2019 Notification of acceptance: September 6, 2019 Final papers due: October 1, 2019 Workshop: October 27, 2019 Historically, operating system development and programming language development went hand-in-hand. Challenges in one area were often approached using ideas or techniques developed in the other, and advances in one area enabled new capabilities in the other. Today, although the systems community at large retains an iron grip on C, modern programming language ideas continue to spark innovations in OS design and construction. Conversely, the systems field continues to provide a wealth of challenging problems and practical results that should lead to advances in programming languages, software designs, and idioms. This workshop will bring together researchers and developers from the programming language and operating system domains to discuss recent work at the intersection of these fields. It will be a platform for discussing new visions, challenges, experiences, problems, and solutions arising from the application of advanced programming and software engineering concepts to operating systems construction, and vice versa. Suggested paper topics include, but are not restricted to: * critical evaluations of new programming language ideas in support of OS construction * domain-specific languages for operating systems * type-safe languages for operating systems * the design of language-specific unikernels * language-based approaches to crosscutting system concerns, such as security and run-time performance * language support for system verification, testing, and debugging * synthesis of OS code * static/dynamic configuration of operating systems * static/dynamic specialization within operating systems * the use of OS abstractions and techniques in language runtimes * experience reports on applying new language techniques in commercial OS settings AGENDA The workshop will be a highly interactive event with an agenda designed to promote focused and lively discussions. Part of the workshop program will be based on paper presentations. PLOS welcomes research, experience, and position papers; papers describing industrial experience are particularly encouraged. The set of accepted papers will be made available to registered attendees in advance of the workshop. Participants should come to the workshop prepared with questions and comments. SUBMISSION GUIDELINES All papers must be written in English and should be formatted in the two-column ACM article style (<http://www.sigplan.org/Resources/Author/>, using the options sigplan,10pt). The CCS Concepts, Keywords, and ACM Reference Format sections are not required in submissions. Submissions are single blind: author names and affiliations should be included. Submissions must not be more than six (6) pages in length, using 10-point font. The bibliography does not count towards the page limit. The page limit will be strictly enforced, and shorter papers are encouraged. Papers must be submitted in PDF format via the workshop website. They will be reviewed by the workshop program committee and designated external reviewers. Papers will be evaluated based on technical quality, originality, relevance, and presentation. By default, accepted papers will be published electronically in the ACM Digital Library. The authors of accepted papers to be included in the ACM Digital Library will be required to sign ACM copyright release forms. The publication of a paper in the PLOS workshop proceedings is not intended to replace future conference publication. PROGRAM COMMITTEE Owen Arden, University of California, Santa Cruz Jia-Ju Bai, Tsinghua University Vijay Chidambaram, University of Texas at Austin/VMware Research Pierre-Evariste Dagand, CNRS/Inria/LIP6 Eric Eide, University of Utah (chair) Arjun Guha, University of Massachusetts, Amherst Stephen Kell, University of Kent Lindsey Kuper, University of California, Santa Cruz Daniel Lohmann, Leibniz University Hannover Hea
[racket-users] Re: Git-Backed Racket Packages, git archive
Matthew Butterick writes: > Once upon a time I tried to do the same for Pollen and couldn't sort it > out. AFAICT the git hash isn't generated until the commit is made. That's true; you can't figure out the hash before the commit is made. I think I have the pieces of a workable (for me) implementation now, but I haven't actually implemented it yet. When I do I'll send you an email with a pointer to the relevant code. Thank for the pointer to the timestamp-based technique! I'll take a look. -- ------- Eric Eide . University of Utah School of Computing http://www.cs.utah.edu/~eeide/ . +1 (801) 585-5512 voice, +1 (801) 581-5843 FAX -- 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. To view this discussion on the web visit https://groups.google.com/d/msgid/racket-users/m14l4nisyc.fsf%40cs.utah.edu. For more options, visit https://groups.google.com/d/optout.
[racket-users] Re: Git-Backed Racket Packages, git archive
Robby Findler writes: > But stepping back a little bit, I'm curious why you're doing this more > generally. Is this a way to communicate with users about what version > they are using somehow or to tell them how to get specific versions > that aren't the version listed on pkgs.racket-lang.org? Communicate with users. I want to put the appropriate git hash into the output of my program (Xsmith-based random program generators) so that I can attempt to reproduce the output, if necessary. -- --- Eric Eide . University of Utah School of Computing http://www.cs.utah.edu/~eeide/ . +1 (801) 585-5512 voice, +1 (801) 581-5843 FAX -- 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. To view this discussion on the web visit https://groups.google.com/d/msgid/racket-users/m1h88ojfcq.fsf%40gris-dmz.flux.utah.edu. For more options, visit https://groups.google.com/d/optout.
[racket-users] Re: Git-Backed Racket Packages, git archive
Sam Tobin-Hochstadt writes: > If you want "best-effort checksum associated with this code in some > way" then combining the information from `pkg-info` with calling the > git binary is probably necessary. Yes, "best-effort checksum" is what I'm trying to do. Thanks again for the help! -- --- Eric Eide . University of Utah School of Computing http://www.cs.utah.edu/~eeide/ . +1 (801) 585-5512 voice, +1 (801) 581-5843 FAX -- 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. To view this discussion on the web visit https://groups.google.com/d/msgid/racket-users/m1r27sjgvt.fsf%40gris-dmz.flux.utah.edu. For more options, visit https://groups.google.com/d/optout.
[racket-users] Re: Git-Backed Racket Packages, git archive
Sam Tobin-Hochstadt writes: > What do you need the hash for? Could you get the hash from the package > system, for example: > >> (require pkg/lib) >> (pkg-info-checksum (hash-ref (installed-pkg-table) "z3")) > "84059a4428454cc6edd57865befaedb1d29dedce" This trick does not work (in my tests so far) when a git sandbox is linked as a package. When installed in that way, the package checksum is #f :-(. -- --- Eric Eide . University of Utah School of Computing http://www.cs.utah.edu/~eeide/ . +1 (801) 585-5512 voice, +1 (801) 581-5843 FAX -- 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. To view this discussion on the web visit https://groups.google.com/d/msgid/racket-users/m1tvcpklkm.fsf%40cs.utah.edu. For more options, visit https://groups.google.com/d/optout.
[racket-users] Re: grammar-based fuzzing
Eric Eide writes: > You might be interested in Xsmith. Version 1.0 will be released imminently, > like within the next week. I'll send another email when it's released. To follow up in this thread, Xsmith version 1.0.0 is now available. You can find it in the Racket package catalog: https://pkgs.racket-lang.org/package/xsmith (The online docs haven't updated yet. Soon, I expect.) Happy fuzzing! Eric. -- ------- Eric Eide . University of Utah School of Computing http://www.cs.utah.edu/~eeide/ . +1 (801) 585-5512 voice, +1 (801) 581-5843 FAX -- 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. To view this discussion on the web visit https://groups.google.com/d/msgid/racket-users/m1wohnpzb2.fsf%40gris-dmz.flux.utah.edu. For more options, visit https://groups.google.com/d/optout.
[racket-users] Announce: Xsmith 1.0.0 Released
I am pleased to announce that Xsmith version 1.0.0 is now available. You can find it in the Racket package catalog at: https://pkgs.racket-lang.org/package/xsmith Xsmith is a library for creating fuzz testers, also known as "fuzzers," for programming language compilers and interpreters. In other words, Xsmith is a library for creating random program generators. Xsmith implements a domain-specific language (DSL) for defining random program generators. The DSL is used to specify a programming language's grammar, typing rules, and other information that guides generation choices. Xsmith also includes utilities for creating a command-line interface for generating a single program or starting a web server that generates one program per request. Xsmith is bundled with two example random program generators that were created using the library: one for C and one for Scheme. This is the first public release of Xsmith. It is neither feature-complete nor API-stable, but it should be usable by people other than the authors :-). We welcome feedback! Please send bug reports and fixes to . There is a mailing list, , for discussing Xsmith. Visit the list's management website to subscribe: http://www.flux.utah.edu/mailman/listinfo/xsmith-dev Happy fuzzing! Eric. -- --- Eric Eide . University of Utah School of Computing http://www.cs.utah.edu/~eeide/ . +1 (801) 585-5512 voice, +1 (801) 581-5843 FAX -- 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. To view this discussion on the web visit https://groups.google.com/d/msgid/racket-users/m14l4rre9x.fsf%40gris-dmz.flux.utah.edu. For more options, visit https://groups.google.com/d/optout.
[racket-users] Re: Git-Backed Racket Packages, git archive
Philip McGrath writes: > According to §2.2 Package Sources, for a Git package source in the syntax > ‹scheme›://‹host›/.../‹repo› [.git][/][?path=‹path›][#‹rev›], "the package’s > checksum is the hash identifying ‹rev› if ‹rev› is a branch or tag, otherwise > ‹rev› itself serves as the checksum." Thanks! This seems to be exactly what I want! -- --- Eric Eide . University of Utah School of Computing http://www.cs.utah.edu/~eeide/ . +1 (801) 585-5512 voice, +1 (801) 581-5843 FAX -- 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. To view this discussion on the web visit https://groups.google.com/d/msgid/racket-users/m1blz0svcb.fsf%40cs.utah.edu. For more options, visit https://groups.google.com/d/optout.
[racket-users] Re: Git-Backed Racket Packages, git archive
Sam Tobin-Hochstadt writes: > What do you need the hash for? Could you get the hash from the package > system, for example: I want to know the ("a") hash so that I can reliably reproduce outputs, diagnose crashes, etc. The package hash might work; thank you for pointing it out! I'll have to investigate how I can easily navigate from a package hash to a particular version of the package. (I.e., the moral equivalent of `git checkout `.) Eric. -- ------- Eric Eide . University of Utah School of Computing http://www.cs.utah.edu/~eeide/ . +1 (801) 585-5512 voice, +1 (801) 581-5843 FAX -- 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. To view this discussion on the web visit https://groups.google.com/d/msgid/racket-users/m1o931ruzr.fsf%40gris-dmz.flux.utah.edu. For more options, visit https://groups.google.com/d/optout.
[racket-users] Re: Git-Backed Racket Packages, git archive
Matthew Flatt writes: > The simplistic answer is that `git-checkout` doesn't support a `git > archive`-like mode. And a practical answer is that no one is likely to > implement it in the near term. :) Thanks for the explanation! As you might have guessed, my goal is to figure out how to insert a git commit hash into a package installed in the "non-developer way." -- --- Eric Eide . University of Utah School of Computing http://www.cs.utah.edu/~eeide/ . +1 (801) 585-5512 voice, +1 (801) 581-5843 FAX -- 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. To view this discussion on the web visit https://groups.google.com/d/msgid/racket-users/m1tvcttipk.fsf%40gris-dmz.flux.utah.edu. For more options, visit https://groups.google.com/d/optout.
[racket-users] Re: Git-Backed Racket Packages, git archive
Argh, I screwed up the subject line of my question email :-/. I always have to remind myself that the command is `git archive`, not `git export`. Sorry for any confusion. -- --- Eric Eide . University of Utah School of Computing http://www.cs.utah.edu/~eeide/ . +1 (801) 585-5512 voice, +1 (801) 581-5843 FAX -- 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. To view this discussion on the web visit https://groups.google.com/d/msgid/racket-users/m1k1dpv19c.fsf%40gris-dmz.flux.utah.edu. For more options, visit https://groups.google.com/d/optout.
[racket-users] Git-Backed Racket Packages, git export
As described here <https://docs.racket-lang.org/pkg/git-workflow.html>, > When a Git repository is specified as a package source, then a copy of the > repository content is installed as the package implementation. That > installation mode is designed for package consumers, who normally use a > package without modifying it. My understanding is that "the copy of the repository content" is produced simply, e.g., by checking out the repository at the appropriate commit and then discarding the `.git` directory. An alternative would be to produce the repository content by running `git archive`. This would allow certain transformations to be made on the content, e.g., inserting the commit hash into one of the exported files. One could do other minor tricks as well, like excluding "junk" files. See the ATTRIBUTES section of the man page at <https://git-scm.com/docs/git-archive>. Is there a reason why the Racket package system doesn't run `git archive` to produce the content for the "non-developer" version of a package? Thanks --- Eric. -- --- Eric Eide . University of Utah School of Computing http://www.cs.utah.edu/~eeide/ . +1 (801) 585-5512 voice, +1 (801) 581-5843 FAX -- 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. To view this discussion on the web visit https://groups.google.com/d/msgid/racket-users/m1o931v1os.fsf%40gris-dmz.flux.utah.edu. For more options, visit https://groups.google.com/d/optout.
[racket-users] Re: Specifying Launcher Directory/Installation Executable Directory
Matthew Flatt writes: > If you use "installation" scope instead of "user" scope for the > package, then launchers via `racket-launcher-names` will be in the same > directory as other main-installation executables, such as `raco`. To do > that, specify `-i` with `raco pkg install` or select "Specific Racket > Installation" for the "Scope" choice in DrRacket's package-installation > dialog. Thank you! I think this is the thing I was looking for. -- --- Eric Eide . University of Utah School of Computing http://www.cs.utah.edu/~eeide/ . +1 (801) 585-5512 voice, +1 (801) 581-5843 FAX -- 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. To view this discussion on the web visit https://groups.google.com/d/msgid/racket-users/m15zpaw1a5.fsf%40cs.utah.edu. For more options, visit https://groups.google.com/d/optout.
[racket-users] Specifying Launcher Directory/Installation Executable Directory
How does one specify the directory where a collection's launchers should be installed? The raco documentation describes `racket-launcher-names` <https://docs.racket-lang.org/raco/setup-info.html>: * racket-launcher-names : (listof string?) — A list of executable names to be generated in the installation's executable directory to run Racket-based programs implemented by the collection. [...] In my experience, the "installation's executable directory" is generally something like "$HOME/Library/Racket//bin". How can I change this? Suppose I want to install launchers to someplace outside of $HOME, so that the tools are easily available to users other than the one installing the software. Thanks --- Eric. -- ------- Eric Eide . University of Utah School of Computing http://www.cs.utah.edu/~eeide/ . +1 (801) 585-5512 voice, +1 (801) 581-5843 FAX -- 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. To view this discussion on the web visit https://groups.google.com/d/msgid/racket-users/m1ef3ywkjz.fsf%40gris-dmz.flux.utah.edu. For more options, visit https://groups.google.com/d/optout.
[racket-users] Re: grammar-based fuzzing
Ryan Kramer writes: > Does Racket have any grammar-based fuzzing utilities? You might be interested in Xsmith. Version 1.0 will be released imminently, like within the next week. I'll send another email when it's released. Stay tuned! -- ------- Eric Eide . University of Utah School of Computing http://www.cs.utah.edu/~eeide/ . +1 (801) 585-5512 voice, +1 (801) 581-5843 FAX -- 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. To view this discussion on the web visit https://groups.google.com/d/msgid/racket-users/m1a7eucuqa.fsf%40gris.uconnect.utah.edu. For more options, visit https://groups.google.com/d/optout.
[racket-users] Re: What is the address of the venue for RacketCon ?
Brian Adkins writes: > Since The City Library has multiple locations, it would be helpful to simply > list on the website the address of the specific location at which we'll be > meeting. RacketCon will be at the Main Library: 210 East 400 South Salt Lake City, UT 84111 -- --- Eric Eide . University of Utah School of Computing http://www.cs.utah.edu/~eeide/ . +1 (801) 585-5512 voice, +1 (801) 581-5843 FAX -- 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. To view this discussion on the web visit https://groups.google.com/d/msgid/racket-users/m1bm0aflfb.fsf%40gris-dmz.flux.utah.edu. For more options, visit https://groups.google.com/d/optout.
[racket-users] Re: Using racket with emacs
Neil Van Dyke writes: > Use Greg Hendershott's `racket-mode`: > https://github.com/greghendershott/racket-mode Seconded! Racket-mode is excellent, and it grows more excellent over time. -- --- Eric Eide . University of Utah School of Computing http://www.cs.utah.edu/~eeide/ . +1 (801) 585-5512 voice, +1 (801) 581-5843 FAX -- 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.
[racket-users] Re: Why is there a space in the path to the Racket application on MacOSX?
David Storrs writes: > Second the desire for this not to be the case. Personally, my > solution is just to rename the folder after installing it. I am > currently working with binaries from > /Applications/Racket_v6.11/bin/... FWIW, I make a symlink (with no spaces in the name) and always use that in my config files, scripts, etc. Bonus: When I update the installation, I just recreate the symlink and point it at the newly installed software. (PS --- I don't like the spaces in the name, either!) -- ------- Eric Eide . University of Utah School of Computing http://www.cs.utah.edu/~eeide/ . +1 (801) 585-5512 voice, +1 (801) 581-5843 FAX -- 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.
[racket-users] Re: macOS Post-Install
Matthew Flatt writes: > A better strategy may be to add > > /etc/paths.d/racket > > as a file that contains the path to your Racket installation. For > example, the path to put in that file is > > /Applications/Racket v6.11/bin > > if you've installed the current release into the "Applications" folder. FWIW, I make a /Applications/Racket symlink to the current installation and add that to my path, because I know that something somewhere is not going to grok the space in that directory name... Eric. -- ------- Eric Eide . University of Utah School of Computing http://www.cs.utah.edu/~eeide/ . +1 (801) 585-5512 voice, +1 (801) 581-5843 FAX -- 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.
[racket-users] Re: Naming conventions for private functions
Robby Findler writes: > Also: if you just don't `provide` a function from a module, then it > cannot be used outside. No naming conventions necessary. But the no-naming convention is necessary. :-). -- --- Eric Eide . University of Utah School of Computing http://www.cs.utah.edu/~eeide/ . +1 (801) 585-5512 voice, +1 (801) 581-5843 FAX -- 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.
[racket-users] Re: Boot To Racket
William G Hatch writes: > I would love to see a Racket unikernel [...] But I recall some talk about > MirageOS (I think) where they said something about it taking something like 2 > years to rewrite the IP/TCP stack in OCaml. I imagine it wouldn't be too hard to get Racket running atop a rump kernel or OSv --- but I haven't tried. It could be interesting, though, perhaps as a step toward something even more interesting. Surely you are right that writing everything in Racket would be a big job! Eric. -- --- Eric Eide . University of Utah School of Computing http://www.cs.utah.edu/~eeide/ . +1 (801) 585-5512 voice, +1 (801) 581-5843 FAX -- 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.
[racket-users] Re: Racket-ese for Scheme `define-record-type' protocol?
Matthew Flatt writes: > The separate `make-racr-specification` function is how I would write > it, including using `make-` as a prefix. Thank you for the help! -- --- Eric Eide . University of Utah School of Computing http://www.cs.utah.edu/~eeide/ . +1 (801) 585-5512 voice, +1 (801) 581-5843 FAX -- 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.
[racket-users] Racket-ese for Scheme `define-record-type' protocol?
Hi! I'm translating a R6RS Scheme program to Racket, and I have a question about the best "Racket-ese" translation for Scheme's `define-record-type'. Consider the following R6RS definition: - (define-record-type racr-specification (fields (mutable specification-phase) rules-table (mutable start-symbol)) (opaque #t)(sealed #t) (protocol (lambda (new) (lambda () (new 1 (make-eq-hashtable 50) racr-nil) - What is the Racket translation of the protocol specification? Reading the online Racket docs, I don't see how to specify a different (and fresh per instance) value for every field within Racket's `struct` form. (#:auto and #:auto-value are not what I want; I need different values, and fresh values, for every created instance.) I guess I could "cheat" by defining the "expected" constructor myself: - (define (make-racr-specification) (racr-specification 1 (make-eq-hashtable 50) racr-nil)) - But this seems common enough that it would be built into `struct` in some way? Or maybe `struct` isn't what I want at all? Thanks --- Eric. (a Racket newbie) -- --- Eric Eide . University of Utah School of Computing http://www.cs.utah.edu/~eeide/ . +1 (801) 585-5512 voice, +1 (801) 581-5843 FAX -- 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.