Comments (1)
Bisect_ppx isn't disciplined about how it places points. Consider:
The point apparently on later
in everything
is actually on sooner
, since that has to be evaluated first. There is no point that would indicate that sooner
completed and later
was reached. In everything_sequence
, both places have a point.
I think the rationale for putting points on sequence expressions was that if an exception occurs in the first, the second is not reached. However, similar statements are true of most constructs in the language that have subexpressions.
Now that we don't have point kinds, we should consider putting points on many more expressions, and doing it correctly.
There may be some challenges, when an expression has the same location as some relevant subexpression. I can't immediately think of an example, however.
I think the instrumenter's mapper will probably need a rewrite to address all expression kinds correctly.
from bisect_ppx.
Related Issues (20)
- Coverage statistics based on every source file HOT 6
- Compare coverages HOT 4
- Random: add or tweak reporter themes
- Invalid cobertura report HOT 8
- Semantic of `Lazy.is_val` changes using `bisect_ppx` HOT 3
- Confused about excluding/linking coverage files with Melange+Dune HOT 4
- Can't Install Fresh Clone HOT 2
- ReasonML support seems to be broken... HOT 1
- cannot advance to `rescript` `10` HOT 1
- Does not seem to instrument cram-style tests HOT 1
- `bisect_ppx` doesn't see the instrumentation clause in my library HOT 4
- Some Coverage Files are not Listed on HTML Coverage Overview HOT 1
- Tips on how to upgrade dependency: ppxlib to latest version? HOT 2
- Question: Does it work with dune's cram test? HOT 15
- Update readme to mention usage in Dune HOT 1
- Support [@coverage off] for or-patterns
- Proposal: add <packages> to cobertura report
- Proposal: support more mandatory fields from cobertura dtd HOT 5
- Bugs in expect_test test? HOT 2
- ppxlib >= 0.28 compatibility HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from bisect_ppx.