Historia

Początki HL++ sięgają lat ’90 dwudziestego wieku. Początkowo było to ćwiczenie informatyczne na zajęcia o abstrakcyjnych typach danych. Były to czasy dominacji Matlaba, jednak język ten posiadał swoje ograniczenia, wynikające z tego, że kod był interpretowany, a nie kompilowany. W związku z tym pisanie w nim pętli lub funkcji rekurencyjnych mijało się z celem, gdyż programy działały bardzo wolno. Tu z pomocą przychodziły języki takie jak Pascal lub C. Kod w nich napisany działał setki razy szybciej i to było dobre rozwiązanie. Brakowało jednak odpowiednich bibliotek, aby wygodnie pisać programy naukowe. Prosty projekt biblioteki macierzowej wychodził naprzeciw tym oczekiwaniom, jednak same macierze to za mało. Stopniowo dodawane więc były kolejne biblioteki i funkcje i tak projekt ewoluował do obecnej postaci.

1995: wersja 1.0 skupiała się na oprogramowaniu macierzy i metod numerycznych

1999: w wersji 1.1 dodano macierze rzadkie, sieci neuronowe i funkcje scoringowe

2003: w wersji 1.2 dodano obiekt tabela oraz bibliotekę obsługi zadań

2008: w wersji 1.3 obsługę wykresów i kompresji

2014: powstała wersja 2.0, napisana od nowa z wykorzystaniem wzorców. Klasa 'dane’ implementuje funkcje wspólne dla macierzy i tabel. Macierze otrzymały etykiety kolumn i wierszy

2015: w wersji 2.1 dodano bibliotekę raportów w HTML i zapytań SQL

2016: w wersji 2.2 dodano biblioteki symulacji i obliczania kwantyli

2017: w wersji 2.3 dodano obsługę R i narzędzia do pracy w tym języku

2018-2021: wersja 2.4 nie wprowadza nowości, ale skupia się na udoskonaleniu dotychczasowych bibliotek