* The compiler/demod language integrates demodularization into the
program rather than an external tool. Using the language approach
cooperates with other Racket tools and allows demodularization to be
used on libraries. Additionally, demodularization handles submodules
and can prune definitions, significantly shrinking the size of some
programs.
* The contract-in form enables contracts to be specified in an
importing module.
* The #%declare form supports the #:flatten-requires and
#:unlimited-compile keywords
* Identifiers such as case-λ, match-λ and λ are equivalent to
their Latin-alphabet equivalents (case-lambda, match-lambda, and
lambda) in more contexts, including uses of match.
* The hash-filter function allows the use of a predicate to select a
sub-table of a hash table.
* The module browser can perform filtering on submodules.
* The raco test command-line form respects the
current-test-invocation-directory parameter, and shows well-formed
module paths in its output.
* Racket CS allows the use of in-memory boot files.
* The raco/testing collection brings together a variety of testing-
related functions and forms.
OBS-URL: https://build.opensuse.org/package/show/devel:languages:misc/racket?expand=0&rev=89
- add mzdyn3m.o which gets built on s390x (possibly replacing mzdyn3m.lo)
This time I even have a successful build :-) (see openSUSE_Factory_zSystems)
As a side note: there is a very long time in the build without any output:
[ 13s] cc -O2 -DZUO_LIB_PATH='"'".././zuo/lib"'"' -o bin/zuo ./zuo/zuo.c
[ 9616s] bin/zuo . all MAKE="/usr/bin/make"
Depending on the load on the mainframe, this time can even be longer, and causes the build to abort because there's no output for a very long time.
From the openSUSE_Factory / s390x build log (which seems to have a shorter timeout of "only" 90 minutes):
[ 12s] cc -O2 -DZUO_LIB_PATH='"'".././zuo/lib"'"' -o bin/zuo ./zuo/zuo.c
[ 5417s] qemu-system-s390x: terminating on signal 15 from pid 99276 (<unknown process>)
If there is a way to make that cc call faster and/or more verbose, please do it ;-)
OBS-URL: https://build.opensuse.org/request/show/1169536
OBS-URL: https://build.opensuse.org/package/show/devel:languages:misc/racket?expand=0&rev=86
- Update to 8.13.
- Changes from 8.13:
* The racket/treelist and racket/mutable-treelist libraries provide
list-like containers that support many operations in effectively
constant time, including appending and extracting sub-lists without
mutating the given list. Treelists are implemented as RRB Vectors,
invented by Stucki, Riompf, Ureche, and Bagwell.
* The hash-filter-keys and hash-filter-values functions allow users
to filter hashes using a predicate on either keys or values.
* The vector-extend and vector*-extend functions provide a way to
pre-populate the prefix of a newly allocated vector using the
elements of an existing vector.
* Command-line raco setup, package update, and package installation
use terminal control (when available) to show what they are working
on more compactly and with a progress bar.
* Racket v8.13 uses Unicode 15.1 for character and string
operations.
* Machine-specific cross-module optimization allows improved support for
static generation of foreign-function bindings.
* The scribble/acmart language uses v2.01, which avoids errors
concerning the hyperref package in some latex installations.
- Changes from 8.12:
* The "Die Macht der Abstraktion" language levels are no longer
present, replaced by the "Schreibe dein Programm" language levels
OBS-URL: https://build.opensuse.org/request/show/1176761
OBS-URL: https://build.opensuse.org/package/show/devel:languages:misc/racket?expand=0&rev=84
- Update to 8.2:
* Racket CS improved the performance of large-integer arithmetic.
* Racket has improved support for layered and tethered installation.
* Racket CS supports nonatomic allocation via ffi/unsafe.
* Cross-compilation works fully with the raco cross tool, which
is distributed separately as the “raco-cross” package.
* DrRacket has performance improvements when editing files with
picts containing large bitmaps.
* Typed Racket more consistently refines field types of
non-polymorphic structs.
* Printing of values is unified across the teaching language
implementations and the stepper.
- Rebase racket-doc.patch
OBS-URL: https://build.opensuse.org/request/show/924663
OBS-URL: https://build.opensuse.org/package/show/devel:languages:misc/racket?expand=0&rev=51
- Update to 8.1:
* DrRacket tabs can be dragged, and have new close buttons.
* Racket CS supports cross-compilation using raco exe.
* Racket CS supports Android on 32-bit and 64-bit ARM processors.
* The database library supports running queries in OS threads.
* Check-Syntax arrows correctly identify the definition site of
identifiers with contracts.
* Racket CS performance has improved for structure predicates
and accessors
* Racket CS is faster at multiplying extremely large numbers
and dividing large integers.
* Racket CS allows callbacks to raise exceptions if they are
annotated with #:callback-exns?.
* New ephemeron hash tables simplify the implementation of
tables where keys can refer to values.
* Typed Racket supports for/foldr.
* The stepper works for #lang htdp/*sl.
* Struct signatures work for the ASL teaching language.
- Update to 8.0:
* Racket CS is the default implementation
(except for ppc64le and s390x)
* Racket CS has better parallel garbage collection, a 10%–30% reduction
in the size of generated code, and various targeted optimizations.
* A rewrite of the test-engine package allows the #lang versions of
teaching languages to produce linked test-failure messages.
* The release comes with a new mark-up DSL for composing text to appear
in the REPL (simple-tree-text-markup).
* Redex has an added define-overriding-judgment form and improved
error source location reporting.
* Windows scrolling speed reflects the system preference.
* The db package uses the utf8mb4 charset for MySQL connections.
- Rebase dont-strip.patch
OBS-URL: https://build.opensuse.org/request/show/896608
OBS-URL: https://build.opensuse.org/package/show/devel:languages:misc/racket?expand=0&rev=47
- Update to 7.8:
* Racket CS supports AArch32 and AArch64, including places and
futures.
* Racket CS supports an "incremental" garbage-collection mode that can
eliminate long GC pauses for some applications, such as animations and
interactive games.
* Racket CS unboxes local floating-point arithmetic
* DrRacket's spell check features lower overhead and has fewer bugs.
* Web Server performance under high concurrency is better by up to an
order of magnitude
* The math library includes the Kronecker product.
* The new prop:struct-field-info property provides static information
about field names.
* In `plot`, the legend font and the plot font can be controlled
independently, and error-bars have an `#:invert?` option.
* Racket CS uses a new HAMT implementation, dramatically reducing the memory
required for immutable hash tables.
* GC callbacks are reliably called on major collections in Racket CS.
Also, Garbage collection is 10-20% faster.
* DrRacket can recover much more quickly from errors involving large
stack traces.
* Call-with-current-language allows more reliable tests for language
level code.
* Use of the Cairo library can be multi-threaded.
* DrRacket's scrolling has been made more responsive.
* DrRacket's dark mode support is improved for Mac OS and Unix.
* The Web Server provides fine-grained control over various aspects of
handling client connections (timeouts, buffer sizes, maximum header
counts, etc.) via the new "safety limits" construct.
* The Web Server's handling of large files is improved, and its
latency for long-running request handlers is reduced.
OBS-URL: https://build.opensuse.org/request/show/828522
OBS-URL: https://build.opensuse.org/package/show/devel:languages:misc/racket?expand=0&rev=44