Vapaamuotoinen kieli on tietokonekieli, jolla koodaus voidaan sijoittaa mille tahansa riville ja olla edelleen voimassa. Tämä tarkoittaa, että koodi voi alkaa yhdeltä riviltä, lopettaa useita rivejä alaspäin ja silti olla kelvollinen komento. Paikannus on toisinaan jonkin verran tärkeää ryhmitetyillä elementeillä, koska ohjelmoinnin on oltava ryhmän sisällä, mutta se voidaan silti sijoittaa mille tahansa riville. Jotkut ohjelmointikielet käyttävät vapaamuotoisia kielielementtejä, mutta ne eivät ole täysin vapaamuotoisia. Tämän tyyppisen ohjelmoinnin etuna on, että ohjelmoijilla on paljon helpompi kirjoittaa koodi ilman, että tarvitse huolehtia rivinvaihdoista, ja sekä suojaus että vianmääritys ovat yleensä parempia.
Joillakin ohjelmointikielillä paikannus on erittäin tärkeää. Jos esimerkiksi puolet komennosta on yhdellä rivillä ja toinen puoli toisella rivillä, komento ei käynnisty, koska se on virheellinen. Vapaamuotoisella kielellä rivinvaihtoja voi olla ääretön määrä, ja komento on edelleen voimassa. Samaan aikaan, vaikka paikannus ei ole tärkeää, syntaksi on, joten joidenkin komentojen on tultava muiden perässä toimiakseen suunnitellusti.
Vapaamuotoisesta kielestä riippuen monissa ohjelmointikielissä on ryhmitelty elementtejä, joissa ryhmän alku ja loppu on sulkujen tai vastaavien merkkien ympäröimä. Paikannus on yleensä hiukan tärkeämpää ryhmitellyssä ilmapiirissä, koska komentojen on oltava ryhmän sisällä, jotta ne ovat päteviä. Samaan aikaan, niin kauan kuin ne ovat ryhmässä, ei ole väliä, ovatko kaikki komennot yhdellä rivillä vai onko niissä useita rivinvaihtoja.
Useimmat ohjelmointikielet ovat joko vapaamuotoisia tai eivät, mutta on muutamia poikkeuksia, joissa ohjelmointikieli voi yhdistää molemmat. Tässä tapauksessa se on kuin vapaamuotoinen kieli, koska jotkut elementit, kuten taulukot tai tietyt ryhmät, voivat olla vapaamuotoisia, mutta muut elementit on sijoitettava oikein. Näillä kielillä on yleensä vain muutama vapaamuotoinen elementti.
Vapaamuotoisen kielen edut eivät ehkä näytä kovin suurilta, koska ohjelmoija voi vain sijoittaa koodauksen mille tahansa riville ja saada sen toimimaan, mutta siinä on joitain suuria etuja. Ensinnäkin ohjelmoijan ei tarvitse viettää aikaa oikean sijainnin tarkistamiseen, joten väärän koodin vianmääritys on tavallisesti helpompaa. Jos ohjelmoija haluaa lisätä turvallisuutta, hän voi sijoittaa koko koodin yhdelle pitkälle vaakasuoralle viivalle. Tätä on vaikea lukea, joten ihmisten on vaikea varastaa.