Merlin Builder
From Coder Merlin
Revision as of 18:39, 26 January 2021 by Vedant-singhania (talk | contribs) (Working on a tutorial on how to use merlin builder)
Within these castle walls be forged Mavens of Computer Science ...
— Merlin, The Coder
Overview[edit]
Merlin Builder is a tool available to Merlin Mavens™ that provides the required functionality to build a challenge for use by Merlin Mission Manager . Any supported language may be used for the challenge (though the generator and verifier must be written in Swift).
The Merlin Mission Manager verifies challenges through a multi-step process. The following steps occur each and every time that a student executes merlin test:
- A generator generates a problem set. The problem set serves as input to the student's program by providing:
- Standard input (e.g. simulates a user's keyboard input)
- Command line arguments
- Text replacement within zero or more of the student's program files. This is referred to as excision because a portion of the student's program file is removed during this process.
- Expected standard output
- After the problem set is generated, the student's program is built using make.sh. The program will include any text replaced during the excision process.
- The student's (potentially modified) program is executed using run.sh and both standard output and standard input are spooled to a file
- A verifier compares the actual standard output with the expected standard output and determines whether or not the execution was successful
Usage[edit]
There are only three builder subcommands as the majority of the process involves coding of the generator.
- merlin builder init: Initializes the directory structure and must be the first command executed in an empty directory
- merlin builder prepare: Similar to the parallel merlin prepare copies the source files to serve as a starting point for the student
- merlin builder test: Similar to the parallel merlin test executes the generator and verifier
Tutorial[edit]
Coming Soon | |
|