Arduino Robot. a function-definition is not allowed here before '{' token
You need to look more closely at your braces. Use the auto-format tool (Ctrl+T) to help you. For example:

void setup() {
{Serial.begin(9600);

// --------------------------------------------------------------------------- Motors
int motor_left[] = {2, 7};
int motor_right[] = {10, 15};
int LDR = 0;     //analog pin to which LDR is connected, here we set it to 0 so it means A0
int LDRValue = 0;      //that’s a variable to store LDR values
int light_sensitivity = 500;    //This is the approx value of light surrounding your LDR
int LDR2 = 0;     //analog pin to which LDR is connected, here we set it to 0 so it means A0
int LDR2Value = 0;      //that’s a variable to store LDR values
int light_sensitivity2 = 500;    //This is the approx value of light surrounding your LDR
int i;
for(i = 0; i &lt; 2; i++){
pinMode(motor_left[i], OUTPUT);
pinMode(motor_right[i], OUTPUT);
LDRValue = analogRead(LDR);     
    Serial.println(LDRValue);      


    if (LDRValue &lt; light_sensitivity); 
    Serial.println("wat");


}   // &lt;------------------------------------ HERE 

// --------------------------------------------------------------------------- Loop


// --------------------------------------------------------------------------- Drive

void motor_stop(){


Where I marked "HERE" you are closing the for loop but you should also be closing setup.

You also have two opening braces here:

void setup() {
{Serial.begin(9600);


Proper indentation is very helpful for sorting out these sorts of issues.