-
-
Notifications
You must be signed in to change notification settings - Fork 163
Home
andychu edited this page Dec 7, 2024
·
111 revisions
Welcome to the Oils wiki!
Note: older pages still refer to "Oil", which is now called YSH
The project is "Oils", and it contains OSH (compatible), YSH (new), and JSON-based data languages.
- Where To Send Feedback
- OSH versus Oil (TODO: rename to YSH)
- How To Test OSH
- Shell Programs That Run Under OSH
- OSH Compatibility Tips
- Using OSH as a Default Shell
- Oils Deployments
- Migration Guide / Gradually Upgrading Shell to YSH
- Drafts
- Shell Advocacy
- How to understand shell: Slogans, Fallacies, and Concepts (under construction)
- How to use shell: Patterns and Anti-Patterns (under construction)
- Software Architecture
- Oil Language FAQ
- Contributing / Spec Tests
- Toil / Travis CI for Oil
- Git Tips -- Patterns for using Git on this project.
- Testing the Interactive Shell -- a bunch of manual test cases
-
Debugging Completion Scripts -- the useful
--debug-file
flag! - Collaborations
- Compiler Engineer Job
- FAQ: Why Not Write Oil in X?
- Oil Windows Port
Docs and Writing:
- #oil-documentation on Zulip
- Documentation Strategy
- Technical Writing
- Oil Language Docs
Other:
Implementation Details
- Signal Handling in Oil
-
OSH Word Evaluation Algorithm --
shopt -s simple_word_eval
(obsolete)
- Alternative Shells
- The Biggest Shell Programs in the World
- External Resources -- More Shell Resources
More:
- Coprocess Protocol Proposal
- Shellac Protocol Proposal -- for shell-independent command-line completion.
- QTT (old: TSV2 Proposal)
- QSN (old: CSTR Proposal)
-
Interactive Shell -- Ideas about the interactive shell and possibly graphical shell.
- Shell Autocompletion
- Headless Mode - new as of 2021/04! A better, decoupled strategy for the interactive shell.
- Distributed Shell
- Config Dialect
- Shell Security Problems
- Shell WTFs
- Unix Tools -- notes on the things that a shell interacts with. The shell "standard library".
- Little Languages
- Python Gotchas
- Python Gotchas (Dataframes)
- (Broken Link:
#language-design > Things Oils Shipped Without
found in Language Design Principles)
- Parsing Case Studies -- What algorithms and tools do production-quality languages use for parsing?
- Bootstrapping Case Studies -- How are languages bootstrapped?
- Lossless Syntax Tree Pattern
- Language Subsets -- an abstract but practical way of specifying a language
- Compact AST Representation
- Architecture of Various Interpreters
- Implementing Debuggers
- Implementer Lore About Garbage Collection
- Feature Detection Is Better than Version Detection
- Language Composition Bestiary
- Exhaustive Test Suite
- OSH Parser (mostly obsolete)
- OSH Optimization Log (already blogged about stuff after this