CPLD stands for: "Complex Programmable Logic Device".
You should view them as simplified version of FPGAs.
Usually, they have less usable logic, no PLLs, less RAM (if any) and would also cost less and consume less power.
Nevertheless, their design and verification process is identical to FPGAs.
You write code in HDL, simulate it and burn them.
The specific device you described is a very old CPLD made by Xilinx (Who is also the largest FPGA vendor). The leading manufacturer of CPLDs however is Lattice.
Microcontrollers, are entirely different devices. Unlike FPGAs/CPLDs Their hardware is fixed and can't be changed.
Instead, you make it do what you want with SOFTWARE (C/C++/Assembler/Ada/etc..) that runs on that fixed hardware.
Because CPUs are essentially ASICs, they are highly optimized, cost less and consume less power. But due to the fact that they're sofware based. they operate serialy with every line of code executing in its turn.
FPGAs/CPLDs however offer parallel operation (line 10 of your code coexists with line 1010 of your code).