11# Stroll
2- *** "A Lisp dialect in Python."***
2+ *** "A lightweight Lisp dialect implemented in Python."***
33
44---
55
66## ⚙️ Introduction
7- Stroll in short is a small Lisp dialect written in python!
8- Like a leisurely walk along the river we hope you enjoy your use and potential contribution to such project!
7+ Stroll is a small, extensible Lisp dialect written in Python.
8+ It’s designed to be simple, approachable, and ideal for learning, experimenting, and contributing.
9+ Whether you’re new to Lisp or exploring interpreter design, Stroll provides a friendly environment to build and grow with the language.
910
10- If you’re new to Lisp, check out this [ quick intro] ( https://en.wikipedia.org/wiki/Lisp_(programming_language) ) .
11+
12+
13+ If you’re new to Lisp, check out our [ introductory guide] ( https://en.wikipedia.org/wiki/Lisp_(programming_language) ) .
1114
1215---
1316
1417## 🧩 Features
1518Here are some of the things ** Stroll** currently has to offer!:
1619
17- ### 🧮 Math Operations :
20+ ### 🧮 Math & Comparisons :
1821- Basic arithmetic: ` + ` , ` - ` , ` * ` , ` / `
19- - Comparisons : ` > ` , ` < ` , ` >= ` , ` <= ` , ` == ` , ` != `
20- - Advanced math: ` mod ` , ` pow ` , ` sqrt ` , ` abs ` * (untested)*
22+ - Comparison operators : ` > ` , ` < ` , ` >= ` , ` <= ` , ` == ` , ` != `
23+ - Additional math functions : ` mod ` , ` pow ` , ` sqrt ` , ` abs ` * (some untested)*
2124
22- ### 📦 Working with Data :
25+ ### 📦 Data & Collections :
2326- Variables: ` let ` to store values
2427- Lists: ` list ` to make lists, ` append ` to add elements
25- - List operations : ` len ` , ` reverse ` , ` index ` to manage elements
28+ - List utilities : ` len ` , ` reverse ` , ` index ` to manage elements
2629
2730### 🔤 Strings & Text:
28- - String creation with quotes
29- - String operations : ` concat ` , ` strlen ` , ` substr ` * (Also untested)*
31+ - Create strings using quotes
32+ - String functions : ` concat ` , ` strlen ` , ` substr ` * (some untested)*
3033
3134### 🔁 Control Flow:
32- - Conditionals: ` if ` , ` elif ` , ` else ` (Please look in the docs for it is quite different here... )
35+ - Conditionals: ` if ` , ` elif ` , ` else ` (syntax differs from traditional Lisp — see docs )
3336- Loops: ` while ` loops
34- - Logic: ` & ` (and), ` | ` (or), ` true ` , ` false `
37+ - Logic values & operators : ` & ` (and), ` | ` (or), ` true ` , ` false `
3538
3639### 🖨️ Input/Output:
3740- Print to console: ` print `
3841- Read input: ` scan `
3942
4043### 👨💻 User defined functions:
41- - Define function: ` fn `
44+ - Define function with ` fn `
4245- Set passed in arguments: ` argone|argtwo|argthree `
43- - Call functions: ` call ` : call a user defined function
46+ - Call functions using ` call ` : call a user defined function
47+
48+ ### Quick Example:
49+
50+ ```
51+ (+ 1 2)
52+
53+ (let x 10)
54+ (print x)
55+
56+ (fn square |argone| (* argone argone))
57+ (call square 6)
58+ ```
4459
4560---
4661
@@ -54,7 +69,13 @@ We’re aiming for:
5469---
5570
5671 ## 🤝 Contributing
57- Interested in ** Stroll** and want to help it grow?
58- Check out our [ contributing guide] ( docs/contributing.md ) to get started!
72+ Interested in ** Stroll** and want to help it grow?
73+
74+ We welcome contributions of all kinds!
75+ To get started, please review the contributing guide and explore open issues [ contributing guide] ( docs/contributing.md ) to get started!
76+
77+ If you’d like to add features, improve documentation, or help refine the interpreter, your contributions are appreciated.
78+
79+
5980
6081---
0 commit comments