-
Data: 2012-05-16 22:10:58
Temat: Re: jezyki z definiowaniem operatorow
Od: Michał Politowski <r...@r...address> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]On Wed, 16 May 2012 09:18:30 -0700 (PDT), Andrzej Jarzabek
<a...@g...com> wrote:
[...]
> No proszę bardzo: chcę sobie zdefiniować operatory, powiedzmy, @ i #,
> powiedzmy w ten sposób, żeby (a @ b # c) parsowało się jako a @ (b #
> c), (a @ b @ c) jako (a @ b) @ c, a (a # b # c) jako a # (b # c).
> Oczywiście mam też szczegółowe wymagania co do tego, jak powinny się
> parsowac (a + b @ c), (a # b * c) i tak dalej.
$ cat Foo.hs
infixl 6 @@
infixr 7 ##
x @@ y = (x,y)
x ## y = (x,y)
main = do
print $ 'a' @@ 'b' ## 'c'
print $ 'a' @@ 'b' @@ 'c'
print $ 'a' ## 'b' ## 'c'
$ runghc Foo.hs
('a',('b','c'))
(('a','b'),'c')
('a',('b','c'))
Pojedynczego @ się tu akurat nie da użyć jako operatora bo jest zarezerwowany.
--
Michał Politowski
Talking has been known to lead to communication if practiced carelessly.
Następne wpisy z tego wątku
- 16.05.12 22:32 Andrzej Jarzabek
- 17.05.12 09:35 Maciej Sobczak
- 17.05.12 10:00 Roman W
- 17.05.12 10:09 Stachu 'Dozzie' K.
- 17.05.12 11:46
- 17.05.12 11:51
- 18.05.12 09:55 Maciej Sobczak
- 18.05.12 10:00 Roman W
- 18.05.12 12:36 KO
- 18.05.12 14:54
- 18.05.12 18:34
Najnowsze wątki z tej grupy
- "Wuj dobra rada" z KDAB rozważa: Choosing the Right Programming Language for Your Embedded Linux Device
- Nowa ustawa o ochronie praw autorskich - opis problemu i szkic ustawy
- 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?
Najnowsze wątki
- 2025-03-22 OT Silnik sie przegrzewa
- 2025-03-22 Przenoszenie przez wifi na nowego Androida
- 2025-03-22 Warszawa => Senior Account Manager <=
- 2025-03-22 Wrocław => Konsultant wdrożeniowy Comarch XL (Logistyka, WMS, Produk
- 2025-03-22 Warszawa => Spedytor Międzynarodowy <=
- 2025-03-22 Warszawa => NMS System Administrator <=
- 2025-03-22 Warszawa => Analityk IT (projekty z obszaru telco) <=
- 2025-03-22 Orzeczenie TSUE
- 2025-03-22 Warszawa => Operations Support Systems (OSS) Team Leader <=
- 2025-03-22 Warszawa => Scrum Master <=
- 2025-03-22 Warszawa => Senior Account Manager <=
- 2025-03-22 Warszawa => BI Developer / Analityk BI <=
- 2025-03-22 Warszawa => IT Recruiter <=
- 2025-03-21 Zakaz wjazdu
- 2025-03-21 Nie zawsze wchodzi jedynka