Kurczak jest bezpłatny i otwarty aplikacja źródłowa kompilator języka programowania Scheme. Urządzenie jest kompatybilne z systemem operacyjnym Linux / UNIX.
Kurczak produkuje wydajne i przenośne C i obsługuje wiele języków standard obecny schemat (patrz wykaz poniżej).
Zapewnia out-of-the-box wsparcie dla Srfl 0 (dyr-rozszerzenia), Srfl 1 (biblioteki Lista), Srfl 2 (a-let *) Srfl 4 (jednorodne numeryczne typy danych wektor), Srfl 6 (porty Podstawowe smyczkowych ), Srfl 8 (odbiór), Srfl 9 (typu Record), Srfl 10 (#, forma zewnętrzna), Srfl 13 (biblioteka String), Srfl 14 (Zestaw znaków biblioteki), Srfl 16 (case-lambda), Srfl 17 ( uogólnione zestaw!), Srfl 18 (wsparcie Wielowątkowość), Srfl 23 (błąd), Srfl 25 (prymitywy tablicy wielowymiarowej), Srfl 26 (wyciętymi, uroczy), Srfl 28 (Format), Srfl 30 (Blok komentarze), Srfl 37 ( Procesor argumentem programu), Srfl 38 (reprezentacja zewnętrzna dla danych ze wspólną strukturę), Srfl 39 (Parametry), Srfl 40 (biblioteka Stream), Srfl 42 (Chętni listowych), Srfl 43 (biblioteka Vector) i Srfl 55 (wymaga-extension ).
Co nowego w tym wydaniu:
- To wydanie zawiera kilka ważnych poprawek bezpieczeństwa i zderzeniowe po ostatnim szał polowania błędów przez naszych podstawowych hakerów.
Co nowego w wersji 4.8.0.5:
- To wydanie zawiera kilka ważnych poprawek bezpieczeństwa i zderzeniowe po ostatnim szał polowania błędów przez naszych podstawowych hakerów.
Co nowego w wersji 4.8.0.3:
- W tej wersji przede wszystkim naprawia błąd w systemie Linux i Solaris, co powoduje wysokie zużycie procesora podczas oczekiwania na proces I dzieci / O.
Co nowego w wersji 4.8.0.2:
- Tłumacz:
- regresji Fix w, d za procedury, które doprowadziły do błędu sprintf.
- Compiler:
- przepisywanie Fix nowej linii (~~) w printf.
- Czas trwania:
- Pozwól & gt; 4GB sterty na systemach 64-bitowych (# 974).
- Dodano brakujące biblioteki (-lrt) w systemie Solaris dla połączeń nanosleep (# 970).
- System Budowa:
- Użyj testu -f zamiast testu -e w identify.sh udobruchać Solaris.
Co nowego w wersji 4.8.0.1:
- Poprawki zabezpieczeń:
- Użyj POSIX poll () w systemach, gdzie są dostępne. W ten sposób unika wadę konstrukcyjną w select (); obsługuje nie więcej niż deskryptorów FD_SETSIZE.
- Biblioteki podstawowe:
- Poprawiono obsługę w EINTR-procesu czekać i kiedy czyta z portów plików.
- Bugfix dla irregex (# 686). Uwaga:. Choć irregex.scm teraz mówi, wersja 0.9.2, wersja jest rzeczywiście 0.8.3 oraz kilka przeniesiona poprawki
- Naprawiono problem z "make-ścieżkę", że zwracane ścieżki bezwzględnej jeśli podano względną jednego bez argumentu katalogów.
- W systemach 64-bitowych identyfikator funkcja "64bit" jest zarejestrowany.
- Compiler:
- Poprawiono różne błędy w bazie danych typu.
- Poprawki i ulepszenia w Scrutinizer.
- W analizie przepływu przejścia, dopasowanie typu kombinacji "listy" / "list-z" typów stało się bardziej wiarygodne.
- Składnia ekspander:
- definiuje makro-przemianowany rozpocznie ciała (w środku) widoczne moduły późniejszych form. (# 944).
- Czas trwania:
- Naprawiono błędny kod w konwersji argumentu obcych dla "unsigned-integer64" (# 955).
- Narzędzia podstawowe:
- Ścieżka Runtime linkera dla skompilowanych plików wykonywalnych nie został ustawiony prawidłowo na systemach FreeBSD.
- install-Fix rozszerzenie pęknięcia kiedy drugi arg zawiera pary (SRC DST).
- System Budowa:
- Zapobiegaj przebudowa buildversion.scm na każdym make (1) w systemie Windows.
System
Co nowego w wersji 4.8.0:
- Interfejsy i Funktory zostały dodane do układu modułu.
- System typ został przedłużony.
- Duża liczba poprawek i ogólne porządki zostały wykonane w systemie kompilator, czas pracy, podstawowych bibliotek i składnia ekspandera.
Co nowego w wersji 4.6.0:
- Niektóre optymalizacje kompilatora zostały znacznie ulepszone.
- Kilka wbudowanych procedur i procedury alokacji list, wektorów, szybsze i struktur generowania kodu.
- Jednostki Srfl-4 i Srfl-18 zostały mocno oczyszczone i zoptymalizowany.
- Kilka błędów zostało poprawionych w harmonogramie wątku.
- z kurczaka-install został przedłużony, a jego wsparcie dla kompilacji krzyżowej zostały znacząco zmodernizowane.
- System build obsługuje więcej platform i kompilatorów.
- Różne skrypty infrastrukturalne zostały remontowane odzwierciedlać strukturę nowej infrastruktury witryny sieci Web.
Co nowego w wersji 4.4.0:
- system może teraz być zbudowany z LLVM-gcc i / lub "hukiem" (Kompilator LLVM C która nie korzysta z frontend GNU C)
- dodaje nową opcję `-trunk 'do` kurczaka-install ", które budynku i instalacji siły rozwojowej wersji rozszerzeń w połączeniu z` -t lokalne "
- dodaje nową opcję `-deploy 'do` kurczaka-install ", która buduje przedłużenie do stosowania w" Wdrożone "aplikacji (patrz poniżej),
- Dodano opcję `'to` -deploy CSC ", kierowcy kompilator. Dzięki tej opcji `CSC" można zbudować w pełni samodzielne pakiety aplikacji i dwukrotnie klikać aplikacji Macintosh GUI; zobaczyć "Deployment" ręcznego rozdział uzyskać więcej informacji,
- katalog uwagę na -prefix "opcją` kurczaka-install '`może teraz być względna ścieżka.
- usunięte specyficzne GUI library Runtime (`libchicken-gui") z systemu Windows budować
- GUI- i nie-GUI aplikacji teraz używać tej samej biblioteki wykonawcze
- specjalne formularze interfejsu funkcji obcych zostały zastąpione postaci wewnętrznej i składni, aby umożliwić zmianę nazwy i shadowing tych form,
- nowy `-prywatny-repozytorium" opcja w `CSC" kompiluje pliki wykonywalne z rozszerzeniem-ścieżki repozytorium ustawiony na katalogu, z którego został uruchomiony program
- `csc": przestarzałe `-W 'i` -Windows "Opcje dodał` -gui "jako zamiennik niezależny od platformy,
- `wymagają-rozszerzenie '/` użycia "przyjmuje teraz importować-techniczne
- zdefiniowane przez użytkownika przesuwnych Specyfikatory i `set-rozszerzenie-Specifier! zostały usunięte
- `delete-pliku [*] ',` nazwy-pliku', `stworzyć-katalogu ',` kopiowania plików', `file-ruch ',` delete-katalogu' i `change-katalogu 'powrócić argument / docelowy nazwa pliku w przypadku sukcesu,
- dodany procedurę brakuje zmiennej `stan-name" do Srfl 18-jednostki biblioteki (Dzięki Joerg Wittenberger)
- `glob? Funkcja z `regex jednostki" jest przestarzała
- `dodaje procedurę skanowania-input-linie" dla `utils" jednostka biblioteki
- dodaje nową opcję wykonania `- G", który umożliwia wyjście debugowania GC
- rekultywacja nieużywanych symboli w trybie "Symbol-gc" (`-: w ') teraz ma miejsce tylko dla symboli z pustym nieruchomości liście
- na Windows załadunku skompilowanego kodu z [non] biblioteki GUI środowiska wykonawczego nie powiedzie i komunikatu o błędzie, gdy plik wykonywalny ładowania wiąże się z innego systemu wykonawczego,
- w systemie Windows, biblioteki GUI nie zostały poprawnie połączone `CSC"
- Urządzenie POSIX: dodał rozgrywający do modyfikacji plików `czasie"
- banner pokazuje branchname z budowy, chyba że jest to "master",
- "opcja` kurczaka-install '`-no-install jest ignorowany podczas budowania / instalacji zależności
- `kurczaka-odinstaluj" zajmuje glob zamiast wyrażenia regularnego jako argumentu
- Zmień nazwę i porównaj funkcje niskiego poziomu makro- definicji przyjmują teraz arbitralne s-wyrażeń i zmienia nazwy / porównuje je rekurencyjnie
- `numer- & gt; string 'obsługuje ujemne numery z zasadami różnych od 10 poprawnie (dzięki Peter Danenberg)
- usunąć przestarzałe `Konfiguracja instalacji flagą 'i` setup-opisowy flagą "z modułu` setup-api "
- dodaje nową opcję `-repository 'do` kurczaka-install "(Dzięki chrześcijańskiej Kellermann)
- usunąć `kurczaka-setup 'program pośredniczący
- poprawka do `CSC", aby używać odpowiedniego bibliotekę przy ustalaniu ścieżek obciążenia dynamiczne (Dzięki autorstwa Derrella Piper)
- usunięte dokumentacji HTML dystrybucji (zostaną zainstalowane ręczne wiki)
- naprawiono błąd w `powrotnego wywozu", który spowodował składni, aby nie być prawidłowo reeksportowane
- poprzednie przypisania do zmiennej, będąc w głównym, które są oddzielone efekt uboczny wolnych wyrażeń są usuwane
- Okna wersja ustalona z `find-files" (dzięki Jim Ursetto)
- Dokumentacja dla rozszerzeń nie jest zainstalowany automatycznie przez `kurczaka-install 'już
- zmienił wersję binarną od "4" do "5", ponieważ nowe biblioteki uruchomieniowe nie są binarnie zgodne z poprzednimi wydaniami; oznacza to, wszystkie jaja należy ponownie zainstalować, a istniejące programy rekompilacji!
- dodany unboxing kompilator podaje do co powoduje częściowo dramatycznych ulepszeń wydajności dla zmiennoprzecinkowej niebezpieczny intensywnie kodu; unboxing jest włączona na poziomach optymalizacji 4 i 5
- usunięte optymalizacji reszta-argument, wektor, ponieważ może to kolidować z inline (dzięki Sven Hartrumpf)
- Wskaźnik przemianowany `offset 'do` wskaźnik + "i przestarzałe` wskaźnik offsetu "
- Toplevel zadania, które nie mają innych skutków ubocznych mogą być wyeliminowane, jeżeli można wykazać, że wartość nie jest używany (kompilator wygeneruje ostrzeżenie w tym przypadku),
- usunąć przestarzałe -quiet "Kurczak opcja w` '`Program
- usunąć przestarzałe `run-time-makra deklaracja"
- usunąć przestarzałe `-v2 'i` -v3 "opcje w programie` csc "
- usunąć przestarzałe `list-o" funkcji (jest dostępna wyłącznie jako `list-z? teraz)
- usunąć przestarzałe `stat -... 'funkcje w jednostce biblioteki POSIX
- usunąć przestarzałe `dla-każdego-online 'i` dla-każdego-argv linii "procedur w utils urządzenie biblioteki
- dodany `fpinteger? i `fpabs '
- przestarzałe `zdefiniować skompilowaną-składni"
- dodano nowe prymitywów zmiennoprzecinkowych `fpsin ',` fpcos', `fptan ',` fpasin', `fpacos ',` fpatan', `fpatan2 ',` fpexp', `fplog ',` fpexpt' i ` fpsqrt "
- ciężki czyszczenie pływających funkcje matematyczne, które daje dużo lepszą wydajność, zwłaszcza dla skompilowanego kodu w trybie niebezpiecznym,
- wywołaniem `assert" z pojedynczym argumentem pokazuje przetestowany wyraz awarii
- różne poprawki i sprzątanie
Co nowego w wersji 4.2.0:
- kurczaka instalacji został zmodyfikowany, aby sortować zależności bibliotekę w kolejności topologicznej i spróbować alternatywnych serwerów, jeśli serwer jajko reaguje z błędem.
- Stos modułów kodu wykonywalnego w montażu jest domyślnie wyłączona.
- Wiele błędów zostało poprawionych w budowie MinGW.
- Kilka nowych opcji, które zostały dodane do kompilatora i tłumacza.
Co nowego w wersji 3.4.0:
- Kompilator obsługuje teraz procedurę selektywną profilowania.
- Wszystkie procedury związane z plikami zostały przeniesione do nowych plików jednostkowych.
- Były liczne poprawki do Cygwin i MinGW buduje.
- PCRE pakiecie z kurczaka został zaktualizowany.
Komentarze nie znaleziono