dydaktyka
Paradygmaty programowania w O'Caml
O'Caml = Objective Caml
Caml = Classic ML
ML = Meta-Language
- English description of the lecture
- Strona główna Caml,
Objective Caml,
Caml Light
- Objective CAML Tutorial
- Wikipedia: strona angielska, strona polska
- A Hundred Lines of Caml (taste.ml)
- Książka: The Objective Caml system, release 3.09
(lokalna kopia pdf)
- Książka: Introduction to the Objective Caml Programming Language
(lokalna kopia pdf)
- Książka: Developing Applications With Objective Caml
(lokalna kopia pdf)
- Tuareg Mode - wspomaganie do edytora
emacs
(Downloading & Installing GNU Emacs for Windows,
ftp://ftp.gnu.org/gnu/windowsęmacs/)
- Przykład: mergesort.ml
- Przykład: heapsort.ml
- Przykład: queue.ml
- Przykład: dijkstra.ml i przykładowy graf
- Przykład: fft.ml
- Przykład: k-b.ml --- algorytm Knutha-Bendixa
- Lista projektów:
- Quick sort - porównanie szybkości implementacji funkcyjnej, imperatywnej i obiektowej
- Merge sort - porównanie szybkości implementacji funkcyjnej, imperatywnej i obiektowej
- Heap sort - paradygmat funkcyjny
- Shell sort - szybka implementacja funkcyjna
- Drzewa AVL bez DELETE
- Drzewa 2-3 bez DELETE
- UNION-FIND ze reprezentacją zbiorów jako drzew
- Algorytm Kruskala bez UNION-FIND
- Algorytm Prima
- Najkrótsze drogi w grafie z wagami przy użyciu mnożenia macierzy
- Numerowanie wierzchołków w grafie acyklicznym
- Najkrótsze drogi w grafie acyklicznym z ponumerowanymi wierzchołkami
- Optymalna kolejność mnożeń przy mnożeniu ciągu macierzy
Grzegorz Bancerek