# Next steps

***

## **Abstract:**

1. **Develop a Beginner-Friendly HardCaml Tutorial:**
   * Create accessible educational materials focused on HardCaml, targeting newcomers.
   * Collaborate with Jane Street (JS) to refine content and align with their goal to publicize HardCaml resources.
2. **Implement a WebAssembly 1.0 VM on an FPGA:**
   * Build a simplified Wasm VM using HardCaml, leveraging FPGA capabilities (no GC/linear memory simplifies design).
   * Demonstrate functionality by running programs like *Conway’s Game of Life* to showcase practical execution.
3. **Hardware Setup & Visual Projects:**
   * Use the **Arty-A7 board** (with existing HardCaml support) to prototype projects, including VGA/HDMI output integration (e.g., visual demos like Game of Life or Doom Flame Animation).
   * Establish foundational FPGA workflows for future projects.
4. **Prepare a HardCaml Workshop:**
   * Organize a day-long workshop (post-internship) to teach HardCaml basics, accelerators, and FPGA workflows. Engage with labs (Cambridge/IITM) and JS collaborators.
5. **Explore Hardware Accelerators:**
   * Investigate small-scale accelerators using HardCaml, potentially integrating them into tutorials or workshops.
6. **Submit a Talk to the OCaml Workshop (Deadline: July 3):**
   * Propose a talk on your HardCaml Wasm VM implementation for the ICFP co-located workshop in Singapore. Highlight technical challenges and outcomes.

***

**NOTE:** The roadmap items  listed here are sorted in terms of priority, difficulty and practicality.

**Key Outcomes:** Promote HardCaml adoption via open-source materials and workshops and Run **Conway's Game of Life, BAD APPLE** & **DOOM FLAME** animation in the WASM VM.

**Stretch Goal:**  Aim to present the Wasm VM as a standout submission to the OCaml Workshop, positioning it as a bridge between FP/HDL communities.
