O usłudze
PrzetłumaczoneJestem inżynierem, który codziennie pracuje z Gforth — implementacją GNU Forth — oraz z programowaniem opartym na stosach. Od ponad dziesięciu lat buduję i debuguję systemy w Forth, blisko metalu, gdzie każdy bajt i każdy cykl procesora ma znaczenie. Jeśli potrzebujesz kogoś, kto naprawdę myśli w stosach danych, stosach zwrotnych i słowach natychmiastowych, zamiast traktować Forth jako ciekawostkę — to jestem ja.
Co robię. Piszę schludne, dobrze zorganizowane słowa Forth, które czytają się jak mały język dla Twojego zadania. Portuję istniejący kod między Gforth a systemami docelowymi, takimi jak amforth, mecrisp i pforth. Uruchamiam bootloadery i minimalne monitory na czystym metalu, udostępniam UART, SPI, I2C i GPIO przez kompaktowe zestawy słów, pracuję bezpośrednio z rejestrami i urządzeniami peryferyjnymi mapowanymi w pamięci. Kiedy projekt potrzebuje języka specyficznego dla dziedziny, buduję małe interpretery i silniki kodu wątkowego, które mieszczą się w kilku kilobajtach pamięci flash.
Moje podejście jest pragmatyczne. Bezwzględnie dzielę kod na słowa, testuję każde słowo indywidualnie bezpośrednio w interaktywnym wierszu poleceń i utrzymuję słownik w czytelnej formie, aby Twój zespół mógł go rozszerzać. Dla każdej definicji określam efekt stosu, dostarczam zestaw testowy i wyjaśniam logikę, aby kod pozostał łatwy w utrzymaniu. Typowe zadania — uratowanie porzuconej bazy kodu Forth, dodanie warstwy skryptowej do oprogramowania układowego lub zbudowanie narzędzia w Gforth do automatycznego testowania sprzętu. Wyślij mi schemat, kartę katalogową lub kod źródłowy — a ja szczerze powiem, co można realistycznie zrobić. Otrzymasz skomentowany kod źródłowy, skrypty budowania i krótki przewodnik po stworzonych słowach.
Co robię. Piszę schludne, dobrze zorganizowane słowa Forth, które czytają się jak mały język dla Twojego zadania. Portuję istniejący kod między Gforth a systemami docelowymi, takimi jak amforth, mecrisp i pforth. Uruchamiam bootloadery i minimalne monitory na czystym metalu, udostępniam UART, SPI, I2C i GPIO przez kompaktowe zestawy słów, pracuję bezpośrednio z rejestrami i urządzeniami peryferyjnymi mapowanymi w pamięci. Kiedy projekt potrzebuje języka specyficznego dla dziedziny, buduję małe interpretery i silniki kodu wątkowego, które mieszczą się w kilku kilobajtach pamięci flash.
Moje podejście jest pragmatyczne. Bezwzględnie dzielę kod na słowa, testuję każde słowo indywidualnie bezpośrednio w interaktywnym wierszu poleceń i utrzymuję słownik w czytelnej formie, aby Twój zespół mógł go rozszerzać. Dla każdej definicji określam efekt stosu, dostarczam zestaw testowy i wyjaśniam logikę, aby kod pozostał łatwy w utrzymaniu. Typowe zadania — uratowanie porzuconej bazy kodu Forth, dodanie warstwy skryptowej do oprogramowania układowego lub zbudowanie narzędzia w Gforth do automatycznego testowania sprzętu. Wyślij mi schemat, kartę katalogową lub kod źródłowy — a ja szczerze powiem, co można realistycznie zrobić. Otrzymasz skomentowany kod źródłowy, skrypty budowania i krótki przewodnik po stworzonych słowach.