Compare commits

...

8 commits

Author SHA1 Message Date
1a9e1b0a01 add option to build in light mode
All checks were successful
continuous-integration/drone/push Build is passing
2021-04-15 17:54:46 +02:00
a2fd169fea add gui app condition
All checks were successful
continuous-integration/drone/push Build is passing
2021-04-09 22:35:05 +02:00
8b3762ded6 some fixes
All checks were successful
continuous-integration/drone/push Build is passing
2021-04-09 21:39:46 +02:00
2e5b9be7c6 port graphs to graphviz
All checks were successful
continuous-integration/drone/push Build is passing
2021-04-09 21:26:15 +02:00
4aa8d6fadf change graphs up a bit
All checks were successful
continuous-integration/drone/tag Build is passing
continuous-integration/drone/push Build is passing
2021-04-07 15:08:00 +02:00
23d36d8705 add transpilation condition
All checks were successful
continuous-integration/drone/push Build is passing
2021-03-30 21:50:11 +02:00
e20bd612c5 update makefile and themes 2021-03-30 21:50:03 +02:00
58a638be2c fix typo
All checks were successful
continuous-integration/drone/push Build is passing
2021-03-30 15:38:27 +02:00
7 changed files with 222 additions and 84 deletions

View file

@ -2,9 +2,8 @@ kind: pipeline
name: release
steps:
- name: build
image: minlag/mermaid-cli
image: hamroctopus/graphviz:2.38.0
commands:
- apt install make
- make
- name: publish

View file

@ -1,14 +1,60 @@
DARK_BASE_ATTRS=\
color=white \
fontcolor=white
DARK_GRAPH_ATTRS=\
$(DARK_BASE_ATTRS) \
bgcolor=gray8
DARK_NODE_ATTRS=\
$(DARK_BASE_ATTRS)
DARK_EDGE_ATTRS=\
$(DARK_BASE_ATTRS)
BASE_ATTRS=\
fontname="sans-serif"
GRAPH_ATTRS=\
$(BASE_ATTRS) \
NODE_ATTRS=\
$(BASE_ATTRS)
EDGE_ATTRS=\
$(BASE_ATTRS)
DOT_BASE_CMD=dot \
$(patsubst %,-G%,$(GRAPH_ATTRS)) \
$(patsubst %,-N%,$(NODE_ATTRS)) \
$(patsubst %,-E%,$(EDGE_ATTRS))
DARK_CMD_EXT=\
$(patsubst %,-G%,$(DARK_GRAPH_ATTRS)) \
$(patsubst %,-N%,$(DARK_NODE_ATTRS)) \
$(patsubst %,-E%,$(DARK_EDGE_ATTRS))
DOT_CMD=$(shell if [[ -v "LIGHT_MODE" ]]; then echo "$(DOT_BASE_CMD)"; else echo "$(DOT_BASE_CMD) $(DARK_CMD_EXT)"; fi)
BUILD_PATH_PREFIX=$(shell if [[ -v "LIGHT_MODE" ]]; then echo "light/"; fi)
.PHONY: All
All: build/de.png build/de.svg build/en.png build/en.svg
All:\
$(BUILD_PATH_PREFIX)build/de.png \
$(BUILD_PATH_PREFIX)build/de.svg \
$(BUILD_PATH_PREFIX)build/en.png \
$(BUILD_PATH_PREFIX)build/en.svg
.PHONY: clean
clean:
rm -rf build
build/%.svg: %.mmd
$(BUILD_PATH_PREFIX)build/%.svg: %.dot
@mkdir -p $(@D)
mmdc -i $< -o $@ -p ./puppeteer-config.json
$(DOT_CMD) -Tsvg $< -o $@
build/%.png: %.mmd
$(BUILD_PATH_PREFIX)build/%.png: %.dot
@mkdir -p $(@D)
mmdc -i $< -o $@ -w 2000 -p ./puppeteer-config.json
$(DOT_CMD) -Tpng $< -o $@

85
de.dot Normal file
View file

