Supporting the Coral a scripting syntax for Smalltalk

Mentor: Luc Fabresse
Second mentor:
Level: Intermediate
Invited students: Rodrigo Bonifácio, Viktor Kerkez
Students interested: Viktor Kerkez(very), Rodrigo Bonifácio

Why should we use another language than Smalltalk (such as Bash, Python or even Ruby) to write system scripts?

The goal of Coral is to target this issue and enable to write scripts in a flat file format in order to automatize system tasks such as file renaming, process management, ...
The idea is to hide the image-based model of Smalltalk when scripting (script in files, ...) without loosing the benefit of the IDE tools (browser, debugger, ...) if they are needed.
Coral currently defines a scripting syntax for Smalltalk.

Technical Details

Coral needs several improvements:
- File manipulation. The idea is to help using the FileSystem framework to build a better file manipulation and scripting library for Coral
- Launch system processes on Windows, linux, ... using OSProcess and/or other libraries
- ...

Benefits to the Student

- Learn some advanced techniques about parsing (PetitParser) and code evaluation,
- Discover the communication mechanisms between Smalltalk and operating systems
- Get involved in a project that could have an important impact for Smalltalkers

Benefits to the Community

Scripting is always needed to automize tasks such as rename a lot of files at once, doing some system configuration (adding users, ...), compilations scripts, ...
Writing these scripts in Smalltalk (Coral) instead of poor languages (such as Bash) would be simpler and will certainly interest a lot of Smalltalkers.

Updated: 24.3.2010