Pytania otagowane jako language-design

Pytania dotyczące projektowania i struktury języków programowania.

9
Dlaczego kompilatory samoobsługowe są uważane za rytuał przejścia dla nowych języków?
Słyszałem już w wielu miejscach, w których ludzie oczekują, że języki będą korzystać z kompilatora samoobsługowego lub przynajmniej będą go używać, aby zasłużyć na szacunek. Jestem ciekawy, dlaczego tak jest. Kompilator wydaje się być bardzo znaczącym oprogramowaniem do napisania i wyobrażam sobie, że nie wszystkie języki są odpowiednie do ich …

5
Dlaczego studiowanie interpretera seplenienia w seplenienie jest tak ważne?
Widziałem wiele programów CS i sugestii dotyczących uczenia się dla nowych programistów, którzy wzywają początkującego programistę do studiowania interpretera lisp, który jest specjalnie napisany w lisp. Wszystkie te witryny mówią coś podobnego do „to intelektualna rewelacja”, „jest to oświecenie, które powinien mieć każdy poważny programista” lub „pokazuje relacje sprzętowe / …

3
Dlaczego w Kotlin nie ma statycznego słowa kluczowego?
Kotlin jest znany przede wszystkim jako drop-in zamiennik Javy, ale pozbywa się dobrze znanego konstruktu Java: staticsłowa kluczowego. Zamiast tego ta funkcjonalność na poziomie klasy jest oferowana głównie przez obiekty towarzyszące. Co jest złego w metodach statycznych i polach, dla których obiekty towarzyszące stanowią lepszą alternatywę dla? Jestem zdezorientowany uzasadnieniem …


9
Dlaczego większość „dobrze znanych” języków imperatywnych / OO umożliwia niekontrolowany dostęp do typów, które mogą reprezentować wartość „nic”?
Czytałem o (nie) wygodzie posiadania nullzamiast (na przykład) Maybe. Po przeczytaniu tego artykułu , jestem przekonany, że byłoby znacznie lepiej do użytkuMaybe (lub coś podobnego). Jestem jednak zaskoczony, widząc, że wszystkie „dobrze znane” imperatywne lub obiektowe języki programowania nadal używają null(co pozwala na niekontrolowany dostęp do typów, które mogą reprezentować …

16
Piszę o składni języka. Czy istnieje język, w którym parametry są umieszczone w nazwie metody?
w JavaScript: function getTopCustomersOfTheYear(howManyCustomers, whichYear) { // Some code here. } getTopCustomersOfTheYear(50, 2010); w C #: public List<Customer> GetTopCustomersOfTheYear(int howManyCustomers, int whichYear) { // Some code here } List<Customer> customers = GetTopCustomersOfTheYear(50, 2010); w PHP: public function getTopCustomersOfTheYear($howManyCustomers, $whichYear) { // Some code here } $customers = getTopCustomersOfTheYear(50, 2010); Czy …

30
Jaka jest największa wada projektowa, z jaką się spotkałeś w jakimkolwiek języku programowania? [Zamknięte]
Wszystkie języki programowania mają swoje wady projektowe po prostu dlatego, że żaden język nie może być idealny, tak jak większość (wszystkich?) Innych rzeczy. Poza tym, który błąd projektowy w języku programowania najbardziej cię irytuje w twojej historii jako programisty? Zauważ, że jeśli język jest „zły” tylko dlatego, że nie jest …

4
Jak języki programowania definiują funkcje?
Jak języki programowania definiują i zapisują funkcje / metody? Tworzę zinterpretowany język programowania w Ruby i próbuję wymyślić, jak zaimplementować deklarację funkcji. Moim pierwszym pomysłem jest zapisanie treści deklaracji na mapie. Na przykład, gdybym zrobił coś takiego def a() { callSomething(); x += 5; } Następnie dodałbym wpis do mojej …


16
Co można zrobić z językami programowania, aby uniknąć pułapek zmiennoprzecinkowych?
Nieporozumienie arytmetyki zmiennoprzecinkowej i jej niedociągnięć jest główną przyczyną zaskoczenia i zamieszania w programowaniu (rozważ liczbę pytań na temat przepełnienia stosu dotyczących „nieprawidłowego dodawania liczb”). Biorąc pod uwagę, że wielu programistów jeszcze nie zrozumiało jego konsekwencji, może wprowadzić wiele subtelnych błędów (szczególnie w oprogramowaniu finansowym). Co mogą zrobić języki programowania, …

6
Jakie są zastrzeżenia związane z wdrażaniem podstawowych typów (takich jak int) jako klas?
Przy projektowaniu i wykonawczym języka programowania obiektowego, w jakimś jednym punkcie musi dokonać wyboru o realizacji podstawowych typów (jak int, float, doublelub odpowiedników) jako klasy lub czegoś innego. Wyraźnie, języków z rodziny C mają tendencję nie je zdefiniować jako klasy (Java ma specjalnych typów prymitywnych, C # wdraża je jako …

10
Język programowania, w którym każde wywołanie funkcji / blok odbywa się w osobnym wątku? [Zamknięte]
Zamknięte . To pytanie musi być bardziej skoncentrowane . Obecnie nie przyjmuje odpowiedzi. Chcesz poprawić to pytanie? Zaktualizuj pytanie, aby skupiało się tylko na jednym problemie, edytując ten post . Zamknięte 2 lata temu . Obecnie tworzę język programowania dla zabawy, w którym chodzi o to, że każde wywołanie funkcji …


9
Czy są jakieś języki programowania zgodne z minimalistycznym podejściem programistycznym?
Uważam, że kiedy języki są traktowane tak samo jak oprogramowanie komercyjne, zawsze istnieje potrzeba dodawania nowych funkcji w celu uzasadnienia nowych wydań. Czy istnieją lub są języki, w których wersja 1.0 jest wersją ostateczną? Oczywiście poprawki błędów są z tego wyłączone, ale zestaw funkcji zawsze pozostaje taki sam? W ten …

5
Co zrobić, jeśli nienawidzę plików nagłówkowych C ++?
Zawsze miałem wątpliwości co do plików nagłówkowych. Są tak dziwne: dołączasz plik .h, który nie zawiera .cpp, ale .cpp też jest jakoś skompilowany. Ostatnio dołączyłem do projektu zespołowego i oczywiście używane są zarówno pliki .h, jak i .cpp. Rozumiem, że jest to bardzo ważne, ale nie mogę żyć z kopiowaniem …

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.