Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion docs/generics.md
Original file line number Diff line number Diff line change
Expand Up @@ -53,4 +53,4 @@ do print_sound<T: Speaker>(obj: T)
obj.speak()
end
```
See [Traits](traits.md) for more details.
See [Traits](language/traits.md) for more details.
6 changes: 3 additions & 3 deletions docs/getting-started/getting-started.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ This guide gets you up and running with your very first TechScript program.
---

## 💻 Prerequisite
Make sure you have installed the TechScript compiler and VM on your machine. If not, follow the [Installation Guide](Installation.md).
Make sure you have installed the TechScript compiler and VM on your machine. If not, follow the [Installation Guide](installation.md).

Validate your installation:
```bash
Expand Down Expand Up @@ -64,5 +64,5 @@ tech run age_check.txs
---

## 🎮 Explore Next
- Check out the full [Syntax Guide](syntax.md).
- Learn how to compile scripts to bytecode using [CLI docs](cli.md).
- Check out the full [Syntax Guide](../language/overview.md).
- Learn how to compile scripts to bytecode using [CLI docs](../tooling/cli.md).
30 changes: 15 additions & 15 deletions docs/guides/ExamplesGuide.md
Original file line number Diff line number Diff line change
Expand Up @@ -32,18 +32,18 @@ tech test

| Folder | Focus | Key Concept covered |
|:---|:---|:---|
| [hello_world](../examples/hello_world/) | Core | Simplest output prints |
| [calculator](../examples/calculator/) | Math | Functions and math operators |
| [todo_cli](../examples/todo_cli/) | State | Lists and maps manipulation |
| [guess_number](../examples/guess_number/) | Logic | Ranges, loops, conditionals |
| [http_server](../examples/http_server/) | Network | Web routing and mock testing |
| [json_parser](../examples/json_parser/) | Data | Encoding/decoding maps |
| [file_reader](../examples/file_reader/) | File System | IO file writes and reads |
| [oop](../examples/oop/) | Models | Classes, inheritance, overriding |
| [modules](../examples/modules/) | Imports | Multi-file namespaces |
| [collections](../examples/collections/) | Types | Loops over list and maps |
| [generics](../examples/generics/) | Polymorph | Parameterized types |
| [error_handling](../examples/error_handling/) | Errors | `try`/`catch` boundaries |
| [async](../examples/async/) | Concurrency | Event loops and futures |
| [threads](../examples/threads/) | Parallel | Thread spawns & mutexes |
| [web_api](../examples/web_api/) | Fetch | External GET API calls |
| [hello_world](../../examples/hello_world/) | Core | Simplest output prints |
| [calculator](../../examples/calculator/) | Math | Functions and math operators |
| [todo_cli](../../examples/todo_cli/) | State | Lists and maps manipulation |
| [guess_number](../../examples/guess_number/) | Logic | Ranges, loops, conditionals |
| [http_server](../../examples/http_server/) | Network | Web routing and mock testing |
| [json_parser](../../examples/json_parser/) | Data | Encoding/decoding maps |
| [file_reader](../../examples/file_reader/) | File System | IO file writes and reads |
| [oop](../../examples/oop/) | Models | Classes, inheritance, overriding |
| [modules](../../examples/modules/) | Imports | Multi-file namespaces |
| [collections](../../examples/collections/) | Types | Loops over list and maps |
| [generics](../../examples/generics/) | Polymorph | Parameterized types |
| [error_handling](../../examples/error_handling/) | Errors | `try`/`catch` boundaries |
| [async](../../examples/async/) | Concurrency | Event loops and futures |
| [threads](../../examples/threads/) | Parallel | Thread spawns & mutexes |
| [web_api](../../examples/web_api/) | Fetch | External GET API calls |
14 changes: 7 additions & 7 deletions docs/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,20 +7,20 @@ Welcome to the TechScript official documentation! TechScript is an open-source,
## 🗺️ Documentation Portal Reference

### 🚀 Getting Started
* [Installation](Installation.md) - Set up TechScript on Windows, Linux, macOS, or Build from Source.
* [Language Guide](LanguageGuide.md) - Learn variables, loops, conditionals, and functions.
* [Installation](getting-started/installation.md) - Set up TechScript on Windows, Linux, macOS, or Build from Source.
* [Language Guide](language/overview.md) - Learn variables, loops, conditionals, and functions.
* [Syntax Guide](SyntaxGuide.md) - Quick reference on keywords, precedence, and layout rules.
* [Best Practices](BestPractices.md) - Coding standards, constants, and safety.
* [FAQ](FAQ.md) - Common questions and answers.
* [Best Practices](guides/BestPractices.md) - Coding standards, constants, and safety.
* [FAQ](faq.md) - Common questions and answers.

