I was not proposing that the REPL was to be invoked in any other way
than at present. By "reducing the coupling", I mean arranging
functions and interfaces in a way that prevents a change in one
function affecting the other. Essentially, implementing standard
interfaces between complete functions.
A REPL has multiple parts; a code editing function, the UI to manage
that, an execution environment, and the language being executed. The
interfaces between them should be such that any one of them can be
extended and improved without having an impact on the others.
Minimising coupling is a fundamental design requirement for easy
development and maintenance of a complex system. For example, new
functions in the language shouldn't need changes to the editor.
On 5/30/17, Richard Hainsworth wrote:
> Please do not weaken the link between REPL and perl6 !
>
> The ability to test perl6 snippets very quickly is something I find very
> useful. And to get this I type 'perl6'. Easy to remember.
>
> (I have been following perl6 since the very beginning, and installed
> 'pug'. Since perl6 has been evolving, I always check syntax with REPL
> first. Without it I would be lost as I still find sequences, arrays,
> .slip, .flat, '|' etc incredibly difficult to master.)
>
> 'rakudo' is not perl6, but an implementation of perl6. Even so, it is
> called using 'perl6 [options] '.
>
> To insist, for the sake of purity, that REPL is called by some other
> name than 'perl6' would require for the sake of purity that 'rakudo' is
> called using the command 'rakudo' and not 'perl6'. If a computer guru
> wants to do that on a system that he/she controls, what is stopping them?
>
> However, I would argue it is best, at present and in order to facilitate
> adoption of perl6, that we keep to the current naming scheme and make it
> easy for newcomers to perl6.
>
> Finanalyst
>
>
> On Wednesday, May 31, 2017 12:34 AM, Parrot Raiser wrote:
>> The REPL's almost an independent project.
>>
>> Can it be made modular, to reduce the coupling between it and the
>> language?
>