Thread-safe logging for concurrent Haskell programs.
iu-parfunc / tslogger Goto Github PK
View Code? Open in Web Editor NEWthread-safe logging
License: Other
thread-safe logging
License: Other
This worked in LVish, but it should be tested as part of the suite for this package.
This depends on #1 of course.
@peter-fogg, this is just what we discussed before.
For this package alone, not just as part of LVish.
Code that uses the logging framework currently, looks something like this:
do ...
log "About to operate on memory"
casIORef ...
log "About to read from memory..."
readIORef ...
Etc. The point is, as the data structure author you need to remember to call a log
command before any operation that peeks or pokes at memory. In fuzz testing / model checking mode, the log
command is what actually blocks, gating execution until the scheduler decides that, say, the casIORef
operation above is allowed to proceed, at which point it unblocks long enough to perform one memory operation, sequentially.
But this is tedious! We should abstract out a library of procedures like casIORef
which automatically call log
before doing the memory operation. This will mean that the data structure author simply needs to switch their imports from Data.IORef
and Data.Atomics
, to their replacement modules.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.