As usual, when you discover a problem file an issue.

On Saturday, March 29, 2014, John Myles White <[email protected]>
wrote:

> This is really great news.
>
> I’m finding that the new REPL has trouble on OS X if you give it input
> that starts with a tab. For example, the input "\tP = 1” seems to execute
> an empty expression rather than assign 1 to P.
>
>  — John
>
> On Mar 29, 2014, at 12:59 PM, Stefan Karpinski 
> <[email protected]<javascript:_e(%7B%7D,'cvml','[email protected]');>>
> wrote:
>
> Good news, everyone! The pure-Julia read eval print loop (REPL) that Keno
> Fischer developed and Mike Nolta integrated into base Julia has just been
> merged. There are a number of nice things about changing from the old REPL
> to this new one, in no particular order:
>
>    - The old REPL used the GNU readline library, which we had hacked far
>    beyond what it was ever meant to do. This made modifying it a bit
>    terrifying and thus issues with it tended to get ignored or shelved as
>    "we'll be able to do that in the new REPL".
>    - The new REPL, is pretty clean, simple Julia code. Seriously – terminal
>    support<https://github.com/JuliaLang/julia/blob/master/base/Terminals.jl>,
>    line 
> editing<https://github.com/JuliaLang/julia/blob/master/base/LineEdit.jl>,
>    and the REPL 
> itself<https://github.com/JuliaLang/julia/blob/master/base/REPL.jl>are less 
> than 2000 lines of code –
>    *total*. This works out to a net code reduction of 33233 lines of code
>    (GNU readline is 34640 lines of C), while *gaining* functionality.
>    That has to be a project record.
>    - The new code is infinitely easier to modify, fix and improve, so
>    REPL-replated bugs will probably get fixed lickety split going forward.
>    - The old GNU readline REPL was one of our GPL library dependencies
>    that make the total Julia "product" GPL. We'd like to shed these or make
>    them optional to allow for a non-GPL, MIT-licensed Julia distribution and
>    this is a major step toward that goal.
>    - The new REPL code already has fancy features that you wouldn't even
>    think about doing with readline. Try typing "?" or ";" at the prompt and
>    see the REPL mode change form "julia>" to "help>" or "shell>". Cool, huh?
>    - The new REPL is noticeably snappier than the old one. Combined with
>    the static compilation of julia introduced in 0.3, going from zero to REPL
>    is pretty quick these days.
>    - Since full-fledged line editing functionality is now built into Base
>    Julia, we can use it everywhere without worrying what libraries people have
>    installed. Once we settle on a good API, you can expect that user code that
>    needs to prompt for input will be just as slick as the REPL itself.
>
> There will, of course, be some hitches and road bumps, but now that this
> is merged and everyone using Julia master will be testing it, they should
> get sorted out in short order. Much applause for Keno and Mike for this
> excellent work.
>
> Stefan
>
> <good news everyone.jpg>
>
>
>

Reply via email to