mirror of
https://github.com/jart/cosmopolitan.git
synced 2025-01-31 11:37:35 +00:00
c3440d040c
- More timspec_*() and timeval_*() APIs have been introduced. - The copyfd() function is now simplified thanks to POSIX rules. - More Cosmo-specific APIs have been moved behind the COSMO define. - The setitimer() polyfill for Windows NT is now much higher quality. - Fixed build error for MODE=aarch64 due to -mstringop-strategy=loop. - This change introduces `make MODE=nox87 toolchain` which makes it possible to build programs using your cosmocc toolchain that don't have legacy fpu instructions. This is useful, for example, if you want to have a ~22kb tinier blink virtual machine. |
||
---|---|---|
.. | ||
lib | ||
plinko.c | ||
plinko.mk | ||
README.txt |
DESCRIPTION plinko is a simple lisp interpreter that takes advantage of advanced operating system features irrespective of their practicality such as using the nsa instruction popcount for mark sweep garbage collection overcommit memory, segment registers, and other dirty hacks that the popular interpreters cannot do; this lets plinko gain a considerable performance edge while retaining an event greater edge in simplicity We hope you find these sources informative, educational, and possibly useful too. Lisp source code, written in its dialect is included too under //tool/plinko/lib and unit tests which clarify their usage can be found in //test/tool/plinko. BENCHMARK binary trees (n=21) - sbcl: 200 ms (native jit; simulated arithmetic) - plinko: 400 ms (interpreted; simulated arithmetic) - python3: 800 ms (interpreted; native arithmetic) - racket: 1200 ms (interpreted; simulated arithmetic) AUTHOR Justine Alexandra Roberts Tunney <jtunney@gmail.com> LICENSE ISC SEE ALSO SectorLISP SectorLambda