From d9450c209d39af85ce15d91694b451f551e9bfd7 Mon Sep 17 00:00:00 2001 From: Stefan Karpinski Date: Wed, 6 Nov 2013 09:16:20 -0800 Subject: [PATCH] NEWS: various copy and punctuation improvements. --- NEWS.md | 123 ++++++++++++++++++++++++++++++-------------------------- 1 file changed, 65 insertions(+), 58 deletions(-) diff --git a/NEWS.md b/NEWS.md index 777d85f481415..602a1d3661fd9 100644 --- a/NEWS.md +++ b/NEWS.md @@ -50,6 +50,14 @@ New language features * A semicolon is now allowed after an `import` or `using` statement ([#4130]). + * In an interactive session (REPL), you can use `;cmd` to run `cmd` via an interactive + shell. For example: + + julia> ;ls + CONTRIBUTING.md Makefile VERSION deps/ julia@ ui/ + DISTRIBUTING.md NEWS.md Windows.inc doc/ src/ usr/ + LICENSE.md README.md base/ etc/ test/ + Make.inc README.windows.md contrib/ examples/ tmp/ New library functions --------------------- @@ -57,7 +65,7 @@ New library functions * Sampling profiler ([#2597]). * Functions for examining stages of the compiler's output: - `code_lowered`, `code_typed`, `code_llvm`, and `code_native` + `code_lowered`, `code_typed`, `code_llvm`, and `code_native`. * Multimedia I/O API (display, writemime, etcetera) ([#3932]). @@ -69,8 +77,7 @@ New library functions * `methodswith` shows all methods with an argument of specific type. - * `mapslices` provides a general way to perform operations on slices of arrays - ([#2204]) + * `mapslices` provides a general way to perform operations on slices of arrays ([#2204]). * `Collections.PriorityQueue` type and `Collections.heap` functions ([#2920]). @@ -78,17 +85,17 @@ New library functions * `erfinv` and `erfcinv` functions ([#2987]). - * `varm`, `stdm` ([#2265]) + * `varm`, `stdm` ([#2265]). - * `logdet` ([#3070]) + * `logdet` ([#3070]). - * names for C-compatible types: `Cchar`, `Clong`, etc. ([#2370]). + * Names for C-compatible types: `Cchar`, `Clong`, etc. ([#2370]). - * `cglobal` to access global variables ([#1815]) + * `cglobal` to access global variables ([#1815]). - * `unsafe_pointer_to_objref` ([#2468]) and `pointer_from_objref` ([#2515]) + * `unsafe_pointer_to_objref` ([#2468]) and `pointer_from_objref` ([#2515]). - * `readandwrite` for external processes + * `readandwrite` for external processes. * I/O functions `readbytes` and `readbytes!` ([#3878]). @@ -103,96 +110,95 @@ New library functions * `interrupt` for interrupting worker processes ([#3819]). - * `timedwait` does a polled wait for an event till a specified timeout. + * `timedwait` does a polled wait for an event till a specified timeout. - * `Condition` type with `wait` and `notify` functions for synchronizing `Task`s + * `Condition` type with `wait` and `notify` functions for `Task` synchronization. - * `versioninfo` provides detailed version information + * `versioninfo` provides detailed version information, especially useful when + reporting and diagnosing bugs. - * `detach` for running child processes in a separate process group + * `detach` for running child processes in a separate process group. - * `setenv` for passing environment variables to child processes + * `setenv` for passing environment variables to child processes. * `ifelse` eagerly-evaluated conditional function, especially useful for - vectorized conditionals + vectorized conditionals. Library improvements -------------------- * `isequal` now returns `false` for numbers of different types. - This makes it easier to define hash functions for new numeric types. + This makes it much easier to define hashing for new numeric types. Uses of `Dict` with numeric keys might need to change to account for this increased strictness. - * Rewritten `Pkg` system for much greater robustness in case of failures, - versioned dependencies, and many other enhancements - (see the new [packages chapter] in the manual). + * A redesigned and rewritten `Pkg` system is much more robust in case of problems. + The the basic interface to adding and removing package requirements remains the + same, but great deal of additional functionality for developing packages in-place + was added. See the new [packages chapter] in the manual for further details. - * Sort API updates ([#3665]). + * Sorting API updates ([#3665]) – see [sorting functions]. - * `delete!(d::Dict, key)` has now been split - into separate `pop!` and `delete!` variants: - the former returns the deleted value and behaves like the old `delete!`, - and the latter returns `d` - and does not throw an exception if `key` was not found ([#3439]). + * The `delete!(d::Dict, key)` function has been split into separate `pop!` + and `delete!` functions ([#3439]). + `pop!(d,key)` removes `key` from `d` and returns the value that was associated with it; + it throws an exception if `d` does not contain `key`. + `delete!(d,key)` removes `key` from `d` and succeeds regardless of whether `d` + contained `key` or not, returning `d` itself in either case. - * Linear-algebra factorization routines (`lu`, `chol`, etc.) - now return `Factorization` objects (and `lud`, `chold`, etc. are deprecated) - ([#2212]). + * Linear-algebra factorization routines (`lu`, `chol`, etc.) now return + `Factorization` objects (and `lud`, `chold`, etc. are deprecated; [#2212]). - * A number of improvements to sparse matrix capabilities - and sparse linear algebra. + * A number of improvements to sparse matrix capabilities and sparse linear algebra. * More linear algebra fixes and eigensolver hooks for `SymTridiagonal`, `Tridiagonal` and `Bidiagonal` matrix types - ([#2606], [#2608], [#2609], [#2611], [#2678], [#2713], [#2720], [#2725]) + ([#2606], [#2608], [#2609], [#2611], [#2678], [#2713], [#2720], [#2725]). - * Change `integer_valued`, `real_valued`, and so on - to `isinteger`, `isreal`, and so on, - and semantics of the later are now value-based rather than type-based, - unlike Matlab/Octave ([#3071]). - `isbool` and `iscomplex` are eliminated - in favor of general `iseltype` function. + * Change `integer_valued`, `real_valued`, and so on to `isinteger`, `isreal`, + and so on, and semantics of the later are now value-based rather than type-based, + unlike Matlab/Octave ([#3071]). `isbool` and `iscomplex` are eliminated in favor + of a general `iseltype` function. * Transitive comparison of floats with rationals ([#3102]). - * Fast prime generation with `primes` and primality testing with `isprime`. + * Fast prime generation with `primes` and fast primality testing with `isprime`. - * `sum` and `cumsum` now use pairwise summation for better accuracy ([#4039]). + * `sum` and `cumsum` now use [pairwise summation] for better accuracy ([#4039]). - * Dot operators (`.+`, `.*` etc.) - now broadcast singleton dimensions of array arguments. + * Dot operators (`.+`, `.*` etc.) now broadcast singleton dimensions of array arguments. This behavior can be applied to any function using `broadcast(f, ...)`. - * `combinations`, `permutations`, and `partitions` - now return iterators instead of a task, + * `combinations`, `permutations`, and `partitions` now return iterators instead of a task, and `integer_partitions` has been renamed to `partitions` ([#3989], [#4055]). - * `isreadable`/`iswritable` functions added for more IO types ([#3872]). + * `isreadable`/`iswritable` methods added for more IO types ([#3872]). * Much faster and improved `readdlm` and `writedlm` ([#3350], [#3468], [#3483]). - * Faster `matchall` ([#3719]), and a number of string and regex improvements. + * Faster `matchall` ([#3719]), and various string and regex improvements. * Documentation of advanced linear algebra features ([#2807]). * Support optional RTLD flags in `dlopen` ([#2380]). + * `pmap` now works with any iterable collection. + * Options in `pmap` for retrying or ignoring failed tasks. - Also `pmap` now works with any iterable. - * New `sinpi(x)` and `cospi(x)` functions - to compute sine and cosine of `pi*x` more accurately ([#4112]). + * New `sinpi(x)` and `cospi(x)` functions to compute sine and cosine of `pi*x` + more accurately ([#4112]). * New implementations of elementary complex functions `sqrt`, `log`, `asin`, `acos`, `atan`, `tanh`, `asinh`, `acosh`, `atanh` - which have correct branch cuts ([#2891]). + with correct branch cuts ([#2891]). - * Improved behavior of `SubArray` ([#4412], [#4284], [#4044], [#3697], [#3790], [#3148], [#2844], [#2644] and various other fixes). + * Improved behavior of `SubArray` ([#4412], [#4284], [#4044], [#3697], [#3790], + [#3148], [#2844], [#2644] and various other fixes). * New convenience functions in graphics API. - * Improved backtraces on Windows and OSX. + * Improved backtraces on Windows and OS X. Deprecated or removed --------------------- @@ -213,7 +219,7 @@ Deprecated or removed * `logb` and `ilogb` renamed to `exponent` ([#2516]). - * `quote_string` renamed to `repr`. + * `quote_string` became a method of `repr`. * `safe_char`, `check_ascii`, and `check_utf8` replaced by `is_valid_char`, `is_valid_ascii`, and `is_valid_utf8`, respectively. @@ -240,10 +246,9 @@ Deprecated or removed * `diagmm` and `diagmm!` replaced by `scale` and `scale!` ([#2916]). - * `unsafe_ref` and `unsafe_assign` - replaced by `unsafe_load` and `unsafe_store!`. + * `unsafe_ref` and `unsafe_assign` replaced by `unsafe_load` and `unsafe_store!`. - * `add_each!` and `del_each!` replaced by `union!` and `setdiff!` + * `add_each!` and `del_each!` replaced by `union!` and `setdiff!`. * `isdenormal` renamed to `issubnormal` ([#3105]). @@ -258,12 +263,12 @@ Deprecated or removed * `add` and `add!` for `Set` replaced by `push!`. - * Deprecated `ls` function in favor of `readdir` or `; ls` in the REPL. + * `ls` function deprecated in favor of `readdir` or `;ls` in the REPL. * `start_timer` now expects arguments in units of seconds, not milliseconds. - * Shell redirection operators `|`, `>`, and `<` - were eliminated in favor of a new operator `|>` ([#3523]). + * Shell redirection operators `|`, `>`, and `<` eliminated in favor of a new + operator `|>` ([#3523]). * `amap` is deprecated in favor of new `mapslices` functionality. @@ -359,3 +364,5 @@ Too numerous to mention. [#4412]: https://github.com/JuliaLang/julia/issues/4412 [packages chapter]: http://docs.julialang.org/en/latest/manual/packages/ +[sorting functions]: http://docs.julialang.org/en/latest/stdlib/sort/ +[pairwise summation]: https://en.wikipedia.org/wiki/Pairwise_summation