After pulling stuff into Unit 2 Lab 4 Page 2: Making a Mathematical Library for the standards, I commented out that redundant content here. --MF, 8/28/19
Suppose a programmer wants a picture to move around on a screen that also has other pictures on it. In Snap!, that's built in: import a picture as a sprite costume, and then move it by moving the sprite. The sprite abstraction lets a programmer move a picture over other pictures without thinking about what happens where the images overlap or how to get back parts of the image after they are covered up. Not all languages have the sprite abstraction.
Other common tasks (such as knowing where the mouse pointer is, doing arithmetic on huge numbers, or managing sound) also have complex parts. If programmers had to deal with all of these details in every program, no software would ever get developed. And because many applications need the same abilities, programmers write libraries for other programmers to use.
Often when people compare what different programming languages can do, they are really comparing libraries. For example, people may think they like JavaScript because they can use it to program web pages, but that's not a property of JavaScript. It's actually a web page library built into the browser that lets you program web pages.
You've used libraries in Snap!. For example, you used the "Bar Charts" library in Unit 5 Lab 3 Page 4: Analyzing Data.