The Racket repository
![]() All places uses the same accounting bit for objects that are in the shared space. Each place also flips the bit value it wants on each accounting, so if two places are accounting at the same time with opposite bit values and can reach the same objects, they can interefere. It's even possible for them to race through cycles and cause each other to loop forever. Add a lock to ensure that there's only one bit value in play for the shared space at any given time. A place must stall if other places are busy with memory accounting and an opposite bit value. |
||
---|---|---|
pkgs | ||
racket | ||
.gitattributes | ||
.gitignore | ||
.mailmap | ||
.travis.yml | ||
appveyor.yml | ||
INSTALL.txt | ||
Makefile | ||
README.txt |
This is the source code for the main Racket distribution. See "INSTALL.txt" for information on building Racket. License ------- Racket Copyright (c) 2010-2014 PLT Design Inc. Racket is distributed under the GNU Lesser General Public License (LGPL). This implies that you may link Racket into proprietary applications, provided you follow the rules stated in the LGPL. You can also modify Racket; if you distribute a modified version, you must distribute it under the terms of the LGPL, which in particular states that you must release the source code for the modified software. See racket/src/COPYING_LESSER.txt for more information.