[nem-pl] nawiasy

Lukasz Kaiser kaiser at tenet.pl
Thu Feb 12 19:37:07 CET 2004


Hej.

> devel-pl? Od dawna trąbimy o tej zmianie i szukamy agrumentów przeciw <> i 
> nikt ich nie potrafi znaleźć, a ty teraz jakieś zażalenia piszesz. 
> Czytałeś mojego maila o różnicach Nemerle vs C++, Java 1.5, C# 2.0?

Hmm, czy to aby nie ja zaczalem o J 1.5 pisac ? Ale myslalem, ze sobie jaja 
robicie, tak idiotyczne wydawalo mi sie zmienianie na <>. Przepraszam, byc
moze to sila przyzwyczajen i niekorzystnego doswiadczenia ze mi sie to tak
oczywiste wydawalo.

> IMHO o ile list 'a wyglÄ…da dobrze, list('a) jeszcze co zniesienia, to 
> list<'a>  powinien już raczej list<a>

IMHO list 'a jest znacznie lepsze od list<a>. Nie mowie ze list<'a> ma sens.
Mozliwe argumenty to to ze nawiasy () sa naturalne i uzywane w szkole i znane
od dziecka a zatem bardziej czytelne, popatrz tez na nesting:
list<a, list<b,tree<a>>> vs. list 'a * list ('b * tree 'a).

> Nie zmienia? To znaczy nie jestem pewien o co chodzi... co siÄ™ nie zminia? 
> Używanie templatów?

Nie, support dla <> w emacsie. Wiem, ze mozna go zaprogramowac albo uzywac 
innych edytorow, ale Michal to poruszyl.

> To ma problem, bo jak mu każą w pracy pisać w Javie 1.5 lub C# 2.0, to 
> nie będzie mógł uciec. Ja uczciwie mówiąc, to może zda sobie 
> sprawę, że list<a> jest bardziej precyzyjne semantycznie i odróżnia 
> się od konstruktorów i wywołań funkcji.

Nie jest bardziej precyzyjne semantycznie, bo obie konstrukcje sa rownie
precyzyjne, czyli po prostu precyzyjne. Jesli chodzi o odroznianie sie to
<> nie odroznia sie od operatora "<>", ale to nie ma wielkiego znaczenia
podobnie jak odroznianie sie () od wywolan funkcji, bo stoja w innych 
miejscach. Poza tym ja optuje za zniesieniem nawiasow w ogole, co bedzie sie
zasadniczo odrozniac. Dodatkowo chodzi tez o odroznianie zmiennych, czyli
foo ( a : int, y : tree<a>, b : a ) : int .

Ale wracajac do sprawy kazania komus cos robic w pracy, myslisz ze mu kaza 
pisac w Nemerle ? No a dla zabawy to czy bedzie pisal w jezyku tak podobnym
do tego z pracy ?

> C#'s variants implementation was based on a project originally called Nemerle,
> which was done by Michał Moskal and others. Nemerle was renamed N#, then it 
> turned into a NSR and ended up being adopted into the C# 3.0 language.

Hmm, widze ze liczysz na znajomosci Pawla w M$R. Nie znam sie na tym, ale chyba
ludzie od C# dzialaja troszke inaczej niz ci od Javy, poza tym nie sadze zeby
M$ uzyl twojego kodu ani twojej skladni, ale sie na tym zupelnie nie znam,
moze Pawel cos wie. Ale tak ogolnie - jesli chcesz zrobic jezyk ktory bedzie od 
razu uzywany komercyjnie bez pewnej fazy przejsciowej, w ktorej jest jezykiem 
uniwersyteckim, to musisz miec silne przekonanie o swoich wplywach komercyjnych.
Natomiast jezyk uniwersytecki byc moze kiedys moze sie stac komercyjnie uzywany,
chociaz oczywiscie nie jest to pewne (zobaczymy, jak bedzie z OCamlem), no i
pewnie potrzeba na to lat. Moze warto sie zastanowic jaka jest docelowa
grupa uzytkownikow Nemerle na poczatek ? No i prosze, nie pisz ze to beda 
programisci C# w ich pracy, przynajmniej dopoki nie masz zadnej metody dotarcia 
do nich.

- lk




More information about the devel-pl mailing list