Just tried the desktop version and it's interesting. Ideally, I would like to consolidate all my workflow to one app, so I'm looking for:
1. Markdown editing with vim (Obsidian has vim support! Nice)
2. web clipping (one note)
3. note taking and image annotation with tablet (samsung notes)
4. Sync with desktop/web/android.
While 1 and 4 is great on Obsidian, it feels like it's limited on the image and annotation that I would like. Any ideas?
I have limited knowledge in web development and its history, but why is javascript a first class language in web dev when all I heard is "javascript bad"? Web assembly seems like a much better choice in hindsight where you can choose different language to compile down to wasm.
Just skimmed through the paper: https://arxiv.org/pdf/2007.14049.pdf, it seems like they are using some sort of heuristically mutating a test suite until it's fully branch covered, based on calculating `branch distance` for each predicate. Why isn't a SMT solver like Z3-solver being used here to solve for the predicate (generating inputs to evaluate to true/false)? Since it's getting so powerful, and python container/dict/string(regex) operation can also be modeled conveniently.
And I'm also wondering, whether there is a return based automatic test generation, that start from the return value, and resolve all variables used and gather all possible return values with its constraint, and feed those to z3 to generate inputs to cover. It seems like it will help with branch explosion by eliminating unused branch, and only focus on branch that is being used.
Edit: it looks like CrossHair[0] is a similar tool that uses Z3 to find counter examples for predicates.
1. Markdown editing with vim (Obsidian has vim support! Nice) 2. web clipping (one note) 3. note taking and image annotation with tablet (samsung notes) 4. Sync with desktop/web/android.
While 1 and 4 is great on Obsidian, it feels like it's limited on the image and annotation that I would like. Any ideas?