Skip to content

Commit 247268c

Browse files
committed
improve homepage
1 parent 8022153 commit 247268c

File tree

1 file changed

+41
-31
lines changed

1 file changed

+41
-31
lines changed

content/_index.md

Lines changed: 41 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -1,74 +1,84 @@
11
+++
2-
title="The Phel Language"
2+
title = "Phel: A Functional Lisp Dialect for PHP Developers"
33
+++
44

5-
Phel is a functional programming language that compiles to PHP. It is a dialect of Lisp inspired by [Clojure](https://clojure.org/) and [Janet](https://janet-lang.org/).
5+
**Phel** is a functional programming language that compiles down to PHP. It's a modern Lisp dialect inspired by [Clojure](https://clojure.org/) and [Janet](https://janet-lang.org/), tailored to bring functional elegance and expressive code to the world of PHP development.
66

77
<p align="center">
8-
<img src="/images/logo_phel.svg" width="350" alt="Phel logo"/>
8+
<img src="/images/logo_phel.svg" width="350" alt="Phel language logo"/>
99
</p>
1010

11-
## Community
11+
## Join the Phel Developer Community
1212

13-
Feel free to ask questions and join discussions on the [Phel Gitter channel](https://gitter.im/phel-lang/community).
13+
Got questions? Want to chat about macros, tail recursion, or why parentheses are awesome?
14+
Swing by the [Phel Gitter channel](https://gitter.im/phel-lang/community)—we're friendly, nerdy, and always happy to talk code.
1415

15-
## Features
16+
## Key Features of Phel
1617

17-
* Built on PHP's ecosystem
18-
* Good error reporting
19-
* Persistent Datastructures (Lists, Vectors, Maps and Sets)
20-
* Macros
21-
* Recursive functions
22-
* Powerful but simple Syntax
23-
* REPL
18+
Why code in Phel? Here's what makes it click:
2419

25-
## Why Phel?
20+
- ✅ Runs on the rock-solid PHP ecosystem
21+
- 🧠 Helpful and human-readable error messages
22+
- 📚 Built-in persistent data structures: Lists, Vectors, Maps, Sets
23+
- 🧩 Macro system for advanced metaprogramming
24+
- 🔁 Tail-recursive function support
25+
- ✨ Minimal, readable Lisp syntax
26+
- 💬 Interactive REPL for tinkering and prototyping
2627

27-
Phel is a result of my [failed attempts to do functional programming in PHP](/blog/functional-programming-in-php). Basically I wanted:
28+
## Why Choose Phel for Functional Programming in PHP?
2829

29-
* A LISP-inspired
30-
* functional programming language
31-
* that runs on cheap hosting providers
32-
* and is easy to write and debug
30+
Phel started as an [experiment in writing functional PHP](/blog/functional-programming-in-php) and quickly turned into its own thing.
3331

32+
It exists because we wanted:
3433

35-
## Example
34+
- A Lisp-inspired functional language
35+
- That runs on affordable PHP hosting
36+
- That's expressive, debug-friendly, and easy to pick up
3637

37-
The following example gives a short impression on how Phel looks like:
38+
If you've ever wished PHP was a bit more... functional, Phel is for you.
39+
40+
## See Phel in Action — Sample Code
3841

3942
```phel
4043
# Define a namespace
4144
(ns my\example)
4245
43-
# Define a variable with name "my-name" and value "world"
46+
# Create a variable
4447
(def my-name "world")
4548
46-
# Define a function with name "print-name" and one argument "your-name"
49+
# Define a function
4750
(defn print-name [your-name]
4851
(print "hello" your-name))
4952
5053
# Call the function
5154
(print-name my-name)
5255
```
5356

54-
## Try Phel
57+
If you know Lisp or Clojure, you'll feel right at home. If you don't—this is a great place to start.
58+
59+
## Try Phel Instantly with Docker
5560

56-
The quickest way to try out Phel is to run our REPL Docker container.
61+
No setup? No problem. You can run Phel's REPL right away:
5762

5863
```bash
5964
docker run -it --rm phellang/repl
6065
```
6166

6267
![Try Phel animation](/try-phel.gif "Try Phel Animation")
6368

64-
## Getting started
69+
## Get Started with Phel in Minutes
70+
71+
All you need is [PHP >=8.2](https://www.php.net/) and [Composer](https://getcomposer.org/).
6572

66-
Phel requires [PHP >=8.2](https://www.php.net/) and [Composer](https://getcomposer.org/).
73+
> Follow our [Getting Started Guide](/documentation/getting-started) to build and run your first Phel program today.
6774
68-
> Read the [Getting Started Guide](/documentation/getting-started) to create your first Phel program.
75+
## Development Status & How to Contribute
6976

70-
## Status of Development
77+
Phel is approaching its 1.0 release, but we're still actively refining the language —and yes, breaking changes may happen.
7178

72-
Phel is approaching completion, but it’s not yet considered fully stable. We’re committed to continuously improving the language, which means breaking changes may still happen as we refine and evolve the project.
79+
We're building this in the open. That means:
80+
- Found a bug? File an issue.
81+
- Got a cool idea? Open a pull request.
82+
- Want to shape the language's future? Let's talk.
7383

74-
We actively welcome suggestions, improvements and bug reports —your feedback plays a vital role in helping us raise the quality of Phel. Whether through opening issues or submitting pull requests, every contribution helps the project grow stronger.
84+
Your feedback, ideas, and code help Phel grow into something great.

0 commit comments

Comments
 (0)