One suggestion that came out of GECCO 2017 was that using ECJ in an interactive environment such as Jupyter Notebook could greatly increase its appeal.
Granted, compiled languages like Java don't play nicely with interactive shells—but Scala plays well with both. This gives me an idea for a development path:
Fire up a Scala kernel for Jupyter Notebook, and use it to experiment with:
Launching ECJ and running a parameter file from within a notebook.
Writing custom Problem implementations and running them with no external compilation steps.
Loading results from file and plotting them in the same notebook with the Problem implementation.
Make some minor additions to ECJ to make it easier to collect data programmatically for plotting purposes.
If (1) and (2) look promising, look into creating a Python and/or R interface, at least for implementing Problems and collecting data.
One suggestion that came out of GECCO 2017 was that using ECJ in an interactive environment such as Jupyter Notebook could greatly increase its appeal.
Granted, compiled languages like Java don't play nicely with interactive shells—but Scala plays well with both. This gives me an idea for a development path:
Problem
implementations and running them with no external compilation steps.Problem
implementation.Problem
s and collecting data.