[nem-pl] Re: C# => Nemerle
Michal Moskal
malekith at pld-linux.org
Sat Mar 27 16:28:42 CET 2004
On Sat, Mar 27, 2004 at 02:17:40PM +0100, Pawel Rozanski wrote:
> Michal Moskal wrote:
>
> >>Mysle ze pozostale watpliwosci wyjda juz przy pisaniu testowaniu.
> >>Co do goto nie widze dla niego mozliwosci w chwili obecnej do
> >>rozmiwazania typu wyjatki, gdyz goto moze byc uzywane poza jedna
> >>struktura - jest calkowicie nie strukturalne.
> >Wyjątki tak czy inaczej odpadają (efaktywność...)
> >
> A moze jakos tak:
>
>
> fun(...){
> 0:
> AAA
>
> 1: while(x)
> {
> BBB
> goto 0
> CCC
> }
> }
>
> na:
>
> fun(...)
> {
> goto (r:int*bool ,... )
> {
> match(r)
> {
> | 0,_ =>
> AAAA
> goto(1,x)
>
> | 1,true =>
> BBBB
> goto(0,x)
> CCCC
> goto(1,x)
>
> | 1,false =>
> ()
> }
> }
>
> goto((0,true),....)
> }
To jest bardzo ogólna metoda, ale mało czytelna. IMHO kod imperatywny po
zmianie powinien pozostać imperatywny i czytelny.
--
: 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