-
Path: news-archive.icm.edu.pl!news.gazeta.pl!not-for-mail
From: Michał Politowski <r...@r...address>
Newsgroups: pl.comp.programming
Subject: Re: jezyki z definiowaniem operatorow
Date: Wed, 16 May 2012 20:10:58 +0000 (UTC)
Organization: Towarzystwo Przyjaźni Polsko-Qwghlmiańskiej
Lines: 30
Message-ID: <s...@A...meep.pl>
References: <jou2mq$cm2$1@inews.gazeta.pl> <joueua$ja8$1@inews.gazeta.pl>
<joun6e$mfe$7@inews.gazeta.pl> <jour3i$f3d$1@inews.gazeta.pl>
<jovtou$mfe$8@inews.gazeta.pl>
<8...@s...googlegroups.com>
Reply-To: !#$%&'*+-/=?^_`{|}~@mp.pl.eu.org
NNTP-Posting-Host: 193.23.174.18
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-2
Content-Transfer-Encoding: 8bit
X-Trace: inews.gazeta.pl 1337199058 3759 193.23.174.18 (16 May 2012 20:10:58 GMT)
X-Complaints-To: u...@a...pl
NNTP-Posting-Date: Wed, 16 May 2012 20:10:58 +0000 (UTC)
X-PGP: 1024D/EDBBB56F; A690 41A9 6DDE 7496 6A72 C51B 7DEE 64EB EDBB B56F; 2006-04-21
-- 2008-04-20
X-User: mdp
User-Agent: slrn/pre1.0.0-18 (Linux)
Xref: news-archive.icm.edu.pl pl.comp.programming:197278
[ ukryj 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
- 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??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
- CfC 28th Ada-Europe Int. Conf. Reliable Software Technologies
- Młodzi programiści i tajna policja
- Ada 2022 Language Reference Manual to be Published by Springer
- Press Release - AEiC 2023, Ada-Europe Reliable Softw. Technol.
- Ada-Europe - AEiC 2023 early registration deadline approaching
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2023
- Ile cykli zajmuje mnożenie liczb 64-bitowych?
Najnowsze wątki
- 2024-06-27 SAMOCHODY ELEKTRYCZNE: EKOLOGICZNA HIPOKRYZJA CZY EKONOMICZNA GŁUPOTA? | GOSPODARCZE ZERO #21
- 2024-06-27 Głośnik piezoelektryczny
- 2024-06-23 Mala autonomiczna kamera monitoringu
- 2024-06-26 czas na emeryturę i EB
- 2024-06-26 Wyjścia video kart graficznych (NVIDIA)
- 2024-06-27 Warszawa => Key Account Manager <=
- 2024-06-27 Bażanowice => Expert Migration Architect (Azure) <=
- 2024-06-27 Ulm => IT Netzwerktechniker (m/w/d) <=
- 2024-06-27 Warszawa => Kierownik Działu Spedycji Międzynarodowej <=
- 2024-06-27 Warszawa => Head of International Freight Forwarding Department <=
- 2024-06-26 Kraków => International freight forwarder <=
- 2024-06-26 Częstochowa => Marketing Specialist (E-Commerce) <=
- 2024-06-26 Warszawa => Fullstack Java Developer <=
- 2024-06-26 Warszawa => React Native Developer <=
- 2024-06-26 Rzeszów => Frontend Developer (React) <=