### 🧱 Declarative Submodules
* [DSL Guide](DSLGuide.md) - Domain-specific UI block specifications.
* [Canvas Guide](CanvasGuide.md) - 2D drawing, text, and shape APIs.
* [Web Guide](WebGuide.md) - Full-stack site generation via `use web`.

### ⚡ Compiler & Engine Specification
* [Compiler Architecture](CompilerArchitecture.md) - Analysis of lexer, Pratt parser, and LLVM backend.
* [VM Specification](vm.md) - Details on stack execution, frame layouts, and NaN-boxing.
* [Compiler Architecture](compiler/architecture.md) - Analysis of lexer, Pratt parser, and LLVM backend.
* [VM Specification](compiler/vm.md) - Details on stack execution, frame layouts, and NaN-boxing.
* [Performance benchmarks](Performance.md) - Speed comparison data and optimization rules.

### 🤝 Project, Release & Community
Expand All @@ -29,5 +29,5 @@ Welcome to the TechScript official documentation! TechScript is an open-source,
* [Supported Versions](SUPPORTED_VERSIONS.md) - Support lifetimes and version tracking.
* [Security Policy](Security.md) - Reporting vulnerability channels.
* [Migration Guide](MigrationGuide.md) - Code migration from v1.0.8 legacy aliases.
* [Examples Guide](ExamplesGuide.md) - Running and checking code examples.
* [Examples Guide](guides/ExamplesGuide.md) - Running and checking code examples.
* [Release Notes](ReleaseNotes.md) - Version release history details.
2 changes: 1 addition & 1 deletion docs/language/async.md
Original file line number Diff line number Diff line change
Expand Up @@ -46,4 +46,4 @@ end

await main()
```
For true parallelism utilizing CPU cores, see [Multithreading Guide](multithreading.md).
For true parallelism utilizing CPU cores, see [Multithreading Guide](concurrency.md).
2 changes: 1 addition & 1 deletion docs/language/concurrency.md
Original file line number Diff line number Diff line change
Expand Up @@ -57,4 +57,4 @@ parallel
sync.unlock(counter)
end
```
See [Memory Model](memory-model.md) for data transfer rules.
See [Memory Model](../specification/memory-model.md) for data transfer rules.
2 changes: 1 addition & 1 deletion docs/language/memory.md
Original file line number Diff line number Diff line change
Expand Up @@ -44,4 +44,4 @@ say list_a # prints [1, 2] (remains unaffected)

## 🔁 Variable Lifecycles
When a scope exits, all variable references inside that scope are dropped. If an object's total reference count drops to zero, its heap memory is immediately reclaimed by the VM allocator.
See [Memory Model](memory-model.md) for Garbage Collector mechanics.
See [Memory Model](../specification/memory-model.md) for Garbage Collector mechanics.
2 changes: 1 addition & 1 deletion docs/language/packages.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,4 +37,4 @@ my_package/
```

The entry point of the package is always `src/index.txs`. When another project depends on this package, importing `use my_package` loads the definitions from `src/index.txs`.
For details about managing packages, see the [Package Manager Guide](package-manager.md).
For details about managing packages, see the [Package Manager Guide](../tooling/package-manager.md).
2 changes: 1 addition & 1 deletion docs/modules.md
Original file line number Diff line number Diff line change
Expand Up @@ -46,4 +46,4 @@ use trig
```

Now, `main.txs` can access everything inside via `use math_helpers`.
For imports details, see [Imports Guide](imports.md).
For imports details, see [Imports Guide](language/imports-exports.md).
2 changes: 1 addition & 1 deletion docs/specification/memory-model.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,4 +22,4 @@ TechScript inherits its memory safety guarantees from its Rust runtime core:
Objects on the heap are tracked and freed using Automatic Reference Counting (ARC) backed by a cycle-detecting mark-and-sweep Garbage Collector (GC).
* **Reference Counting**: Objects are deleted immediately when their reference count drops to zero.
* **Cycle Detector**: Periodically runs in the background to identify and clean up cyclic reference structures (e.g. object A referencing B, which references A).
See [Ownership Guide](ownership.md) for data lifecycle details.
See [Ownership Guide](../language/memory.md) for data lifecycle details.
2 changes: 1 addition & 1 deletion docs/tooling/package-manager.md
Original file line number Diff line number Diff line change
Expand Up @@ -42,4 +42,4 @@ All downloaded packages are stored globally in a central cache directory:
* **Linux/macOS**: `~/.techscript/cache`

During compilation, the compiler resolves imports by checking the local cache first before searching internet sources.
See [Packages Guide](packages.md) for details on metadata.
See [Packages Guide](../language/packages.md) for details on metadata.
Loading