Think of the slicer as a tool path generator. Essentially you are compiling your STL mesh in to G-code that tells a tool where to go. This is a far better documented problem in CNC machines than it is in 3D printers.
If you were type in "slicing algorithms" in to google, you wouldn't get much. Now type in "tool path generation algorithms" and you get a lot more. A lot of what goes on in 3D printing is boot strapped off of CNC milling ideas.
While this paper isn't directly applicable to Slicing for 3D printers, it might give you an idea of the sort of thinking that goes in to tool paths for CNC:
http://www.sciencedirect.com/science/article/pii/S001044859900024X
http://www.emeraldinsight.com/journals.htm?articleid=1538004 is also another excellent paper.
The source code for Slic3r isn't too hard to understand, so you might want to start by making a clone, if you'd like to learn the process.