@ -0,0 +1,85 @@
digraph langchart {
{
rank = same;
node [shape=hexagon];
v_bad [label="Die Sprache ist absoluter Dreck! Sofort entsorgen!"];
bad [label="Die Sprache taugt nichts!"];
acceptable [label="Die Sprache ist akzeptabel"];
good [label="Die Sprache ist gut"];
v_good [label="Die Sprache ist geil!"];
}
n_0 [shape=house, label="Ist diese Programmiersprache gut?"];
n_1 [label="Ist die Sprache interpretiert?"];
n_0 -> n_1;
n_2 [label="Wird die Sprache für embedded-scripting verwendet?"];
subgraph cluster0 {
label="Embedded Scripting";
n_4 [label="Wird die Sprache in einem sehr komplexem Programm wie einem Browser als Scriptsprache verwendet?"];
n_2 -> n_4 [label="Ja"];
n_5 [shape=parallelogram, label="VM Sprache verwenden"];
n_4 -> n_5 [label="Ja"];
}
n_2 -> v_bad [label="Nein"];
n_5 -> bad;
n_4 -> n_6 [label="Nein"];
n_1 -> n_3 [label="Nein"];
n_1 -> n_2 [label="Ja"];
n_3 [label="Hat die Sprache dynamische Typen?"];
n_6 [label="Hat die Sprache whitespace-dependant Syntax?"];
n_3 -> v_bad [label="Ja"];
n_3 -> n_6 [label="Nein"];
n_6 -> v_bad [label="Ja"];
n_7 [label="Funktioniert diese Sprache VOLLSTÄNDIG auf Linux?"];
n_6 -> n_7 [label="Nein"];
n_7 -> v_bad [label="Nein"];
n_8 [label="Wurde die Sprache von Microsoft entwickelt?"];
n_8 -> v_bad [label="Ja"];
n_7 -> n_8 [label="Ja"];
n_9 [label="Ist die GESAMTE Toolchain FOSS?"];
n_8 -> n_9 [label="Nein"];
n_9 -> bad [label="Nein"];
n_10 [label="Wird die Sprache zu einer anderern transpiliert?"];
n_11 [label="Kommen alle Targets der Sprache in diesem Test bei \"Schlecht\" an?"];
n_12 [label="Läuft die Sprache in einer VM?"];
n_9 -> n_10 [label="Ja"];
n_10 -> n_11 [label="Ja"];
n_10 -> n_12 [label="Nein"];
n_11 -> acceptable [label="Ja"];
n_11 -> v_good [label="Nein"];
n_13 [label="Hat die Sprache einen Garbage Collector?"];
n_12 -> n_13 [label="Nein"];
n_13 -> good [label="Ja"];
n_13 -> v_good [label="Nein"];
n_14 [label="Wofür wird die Sprache verwendet?"];
n_12 -> n_14 [label="Ja"];
n_14 -> v_bad [label="CLI App"];
n_14 -> good [label="Embedded Scripting"];
n_14 -> v_good [label="Game Dev"];
n_14 -> acceptable [label="GUI App"];
}

36
de.mmd
View file

@ -1,36 +0,0 @@
flowchart TD
A[Ist diese Programmiersprache gut?] --> B([Ist die Sprache interpretiert?])
I --> |Nein| Schlecht{{Die Sprache ist schlecht, sofort entsorgen!}}
I --> |Ja| J([Wird die Sprache in einem sehr komplexem Programm wie einem Browser als Scriptsprache verwendet?])
J --> |Ja| K[\VM Sprache verwenden\] --> Schlecht
J --> |Nein| D
B --> |Ja| I([Wird die Sprache für embedded-scripting verwendet?])
B --> |Nein| C([Hat die Sprache dynamische Typen?])
C --> |Ja| Schlecht
C --> |Nein| D([Hat die Sprache whitespace-dependant Syntax?])
D --> |Ja| Schlecht
D --> |Nein| E([Funktionierd diese Sprache VOLLSTÄNDIG auf linux?])
E --> |Nein| Schlecht
E --> |Ja| F([Ist die GESAMTE Toolchain FOSS?])
F --> |Nein| Schlecht
F --> |Ja| G([Wurde die Sprache von Microsoft entwickelt?])
G --> |Ja| Schlecht
G --> |Nein| H([Läuft die Sprache nur in einer VM?])
H --> |Ja| L([Wird die Sprache für embedded-scripting verwendet?])
H --> |Nein| M([Hat die Sprache einen Garbage Collector?])
M --> |Ja| Gut{{Die Sprache ist gut}}
M --> |Nein| SGut{{Die Sprache ist geil!}}
L --> |Nein| Ok{{Die Sprache ist akzeptabel}}
L --> |Ja| Gut

