[nem-pl] Kolorowanie zmiennych przez inne funkcje

Michal Moskal malekith at pld-linux.org
Thu Mar 11 13:06:32 CET 2004


On Thu, Mar 11, 2004 at 12:59:25PM +0100, "Paweł W. Olszta" wrote:
> Kamil Skalski wrote:
> 
> OFFTOPIC.
> 
> >public [Hygienic] make_code () : Expr {
> >  <[ def x = 1; bla (x) ]>
> >}
> 
> Ładny sposób oznaczania, że funkcja ma być przefiltrowana przez makro. 
> To jeszcze nie działa, prawda?
> 
> Bo jeśli tak, to ja proponuję zacząć o tym myśleć, bo i tak będzie chyba 
> potrzebne do [Hygienic].
> 
> Trzeba się będzie bardzo mocno zastanowić, jak definiować syntax 
> extensions (ja cały czas myślę, że ensure oraz require powinny być 
> makrami na funkcjach, tak jak Hygienic w tym przykładzie).
> 
> Co do syntax extensions, to proponowałbym umożliwienie czegoś takiego:
> 
> public [Contracted] jakas_funkcja (x : int) : int
> {
> 	require { x >= 0 }
> 	method { x * 2 }
> 	ensure { value % 2 == 0 }
> }

Może tak:

public [Contracted] jakas_funkcja (x : int) : int
{
	require (x >= 0);
	x * 2;
	ensure (value % 2 == 0);
}

bez rozszerzeń składni.

-- 
: Michal Moskal :: http://www.kernel.pl/~malekith :: GCS !tv h e>+++ b++
: When in doubt, use brute force. -- Ken Thompson :: UL++++$ C++ E--- a?




More information about the devel-pl mailing list