format number properly
This commit is contained in:
parent
1dc9e8227e
commit
d730d1f4a7
15 changed files with 67 additions and 29 deletions
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
|
@ -0,0 +1 @@
|
||||||
|
main.pdf
|
|
@ -1,4 +1,4 @@
|
||||||
#import "@local/template-thesis-matisse:0.0.1": todo
|
#import "../lib.typ": todo
|
||||||
|
|
||||||
= Acknowledgements
|
= Acknowledgements
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
#import "@local/template-thesis-matisse:0.0.1": todo
|
#import "../lib.typ": todo
|
||||||
|
|
||||||
= Résumé en Français
|
= Résumé en Français
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
#import "@local/template-thesis-matisse:0.0.1": etal
|
#import "../lib.typ": etal
|
||||||
#import "X_var.typ": *
|
#import "X_var.typ": *
|
||||||
|
|
||||||
== Introduction
|
== Introduction
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
#import "@local/template-thesis-matisse:0.0.1": etal, eg, ie
|
#import "../lib.typ": etal, eg, ie
|
||||||
#import "X_var.typ": *
|
#import "X_var.typ": *
|
||||||
|
|
||||||
== Related Work <sec:rasta-soa>
|
== Related Work <sec:rasta-soa>
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
#import "@local/template-thesis-matisse:0.0.1": todo, etal, eg
|
#import "../lib.typ": todo, etal, eg
|
||||||
#import "X_var.typ": *
|
#import "X_var.typ": *
|
||||||
#import "X_lib.typ": *
|
#import "X_lib.typ": *
|
||||||
|
|
||||||
|
@ -85,7 +85,7 @@ We manually searched the tool repository when the website mentioned in the paper
|
||||||
- the source code of the tool;
|
- the source code of the tool;
|
||||||
- the documentation for building and using the tool with a MWE (Minimum Working Example).
|
- the documentation for building and using the tool with a MWE (Minimum Working Example).
|
||||||
|
|
||||||
In @tab:rasta-tools we rated the quality of these artifacts with "#ok" when available but may have inconsistencies, a "#bad" when too much inconsistencies (inaccurate remarks about the sources, dead links or missing parts) have been found, a "#ko" when no documentation have been found, and a double "#ok#ok" for the documentation when it covers all our expectations (building process, usage, MWE).
|
In @tab:rasta-tools we rated the quality of these artifacts with "#ok" when available but may have inconsistencies, a "#bad" when too much inconsistencies (inaccurate remarks about the sources, dead links or missing parts) have been found, a "#ko" when no documentation have been found, and a double "#okk" for the documentation when it covers all our expectations (building process, usage, MWE).
|
||||||
Results show that documentation is often missing or very poor (#eg Lotrack), which makes the rebuild process very complex and the first analysis of a MWE.
|
Results show that documentation is often missing or very poor (#eg Lotrack), which makes the rebuild process very complex and the first analysis of a MWE.
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
#import "@local/template-thesis-matisse:0.0.1": todo, highlight
|
#import "../lib.typ": todo, highlight, num
|
||||||
#import "X_var.typ": *
|
#import "X_var.typ": *
|
||||||
#import "X_lib.typ": *
|
#import "X_lib.typ": *
|
||||||
|
|
||||||
|
@ -50,8 +50,9 @@ is #mypercent(54.9, 100). When including the two defective tools, this ratio dr
|
||||||
|
|
||||||
#highlight()[
|
#highlight()[
|
||||||
*RQ1 answer:*
|
*RQ1 answer:*
|
||||||
On a recent dataset we consider that \resultunusable of the tools
|
On a recent dataset we consider that \resultunusable of the tools are unusable.
|
||||||
are unusable. For the tools that we could run, \resultratio of analysis are finishing successfully.%(those with less than 50\% of successful execution and including the two tools that we were unable to build).
|
For the tools that we could run, \resultratio of analysis are finishing successfully.
|
||||||
|
//(those with less than 50\% of successful execution and including the two tools that we were unable to build).
|
||||||
]
|
]
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
#import "@local/template-thesis-matisse:0.0.1": todo, etal
|
#import "../lib.typ": todo, etal
|
||||||
#import "X_var.typ": *
|
#import "X_var.typ": *
|
||||||
#import "X_lib.typ": *
|
#import "X_lib.typ": *
|
||||||
|
|
||||||
|
|
|
@ -1,8 +1,3 @@
|
||||||
|
|
||||||
#let mypercent(numerator, denominator, digits: 2) = {
|
|
||||||
[#calc.round((100 * numerator) / denominator, digits: digits) %]
|
|
||||||
}
|
|
||||||
|
|
||||||
#let ok = text(fill: olive, sym.checkmark)
|
#let ok = text(fill: olive, sym.checkmark)
|
||||||
#let okk = text(fill: olive, tracking: -5pt, sym.checkmark+sym.checkmark)
|
#let okk = text(fill: olive, tracking: -5pt, sym.checkmark+sym.checkmark)
|
||||||
|
|
||||||
|
@ -25,5 +20,3 @@
|
||||||
s
|
s
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#let num(n) = [#n]
|
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
#import "X_lib.typ": mypercent
|
#import "../lib.typ": num, mypercent
|
||||||
|
|
||||||
#let NBTOTAL = 62525
|
#let NBTOTAL = 62525
|
||||||
#let NBTOTALSTRING = NBTOTAL //\num{62525}\xspace}
|
#let NBTOTALSTRING = num(NBTOTAL)
|
||||||
|
|
||||||
#let nbtools = 26
|
#let nbtools = 26
|
||||||
#let nbtoolsselected = 20
|
#let nbtoolsselected = 20
|
||||||
|
|
|
@ -1,10 +1,8 @@
|
||||||
#import "@local/template-thesis-matisse:0.0.1": todo
|
#import "../lib.typ": todo
|
||||||
|
|
||||||
= RASTA
|
= RASTA
|
||||||
|
|
||||||
#todo[typstify RASTA paper]
|
#todo[Bring back element from previous version of rasta]
|
||||||
|
|
||||||
#todo[Format numbers]
|
|
||||||
|
|
||||||
#include("0_intro.typ")
|
#include("0_intro.typ")
|
||||||
#include("1_related_work.typ")
|
#include("1_related_work.typ")
|
12
4_class_loader/main.typ
Normal file
12
4_class_loader/main.typ
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
#import "../lib.typ": todo
|
||||||
|
|
||||||
|
= Class loaders in the middle: confusing Android static analyzers
|
||||||
|
|
||||||
|
/*
|
||||||
|
#include("0_intro.typ")
|
||||||
|
#include("1_related_work.typ")
|
||||||
|
#include("2_methodology.typ")
|
||||||
|
#include("3_experiments.typ")
|
||||||
|
#include("4_discussion.typ")
|
||||||
|
#include("5_conclusion.typ")
|
||||||
|
*/
|
36
lib.typ
Normal file
36
lib.typ
Normal file
|
@ -0,0 +1,36 @@
|
||||||
|
#import "@local/template-thesis-matisse:0.0.1": *
|
||||||
|
|
||||||
|
// Format number.
|
||||||
|
// Following https://www.mit.edu/course/21/21.guide/numbers.htm
|
||||||
|
#let num(n, decimal: ".", thousands: " ") = {
|
||||||
|
let n = if type(n) == str {
|
||||||
|
float(n)
|
||||||
|
} else {
|
||||||
|
n
|
||||||
|
}
|
||||||
|
assert(type(n) == int or type(n) == float, message: "must be a number")
|
||||||
|
|
||||||
|
let parts = str(n).split(".")
|
||||||
|
let decimal_p = if parts.len() == 2 { parts.at(1) }
|
||||||
|
let integer_p = parts.at(0)
|
||||||
|
let integer_p = if integer_p.len() <= 4 {
|
||||||
|
integer_p
|
||||||
|
} else {
|
||||||
|
let nb_cluster = calc.div-euclid(integer_p.len(), 3)
|
||||||
|
let first_cluster_size = calc.rem-euclid(integer_p.len(), 3)
|
||||||
|
let clusters = ()
|
||||||
|
if first_cluster_size != 0 {
|
||||||
|
clusters.push(integer_p.slice(0, count: first_cluster_size))
|
||||||
|
}
|
||||||
|
for i in range(0, nb_cluster) {
|
||||||
|
clusters.push(integer_p.slice(first_cluster_size + i*3, count: 3))
|
||||||
|
}
|
||||||
|
clusters.join(thousands)
|
||||||
|
}
|
||||||
|
let formated = integer_p + if decimal_p != none { decimal + decimal_p }
|
||||||
|
[#formated]
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#let mypercent(numerator, denominator, digits: 2) = [#num(calc.round((100 * numerator) / denominator, digits: digits))%]
|
||||||
|
|
BIN
main.pdf
BIN
main.pdf
Binary file not shown.
9
main.typ
9
main.typ
|
@ -1,4 +1,4 @@
|
||||||
#import "@local/template-thesis-matisse:0.0.1": *
|
#import "lib.typ": *
|
||||||
|
|
||||||
#import "jury.typ": jury-content
|
#import "jury.typ": jury-content
|
||||||
#import "abstract.typ": keywords-en, keywords-fr, abstract-en, abstract-fr
|
#import "abstract.typ": keywords-en, keywords-fr, abstract-en, abstract-fr
|
||||||
|
@ -115,11 +115,8 @@
|
||||||
) <alg:hello-void>
|
) <alg:hello-void>
|
||||||
|
|
||||||
|
|
||||||
#include("3_rasta/rasta.typ")
|
#include("3_rasta/main.typ")
|
||||||
|
#include("4_class_loader/main.typ")
|
||||||
= Contribution 2
|
|
||||||
|
|
||||||
#lorem(500)
|
|
||||||
|
|
||||||
= Contribution n
|
= Contribution n
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue