Skip to content

Commit d8bc986

Browse files
authored
0.7 release (#7)
* update supported GHC versions * 0.7 release blog post + gallery images
1 parent 59f267e commit d8bc986

File tree

8 files changed

+113
-1
lines changed

8 files changed

+113
-1
lines changed
Lines changed: 109 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,109 @@
1+
---
2+
title: "Swarm 0.7 release, and Swarm at ZuriHac!"
3+
author: "Brent Yorgey"
4+
---
5+
6+
The [Swarm](https://github.com/swarm-game/swarm/) [development team][contributors] is
7+
pleased to announce the latest alpha release of the game.
8+
9+
[contributors]: https://github.com/swarm-game/swarm?tab=readme-ov-file#contributors
10+
11+
It's been quite a while since our last release, and the pace of
12+
development has been slower this year---but development continues nonetheless!
13+
14+
Read on for a more in-depth discussion of some of the new features, or
15+
see the [CHANGELOG](https://github.com/swarm-game/swarm/blob/main/CHANGELOG.md) or even the [complete list of git
16+
commits](https://github.com/swarm-game/swarm/commits/main/?since=2024-07-14&until=2025-06-04).
17+
18+
## What is it?
19+
20+
As a reminder, Swarm is a 2D, open-world programming and resource
21+
gathering game with a strongly-typed, functional programming language
22+
and a unique upgrade system.
23+
24+
## ZuriHac!
25+
26+
Several of us will be at [ZuriHac](https://zfoh.ch/zurihac2025/) in person. If
27+
you're at ZuriHac in person too, come say hi, try out the game, and maybe
28+
hack on some [low-hanging fruit][low-hanging]!
29+
30+
If you won't be at ZuriHac in person but still want to try hacking on
31+
Swarm, come join our [Discord server](https://discord.gg/kp8MuSgkPw) or [The Swarm Hive on Gather.town](https://app.gather.town/app/SpqG1ic5pNKM7YqS/The%20Swarm%20Hive)!
32+
33+
## New challenge scenarios
34+
35+
There are a number of new challenge scenarios included in this
36+
release, with example screenshots shown below.
37+
38+
![](/gallery/flowers.png)
39+
40+
![](/gallery/dna.png)
41+
42+
![](/gallery/exterminator.png)
43+
44+
## Tutorial improvements
45+
46+
There have been a bunch of improvements to the in-game tutorial: from
47+
small things like making sure choosing `Tutorial` from the menu
48+
automatically takes you to the first *unsolved* tutorial level, to big
49+
things like level redesigns and prose rewrites.
50+
51+
## Language improvements
52+
53+
The Swarm language itself hasn't changed too much in this release. `return`
54+
has been renamed to `pure`
55+
([#2285](https://github.com/swarm-game/swarm/pull/2285)), and we have
56+
retired `fst` and `snd` in favor of a pair elimination form called `match`
57+
([#2407](https://github.com/swarm-game/swarm/pull/2407)). As usual,
58+
you can automatically convert 0.6 code to 0.7 with `swarm format --v0.6`.
59+
60+
There are also a few new commands:
61+
62+
- The `print` and `erase` commands allow printing values on `paper` ([#2245](https://github.com/swarm-game/swarm/pull/2245)).
63+
- There is also a new `read` command, which can parse values from
64+
their textual representations ([#2224](https://github.com/swarm-game/swarm/pull/2224)).
65+
66+
## Other enhancements
67+
68+
There were a ton of other small improvements, like fixing several
69+
space leaks, adding some achievements, adding a few hints to classic
70+
mode, adding a feature to render contiguous walls, and a number of
71+
small UI tweaks.
72+
73+
## Give it a try!
74+
75+
To install, check out the [installation instructions][install]: you
76+
can download a [binary release][release] (Linux only, for now), or
77+
[install from Hackage][hackage]. Give it a try and send us your
78+
feedback, either [via a GitHub issue][issue] or [Discord][discord]!
79+
80+
[install]: https://github.com/swarm-game/swarm#installing
81+
[release]: https://github.com/swarm-game/swarm/releases
82+
[hackage]: https://hackage.haskell.org/package/swarm
83+
[issue]: https://github.com/swarm-game/swarm/issues/new/choose
84+
85+
## Future plans & getting involved
86+
87+
We're still hard at work on the game. Fun upcoming things include:
88+
89+
- More fully fleshed-out [tournament server](https://github.com/swarm-game/swarm/pull/1798)
90+
- [Saving and loading games][saving]
91+
- New world features like aliens and [cities][cities]
92+
- New language features like [arrays][arrays], [inter-robot communication][robot-comm], and [a
93+
proper `import` construct][import]
94+
95+
[cities]: https://github.com/swarm-game/swarm/issues/1944
96+
[saving]: https://github.com/swarm-game/swarm/issues/50
97+
[arrays]: https://github.com/swarm-game/swarm/issues/98
98+
[robot-comm]: https://github.com/swarm-game/swarm/issues/94
99+
[import]: https://github.com/swarm-game/swarm/issues/495
100+
101+
Of course, there are also [tons of small things that need fixing and
102+
polishing][low-hanging] too! If you're interested in getting
103+
involved, check out our [contribution guide][contrib], come [join us
104+
on Discord][discord], or take a look at the list of
105+
[issues marked "low-hanging fruit"][low-hanging].
106+
107+
[contrib]: https://github.com/swarm-game/swarm/blob/main/CONTRIBUTING.md
108+
[low-hanging]: https://github.com/swarm-game/swarm/issues?q=is%3Aissue+is%3Aopen+label%3A%22C-Low+Hanging+Fruit%22
109+
[discord]: https://discord.gg/kp8MuSgkPw

gallery/dna.png

35.9 KB
Loading

gallery/dna.png.metadata

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
caption: DNA copying scenario

gallery/exterminator.png

44.2 KB
Loading

gallery/exterminator.png.metadata

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
caption: Exterminator scenario

gallery/flowers.png

55.1 KB
Loading

gallery/flowers.png.metadata

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
caption: Flower count scenario

installing.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ able to install with
4949

5050
cabal install swarm
5151

52-
Currently Swarm builds with GHC 9.2 through 9.8.
52+
Currently Swarm builds with GHC 9.6 through 9.12.
5353

5454
If you don't already have the `cabal` tool, first [install
5555
`ghcup`](https://www.haskell.org/ghcup/), then run `ghcup install

0 commit comments

Comments
 (0)