Skip to content

Projeto Pinguim 2.0: Simulador da Máquina de Turing usando Rust e Node JS

Notifications You must be signed in to change notification settings

petcomputacaoufrgs/pinguim-2-turing

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Pinguim 2.0 - Turing machine simulator

"Pinguim" is an initiative by PET Computação, originating in 2021, dedicated to crafting efficient simulators for the Register Machine, Lambda calculus, and the Turing machine, essential components of the INF05501 course instructed by Professor Rodrigo Machado at UFRGS. Collaborating with Professor Rodrigo, the group successfully developed an efficient simulator for the Register Machine before transitioning to other projects. You can check the new simulator here.

In 2024, other members of PET Computação decided to work on Pinguim again, but this time focusing in creating the Turing machine simulator. This project is a web application that compiles Rust code to WebAssembly for high-performance computing in the browser, while utilizing React for front-end development; and it's still in development.

Install and run the project

To build the package, additional to Rust, we need a library called wasm-pack

cargo install wasm-pack

After cloning the project, ensure dependencies are up to date. If not up to date, then:

npm install

Afterwards, build it using:

npm run build:wasm

Now, you are ready to run the development server

npm start

How is this project organized

This projects utilizes two main folders

src
turing-wasm
 |_ lib.rs
 |_ turing.rs

src

Contains all files used for front-end development

turing-wasm

This folder contains all files regarding the library turing-wasm, which represents the back-end of the project.

lib.rs

Contains source code that uses wasm-bindgen to export Rust functions to JavaScript

turing.rs

Contains source code for the Turing machine simulator

About

Projeto Pinguim 2.0: Simulador da Máquina de Turing usando Rust e Node JS

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •