ballercat / ballercat/walt

Language Feature Document

Open
#73 4 comments 2 reactions 0 assignees View on GitHub
docs good first issue help wanted
Dominant language
JavaScript
Stars
4.6k
Forks
119
PR merge metrics
No merged PRs in 30d

Description

# Goal
A user should be able to read through the features of a language.

## Overview
Kind of hard to point others to specs etc., when trying to list out language features. Some of the early documentation is out of date on the wiki. We need an MD-file doc with all features clearly documented.

One thing of note is that, where possible, we can omit documentation for 1:1 JavaScript features. Like object access.

## Acceptance Criteria
_Think basic language doc, topics should be in the following order_

- [x] Basic Types
- [x] Available Math operators
- [ ] Control flow (list missing, `switch`)
- [x] Function declaration
- [ ] Custom Function types
- [ ] Exports, Imports
- [x] Walt custom types `Table`, `Memory`
- [ ] Arrays and memory access
- [ ] User-defined structs
- [ ] Closures

## Bonus points

- [ ] Document what the syntax above is compiled to in WebAssembly opcodes!

Contributor guide

Open the contributing guide

Research direction

Review the existing wiki material and the issue's ordered feature checklist first, since no repository file or test is named. Create the requested Markdown language-feature document covering the unchecked topics, while omitting clearly 1:1 JavaScript features where appropriate. Done means the listed language features are documented in order; WebAssembly opcode notes are optional bonus work.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript, wasm
Domain
compilers, documentation
Issue type
Documentation
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
28/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.