From 6809d4ef78c16a170ba052b7f65d819b39293eb1 Mon Sep 17 00:00:00 2001 From: Andrew Pollack Date: Wed, 21 Dec 2022 09:33:44 -0800 Subject: [PATCH] Minor punctuation update --- src/memory-management/comparison.md | 48 ++++++++++++++--------------- 1 file changed, 24 insertions(+), 24 deletions(-) diff --git a/src/memory-management/comparison.md b/src/memory-management/comparison.md index 91c00d9f..8d8055f7 100644 --- a/src/memory-management/comparison.md +++ b/src/memory-management/comparison.md @@ -4,31 +4,31 @@ Here is a rough comparison of the memory management techniques. ## Pros of Different Memory Management Techniques -* Manual like C - * No runtime overhead -* Automatic like Java - * Fully automatic - * Safe and correct -* Scope-based like C++ - * Partially automatic - * No runtime overhead -* Compiler-enforced scope-based like Rust - * Enforced by compiler - * No runtime overhead - * Safe and correct +* Manual like C: + * No runtime overhead. +* Automatic like Java: + * Fully automatic. + * Safe and correct. +* Scope-based like C++: + * Partially automatic. + * No runtime overhead. +* Compiler-enforced scope-based like Rust: + * Enforced by compiler. + * No runtime overhead. + * Safe and correct. ## Cons of Different Memory Management Techniques * Manual like C: - * Use-after-free - * Double-frees - * Memory leaks -* Automatic like Java - * Garbage collection pauses - * Destructors delays -* Scope-based like C++ - * Complex, opt-in by programmer - * Potential for use-after-free -* Compiler-enforced and scope-based like Rust - * Some upfront complexity - * Can reject valid programs + * Use-after-free. + * Double-frees. + * Memory leaks. +* Automatic like Java: + * Garbage collection pauses. + * Destructors delays. +* Scope-based like C++: + * Complex, opt-in by programmer. + * Potential for use-after-free. +* Compiler-enforced and scope-based like Rust: + * Some upfront complexity. + * Can reject valid programs.