That's interesting, but the interactive code does not match the
compiled code (and, testing, the implementation does not allow one to
be substituted for the other).

See http://en.wikipedia.org/wiki/Formal_language for a writeup that
looks reasonably close to what I was taught "language" means in the
context of computer science.  If that's too indirect, let me know and
I will try to restate it more concisely.

Thanks,

-- 
Raul

On Sat, Jun 23, 2012 at 2:48 AM, Aai <[email protected]> wrote:
> Ok, here's function 'doeiets' defined in a source file and the same
> function defined interactively:
>
> source ===============
>
> doiets = do
>   let f x = x + 1
>   print $ f 2
>
> ======================
>
> Used in ghci:
>
> *Main> doiets
> 3
>
> note: 'let' is used in a source file
>
>
> Start a new ghci session. Define the same interactively:
>
> Prelude> :{
> Prelude| let { doiets = do
> Prelude|         let f x = x + 1
> Prelude|         print $ f 2
> Prelude|     }
> Prelude| :}
> (0.02 secs, 3837824 bytes)
> Prelude> doiets
> 3
>
>
> It's just an example showing you the use of 'let' in both situations.
>
>
> FYI: most people use ghci mainly for interactively developing Haskell
> programs.
>
>
>
>
> On 22-06-12 14:57, Raul Miller wrote:
>> On Fri, Jun 22, 2012 at 5:10 AM, Aai <[email protected]> wrote:
>>>> Note also the word "Compiling" here.
>>> ... and the phrase '.... interpreted' after that. Compiled here is
>>> 'compiled to byte code'.
>> That was a hint, not definitive.
>>
>>> Using 'let' is not a matter of being confronted with a different
>>> language, but a matter of defining a function interactively. But ok, I
>>> advice you to read about 'ghci' being part of the package GHC
>>> (containing the compiler ghc and the interpreter ghci):
>> The issue I am trying to raise is that you cannot use the same
>> language for compiled programs that you can use for interactive
>> programs.  I am not sure if you are trying to claim that these
>> languages are equivalent, or if you simply are not aware that that is
>> what I am saying or if something else is going on.
>>
>> They do have a sub-language in common, but that common sub-language
>> only admits single line statements which are not declarations.
>>
>> Meanwhile, sharing an implementation does not make languages
>> equivalent.  Otherwise C and C++ would be the same language.
>>
>
> --
> Met vriendelijke groet,
> @@i = Arie Groeneveld
>
>
>
> ----------------------------------------------------------------------
> For information about J forums see http://www.jsoftware.com/forums.htm
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to