Tuesday, 11 October 2016

Setting up EggShell and running a first example

Latest Progress

I read further on in Pharo By Example, and I guess I do have a basic understanding of the language and environment by now. I'll definitely read it all the way through, but I can most likely do that alongside my work.

What's more important is that EggShell is now up and running on my machine. I decided to work on a Mac (currently running OS X El Capitan), since that's what the software has mainly been developed on and for. It didn't work just out of the box, but more about that below. I'll most likely try and set it up on Linux as well, but as for my main development environment, I'll stick to Mac.

Once I had EggShell running, I went through the first usage example Dominik gives in his thesis. It all worked very well and helped me get a basic understanding of how the tool works. I then spent some time on analyzing exactly how the recovered data is modeled. I'm now working on a first alteration of that model, to fit what I had in mind, for querying. Whether or not that will go well or if I'll eventually go back to the original model, remains to be seen.

Solved Problems

As I mentioned above, I first had some trouble with EggShell. When I ran the example in Dominik's Thesis, importPdfAsXmlString: would always throw an error. Some debugging showed it was because the imported string came back empty. The PDF transformation is done by a PipableOSProcess, which is passed a Terminal command, so extracted that command and ran it directly in a Terminal. Here's what that looked like: