From 2beeb23d66c76b2fa4212c7a1ddd0a4dfab4e3dc Mon Sep 17 00:00:00 2001 From: Dane Sabo Date: Mon, 28 Jul 2025 09:32:31 -0400 Subject: [PATCH] vault backup: 2025-07-28 09:32:31 --- Programming/Formal Methods/TLA/TLA+ Learning Plan.md | 10 +++++----- .../TLA/Writing a MARVEL Specification in TLA+.md | 2 +- Programming/Haskell/Chapter 1 - Introduction.md | 7 +++++-- Programming/Haskell/Learning Plan.md | 10 +++++----- Programming/Rust/Learning Plan.md | 8 ++++---- Thesis/Things to Do.md | 2 +- 6 files changed, 21 insertions(+), 18 deletions(-) diff --git a/Programming/Formal Methods/TLA/TLA+ Learning Plan.md b/Programming/Formal Methods/TLA/TLA+ Learning Plan.md index 0ae7cd3ba..5840697ec 100644 --- a/Programming/Formal Methods/TLA/TLA+ Learning Plan.md +++ b/Programming/Formal Methods/TLA/TLA+ Learning Plan.md @@ -3,8 +3,8 @@ - [x] Resources and Tools #TLA ⏳ 2025-02-24 📅 2025-02-25 ✅ 2025-03-03 - [x] Die Hard #TLA ⏳ 2025-02-28 📅 2025-03-04 ✅ 2025-02-28 - [x] Transaction Commit #TLA ⏳ 2025-03-07 📅 2025-03-22 ✅ 2025-04-08 -- [ ] Two-Phase Commit #TLA 📅 2025-03-25 -- [ ] Paxos Commit #TLA 📅 2025-03-25 -- [ ] Implementation #TLA 📅 2025-03-25 -- [ ] The Alternating Bit Protocol #TLA 📅 2025-04-01 ⏳ 2025-03-28 -- [ ] Implementation with Refinement #TLA ⏳ 2025-04-04 📅 2025-04-08 +- [ ] Two-Phase Commit #TLA 📅 2025-07-29 +- [ ] Paxos Commit #TLA 📅 2025-07-29 +- [ ] Implementation #TLA 📅 2025-07-29 +- [ ] The Alternating Bit Protocol #TLA ⏳ 2025-03-28 📅 2025-08-01 +- [ ] Implementation with Refinement #TLA ⏳ 2025-04-04 📅 2025-08-01 diff --git a/Programming/Formal Methods/TLA/Writing a MARVEL Specification in TLA+.md b/Programming/Formal Methods/TLA/Writing a MARVEL Specification in TLA+.md index d7afb4726..5be076c89 100644 --- a/Programming/Formal Methods/TLA/Writing a MARVEL Specification in TLA+.md +++ b/Programming/Formal Methods/TLA/Writing a MARVEL Specification in TLA+.md @@ -6,4 +6,4 @@ - [-] Write down some specs from MARVEL in natural language #Formal-methods 🆔 lofl94 ⛔ furwbi ⏫ 📅 2025-02-28 ❌ 2025-03-21 ## How do they translate to TLA+? -- [ ] Translate a MARVEL specification into a TLA+ module #Formal-methods #TLA ⛔ lofl94 ⏫ 📅 2025-03-04 \ No newline at end of file +- [-] Translate a MARVEL specification into a TLA+ module #Formal-methods #TLA ⛔ lofl94 ⏫ 📅 2025-07-29 ❌ 2025-07-28 \ No newline at end of file diff --git a/Programming/Haskell/Chapter 1 - Introduction.md b/Programming/Haskell/Chapter 1 - Introduction.md index 955ea32c1..67fe20740 100644 --- a/Programming/Haskell/Chapter 1 - Introduction.md +++ b/Programming/Haskell/Chapter 1 - Introduction.md @@ -5,11 +5,14 @@ What does that mean? What isn't a functional programming language? Well, just ab If I want to compute a factorial, I'd probably say take this value, and multiply it a whole bunch of times until you get to an end condition. The computer may change state at this point, where your input variable gets overwritten with the result, or some thing inside the task list, such as an iterator, changes to a value that can create a different result if run again. -- [?] What is a 'state' for a computer really? #Follow-Up #Haskell ⏳ 2025-02-28 📅 2025-03-11 +- [x] What is a 'state' for a computer really? #Follow-Up #Haskell ⏳ 2025-02-28 📅 2025-03-11 ✅ 2025-07-28 + +A state for a computer is really just a snapshot of time of all the memory in the +computer. Functional programming languages do not do this. Instead of using iteratives like that or having the possiblity of functions changing variable states, everything is instead immutable. If I define a function for a factorial, I define *what a factorial is*, rather than explicit steps to compute one. Then, when I apply the 'function' to an input, the output is something new: the function applied to that variable that is fundamentally not an execution of the function or a wrought product of the original input. This is *maybe* what a monad is. -- [?] What is a 'monad' really? #Follow-Up #Haskell ⏳ 2025-02-28 📅 2025-03-11 +- [-] What is a 'monad' really? #Follow-Up #Haskell ⏳ 2025-02-28 📅 2025-03-11 ❌ 2025-07-28 There's a special property about functions that can be called multiple times with the same parameters being guaranteed to return the same result: **Referential Transparency**. This property allows us to deduce and then even proved that a function does exactly what it is supposed to, every time. diff --git a/Programming/Haskell/Learning Plan.md b/Programming/Haskell/Learning Plan.md index a4ae8c6d3..d1ae8371b 100644 --- a/Programming/Haskell/Learning Plan.md +++ b/Programming/Haskell/Learning Plan.md @@ -1,11 +1,11 @@ https://learnyouahaskell.github.io/chapters.html - [x] Chapter 1: Introduction #Haskell ⏳ 2025-02-18 📅 2025-02-12 ✅ 2025-02-19 - [x] Chapter 2: Starting Out #Haskell ⏳ 2025-02-19 📅 2025-02-25 ✅ 2025-02-24 -- [<] Chapter 3: Types and Typeclasses #Haskell 📅 2025-03-22 -- [ ] Chapter 4: Syntax in Functions #Haskell 📅 2025-03-25 -- [ ] Chapter 5: Recursion #Haskell 📅 2025-03-25 -- [ ] Chapter 6: Higher Order Functions #Haskell 📅 2025-03-19 -- [ ] Chapter 7: Modules #Haskell 📅 2025-03-26 +- [<] Chapter 3: Types and Typeclasses #Haskell 📅 2025-07-29 +- [ ] Chapter 4: Syntax in Functions #Haskell 📅 2025-07-29 +- [ ] Chapter 5: Recursion #Haskell 📅 2025-07-29 +- [ ] Chapter 6: Higher Order Functions #Haskell 📅 2025-07-29 +- [ ] Chapter 7: Modules #Haskell 📅 2025-07-29 - [ ] Chapter 8: Making Our Own Types and Typeclasses #Haskell 📅 2025-04-02 - [ ] Chapter 9: A Fistful of Monads #Haskell 📅 2025-04-09 - [ ] Chapter 10: For a Few Monads More #Haskell 📅 2025-04-16 diff --git a/Programming/Rust/Learning Plan.md b/Programming/Rust/Learning Plan.md index 05a8f8929..934fbdc6c 100644 --- a/Programming/Rust/Learning Plan.md +++ b/Programming/Rust/Learning Plan.md @@ -1,10 +1,10 @@ - [x] Chapter 1: Getting Started #Rust ⏳ 2025-02-17 📅 2025-02-11 ✅ 2025-02-17 - [x] Chapter 2: Programming a Guessing Game #Rust 📅 2025-03-22 ✅ 2025-03-24 -- [<] Chapter 3: Common Programming Concepts #Rust 📅 2025-03-22 -- [ ] Chapter 4: Understanding Ownership #Rust 📅 2025-03-23 -- [ ] Chapter 5: Using Structs to Structure Related Data #Rust 📅 2025-03-25 +- [<] Chapter 3: Common Programming Concepts #Rust 📅 2025-07-29 +- [ ] Chapter 4: Understanding Ownership #Rust 📅 2025-07-29 +- [ ] Chapter 5: Using Structs to Structure Related Data #Rust 📅 2025-07-29 - [ ] Chapter 6: Enums and Pattern Matching #Rust 📅 2025-04-18 -- [ ] Chapter 7: Managing Growing Projects with Packages, Crates, and Modules #Rust 📅 2025-03-25 +- [ ] Chapter 7: Managing Growing Projects with Packages, Crates, and Modules #Rust 📅 2025-07-29 - [ ] Chapter 8: Common Collections #Rust 📅 2025-04-01 - [ ] Chapter 9: Error Handling #Rust 📅 2025-04-08 - [ ] Chapter 10: Generic Types, Traits, and Lifetimes #Rust 📅 2025-04-15 diff --git a/Thesis/Things to Do.md b/Thesis/Things to Do.md index b6d0ffdd4..0f887d963 100644 --- a/Thesis/Things to Do.md +++ b/Thesis/Things to Do.md @@ -1,7 +1,7 @@ Follow up tasks: - [-] What is the state of the art for wireless control? #Thesis ❌ 2025-01-24 - [-] What has happened so far with verifying assembly code? #Thesis 🔽 ⏳ 2025-01-29 📅 2025-02-06 ❌ 2025-03-10 -- [?] How does Rust compile into binary? #Thesis ⏬ ⏳ 2025-01-28 📅 2025-02-11 +- [-] How does Rust compile into binary? #Thesis ⏬ ⏳ 2025-01-28 📅 2025-02-11 ❌ 2025-07-28 ```dataview task where contains(tags, "Thesis")