85
en.dot Normal file
View file

@ -0,0 +1,85 @@
digraph langchart {
{
rank = same;
node [shape=hexagon];
v_bad [label="The language is total Garbage! Immediately dispose of!"];
bad [label="The language is bad!"];
acceptable [label="The language is acceptable"];
good [label="The language is good"];
v_good [label="The language is awesome!"];
}
n_0 [shape=house, label="Is this programming language good?"];
n_1 [label="Is the language interpreted?"];
n_0 -> n_1;
n_2 [label="Is the language used for embedded scripting?"];
subgraph cluster0 {
label="Embedded Scripting";
n_4 [label="Is the language used for scripting in a very complex program such as a browser?"];
n_2 -> n_4 [label="Yes"];
n_5 [shape=parallelogram, label="Use VM language"];
n_4 -> n_5 [label="Yes"];
}
n_2 -> v_bad [label="No"];
n_5 -> bad;
n_4 -> n_6 [label="No"];
n_1 -> n_3 [label="No"];
n_1 -> n_2 [label="Yes"];
n_3 [label="Does the language have dynamic types?"];
n_6 [label="Does the language have whitespace-dependant Syntax?"];
n_3 -> v_bad [label="Yes"];
n_3 -> n_6 [label="No"];
n_6 -> v_bad [label="Yes"];
n_7 [label="Does the language COMPLETELY work on linux?"];
n_6 -> n_7 [label="No"];
n_7 -> v_bad [label="No"];
n_8 [label="Has the language been developed by Microsoft?"];
n_8 -> v_bad [label="Yes"];
n_7 -> n_8 [label="Yes"];
n_9 [label="Is the WHOLE Toolchain FOSS?"];
n_8 -> n_9 [label="No"];
n_9 -> bad [label="No"];
n_10 [label="Is the language transpiled to another?"];
n_11 [label="Do all targets of the langauge arrive at \"Bad\" in this test?"];
n_12 [label="Does the language only run in a VM?"];
n_9 -> n_10 [label="Yes"];
n_10 -> n_11 [label="Yes"];
n_10 -> n_12 [label="No"];
n_11 -> acceptable [label="Yes"];
n_11 -> v_good [label="No"];
n_13 [label="Does the language have a Garbage Collector?"];
n_12 -> n_13 [label="No"];
n_13 -> good [label="Yes"];
n_13 -> v_good [label="No"];
n_14 [label="What is the language used for?"];
n_12 -> n_14 [label="Yes"];
n_14 -> v_bad [label="CLI App"];
n_14 -> good [label="Embedded Scripting"];
n_14 -> v_good [label="Game Dev"];
n_14 -> acceptable [label="GUI App"];
}

36
en.mmd
View file

@ -1,36 +0,0 @@
flowchart TD
A[Is this programming language good?] --> B([Is the language interpreted?])
I --> |No| Bad{{The language is bad, dispose of immediately!}}
I --> |Yes| J([Is the language used for scripting in a very complex program such as a browser?])
J --> |Yes| K[\Use VM language\] --> Bad
J --> |No| D
B --> |Yes| I([Is the language used for embedded scripting?])
B --> |No| C([Does the language have dynamic types?])
C --> |Yes| Bad
C --> |No| D([Does the language have whitespace-dependant syntax?])
D --> |Yes| Bad
D --> |No| E([Does the language COMPELTELY work on linux?])
E --> |No| Bad
E --> |Yes| F([Is the WHOLE Toolchain FOSS?])
F --> |No| Bad
F --> |Yes| G([Has the language been developed by Microsoft?])
G --> |Yes| Bad
G --> |No| H([Does the language only run in a VM?])
H --> |Yes| L([Is the language used for embedded scripting?])
H --> |No| M([Does the language have a Garbage Collector?])
M --> |Yes| Good{{The language is good}}
M --> |No| VGood{{The language is awesome!}}
L --> |No| Ok{{The language is acceptable}}
L --> |Yes| Good

View file

@ -1,5 +0,0 @@
{
"args": [
"--no-sandbox"
]
}