niedziela, 6 marca 2011

Kolejny semestr

Od 28 lutego skończyły mi się ferie i rozpoczął kolejny semestr na uczelni. Pierwszy tydzień pozwolił na rozeznanie się jak będzie wyglądała moja nauka przez najbliższe 14 tygodni. Muszę przyznać, że ten semestr różni się diametralnie od poprzednich i zapowiada się intensywnie.

poniedziałek, 21 lutego 2011

Lisp - obsługa błędów

Jak po poprzednim wpisie wiadomo, ostatnio zajmuje się nauką Lispa. Aktualnie zajmuje się jeszcze czytaniem książki Practical Common Lisp którą mam zamiar w tym tygodniu skończyć i napisać coś ciekawego (zastanawiam się jeszcze co ale mam pewne pomysły). W tym wpisie postanowiłem natomiast opisać (raczek pobieżnie) mechanizm obsługi błędów w Lisp.

niedziela, 13 lutego 2011

Lisp - początki

W celu rozwoju osobistego postanowiłem nauczyć się jakiegoś nowego języka programowania. Oczywiście aby nie było za łatwo postanowiłem wybrać język o innej składni i paradygmacie niż obecnie znane mi języki (które są C-podobne). Ostatecznie zdecydowałem się na Lisp (a tak dokładniej to dialekt Common Lisp).

Dlaczego akurat Lisp?

niedziela, 6 lutego 2011

C++ 0x co fajnego już działa?

C++ używany jest od 1983 roku. Obecnie wciąż obowiązuje standard z 1998 (z drobnymi poprawkami z 2003), jednak od jakiegoś czasu opracowywana jest kolejna wersja standardu mającą dostosować (chociaż trochę) ten język do obecnych standardów definiowanych przez coraz bardziej (tak właściwie to co raz bardziej od co najmniej kilku lat :P) innych języków wysokopoziomowych (których nazwy każdy sobie sam po cichu dopowie).

Nowa wersja standardu aktualnie nazywana jest C++ 0x (0x jest oznaczeniem roku w którym standard miał wyjść) jednak ta nazwa przeterminowała się wraz z nadejściem 1 stycznia 2010 roku :). Jednak aby nie siać zamętu zamiast C++ 1x wciąż najczęściej stosuje się nazwę C++ 0x.

niedziela, 30 stycznia 2011

Dźwięki systemowe Windows

O istnieniu dźwięków systemowych i możliwości ich zmiany poprzez Panel Sterowania zna każdy trochę bardziej świadomy użytkownik systemów Microsoftu. Trochę mniej zdaje sobie sprawę, że ten mechanizm może zostać wykorzystany przez inne programy poza systemem operacyjnym.

Obsługa domyślnie istniejących dźwięków systemowych jest banalna i wymaga użycia funkcji PlaySound z WinApi (wymaga dołączenia biblioteki Winmm.lib). Przykładowo aby odegrać systemowy dźwięk błędu (asynchronicznie):
PlaySound(TEXT("SystemExclamation"), NULL, SND_ALIAS | SND_ASYNC);