Programowanie koncepcyjne to styl programowania komputerowego, znany również jako paradygmat programowania, którego celem jest odtworzenie pojęć w umyśle programisty tak blisko, jak to możliwe, w samym programie. Ideą programowania koncepcyjnego jest to, że każdy fragment kodu powinien coś znaczyć i powinien jasno przedstawiać działanie, które programista chce wykonać. Wszystko, od potrzeby wyświetlania obrazu na ekranie po chęć wyświetlenia komunikatu o błędzie po wystąpieniu zdarzenia, jest uważane za koncepcję. Części kodu komputerowego, takie jak średnik, który wskazuje koniec wiersza kodu, nie są pojęciami, ponieważ służą tylko do wspomagania działania komputera i nie reprezentują pomysłów z umysłu programisty.
Paradygmat programowania koncepcyjnego nie jest samym językiem programowania. Jest to raczej metoda oceny innych języków programowania w celu zidentyfikowania ich wad. Ostatecznym celem jest uczynienie fizycznego programu komputerowego jak najbardziej identycznym z oryginalną, abstrakcyjną ideą programisty.
W programowaniu koncepcyjnym programista skupia się na semantyce i składni. Semantyka to sposób, w jaki program powinien się zachowywać, a składnia to sposób, w jaki programista wyobraża sobie, że powinien być napisany. Na przykład w programie Java kod A+B może pokazywać dodawanie między A i B. Ten program ma dobrą składnię, ponieważ bardzo przypomina oryginalną koncepcję dodawania programisty. Jeśli jednak po wykonaniu program wygeneruje błąd podczas próby dodania A i B, oznacza to, że program ma słabą semantykę, ponieważ nie daje oczekiwanego rezultatu.
Pisząc kod w oparciu o techniki programowania koncepcji, programista najpierw określa koncepcje, których program musi funkcjonować. Gdyby programista tworzył na przykład wirtualny kalkulator, prawdopodobnie wyobrażałby sobie koncepcje dodawania, odejmowania, mnożenia i dzielenia. Wyobraziła sobie również sposób wprowadzania danych, na przykład za pomocą klawiatury, i sposób wyświetlania wyników na ekranie. Te pomysły składają się na koncepcje programu. Może również zastanowić się, jakiego koloru i jak duży powinien być kalkulator, ale nie są to pojęcia, ponieważ nie są one niezbędne do działania aplikacji.
Gdy programista kończy mapowanie swoich koncepcji, znajduje najlepszy sposób na przedstawienie tych koncepcji w kodzie komputerowym. Stara się napisać kod, który ściśle pasuje do jej pomysłu pod względem semantyki i składni. Może użyć fragmentów istniejącego kodu, takiego jak A+B, lub stworzyć własny kod, aby lepiej przedstawić swoje koncepcje.
Od połowy 2011 roku XL jest jedynym językiem programowania stworzonym w oparciu o paradygmat programowania koncepcyjnego. Ma na celu stworzenie elastycznych reguł programowania i składni, które pasują do sposobu myślenia programisty. Pozwala programistom skoncentrować się na tym, co chcą stworzyć, zamiast martwić się o elementy niekoncepcyjne, takie jak zakończenie linii kodu średnikiem.