diff --git a/docs/CompilerArchitecture.md b/docs/compiler/architecture.md similarity index 100% rename from docs/CompilerArchitecture.md rename to docs/compiler/architecture.md diff --git a/docs/llvm-backend.md b/docs/compiler/llvm-backend.md similarity index 100% rename from docs/llvm-backend.md rename to docs/compiler/llvm-backend.md diff --git a/docs/vm.md b/docs/compiler/vm.md similarity index 100% rename from docs/vm.md rename to docs/compiler/vm.md diff --git a/docs/FAQ.md b/docs/faq.md similarity index 100% rename from docs/FAQ.md rename to docs/faq.md diff --git a/docs/getting-started.md b/docs/getting-started/getting-started.md similarity index 100% rename from docs/getting-started.md rename to docs/getting-started/getting-started.md diff --git a/docs/Installation.md b/docs/getting-started/installation.md similarity index 100% rename from docs/Installation.md rename to docs/getting-started/installation.md diff --git a/docs/BestPractices.md b/docs/guides/BestPractices.md similarity index 100% rename from docs/BestPractices.md rename to docs/guides/BestPractices.md diff --git a/docs/ExamplesGuide.md b/docs/guides/ExamplesGuide.md similarity index 100% rename from docs/ExamplesGuide.md rename to docs/guides/ExamplesGuide.md diff --git a/docs/arrays.md b/docs/language/arrays.md similarity index 100% rename from docs/arrays.md rename to docs/language/arrays.md diff --git a/docs/async.md b/docs/language/async.md similarity index 100% rename from docs/async.md rename to docs/language/async.md diff --git a/docs/classes.md b/docs/language/classes.md similarity index 100% rename from docs/classes.md rename to docs/language/classes.md diff --git a/docs/closures.md b/docs/language/closures.md similarity index 100% rename from docs/closures.md rename to docs/language/closures.md diff --git a/docs/multithreading.md b/docs/language/concurrency.md similarity index 100% rename from docs/multithreading.md rename to docs/language/concurrency.md diff --git a/docs/syntax.md b/docs/language/control-flow.md similarity index 100% rename from docs/syntax.md rename to docs/language/control-flow.md diff --git a/docs/exceptions.md b/docs/language/error-handling.md similarity index 100% rename from docs/exceptions.md rename to docs/language/error-handling.md diff --git a/docs/functions.md b/docs/language/functions.md similarity index 100% rename from docs/functions.md rename to docs/language/functions.md diff --git a/docs/imports.md b/docs/language/imports-exports.md similarity index 100% rename from docs/imports.md rename to docs/language/imports-exports.md diff --git a/docs/inheritance.md b/docs/language/inheritance.md similarity index 100% rename from docs/inheritance.md rename to docs/language/inheritance.md diff --git a/docs/interfaces.md b/docs/language/interfaces.md similarity index 100% rename from docs/interfaces.md rename to docs/language/interfaces.md diff --git a/docs/maps.md b/docs/language/maps.md similarity index 100% rename from docs/maps.md rename to docs/language/maps.md diff --git a/docs/ownership.md b/docs/language/memory.md similarity index 100% rename from docs/ownership.md rename to docs/language/memory.md diff --git a/docs/operators.md b/docs/language/operators.md similarity index 100% rename from docs/operators.md rename to docs/language/operators.md diff --git a/docs/LanguageGuide.md b/docs/language/overview.md similarity index 100% rename from docs/LanguageGuide.md rename to docs/language/overview.md diff --git a/docs/packages.md b/docs/language/packages.md similarity index 100% rename from docs/packages.md rename to docs/language/packages.md diff --git a/docs/pattern-matching.md b/docs/language/pattern-matching.md similarity index 100% rename from docs/pattern-matching.md rename to docs/language/pattern-matching.md diff --git a/docs/traits.md b/docs/language/traits.md similarity index 100% rename from docs/traits.md rename to docs/language/traits.md diff --git a/docs/types.md b/docs/language/types.md similarity index 96% rename from docs/types.md rename to docs/language/types.md index 7e100fff..69f79519 100644 --- a/docs/types.md +++ b/docs/language/types.md @@ -1,5 +1,7 @@ # Types in TechScript +**Status: Implemented** + TechScript is dynamically typed. Variables do not have fixed types, but values do. --- @@ -62,7 +64,7 @@ configs = { ## 🔴 Custom Types -### Class / Model +### Class Objects instantiated using `class` and `new`: ```txs class Dog diff --git a/docs/variables.md b/docs/language/variables.md similarity index 97% rename from docs/variables.md rename to docs/language/variables.md index ed9bffb9..0b597313 100644 --- a/docs/variables.md +++ b/docs/language/variables.md @@ -1,5 +1,7 @@ # Variables in TechScript +**Status: Implemented** + Variables in TechScript are dynamically typed, and they are defined on their first assignment. --- diff --git a/docs/APIReference.md b/docs/reference/APIReference.md similarity index 100% rename from docs/APIReference.md rename to docs/reference/APIReference.md diff --git a/docs/StdlibReference.md b/docs/reference/StdlibReference.md similarity index 100% rename from docs/StdlibReference.md rename to docs/reference/StdlibReference.md diff --git a/docs/bytecode.md b/docs/specification/bytecode.md similarity index 100% rename from docs/bytecode.md rename to docs/specification/bytecode.md diff --git a/docs/ffi.md b/docs/specification/ffi.md similarity index 100% rename from docs/ffi.md rename to docs/specification/ffi.md diff --git a/docs/memory-model.md b/docs/specification/memory-model.md similarity index 100% rename from docs/memory-model.md rename to docs/specification/memory-model.md diff --git a/docs/cli.md b/docs/tooling/cli.md similarity index 100% rename from docs/cli.md rename to docs/tooling/cli.md diff --git a/docs/formatter.md b/docs/tooling/formatter.md similarity index 100% rename from docs/formatter.md rename to docs/tooling/formatter.md diff --git a/docs/package-manager.md b/docs/tooling/package-manager.md similarity index 100% rename from docs/package-manager.md rename to docs/tooling/package-manager.md diff --git a/docs/testing.md b/docs/tooling/test-runner.md similarity index 100% rename from docs/testing.md rename to docs/tooling/test-runner.md diff --git a/mkdocs.yml b/mkdocs.yml index fde7f99a..70a8c7b2 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -55,46 +55,50 @@ plugins: nav: - Home: index.md - - Getting Started: getting-started.md - - Installation: Installation.md - - Language Guide: - - Variables: variables.md - - Types & Operators: types.md - - Operators: operators.md - - Control Flow & Loops: syntax.md - - Functions: functions.md - - Closures: closures.md - - Arrays: arrays.md - - Maps: maps.md - - Classes & OOP: classes.md - - Inheritance: inheritance.md - - Interfaces: interfaces.md - - Traits: traits.md - - Pattern Matching: pattern-matching.md - - Error Handling: exceptions.md - - Advanced concepts: - - Memory & Ownership: ownership.md - - Imports & Modules: imports.md - - Packages: packages.md - - Multithreading: multithreading.md - - Async: async.md - - FFI: ffi.md - - Architecture & Compiler: - - Compiler Architecture: CompilerArchitecture.md - - LLVM Backend: llvm-backend.md - - Bytecode VM: vm.md - - Bytecode Format: bytecode.md - - Memory Model: memory-model.md - - Toolchain Tools: - - CLI Command Reference: cli.md - - Formatter (tsfmt): formatter.md - - Package Manager (tspm): package-manager.md - - Unit Testing: testing.md + - Getting Started: + - getting-started/getting-started.md + - getting-started/installation.md + - Language: + - language/overview.md + - language/variables.md + - language/types.md + - language/operators.md + - language/control-flow.md + - language/functions.md + - language/closures.md + - language/classes.md + - language/inheritance.md + - language/interfaces.md + - language/traits.md + - language/pattern-matching.md + - language/error-handling.md + - language/memory.md + - language/arrays.md + - language/maps.md + - language/imports-exports.md + - language/packages.md + - language/concurrency.md + - language/async.md + - Specification: + - specification/ffi.md + - specification/bytecode.md + - specification/memory-model.md + - Compiler: + - compiler/architecture.md + - compiler/llvm-backend.md + - compiler/vm.md + - Tooling: + - tooling/cli.md + - tooling/formatter.md + - tooling/package-manager.md + - tooling/test-runner.md + - Reference: + - reference/APIReference.md + - reference/StdlibReference.md + - Guides: + - guides/ExamplesGuide.md + - guides/BestPractices.md - Resources: - - API Reference: APIReference.md - - Stdlib Reference: StdlibReference.md - - Examples Guide: ExamplesGuide.md - - Best Practices: BestPractices.md - - FAQ: FAQ.md - - Release Notes: ReleaseNotes.md - - Roadmap: Roadmap.md + - faq.md + - ReleaseNotes.md + - Roadmap.md