a gleam implementation of a CS assignment originally written in cpp

Lab 6#

screenshot of the code generated by freeze

For this lab the program must parse OT.txt (format below) to find specific references and produce scoped errors if the reference isn't found.

THE BOOK OF GENESIS

CHAPTER 1
1 In the beginning God created the heaven and the earth.
2 And the earth was without form, and void; and darkness [was] upon the face of the deep. And the Spirit of God moved upon the face of the waters.
3 And God said, Let there be light: and there was light.
4 And God saw the light, that [it was] good: and God divided the light from the darkness.

THE BOOK OF PSALMS

PSALM 1
1 Blessed [is] the man that walketh not in the counsel of the ungodly, nor standeth in the way of sinners, nor sitteth in the seat of the scornful.
2 But his delight [is] in the law of the LORD; and in his law doth he meditate day and night.
3 And he shall be like a tree planted by the rivers of water, that bringeth forth his fruit in his season; his leaf also shall not wither; and whatsoever he doeth shall prosper.

The project is layed out as follows:

.
├── build # this directory isn't committed and is ephemeral
│   └── lab66
├── COVERSHEET.md
├── LICENSE.md
├── makefile
├── README.md
├── src
│   └── lab66.cpp
└── test
    ├── OT.txt
    └── test.sh

4 directories, 8 files

Build scripts#

The preferred way to run the program is through make:

make # compiles and runs tests
make run # compiles and runs the program
make clean # clean up the build dir

it is however possible to still do things manually:

mkdir build
cd build
g++ ../src/lab66.cpp -o lab66
./lab66 ../test/OT.txt verses.txt

© 2025-present Kieran Klukas