-
Data: 2012-02-13 16:48:18
Temat: Re: [spam] ProCalc
Od: "Wojciech \"Spook\" Sura" <s...@s...op.pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]Dnia 13.02.2012 o 11:01 bartekltg <b...@g...com> napisał(a):
> W dniu 2012-02-12 20:42, Wojciech "Spook" Sura pisze:
>> Dnia 12-02-2012 o 20:32:11 bartekltg <b...@g...com> napisał(a):
>>>> O ile to jest C++, to nas tu by
>>>> znacznie bardziej interesowało to jakie techniki zostały zastosowane
>>>> do
>>>> napisania tego programu (co do czego zostało użyte, jakie wzorce
>>>> projektowe itd) niż sam fakt dostępności nowego kalkulatora.
>>>
>>> Przyłączam się do pytania o techniczne informatyczne bebechy.
>>
>> C# + C++. W C++ napisany jest silnik liczący wyrażenia matematyczne
>> (kompilator i interpreter) oraz rysowanie wykresów 2D i 3D przy pomocy
>
> Właśnie o tą cześć mi chodziło. Jak rozbierasz tekstowe
> wyrażenie, jak je potem przetwarzasz i obliczasz.
> Jakiś gotowy parser? Napisany od podstaw?
Wszystko mam napisane od zera. Tokenizer wygenerowałem własnym programem
(sprzedajesz mu serię wyrażeń regularnych, on produkuje bardzo szybki
tokenizer rozpoznający te wyrażenia); wiem o istnieniu Flexa i Bisona, ale
Flex mnie doprowadzał do szału tym, że produkował gotowy program, gdy mój
programik generuje klasę lub zestaw funkcji. Generator tokenizerów kiedyś
prezentowałem na grupach, ale nie spotkał się z większym zainteresowaniem.
Parser działa prosto, na zasadzie ONP i produkuje "skompilowane" i
zoptymalizowane wyrażenie, które można potem błyskawicznie (i
wielokrotnie) obliczyć, bez dalszego parsowania. Dzięki temu można oglądać
zmiany wykresu 3D na bieżąco, a to jest obliczenie wyrażenia 10 000 (czyli
100 x 100) razy kilka (kilkanaście) razy na sekundę. Wprowadziłem też
takie patenty jak zmienne zewnętrzne i parametry wywołania, to też
przyspiesza seryjne obliczenia.
> pzdr
> bartekltg
Pozdrawiam -- Spook.
--
! ._______. Warning: Lucida Console sig! //) !
! || spk || www.spook.freshsite.pl / _ """*!
! ||_____|| spook at op.pl / ' | ""!
! | ___ | tlen: spoko_ws gg:1290136 /. __/"\ '!
! |_|[]_|_| May the SOURCE be with you! \/) \ !
Następne wpisy z tego wątku
- 13.02.12 16:50 Wojciech \"Spook\" Sura
- 13.02.12 17:03 Jordan Szubert
- 13.02.12 17:04
- 13.02.12 17:43 n...@m...invalid
- 13.02.12 17:44 Roman W
- 13.02.12 18:00 Wojciech \"Spook\" Sura
- 13.02.12 18:24 Wojciech \"Spook\" Sura
- 13.02.12 18:34 Wojciech \"Spook\" Sura
- 13.02.12 18:34 Wojciech \"Spook\" Sura
- 13.02.12 18:36 Marcin Kral
- 13.02.12 18:41 Wojciech \"Spook\" Sura
- 13.02.12 19:07
- 13.02.12 20:06 Roman W
- 13.02.12 21:15 n...@m...invalid
- 13.02.12 21:59 Edek
Najnowsze wątki z tej grupy
- Alg. kompresji LZW
- Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
Najnowsze wątki
- 2025-03-05 Środa Wielkopolska => Konsultant wewnętrzny SAP FI/CO <=
- 2025-03-05 Zielona Góra => Senior Field Sales (system ERP) <=
- 2025-03-05 Warszawa => Data Engineer (Tech Lead) <=
- 2025-03-05 Kraków => Business Development Manager - Network and Network Security
- 2025-03-05 Zaniepokojeni mieszkańcy
- 2025-03-05 Ile pieniędzy ma bank?
- 2025-03-05 Ostrów Świętokrzy => Node.js / Fullstack Developer <=
- 2025-03-05 Białystok => Architekt rozwiązań (doświadczenie w obszarze Java, A
- 2025-03-05 Warszawa => Frontend Developer (Angular13+) <=
- 2025-03-05 Warszawa => Frontend Developer (obszar Angular13+) <=
- 2025-03-05 Chiny-Kraków => Backend Developer (Node + Java) <=
- 2025-03-05 Warszawa => JavaScript / Node / Fullstack Developer <=
- 2025-03-05 China-Kraków => Key Account Manager IT <=
- 2025-03-05 China-Kraków => Senior PHP Symfony Developer <=
- 2025-03-05 Gdańsk => Specjalista ds. Sprzedaży <=