-
Notifications
You must be signed in to change notification settings - Fork 19
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #288 from vinzbarbuto/main
Updated documentation for upcoming VSCode extension release
- Loading branch information
Showing
6 changed files
with
238 additions
and
8 deletions.
There are no files selected for viewing
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,61 @@ | ||
--- | ||
title: Glossary | ||
description: Glossary of terms used in the Lingua Franca documentation. | ||
--- | ||
|
||
# Glossary | ||
|
||
Glossary of terms used in the Lingua Franca (LF) documentation. | ||
|
||
### LF File | ||
A source file with the `.lf` extension, representing a Lingua Franca (LF) program. | ||
|
||
### Library File | ||
An LF file containing one or more reactors intended for reuse, designed to be imported into other LF files. | ||
|
||
### Package | ||
A collection of LF source files and directories, along with a `Lingo.toml` manifest file that defines the package configuration. Every package must include an `src/` directory containing the LF source files. | ||
|
||
### Package Manager | ||
A software tool that automates the installation, configuration, and management of packages. In the LF ecosystem, the `lingo` package manager is used to manage LF packages and dependencies. | ||
|
||
### Package Root | ||
The **package root** is the top-level directory of a package where both the `Lingo.toml` file and the `src/` directory reside. | ||
|
||
### Project | ||
Another term for a [package](#package) that is under development. Each [LF file](#lf-file) is assumed to reside in a package, meaning it is located somewhere in the file system in a directory called `src`, in some directory that serves as the (package root)[#package-root]. | ||
|
||
### Project Structure | ||
The structure of an LF project should follow the directory layout below: | ||
|
||
``` | ||
├── . | ||
│ ├── bin/ # Directory for storing binary executables | ||
│ ├── build/ # Directory containing packages installed by the Lingo Package Manager | ||
│ │ ├── lfc_include/ # Directory for storing reusable reactors | ||
│ │ └── <Installed Package>/ # Directory containing the installed package | ||
│ ├── include/ # Directory for storing header files | ||
│ ├── src/ # Directory containing LF source files | ||
│ │ ├── lib/ # Directory for storing reusable reactors | ||
│ │ │ ├── Input.lf # Ex: reactor capturing external inputs (e.g., Microphone, Camera) | ||
│ │ │ └── ComputerVision.lf # Ex: reactor performing computer vision tasks (e.g., object detection, face recognition) | ||
│ │ └── Main.lf # Ex: main source file | ||
│ ├── fed-gen/ # Directory for storing generated code for federated programs | ||
│ ├── src-gen/ # Directory for storing generated code for single-process programs | ||
└── └── Lingo.toml # Configuration file for Lingo Package Manager | ||
``` | ||
|
||
- **Mandatory Directories and Files:** | ||
- `src/`: This folder must contain at least one `.lf` source file. | ||
- `Lingo.toml`: This is the required configuration file. | ||
|
||
- **Automatically Generated Directories:** | ||
- `bin/`: Created during the build process to store binary executables. | ||
- `build/`: Generated automatically when installing packages managed by the Lingo Package Manager. | ||
- `include/`: Autogenerated to store header files. | ||
- `src-gen/` (or `fed-gen` for federated programs): Autogenerated to store generated code. | ||
|
||
- **User-Created Directory:** | ||
- `src/lib/`: This folder is for library files and should be created by the user as necessary. | ||
|
||
This directory structure is essential for enabling the Package Explorer feature in the [VS Code Extension](tools/code-extension.mdx#package-explorer), streamlining project management and development processes. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters