Skip to content

Add MIPS with MARS 4.5 #195

Closed
Closed
@DonaldKellett

Description

@DonaldKellett

Please complete the following information about the language:

The following are optional, but will help us add the language:

  • Test Frameworks: customized testing framework written in MIPS for Codewars
  • How to install:
  • How to compile/run: Run it with java -jar /path/to/Mars4_5.jar ... where ... denotes command line arguments passed to MARS. Use h for help: java -jar /path/to/Mars4_5.jar h

MIPS is a RISC ISA which is commonly used in computer architecture courses taught in universities, for its simplicity compared to CISC ISAs such as the mainstream x86 architecture. RISC ISAs such as RISC-V and LoongArch are also gaining traction in the industry in recent years, so I think support for a RISC assembly language on Codewars would be an interesting addition.

Addendum: MIPS support was previously requested in #22 but fizzled out due to lack of interest and expertise in migrating MIPSUnit from JUnit 4 to JUnit 5. This time, I'll look into writing a minimal custom test framework wrapping command-line versions of existing simulators such as MARS or SPIM, and post updates here when there is progress.


  • Choose a suitable emulator - MARS 4.5
  • Figure out how to run user submissions - MARS 4.5 has a fairly documented CLI that can be used non-interactively
  • Figure out how to validate user submissions - using a custom unit testing framework implemented in MIPS
    • Implement and demonstrate common assertions for integers
    • Implement and demonstrate common assertions for strings
    • Implement and demonstrate common assertions for arrays
    • Demonstrate the feasibility of implementing random tests

👍 reaction might help to get this request prioritized.

Metadata

Metadata

Assignees

Type

No type

Projects

Status

Done

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions