Rev 6 | Blame | Compare with Previous | Last modification | View Log | RSS feed
digraph Goals {
node [shape=box];
ranksep=1.5;
rankdir=LR;
subgraph cluster_Documentation {
color=cyan;
node [color=cyan];
label="Documentation";
n18 [label="To document thoroughly\nfor users"];
n19 [label="To document thoroughly\nfor developers"];
n26 -> n19;
}
n28 -> n19;
subgraph cluster_Education {
color=purple;
node [color=purple];
label="Education";
n14 [label="To promote compiler internals\nas an understandable \
project,\nnot a magical black box"];
n16 [label="To educate on good\ndesign in general"];
n14 -> n16;
n17 -> n16;
n17 [label="To destroy assumptions on\nwhat \"should\" be done"];
n14 -> n17;
}
n19 -> n14;
subgraph cluster_Programing {
color=red;
node [color=red];
label="Programing";
subgraph cluster_CoreValues {
label="Core Values";
n1 [label="To continiously produce\ncorrect code"];
n2 [label="To ensure code correctness\nthrough various means"];
n1 -> n2;
n3 [label="To improve performance\nunless it violates 1 or 2"];
n1 -> n3;
n2 -> n3;
}
n7 [label="To be modular and unbiased\nin supported producers \
for languages"];
n8 [label="To be portable"];
n11 [label="To produce clean and understandable\noutput comparable \
to handwritten assembly"];
n31 -> n11;
n12 [label="To be easy to modify and adapt"];
n26 -> n12;
n13 [label="To serve each specific application\ndomain with 100% \
applicability,\nwithout introducing unrelated features"];
/* i.e. seperate projects */
n20 -> n13;
n7 -> n13;
n26 -> n13;
n20 [label="To adhere to standards"];
n1 -> n20;
n21 [label="To identify precisely the\ncontext of messages and to\n\
which standard they apply"];
n20 -> n21;
n22 [label="To be bug-free and reliable"];
n2 -> n22;
n26 -> n22;
n26 [label="To hide implementation details\nbehind \
cleanly-abstracted APIs"];
n7 -> n26;
n31 [label="To implement code generation\nfor as many platforms as\nwe \
are able to maintain"];
n11 -> n31;
n8 -> n31;
n33 [label="To never break the build"];
n34 [label="Test cases upto date with\nthe implemented spec"];
n35 [label="Test cases proactive, not reactive"];
n34 -> n35;
}
n5 -> n11;
n4 -> n12;
n5 -> n12;
n23 -> n12;
n18 -> n34;
subgraph cluster_Social {
color=blue;
node [color=blue];
label="Social";
n6 [label="To promote TDF adoption"];
n15 [label="To attract developers\nto our philosophy of coding"];
n27 -> n15;
n23 [label="For development to be\neasily accessible and\nnot of an \
elite core"];
n27 -> n23;
n24 [label="To not stray from the\n\"feel\" of TenDRA"];
n27 -> n24;
n25 [label="To be unbiased in accepting advice"];
n27 [label="To maintain dignity, professionalism\nand our reputation \
as \"nice guys\""];
n28 [label="To attract developers\nto our projects"];
n23 -> n28;
n15 -> n28;
n32 [label="To maintain a reputation\nfor uncompromising quality"];
}
n30 -> n6;
n1 -> n24;
n2 -> n24;
n3 -> n24;
n19 -> n28;
n12 -> n28;
subgraph cluster_Subprojects {
color=green;
node [color=green];
label="Subprojects";
n29 [label="To produce a clean framework\nfor code quality \
testing"];
/* lint, etc */
n30 [label="To produce a clean framework\nfor TDF manipulation"];
/* libTDF */
n4 [label="To produce a clean framework\nfor parser development"];
n5 [label="To produce a clean framework\nfor code generation"];
}
}