eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programming › [spam] ProCalc
Ilość wypowiedzi w tym wątku: 73

  • 21. Data: 2012-02-13 10:01:35
    Temat: Re: [spam] ProCalc
    Od: bartekltg <b...@g...com>

    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?

    > Direct2D i Direct3D (API DirectX 11, ale działa w trybie zgodności z
    > 9.0c, stąd wygórowane wymagania runtime'ów, ale niskie - karty
    > graficznej). C# - GUI i ogólnie kwestie interakcji z użytkownikiem.
    > Korzystam z WF, bo łatwo można się dogadać z zewnętrzną biblioteką
    > natywną, która dostaje HWND i więcej jej do szczęścia nie potrzeba.
    > Komunikacja świata zarządzanego z natywnym przez P/invoke.
    >
    > Jeśli masz jakieś szczegółowe pytania, to się nie wahaj :)

    Pewnie przyjdą kolejne;)

    pzdr
    bartekltg


  • 22. Data: 2012-02-13 14:30:22
    Temat: Re: [spam] ProCalc
    Od: n...@m...invalid

    W dniu 12.02.2012 r. 12:19, Wojciech "Spook" Sura pisze:
    > Hej!
    >
    > [Crosspost na pl.c.p i pl.c.l.c, FUT na pl.c.p]
    >
    > Wczoraj późnym wieczorem wypuściłem wreszcie pierwszą wersję mojego
    > kalkulatorka dla power-userów.
    <snips />
    > Wymagania:
    > - .NET Framework 4 (
    > http://www.microsoft.com/download/en/details.aspx?id
    =17851 )
    Czy testowałeś pod Mono?

    > Do rysowania wykresów:
    > - Windows 7
    > - Runtime'y DirectX 11 (
    > http://www.microsoft.com/download/en/details.aspx?id
    =8109 )
    > - Karta graficzna zgodna z DirectX 9.0c (wszystkie współczesne, w tym
    > większość zintegrowanych).


  • 23. Data: 2012-02-13 16:48:18
    Temat: Re: [spam] ProCalc
    Od: "Wojciech \"Spook\" Sura" <s...@s...op.pl>

    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! \/) \ !


  • 24. Data: 2012-02-13 16:50:29
    Temat: Re: [spam] ProCalc
    Od: "Wojciech \"Spook\" Sura" <s...@s...op.pl>

    Dnia 13.02.2012 o 15:30 <n...@m...invalid> napisał(a):
    >> Wymagania:
    >> - .NET Framework 4 (
    >> http://www.microsoft.com/download/en/details.aspx?id
    =17851 )
    > Czy testowałeś pod Mono?

    Nie zadziała, korzystam z Windows Forms.

    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! \/) \ !


  • 25. Data: 2012-02-13 17:03:24
    Temat: Re: [spam] ProCalc
    Od: "Jordan Szubert" <u...@j...us.to>

    Dnia 13-02-2012 o 17:48:18 Wojciech "Spook" Sura <s...@s...op.pl>
    napisał(a):

    [...]
    >
    > 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.

    przypomnisz?

    > 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.

    "skompilowane" znaczy do MSIL, x86 czy co?
    [...]
    --
    Jordan Szubert


  • 26. Data: 2012-02-13 17:04:45
    Temat: Re: [spam] ProCalc
    Od: " " <f...@g...pl>

    Wojciech \Spook\ Sura <s...@s...op.pl> napisał(a):

    > Dnia 13.02.2012 o 11:01 bartekltg <b...@g...com> napisa=B3(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=B3(=
    > a):
    > >>>> O ile to jest C++, to nas tu by
    > >>>> znacznie bardziej interesowa=B3o to jakie techniki zosta=B3y zastos=
    > owane =
    >
    > >>>> do
    > >>>> napisania tego programu (co do czego zosta=B3o u=BFyte, jakie wzorc=
    > e
    > >>>> projektowe itd) ni=BF sam fakt dost=EApno=B6ci nowego kalkulatora.
    > >>>
    > >>> Przy=B3=B1czam si=EA do pytania o techniczne informatyczne bebechy.
    > >>
    > >> C# + C++. W C++ napisany jest silnik licz=B1cy wyra=BFenia matematycz=
    > ne
    > >> (kompilator i interpreter) oraz rysowanie wykres=F3w 2D i 3D przy pom=
    > ocy
    > >
    > > W=B3a=B6nie o t=B1 cze=B6=E6 mi chodzi=B3o. Jak rozbierasz tekstowe
    > > wyra=BFenie, jak je potem przetwarzasz i obliczasz.
    > > Jaki=B6 gotowy parser? Napisany od podstaw?
    >
    > Wszystko mam napisane od zera. Tokenizer wygenerowa=B3em w=B3asnym progr=
    > amem =
    >
    > (sprzedajesz mu seri=EA wyra=BFe=F1 regularnych, on produkuje bardzo szy=
    > bki =
    >
    > tokenizer rozpoznaj=B1cy te wyra=BFenia); wiem o istnieniu Flexa i Bison=
    > a, ale =
    >
    > Flex mnie doprowadza=B3 do sza=B3u tym, =BFe produkowa=B3 gotowy program=
    > , gdy m=F3j =
    >
    > programik generuje klas=EA lub zestaw funkcji. Generator tokenizer=F3w k=
    > iedy=B6 =
    >
    > prezentowa=B3em na grupach, ale nie spotka=B3 si=EA z wi=EAkszym zainter=
    > esowaniem.
    >
    > Parser dzia=B3a prosto, na zasadzie ONP i produkuje "skompilowane" i =
    >
    > zoptymalizowane wyra=BFenie, kt=F3re mo=BFna potem b=B3yskawicznie (i =
    >
    > wielokrotnie) obliczy=E6, bez dalszego parsowania. Dzi=EAki temu mo=BFna=
    > ogl=B1da=E6 =
    >
    > zmiany wykresu 3D na bie=BF=B1co, a to jest obliczenie wyra=BFenia 10 00=
    > 0 (czyli =
    >
    > 100 x 100) razy kilka (kilkana=B6cie) razy na sekund=EA. Wprowadzi=B3em =
    > te=BF =
    >
    > takie patenty jak zmienne zewn=EAtrzne i parametry wywo=B3ania, to te=BF=
    > =
    >
    > przyspiesza seryjne obliczenia.
    >

    podstawowe pytanie ile lini kodu ma ten prog (w calosci)?
    15 tys?



    --
    Wysłano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta.pl/usenet/


  • 27. Data: 2012-02-13 17:43:04
    Temat: Re: [spam] ProCalc
    Od: n...@m...invalid

    W dniu 13.02.2012 r. 17:50, Wojciech "Spook" Sura pisze:
    > Dnia 13.02.2012 o 15:30 <n...@m...invalid> napisał(a):
    >>> Wymagania:
    >>> - .NET Framework 4 (
    >>> http://www.microsoft.com/download/en/details.aspx?id
    =17851 )
    >> Czy testowałeś pod Mono?
    > Nie zadziała, korzystam z Windows Forms.
    To rzeczywiście calc.exe+ :-P


  • 28. Data: 2012-02-13 17:44:15
    Temat: Re: [spam] ProCalc
    Od: Roman W <b...@g...pl>

    On Monday, February 13, 2012 4:48:18 PM UTC, Wojciech Spook Sura wrote:

    [opis parsera]

    Fajne, wiele firm w City byloby zainteresowane takimi rzeczami.

    RW


  • 29. Data: 2012-02-13 18:00:07
    Temat: Re: [spam] ProCalc
    Od: "Wojciech \"Spook\" Sura" <s...@s...op.pl>

    Dnia 13.02.2012 o 18:03 Jordan Szubert <u...@j...us.to> napisał(a):

    > Dnia 13-02-2012 o 17:48:18 Wojciech "Spook" Sura
    > <s...@s...op.pl> napisał(a):
    >
    > [...]
    >>
    >> 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.
    >
    > przypomnisz?

    Proszę...

    http://www.spook.freshsite.pl/Temporary/spg.zip

    W środku jest readme z informacją, w jaki sposób formatować plik
    wejściowy. Generuje kod w C++, ale można go dosyć łatwo przepisać na inny
    język (ja przepisywałem na Javę i C#)

    >> 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.
    >
    > "skompilowane" znaczy do MSIL, x86 czy co?
    > [...]

    Na mój wewnętrzny format :) Dlatego "skompilowane" w cudzysłowiu.
    Wyrażeniem przechowywanym w ten sposób można potem nakarmić interpreter,
    który je obliczy.

    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! \/) \ !


  • 30. Data: 2012-02-13 18:24:39
    Temat: Re: [spam] ProCalc
    Od: "Wojciech \"Spook\" Sura" <s...@s...op.pl>

    Dnia 13.02.2012 o 18:04 <f...@g...pl> napisał(a):
    > podstawowe pytanie ile lini kodu ma ten prog (w calosci)?
    > 15 tys?

    Dlaczego podstawowe? Prawdę mówiąc, nigdy się nad tym mocniej nie
    zastanawiałem :)

    Ale zaspokoję Twoją ciekawość. Razem z pustymi liniami i komentarzami (ale
    to jest jakiś niewielki odsetek całego kodu).

    C++:
    Sam kompilator + interpreter wyrażeń matematycznych (lib): 15 625
    GraphDrawer2D: 2 507
    GraphDrawer3D: 3 256
    ProCalc.Engine: 1 504

    C#:
    ProTools.Common: 2 282
    ProCalc.Core: 1 516
    ProCalc: 10775

    W sumie około 37 465

    Powyższe wartości są mocno szacowane, ponieważ należałoby do tego wliczyć
    na przykład program do generowania tokenizerów, który też ma kilka tysięcy
    linijek (a za pomocą którego generowałem tokenizery dla silnika); ponadto
    wartości C# są nieco zawyżone, bo wliczyłem pliki .designer.cs, które po
    części pisałem ja, a po części były generowane automatycznie.

    Ale daje to jakiś obraz wielkości projektu.

    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! \/) \ !

strony : 1 . 2 . [ 3 ] . 4 ... 8


Szukaj w grupach

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: