I would really enjoy an good API sprites games in Kojo.
I really love the Greenfoot environment API for sprites games ( http://www.greenfoot.org/doc/javadoc/ ), this API is both simple and fulfill; unfortunatly you have to use java in Greenfoot (not scala, even if they both target the same JVM…)
Do you think it is possible to use a simple java lib like Ucigame API ( http://www.ucigame.org/reference.html ) in kojo ?
Anyway, thanks you for making Kojo available, it's a great environment for teaching kids how to program. I teach physics (with electronics and computer science stuff) in a French high school in Paris. I've used differents langages and environments (pascal, C, python, smalltalk Squeak,DrRacket scheme) during the 10 last years but I want to switch this year with scala as langage and Kojo as IDE.
From my experience when teaching programming to kids (secondary school, 13-18 years old) you need:
1. a good langage:
- a simple and concise syntax (scheme,smalltalk, python and scala are good)
- algebraic notation like usual math notation (python, scala)
- real functional programming is an advantage since many concepts are already seen in math (scheme, scala, python)
- high level data collections as list, set, dictonary (hash table)(scheme,smalltalk, python, scala)
2. a good environment:
- an interactive Read-Eval-Print Loop (scheme,smalltalk, python, scala)
- friendly debug system, stepping… (DrRacket scheme, Squeak, Greenfoot)
3. Fun: graphics programs, drawings, sprites games (DrRacket, Squeak, Greenfoot, Kojo)
Bonus:
- interactive geometry with integration of geogebra (Kojo, Mathpiper)
- C.A.S. Computer Algebra System (Mathpiper)
Considering both the langage and the environment, Kojo is a great chalenger.
In my point of view, inspiring environments for kojo would be:
DrRacket:
http://racket-lang.org/
http://docs.racket-lang.org/quick/index.html
http://world.cs.brown.edu/
http://www.htdp.org/
Greenfoot:
http://www.greenfoot.org/
Mathpiper: (interactive geometry and computer algebra system in a functional programming langage).
http://www.mathpiper.org/
Xavier Coolen.