eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programming › LLVM a Garbage Collector
Ilość wypowiedzi w tym wątku: 23

  • 1. Data: 2012-05-20 13:45:19
    Temat: LLVM a Garbage Collector
    Od: "Borneq" <b...@a...hidden.pl>

    LLVM obsługuje kod pośredni generowany z wielu innych języków programowania
    m.in z C (Clang). Jak jest z automatycznym zwalnianiem pamięci? Czy to
    mozłiwe aby GC działał dla języka C, w którym są wskaźniki i to
    nieodróznialne od liczb?


  • 2. Data: 2012-05-20 14:27:36
    Temat: Re: LLVM a Garbage Collector
    Od: " " <f...@g...pl>

    Borneq <b...@a...hidden.pl> napisał(a):

    > LLVM obsługuje kod pośredni generowany z wielu innych języków
    programowania
    >
    > m.in z C (Clang). Jak jest z automatycznym zwalnianiem pamięci? Czy to
    > mozłiwe aby GC działał dla języka C, w którym są wskaźniki i to
    > nieodrĂłznialne od liczb?
    >

    a do czego gc moglby sie przydac w (moim ulubionym) c?
    pytam bo moze jest cos takiego ale w praktyce nigdy nie
    trafilem jeszcze na taki przypadek (tj nie przychodzi
    mi w danym momencie w c nic co mialoby podlegac pod gc)
    (?) [mozliwe ze jest cos takiego tylko pisze ograniczone
    przypadki programow]







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


  • 3. Data: 2012-05-20 15:22:11
    Temat: Re: LLVM a Garbage Collector
    Od: "Borneq" <b...@a...hidden.pl>

    Użytkownik <f...@g...pl> napisał w wiadomości
    news:jpanvo$50o$1@inews.gazeta.pl...
    > a do czego gc moglby sie przydac w (moim ulubionym) c?
    > pytam bo moze jest cos takiego ale w praktyce nigdy nie
    > trafilem jeszcze na taki przypadek (tj nie przychodzi
    > mi w danym momencie w c nic co mialoby podlegac pod gc)
    > (?) [mozliwe ze jest cos takiego tylko pisze ograniczone
    > przypadki programow]

    Pytam się, bo w http://llvm.org/Features.html jest
    5. LLVM has full support for accurate garbage collection.
    i do tego "accurate", podczas gdy obsługuje C a tam są wskaźniki


  • 4. Data: 2012-05-20 15:46:23
    Temat: Re: LLVM a Garbage Collector
    Od: Edek Pienkowski <e...@g...com>

    Dnia Sun, 20 May 2012 15:22:11 +0200, Borneq napisal:

    > Użytkownik <f...@g...pl> napisał w wiadomości
    > news:jpanvo$50o$1@inews.gazeta.pl...
    >> a do czego gc moglby sie przydac w (moim ulubionym) c?
    >> pytam bo moze jest cos takiego ale w praktyce nigdy nie
    >> trafilem jeszcze na taki przypadek (tj nie przychodzi
    >> mi w danym momencie w c nic co mialoby podlegac pod gc)
    >> (?) [mozliwe ze jest cos takiego tylko pisze ograniczone
    >> przypadki programow]
    >
    > Pytam się, bo w http://llvm.org/Features.html jest
    > 5. LLVM has full support for accurate garbage collection.
    > i do tego "accurate", podczas gdy obsługuje C a tam są wskaźniki

    Nie wiem, czy wiesz co znaczy "accurate" w tym kontekście. Ja nie
    wiedziałem, więc zajrzałem do
    http://llvm.org/doc/Garbagecollection.html, co i Tobie polecam.
    Muszę bardziej wnikliwie kiedyś zrobić rtfm, ale wygląda na to,
    że ir llvm wspiera pluginy generujące kod co umożliwia mieć w
    llvm ir opisy - podobne do debugowych - które podczas generacji
    kodu powiadamiają GC gdzie są wszystkie pointery, w tym istniejące
    w rejestrach. Można się spodziewać dużej dozy włochatości kodu,
    ale inaczej w C się nie da; ta informacja podobna do dwarfa
    oznacza właśnie accurate.

    Niektóre projekty używają GC w C, ale o ile wiem na zasadzie
    conservative i dużej ilości makr i generowanch typów.

    Edek


  • 5. Data: 2012-05-20 17:16:07
    Temat: Re: LLVM a Garbage Collector
    Od: " M.M." <m...@g...pl>

    Borneq <b...@a...hidden.pl> napisał(a):

    > LLVM obsługuje kod pośredni generowany z wielu innych języków programowania
    >
    > m.in z C (Clang). Jak jest z automatycznym zwalnianiem pamięci? Czy to
    > mozłiwe aby GC działał dla języka C, w którym są wskaźniki i to
    > nieodrĂłznialne od liczb?
    >
    Edek odpisał bardziej szczegółowo - fajnie. Bez wnikania w szczegóły:
    po prostu nie można napisać programu X który przewidzi w każdym programie Y
    czy dany wskaźnik będzie jeszcze potrzebny czy nie. Trzeba program X jakoś
    tak zmodyfikować, aby zadanie dla programu Y było (znacznie) łatwiejsze.
    Po ułatwieniu można uzyskać podobny efekt do GB. Ale czy warto robić
    takie zabiegi w językach typu C/C++ to trochę powątpiewam.

    Pozdrawiam




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


  • 6. Data: 2012-05-20 17:53:45
    Temat: Re: LLVM a Garbage Collector
    Od: "Borneq" <b...@a...hidden.pl>

    Użytkownik " M.M." <m...@g...pl> napisał w wiadomości
    news:jpb1rm$qe0$1@inews.gazeta.pl...
    > po prostu nie można napisać programu X który przewidzi w każdym programie
    > Y
    > czy dany wskaźnik będzie jeszcze potrzebny czy nie. Trzeba program X jakoś
    > tak zmodyfikować, aby zadanie dla programu Y było (znacznie) łatwiejsze.
    > Po ułatwieniu można uzyskać podobny efekt do GB. Ale czy warto robić
    > takie zabiegi w językach typu C/C++ to trochę powątpiewam.

    Ale czy można na przykład przetłumaczyć Javę na C w ten sposób aby kod w C
    był specjalnie udekorowany dla Garbage Collectora? Czy są jakieś przykłady
    takiego kodu w C kompilowanego przez Clanga?
    Na stronie LLVM nie ma wirtualne maszyny ani kompilatora dla Windows, ale
    podobno można skompilować ze źródeł. Do Ubuntu są do wersji 11.10, czy
    również pojdą pod 12.04?


  • 7. Data: 2012-05-20 18:08:08
    Temat: Re: LLVM a Garbage Collector
    Od: " M.M." <m...@g...pl>

    Borneq <b...@a...hidden.pl> napisał(a):
    > Ale czy można na przykład przetłumaczyć Javę na C w ten sposób aby kod w C
    > był specjalnie udekorowany dla Garbage Collectora?

    Aby to było możliwe, to jeszcze trzeba ręcznie "udekorować" kod w Javie. To
    udekorowanie w Javie powinno zawierać informacje o tym, jak konwerter
    ma udekorować kod w C. Można też wkompilować bibliotekę z GB.

    > Czy są jakieś przykłady
    > takiego kodu w C kompilowanego przez Clanga?
    > Na stronie LLVM nie ma wirtualne maszyny ani kompilatora dla Windows, ale
    > podobno można skompilować ze źródeł. Do Ubuntu są do wersji 11.10, czy
    > również pojdą pod 12.04?
    Nawet nie wiem co to jest LLVM, pierwszy raz słyszę o czymś takim :)

    Pozdrawiam


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


  • 8. Data: 2012-05-20 19:39:58
    Temat: Re: LLVM a Garbage Collector
    Od: "Borneq" <b...@a...hidden.pl>

    Użytkownik "Edek Pienkowski" <e...@g...com> napisał w
    wiadomości news:jpasjf$l0v$1@inews.gazeta.pl...
    > Nie wiem, czy wiesz co znaczy "accurate" w tym kontekście. Ja nie
    > wiedziałem, więc zajrzałem do
    > http://llvm.org/doc/Garbagecollection.html, co i Tobie polecam.

    W http://llvm.org/docs/GarbageCollection.html można przeczytać
    "However, LLVM does not itself provide a garbage collector--this should be
    part of your language's runtime library. LLVM provides a framework for
    compile timecode generation plugins."


  • 9. Data: 2012-05-21 07:54:18
    Temat: Re: LLVM a Garbage Collector
    Od: "Borneq" <b...@a...hidden.pl>

    Użytkownik " M.M." <m...@g...pl> napisał w wiadomości
    news:jpb1rm$qe0$1@inews.gazeta.pl...
    > po prostu nie można napisać programu X który przewidzi w każdym programie
    > Y
    > czy dany wskaźnik będzie jeszcze potrzebny czy nie. Trzeba program X jakoś
    > tak zmodyfikować, aby zadanie dla programu Y było (znacznie) łatwiejsze.

    Skoro trzeba zmodyfikować to jaki sens używania GC?, można zamiast tego
    wstawiać delete.


  • 10. Data: 2012-05-21 10:14:20
    Temat: Re: LLVM a Garbage Collector
    Od: Roman W <b...@g...pl>

    On Monday, May 21, 2012 6:54:18 AM UTC+1, Borneq wrote:
    > Użytkownik " M.M." <m...@g...pl> napisał w wiadomości
    > news:jpb1rm$qe0$1@inews.gazeta.pl...
    > > po prostu nie można napisać programu X który przewidzi w każdym programie
    > > Y
    > > czy dany wskaźnik będzie jeszcze potrzebny czy nie. Trzeba program X jakoś
    > > tak zmodyfikować, aby zadanie dla programu Y było (znacznie) łatwiejsze.
    >
    > Skoro trzeba zmodyfikować to jaki sens używania GC?, można zamiast tego
    > wstawiać delete.

    Cecha charakterystyczna programow napisanych w C czy C++ bez GC jest fanatyczne
    unikanie (re)alokacji pamieci, bo to kosztuje, kosztem czytelnosci programu. Kiedy
    sie uzywa GC, te operacje staja sie tansze, i nie trzeba sie tak meczyc.

    RW

strony : [ 1 ] . 2 . 3


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: