You are browsing as a guest. Sign up (or log in) to start making projects!

bad-indentation

@bad-indentation

Joined June 5th, 2026

  • 5Devlogs
  • 2Projects
  • 1Ships
  • 15Votes
Rust and Python programmer. :)
Open comments for this post

1h 37m 17s logged

Finished the first iteration of the Rust backend, passed some tests, and linked it to the UI. It definitely works, for the signature GoL patterns (blocks, loaves, gliders, etc.) are emerging, but the system is still quite unable to handle the 1000x1000 grid I had hoped for. The bottleneck may simply be the PyO3 interface, or (very likely) there may be much room for optimization in my Rust code.

Finished the first iteration of the Rust backend, passed some tests, and linked it to the UI. It definitely works, for the signature GoL patterns (blocks, loaves, gliders, etc.) are emerging, but the system is still quite unable to handle the 1000x1000 grid I had hoped for. The bottleneck may simply be the PyO3 interface, or (very likely) there may be much room for optimization in my Rust code.

Replying to @bad-indentation

0
2
Open comments for this post

2h 23m 8s logged

Wrote most of the Python frontend using Pygame (graphics are neither my forte nor my passion, and I wanted to focus on the internal logic). Also began working on a Rust struct accessible via PyO3 which encapsulates and mutates the GoL grid. This is really my first go at PyO3 and Maturin (or any cross-language project, for that matter), but it seems Python and Rust have been communicating nicely so far.

Wrote most of the Python frontend using Pygame (graphics are neither my forte nor my passion, and I wanted to focus on the internal logic). Also began working on a Rust struct accessible via PyO3 which encapsulates and mutates the GoL grid. This is really my first go at PyO3 and Maturin (or any cross-language project, for that matter), but it seems Python and Rust have been communicating nicely so far.

Replying to @bad-indentation

0
2
Ship

Rumble is a Rust CLI tool to solve Jumbles and anagrams. It is very fast (as one can expect from Rust) and easy to use. I am relatively new to Rust, and so this was a nice opportunity to finally create a full command-line project from start to finish and publish it on crates.io. Installation instructions are in the repo README. Please consider writing an issue if you find any bugs!

  • 3 devlogs
  • 5h
Try project → See source code →
Open comments for this post

48m 52s logged

Serious refactor - DFS + pruning was actually not an efficient solution to the problem; simple character counting using HashMaps much faster.

Serious refactor - DFS + pruning was actually not an efficient solution to the problem; simple character counting using HashMaps much faster.

Replying to @bad-indentation

0
9
Open comments for this post

3h 7m 23s logged

Finished first iteration of solver; working on optimizations.

Successfully implemented depth-first search to generate all possible anagrams of the scrambled input. Used a pre-computed HashSet of valid prefixes to quickly prune any branches that wouldn’t lead to valid English words.

Implemented CLI interface using Clap. Added –verbose flag for logging and –include-partial for words that do not use all available letters.

Initial optimizations include removing words that could never be made using the available letters- that is, words that are too long or contain invalid letters.

Further optimizations include using concurrency when reading the file and using smart pointers to avoid excessive cloning. Also considering the possibility of iterating over candidate WORDS and determining whether they are a valid solutions instead of using combinatorics.

Finished first iteration of solver; working on optimizations.

Successfully implemented depth-first search to generate all possible anagrams of the scrambled input. Used a pre-computed HashSet of valid prefixes to quickly prune any branches that wouldn’t lead to valid English words.

Implemented CLI interface using Clap. Added –verbose flag for logging and –include-partial for words that do not use all available letters.

Initial optimizations include removing words that could never be made using the available letters- that is, words that are too long or contain invalid letters.

Further optimizations include using concurrency when reading the file and using smart pointers to avoid excessive cloning. Also considering the possibility of iterating over candidate WORDS and determining whether they are a valid solutions instead of using combinatorics.

Replying to @bad-indentation

0
2

Followers

Loading…