Niedawno uczestniczyłem w kursie internetowym na temat języków programowania, w którym zaprezentowano między innymi zamknięcia. Zapisuję dwa przykłady zainspirowane tym kursem, aby podać kontekst, zanim zadam pytanie. Pierwszym przykładem jest funkcja SML, która tworzy listę liczb od 1 do x, gdzie x jest parametrem funkcji: fun countup_from1 (x: int) = …
W obecnej formie to pytanie nie pasuje do naszego formatu pytań i odpowiedzi. Oczekujemy, że odpowiedzi poparte będą faktami, referencjami lub wiedzą fachową, ale to pytanie prawdopodobnie będzie wymagało debaty, argumentów, ankiet lub rozszerzonej dyskusji. Jeśli uważasz, że to pytanie można poprawić i ewentualnie ponownie otworzyć, odwiedź centrum pomocy w …
Jestem początkującym uczącym się języka Java. W Javie każdy plik źródłowy musi zawierać klasę publiczną, a ten plik źródłowy powinien mieć taką samą nazwę jak ta klasa publiczna. Ponadto żaden plik źródłowy nie może zawierać dwóch klas publicznych. Dlaczego to ograniczenie?
W obecnej formie to pytanie nie pasuje do naszego formatu pytań i odpowiedzi. Oczekujemy, że odpowiedzi poparte będą faktami, referencjami lub wiedzą fachową, ale to pytanie prawdopodobnie będzie wymagało debaty, argumentów, ankiet lub rozszerzonej dyskusji. Jeśli uważasz, że to pytanie można poprawić i ewentualnie ponownie otworzyć, odwiedź centrum pomocy w …
KISS („zachowaj to proste, głupie” lub „utrzymaj to proste głupie”, patrz np. Tutaj ) jest ważną zasadą w tworzeniu oprogramowania, nawet jeśli najwyraźniej wywodzi się z inżynierii. Cytowanie z artykułu w Wikipedii: Najlepszym przykładem tej zasady jest historia, w której Johnson przekazał zespołowi inżynierów garść narzędzi, z wyzwaniem, że projektowany …
Właśnie przeczytałem, że czas wykonania operacji dołączania dla List(: +) rośnie liniowo wraz z rozmiarem pliku List. Dołączanie do Listwydaje się dość powszechną operacją. Dlaczego idiomatycznym sposobem na to jest przygotowanie komponentów, a następnie odwrócenie listy? Nie może to być również błąd projektu, ponieważ implementacja może zostać zmieniona w dowolnym …
Zamknięte . To pytanie jest oparte na opiniach . Obecnie nie przyjmuje odpowiedzi. Chcesz poprawić to pytanie? Zaktualizuj pytanie, aby można było na nie odpowiedzieć faktami i cytatami, edytując ten post . Zamknięte 4 lata temu . Dlaczego typ opcji Scala nie jest nazywany Może, tak jak w przypadku Haskell? …
Nie jestem facetem w C ++, ale muszę o tym myśleć. Dlaczego wielokrotne dziedziczenie jest możliwe w C ++, ale nie w C #? (Wiem o problemie z diamentem , ale nie o to tu pytam). Jak C ++ rozwiązuje niejednoznaczność identycznych podpisów metod odziedziczonych z wielu klas podstawowych? I …
Edycja: mój język pozwala na wielokrotne dziedziczenie, w przeciwieństwie do Java. Zacząłem projektować i rozwijać własny język programowania do celów edukacyjnych, rekreacyjnych i potencjalnie użytecznych. Na początku postanowiłem oprzeć ją na Javie. Sugerowało to, że cały kod zostałby napisany w postaci klas, a kod kompiluje się w klasy, które są …
Dużo myślałem o projektowaniu języka i o tym, jakie elementy byłyby konieczne dla „idealnego” języka programowania, a studiowanie Google Go skłoniło mnie do zakwestionowania wielu powszechnie znanej wiedzy. W szczególności Go wydaje się mieć wszystkie interesujące korzyści z programowania obiektowego bez faktycznej struktury języka zorientowanego obiektowo. Nie ma klas, tylko …
Zamknięte . To pytanie jest oparte na opiniach . Obecnie nie przyjmuje odpowiedzi. Chcesz poprawić to pytanie? Zaktualizuj pytanie, aby można było na nie odpowiedzieć faktami i cytatami, edytując ten post . Zamknięte 6 lat temu . Większość języków programowania ma pewne decyzje projektowe, które wpływają na ich użycie i …
Pochodzę z języka C # i Java, jestem przyzwyczajony do tego, że moje listy są jednorodne i to ma dla mnie sens. Kiedy zacząłem zbierać Lisp, zauważyłem, że listy mogą być niejednorodne. Kiedy zacząłem przekręcać ze dynamicsłowem kluczowym w C #, zauważyłem, że od C # 4.0 mogą istnieć również …
Programuję w wielu językach, takich jak Java, Ruby, Haskell i Python. Muszę przełączać się między wieloma językami dziennie z powodu różnych projektów, nad którymi pracuję. Problem polega na tym, że często zapominam pisać selfjako pierwszy parametr w definicjach funkcji w Pythonie tak samo, jak w przypadku wywoływania metod na tym …
Interesującą cechą języka C w porównaniu z innymi językami jest to, że wiele jego typów danych opiera się na wielkości słowa architektury docelowej, a nie jest określanych w kategoriach bezwzględnych. Chociaż pozwala to na użycie języka do pisania kodu na maszynach, które mogą mieć trudności z niektórymi typami, bardzo utrudnia …
Zamknięte . To pytanie jest oparte na opiniach . Obecnie nie przyjmuje odpowiedzi. Chcesz poprawić to pytanie? Zaktualizuj pytanie, aby można było na nie odpowiedzieć faktami i cytatami, edytując ten post . Zamknięte 6 lat temu . Dziesiąta zasada Greenspun (właściwie jedyna reguła) mówi, że: Any sufficiently complicated C or …
Używamy plików cookie i innych technologii śledzenia w celu poprawy komfortu przeglądania naszej witryny, aby wyświetlać spersonalizowane treści i ukierunkowane reklamy, analizować ruch w naszej witrynie, i zrozumieć, skąd pochodzą nasi goście.
Kontynuując, wyrażasz zgodę na korzystanie z plików cookie i innych technologii śledzenia oraz potwierdzasz, że masz co najmniej 16 lat lub zgodę rodzica lub opiekuna.