Article View: pl.comp.objects
Article #15710Re: pl.comp.objects FAQ (Frequently Asked Questions and more)
From: Sektor van Skijlen
Date: Sat, 03 Mar 2007 17:46
Date: Sat, 03 Mar 2007 17:46
44 lines
3346 bytes
3346 bytes
Dnia Sat, 03 Mar 2007 17:45:39 +0100, Marcin 'Qrczak' Kowalczyk skrobie: > Dnia 03-03-2007, sob o godzinie 14:03 +0000, Sektor van Skijlen > napisał(a): > > Ale w większości języków niestety > > sprowadzono to do specjalnego traktowania liczb całkowitych (tak jest w > > Smalltalku i w Javie), a co za tym idzie, uniemożliwiono tworzenie własnych > > typów wartościowych. > Nie ma potrzeby ściślejszego wyróżniania typów wartościowych niż > danie im odpowiedniej definicja równości. W języku, który nie kopiuje > niejawnie obiektów (czyli w większości poza C/C++), jedyne potrzebne > wsparcie dla typów wartościowych to definicja standardowej równości > dla tych typów uwzględniająca zawartość, a nie tożsamość obiektu. Możliwe, ale byłbym za tym, żeby po prostu określać, czy porównanie ma porównywać WARTOŚĆ, czy TOŻSAMOŚĆ. Tyle, myślę, by wystarczyło. Chodzi jednak o to, żeby w języku była możliwa do opisania konstrukcja typu: String s; ... s += "\n"; Ja wiem, że Javowy string to wszystko ma (przydałoby mu się tylko, żeby operator porównania też porównywał po wartości), ale co mnie to obchodzi - String jest w Javie dokładnie tak samo typem wbudowanym, jak int. Jako wsparcie dla typów wartościowych, takie pełne, wyobrażałbym sobie: - możliwość określenia, jak wykonuje się porównanie wartości (i opisać to jako standardowe porównanie dla tego typu) - możliwość określenia, co ma się dziać z obiektem, który chcemy zmodyfikować w miejscu za pośrednictwem takiego uchwytu, jaki akurat jest dostępny w języku (w Javie tym uchwytem jest referencja, więc i tak musi się wtedy odbyć wyprodukowanie nowego obiektu i zgubienie starego) -- // _ ___ Michal "Sektor" Malecki <sektor(whirl)kis.p.lodz.pl> \\ L_ |/ `| /^\ ,() <ethouris(O)gmail.com> // \_ |\ \/ \_/ /\ C++ bez cholesterolu: http://www.intercon.pl/~sektor/cbx "Java is answer for a question that has never been stated"
Technical Details
Message-ID:
<escc9e$2h2$1@kujawiak.man.lodz.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!newsfeed.gazeta.pl!newsfeed.pionier.net.pl!news.man.lodz.pl!not-for-mailReferences:
<pl-comp-objects-faq-1-1166202604@ict.pwr.wroc.pl> <pan.2007.02.22.19.13.55.43827@go2.pl> <erl5gf$bi2$1@inews.gazeta.pl> <eru75v$dmm$1@bandai.magma-net.pl> <ervbaa$am4$1@inews.gazeta.pl> <pan.2007.02.26.21.12.45.8078@go2.pl> <es6b6u$2ls$1@kujawiak.man.lodz.pl> <esbllu$51n$1@bandai.magma-net.pl> <esbv7t$7o$1@kujawiak.man.lodz.pl> <1172940339.25227.28.camel@qrnik>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!newsfeed.gazeta.pl!newsfeed.pionier.net.pl!news.man.lodz.pl!not-for-mail
From: Sektor van Skijlen <ethouris@guess.if.gmail.com.is.valid.or.invalid>
Newsgroups: pl.comp.objects
Subject: Re: pl.comp.objects FAQ (Frequently Asked Questions and more)
Date: Sat, 3 Mar 2007 17:46:22 +0000 (UTC)
Organization: LODMAN - Metropolitan Area Network in LODZ, Poland
Lines: 44
Sender: Michal Malecki <sektor@zly.kis.p.lodz.pl>
Message-ID: <escc9e$2h2$1@kujawiak.man.lodz.pl>
References: <pl-comp-objects-faq-1-1166202604@ict.pwr.wroc.pl> <pan.2007.02.22.19.13.55.43827@go2.pl> <erl5gf$bi2$1@inews.gazeta.pl> <eru75v$dmm$1@bandai.magma-net.pl> <ervbaa$am4$1@inews.gazeta.pl> <pan.2007.02.26.21.12.45.8078@go2.pl> <es6b6u$2ls$1@kujawiak.man.lodz.pl> <esbllu$51n$1@bandai.magma-net.pl> <esbv7t$7o$1@kujawiak.man.lodz.pl> <1172940339.25227.28.camel@qrnik>
NNTP-Posting-Host: zly.kis.p.lodz.pl
Mime-Version: 1.0
X-Trace: kujawiak.man.lodz.pl 1172943982 2594 212.191.89.2 (3 Mar 2007 17:46:22 GMT)
X-Complaints-To: abuse@man.lodz.pl
NNTP-Posting-Date: Sat, 3 Mar 2007 17:46:22 +0000 (UTC)
User-Agent: tin/1.6.2-20030910 ("Pabbay") (UNIX) (SunOS/5.9 (sun4u))
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit