NAND

screenshot of NAND
svelte
vite
scss

NAND is a logic simulator suite made entirely from NAND gates

Overview:

The NAND-powered device is a 16-bit computer that operates with a Turing equivalent design. It is constructed solely from a clock and NAND gates, which are emulated on the web. This unique computer, named NAND, boasts a plethora of features such as its own CPU, machine code and assembly languages, assemblers, virtual machine capabilities, programming languages, compilers, IDEs, and user interfaces. The design of NAND is inspired by the Jack-VM-Hack platform outlined in the Nand to Tetris course and associated book.

Features:

  • Turing Equivalent Design: 16-bit computer made from clock and NAND gates.
  • Comprehensive Toolset: Includes CPU, machine code, assembly language, virtual machine, programming language, compiler, IDE, and user interface.
  • Inspiration from Nand to Tetris: Based on the Jack-VM-Hack platform specified in the Nand to Tetris course.
  • Emulated on the Web: Accessible through web emulation for ease of use.
  • Diverse Programming Examples: Offers a variety of example programs showcasing the capabilities of NAND.
  • Stack Overflow Demonstration: Features a program demonstrating stack overflow and virtual machine escape functionalities.
  • Interactive Gaming: Showcases games like Pong and 2048 to display its object-oriented model and application logic.
  • Educational Purposes: Designed for learning and experimentation in computer architecture and programming.

Summary:

svelte
Svelte

Svelte is a modern front-end framework that compiles your code at build time, resulting in smaller and faster applications. It uses a reactive approach to update the DOM, allowing for high performance and a smoother user experience.

vite
Vite

Vite is a build tool that aims to provide a faster and leaner development experience for modern web projects

scss
SCSS

SCSS is a preprocessor scripting language that extends the capabilities of CSS by adding features such as variables, nesting, and mixins. It allows developers to write more efficient and maintainable CSS code, and helps to streamline the development process by reducing repetition and increasing reusability.

typescript
Typescript

TypeScript is a superset of JavaScript, providing optional static typing, classes, interfaces, and other features that help developers write more maintainable and scalable code. TypeScript's static typing system can catch errors at compile-time, making it easier to build and maintain large applications.