Hey there, welcome to my project showcase website! It's great to have you here. I hope you're ready to check out some awesome projects that I've been working on. Take a look around, explore the different projects and feel free to leave comments or feedback. I'm always open to new ideas and suggestions.
If you want to see more of my work, head over to my Github repo at https://www.github.com/vilayat-ali. There you'll find even more projects, code snippets, and experiments that I've been tinkering with.
Thanks for stopping by, and I hope you enjoy browsing my projects as much as I enjoyed creating them!
Welcome to the showcase docs for my project, which is - an interpreter for the brainfuck programming language implemented using Rust programming language!
Brainfuck is a minimalist programming language that uses a very small set of commands to manipulate a tape of memory cells.
It's a challenging language to work with, but it's also a lot of fun! With my interpreter, you can write Brainfuck programs and run them directly in the terminal.
The interpreter is implemented in Rust, a fast and efficient systems programming language known for its performance and reliability. Rust's emphasis on memory safety makes it an excellent choice for building low-level systems, such as interpreters and compilers.
On this website, you'll find information about the interpreter, including how to install it and use it to run Brainfuck programs. You'll also find the source code for the interpreter on my Github repository at repository link, along with documentation and examples to get you started.
I hope you find my interpreter useful and that it inspires you to explore the world of programming languages and systems programming. Thanks for stopping by, and happy coding!
S.No. | Topic | Description | Link |
---|---|---|---|
1 | Inspiration | Why I built this project in the first place? | Read Now |
2 | What is Brainfuck, Anyway? | A tour to the world's most misunderstood language | Read Now |
3 | Challenges and blockers! | List of all challenges and blockers that I faced while developing this project | Read Now |
4 | Future Scope | My plans for the future inregards to this project | Read Now |
Welcome to my website where I will share with you the story of how I got inspired to create an interpreter for the Brainfuck programming language using the Rust programming language.
As a computer science student, I've always been interested in programming languages and how they work. When I first came across Brainfuck, I was intrigued by its simplicity and the challenge of working with such a limited set of commands.
I was inspired to create an interpreter for Brainfuck in Rust after reading a blog post by Alastair Reid, where he explained how he built an interpreter for the same language in Haskell. His post showed me that it was possible to build a powerful interpreter for Brainfuck using functional programming concepts, and I wanted to see how I could apply those same concepts to Rust.
I also drew inspiration from the book Programming Rust: Fast, Safe Systems Development" by Jim Blandy and Jason Orendorff. The book provided a comprehensive overview of the Rust language and its capabilities, which helped me understand how to build a performant and reliable interpreter.
But most importantly, I got inspired by Fireship's youtube video titled, "Brainf**k in 100 Seconds", where he explains all language features and mechanics that set me off and made me keep going.
I love videos by Fireship! My man, makes the best programming-related content, that are, apart from being very infomative are fun to watch too. This video is way more favourite to me than his any other video, for the reason that it was the resource that introduced me to the Brainfuck programming language, in the very first place.
Brainfuck is a programming language that was invented by Urban Müller in 1993. Despite being one of the most minimalist programming languages ever created, Brainfuck has maintained a small but dedicated following of programmers who find it to be a challenging and rewarding language to work with.
The language is based on a simple idea: the program operates on a tape of memory cells, each of which can store a single byte. The program also has a data pointer that can move along the tape, allowing the program to read and write values to and from memory. Brainfuck consists of only eight commands, each represented by a single character. The commands are: