eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingMakra w jezyku SchemeRe: Makra w jezyku Scheme
  • Data: 2014-11-10 01:06:02
    Temat: Re: Makra w jezyku Scheme
    Od: g...@g...com szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]

    W dniu niedziela, 9 listopada 2014 23:36:54 UTC+1 użytkownik firr napisał:
    > no dobra peostsze pytanie ;o
    > co sie stanie jesli w takim czyms
    >
    > (+ (+ 1 2 3) (+ 1 2 3 4)) z drugiego
    > zrobisz 'quote' ?

    tzn. chodzi o to, co sie stanie, gdy napiszemy
    (+ (+ 1 2 3) '(+ 1 2 3 4))?

    wtedy dostaniemy type error, bo nie mozna dodac liczby do listy.

    ale gdybysmy napisali

    (append '(+ 1 2 3) '(+ 1 2 3 4))

    [gdzie "append" to funkcja ktora laczy listy]
    to dostalibysmy sensowny wynik

    (+ 1 2 3 + 1 2 3 4)

    analogicznie, nie mozemy jednak uzyc funkcji "append" na liczbach.
    wywolanie

    (append 1 2)

    rowniez spowoduje blad typu

    > wydaje mi sie ze
    > to bedzie syntax (runtime?) error
    > o tyle wydawalo mi sie ze te quoty moga
    > byc tylko produkowane w jakichs kontekstach
    > gdzie otaczajacy kod przyjmuje na wejsciu wlasnie
    > jakies tam kody (bo czym jest ta zawartosc quote? kodem chyba?)

    tzn. na te rzecz mozna patrzec dwojako.
    z jednej strony mozna powiedziec, ze kiedy piszesz
    '(+ 2 3), to faktycznie mozna widziec (+ 2 3) jako
    kod. Jednak mozna tez spojrzec na te kwestie na odwrot,
    mianowicie tak, ze (+ 2 3) jest lista, ktora zostaje
    ewaluowana.

    zachecam zebys sprawdzil tego repla, bo wtedy bedziesz mogl
    na biezaco testowac rozne hipotezy

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

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: