Over the last couple of weeks, we have deployed several incremental releases for Priceforge, our pricing optimization webapp. Below, we review some of the latest additions.

Faster data import. Our parsing logic has been largely rewritten for better performance. The app is now loading the data at roughly 30MB/s when processing large flat files. This is about 8x faster than our initial implementation.

Better development UI. The code editor now displays in the sidebar the types of the columns loaded from the flat files, as inferred from the Envision script itself. This is particularly handy to troubleshoot complex scripts. Also, the code editor now warns you if you are about to run a script that mismatches the data as observed during the last run.

More expressive scripts. The WHERE clause can now be used to filter any event stream, not just items. A new function named concat (for string concatenation) is introduced, and the title value for any tile is now treated as regular string scalar.

Several important additions are still being implemented in Priceforge which should make Envision - our scripting language - even more expressive. In particular, we have started working on time-series operators such as lag or integral Those are particularly usuful in order to compare a strategy (pricing/stocking) with an alternative over distinct periods of time. Stay tuned.