The output is art,
But what about its source code?
It’s just as abstract.
This contest is completely optional!
Entries are due at 11:59pm on Wednesday, April 27.
Here are the steps to enter the contest:
abstract_turtle.zip
from this link. Then, unzip the file into your scheme_contest
directory. The unzipped folder should contain files including canvas.py
and color_names.py
. Alternatively, if you’d prefer to install using the pip
command, you can run pip3 install abstract-turtle
instead of downloading this zip file.contest.scm
file (you can render your drawing with python3 scheme contest.scm --pillow-turtle --turtle-save-path output
). See the Scheme Built-in Reference on graphics for a description of drawing procedures.
python3 scheme contest.scm --turtle-save-path output
instead. The main difference is that this command uses the tkinter
library, while the former command uses the pillow
library. Both should generate the same output.output.png
which was created by the previous command.In contest.scm
, the draw
procedure should draw your entry and then exit on click.
All entries, including their source code, will be distributed to your fellow students for voting. Please do not include personal info in your submission.
You are allowed to work with one other partner for this contest. You should add your partner on Ok and make a single submission.
Important: when you are ready to submit, follow both these steps:
- Run
python3 ok --submit
to submit yourcontest.scm
file to Ok.- Fill out the contest form. Make sure the information here is correct, since we’ll be using it to generate your entry in the Scheme art gallery.
Troubleshooting: Are you experiencing the error
name 'builtins' is not defined
when trying to render your artwork? If so, add the following line to the top ofscheme_builtins.py
:import builtins
. You might also be asked to install some dependencies when you try to render your image, and if you do so, it should properly create your visualization. If you don’t see this error (it has usually been popping up for select Windows users), you do not need to add the additional import.
Create a visualization of an iterative or recursive process of your choosing, using turtle graphics. Your implementation must be written entirely in Scheme using the interpreter you have built. All computation must be done in Scheme.
We will have two categories of submissions:
No single token may contain more than 50 characters. If your entry requires more tokens than are allowed in the heavyweight category, please contact the course staff for special permission to submit an even longer entry. Longer entries, if approved, will be displayed in the gallery but will not be eligible for earning extra credit in the art contest.
Extra credit will be awarded as follows:
You can check the number of tokens in a Scheme file called contest.scm
by running the following command:
python3 scheme_tokens.py contest.scm
Entries (code and images) will be posted online, and winners will be selected by popular vote. The top three entries in each category will be announced on Piazza after voting is closed.
To improve your chance of success, you are welcome to include a title and descriptive haiku in the comments of your entry, which will be included in the voting.
Before submission, please ensure that your entry abides by these guidelines:
We reserve the right to disqualify any entries that do not follow these guidelines.
For inspiration, you can peruse these galleries of past entries. Please note that certain submissions may not follow the current guidelines.