1
0

Compare commits

...

2 Commits

Author SHA1 Message Date
Matthias Veigel
cfd7cb3c6c
Added CI
All checks were successful
/ Build pdf (push) Successful in 1m4s
2025-05-16 14:25:46 +02:00
Matthias Veigel
f38b76de6d
Added search string 2025-05-16 14:11:37 +02:00
6 changed files with 96 additions and 15 deletions

17
.gitea/workflows/pdf.yaml Normal file
View File

@ -0,0 +1,17 @@
on:
- push
jobs:
build:
name: Build pdf
runs-on: 'docker'
container:
archlinux:latest
steps:
- run: pacman -Sy --noconfirm nodejs git typst fontconfig ttf-linux-libertine ttf-inconsolata
- uses: actions/checkout@v3
- run: typst c main.typ
- uses: actions/upload-artifact@v3
with:
name: main.pdf
path: main.pdf

1
.gitignore vendored Normal file
View File

@ -0,0 +1 @@
main.pdf

View File

@ -343,7 +343,7 @@
let e = it.element let e = it.element
let f = it.element.func() let f = it.element.func()
let s = if it.supplement not in (auto, none) {it.supplement} let s = if it.supplement not in (auto, none) {it.supplement}
else if f == heading {sym.section} else if f == heading {"Sect."}
else {e.supplement} else {e.supplement}
let sep = if s == sym.section [] else [ ] let sep = if s == sym.section [] else [ ]
link( link(

View File

@ -23,9 +23,18 @@
#set figure(supplement: [Fig.]) #set figure(supplement: [Fig.])
#show figure.caption: it => [ #show figure.caption: it => [
*Fig #context it.counter.display(it.numbering)* #set text(size: 8pt)
*#it.supplement #context it.counter.display(it.numbering)*
#it.body #it.body
] ]
#show figure.where(kind: "raw"): set figure(supplement: [Listing])
#show figure.where(kind: "raw"): it => align(left)[
#v(8pt, weak: true)
#it.body
#v(4pt, weak: true)
#it.caption
#v(8pt, weak: true)
]
#set heading(numbering: "1.1.1") #set heading(numbering: "1.1.1")
@ -37,7 +46,7 @@ todo
todo todo
= Methodology = Methodology
== Objective and research questions == Objective and research questions <research_questions_s>
The goal of this research paper is to find claims about the advantages and disadvantages of using dataflow analysis for compiler optimization and where DFA is already implemented in Compilers. The goal of this research paper is to find claims about the advantages and disadvantages of using dataflow analysis for compiler optimization and where DFA is already implemented in Compilers.
This goal has been defined in two research questions: This goal has been defined in two research questions:
- RQ1 --- What are the advantages and disadvantages of using dataflow analysis for compiler optimization? \ - RQ1 --- What are the advantages and disadvantages of using dataflow analysis for compiler optimization? \
@ -47,28 +56,45 @@ This goal has been defined in two research questions:
This questions aims to identify how DFA is already used in current compilers and if it is used during normal compilation or if it has to be explicitly enabled. This questions aims to identify how DFA is already used in current compilers and if it is used during normal compilation or if it has to be explicitly enabled.
== Search and selection strategy == Search and selection strategy
My search strategy consisted of 4 steps as seen in @sas_fig. My search strategy consisted of 4 steps as seen in @sas_fig. \
#figure(
caption: [Search string used in electronic databases],
kind: "raw",
align(left)[
#set raw(syntaxes: "search-string.sublime-syntax", theme: "search-string.tmTheme")
```SearchString
dfa OR (dataflow AND analysis)
AND (compiler* OR compilation)
AND (optimiz*)
```
]
) <sas_search_string>
The papers from the first steps are collected from the electronic databases ACM Digital Library, IEEE Xplore, Springer Link, Web of Science with the search string seen in @sas_search_string.
The search string in @sas_search_string was created using the research questions in @research_questions_s and was always applied to the full text of the papers.
#place( #place(
bottom + center, bottom + center,
scope: "parent", scope: "parent",
float: true, float: true,
[ [
#set par(leading: 0.55em) #set par(leading: 0.3em)
#set text(size: 9pt)
#figure( #figure(
caption: [Search and selection process], caption: [Search and selection process],
cetz.canvas({ cetz.canvas({
import cetz.draw: * import cetz.draw: *
let bs = (3.3, 1.4) let bs = (3.3, 1.1)
rect((0, 0), (rel: bs), name: "acm") rect((0, 0), (rel: bs), name: "acm")
rect((0, -1.7), (rel: bs), name: "ieee") rect((0, -(bs.at(1)+0.3)*1), (rel: bs), name: "ieee")
rect((0, -3.4), (rel: bs), name: "springer") rect((0, -(bs.at(1)+0.3)*2), (rel: bs), name: "springer")
rect((0, -5.1), (rel: bs), name: "websci") rect((0, -(bs.at(1)+0.3)*3), (rel: bs), name: "websci")
rect((bs.at(0)+1.5, -2.55), (rel: bs), name: "dup") rect((bs.at(0)+1.5, -(bs.at(1)*1.5+0.45)), (rel: bs), name: "dup")
rect((bs.at(0)*2+2.25, -2.55), (rel: bs), name: "sel") rect((bs.at(0)*2+2.25, -(bs.at(1)*1.5+0.45)), (rel: bs), name: "sel")
rect((bs.at(0)*3+3, -2.55), (rel: bs), name: "snow") rect((bs.at(0)*3+3, -(bs.at(1)*1.5+0.45)), (rel: bs), name: "snow")
rect((bs.at(0)*4+3.75, -2.55), (rel: bs), name: "inc") rect((bs.at(0)*4+3.75, -(bs.at(1)*1.5+0.45)), (rel: bs), name: "inc")
line("acm.east", (rel: (0.75, 0)), name: "dlu") line("acm.east", (rel: (0.75, 0)), name: "dlu")
line("ieee.east", (rel: (0.75, 0))) line("ieee.east", (rel: (0.75, 0)))
@ -85,9 +111,9 @@ My search strategy consisted of 4 steps as seen in @sas_fig.
content("acm", align(center)[ACM Digital Library \ n = ]) content("acm", align(center)[ACM Digital Library \ n = ])
content("ieee", align(center)[IEEExplore \ n = ]) content("ieee", align(center)[IEEExplore \ n = ])
content("springer", align(center)[Springer Link \ n = ]) content("springer", align(center)[Springer Link \ n = ])
content("websci", align(center)[Web of science \ n = ]) content("websci", align(center)[Web of Science \ n = ])
content("dup", align(center)[Duplicate removal \ n = ]) content("dup", align(center)[Duplicate removal \ n = ])
content("sel", align(center)[Application of \ Selection Criteria \ n = ]) content("sel", align(center)[Application of \ selection criteria \ n = ])
content("snow", align(center)[Snowballing \ n = ]) content("snow", align(center)[Snowballing \ n = ])
content("inc", align(center)[Papers included \ n = ]) content("inc", align(center)[Papers included \ n = ])
}) })

View File

@ -0,0 +1,10 @@
%YAML 1.2
---
name: SearchString
file_extensions: []
scope: source.ss
contexts:
main:
- match: \b(OR|AND)\b
scope: keyword.op.ss

27
search-string.tmTheme Normal file
View File

@ -0,0 +1,27 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>name</key>
<string>Example Color Scheme</string>
<key>settings</key>
<array>
<!-- Global settings -->
<dict>
<key>settings</key>
<dict>
</dict>
</dict>
<dict>
<key>name</key>
<string>ops</string>
<key>scope</key>
<string>keyword.op.ss</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string>bold</string>
</dict>
</dict>
</array>
</dict>