Skip to content

pannxe/ogogi

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

OGOGI

OGOGI stands for OTOG Grader that is Optimized. Plus it can now Grade Interactive problem (previously known as otogGraderII)

This is an attempt to improve otogGrader mainly by implementing interactive script. OGOGI is also planed to use Cython for better performance.

srceenshot

Now implemented

  • Now implemented external comparing script
  • Modularization.
  • Unlimited # of testcase.
  • Command mode (type ' : ')
    • Featuring 'reload' command. Reload any module without having to restart the grader.
  • Improved debug console.
  • Cleaner code for better maintainent.
  • Minor performance improvement.

Todo

Todo is short-term plans that ment to be done within current version.

  • Add more functionality to command mode
  • Debug.
  • More error handling.

Roadmap

Features to add in future version.

  • Implement Cython.
  • Reimplement modules using class.
  • Add support for other languages. (to be considered)

How to write interactive script

Must be named interactive_script.py and put in source/probName. Template:

# interactive_script.py
import sys
resultPath   = sys.argv[1]
problemDir   = sys.argv[2]
atCase       = sys.argv[3]

# Do something

if answer_is_correct:
  print("P")
else:
  print("-")

Folder Structure

/grader
  /compiled
  /env
  /img
  /install
  /source
  .gitignore
  LICENSE
  ogogi
  README.md

Contributing

YES, please :) Pull requests are welcome.

Authors

  • Karnjj - original work - Github
  • pannxe - OGOGI project - Github
  • Amethyst - supervisor - Github
  • krist7599555 - supervisor - Github

License

OGOGI is under MIT licence.

About

A new grader for otog.cg

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors