WOLFRAM

Wolfram Summer School

Alumni

Neofytos Themistokleous

Science and Technology

Class of 2019

Bio

Neofytos Themistokleous finished his undergraduate degree in Physics and then continued his studies obtaining a master in High Performance Computing. Currently, he is a PhD candidate in Experimental Particle Physics and a member of the ATLAS experiment at CERN. His PhD revolves around implementing novel machine learning techniques, in search of new physics, using data from the Large Hadron Collider. Other interests include parallelization techniques and performance programming. Neofytos enjoys traveling, a variety of outdoor sports, and STEM outreach activities.

Computational Essay: Investigating the relationship between Gini index and well-being along the US

Project: Build an errorExplorer function for the Wolfram Language

Goal

It’s 2am, you have been trying to run your three-line command in order to solve the secrets of the universe for the past half an hour, but you keep making syntax errors. Where does this curly bracket go? Should I have put a square bracket there? If only there was an easier way. My project for the 2019 Wolfram Summer School was to create a basic errorExplorer function for the Wolfram Language, study syntactically wrong expressions and predict where missing square brackets should be added.

Summary of Results

A new function was written that attempts to build a valid expression tree from an input string containing Wolfram Language code. To do that, the expression’s syntax is checked against the functions’ definitions. In cases where a function can accept a varying number of arguments, all paths are followed. When given a syntactically incorrect expression as input, the function manages to output the correct answer for simple expressions. A number of suggestions are returned, one of which is the correct one.

Future Work

There are two main directions of improvement for the project, improving support for more complicated expressions, like taking subvalue syntax and operators, and extending the scope of suggestions to other types of brackets (like braces or parentheses).