Haskell on iPad? (Scheme and Ocaml are there)

There are (at least) two Scheme interpreters for iPad at the iTunes store: PixieScheme and GambitREPL. Both allow entry of scripts, by typing or pasting. The Gambit community is very busy trying to expand the usefulness of their interpreter. Both have pretty good interfaces. There is also an Ocaml app, but I don't know or want to know Ocaml, and the interface looks very unfriendly. I'd really like to have something like this in Haskell, in the "education" pot, as is the GambitREPL. Hugs is written in C, if I recall correctly. Would it be possible to compile Hugs for the iPad processor, taking out enough system calls to make it acceptable? John Velman

See e.g.
http://www.haskell.org/haskellwiki/IPhone
http://www.haskell.org/haskellwiki/IPhone
https://github.com/dpp/LispHaskellIPad
https://github.com/dpp/LispHaskellIPad
On Sat, Jun 18, 2011 at 12:18 PM, John Velman
There are (at least) two Scheme interpreters for iPad at the iTunes store: PixieScheme and GambitREPL. Both allow entry of scripts, by typing or pasting. The Gambit community is very busy trying to expand the usefulness of their interpreter. Both have pretty good interfaces.
There is also an Ocaml app, but I don't know or want to know Ocaml, and the interface looks very unfriendly.
I'd really like to have something like this in Haskell, in the "education" pot, as is the GambitREPL. Hugs is written in C, if I recall correctly. Would it be possible to compile Hugs for the iPad processor, taking out enough system calls to make it acceptable?
John Velman
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe

Well, I'm not interested in a lisp interpreter written in Haskell. Nor am I (at the moment) interested in writing an iPad app in Haskell. I changed the subject to clarify. What I would like to see is A Haskell Interpreter on the iPad. To further emphasize, I'd like to type in (or paste in) Haskell code and have it executed on the iPad. To reiterate: Something like Hugs, or ghci on the iPad. By the way, there are three Scheme interpreters in the iPad app store. In addition to the two I previously mentioned, there is iScheme. - John Velman On Sat, Jun 18, 2011 at 12:43:45PM -0400, Don Stewart wrote:
See e.g.
http://www.haskell.org/haskellwiki/IPhone
http://www.haskell.org/haskellwiki/IPhone https://github.com/dpp/LispHaskellIPad
https://github.com/dpp/LispHaskellIPad
On Sat, Jun 18, 2011 at 12:18 PM, John Velman
wrote: There are (at least) two Scheme interpreters for iPad at the iTunes store: PixieScheme and GambitREPL. Both allow entry of scripts, by typing or pasting. The Gambit community is very busy trying to expand the usefulness of their interpreter. Both have pretty good interfaces.
There is also an Ocaml app, but I don't know or want to know Ocaml, and the interface looks very unfriendly.
I'd really like to have something like this in Haskell, in the "education" pot, as is the GambitREPL. Hugs is written in C, if I recall correctly. Would it be possible to compile Hugs for the iPad processor, taking out enough system calls to make it acceptable?
John Velman
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe

See also the cloud: http://tryhaskell.org
:-)
On Sat, Jun 18, 2011 at 1:46 PM, John Velman
Well, I'm not interested in a lisp interpreter written in Haskell. Nor am I (at the moment) interested in writing an iPad app in Haskell.
I changed the subject to clarify.
What I would like to see is A Haskell Interpreter on the iPad.
To further emphasize, I'd like to type in (or paste in) Haskell code and have it executed on the iPad. To reiterate: Something like Hugs, or ghci on the iPad.
By the way, there are three Scheme interpreters in the iPad app store. In addition to the two I previously mentioned, there is iScheme.
- John Velman
See e.g.
http://www.haskell.org/haskellwiki/IPhone
http://www.haskell.org/haskellwiki/IPhone https://github.com/dpp/LispHaskellIPad
https://github.com/dpp/LispHaskellIPad
On Sat, Jun 18, 2011 at 12:18 PM, John Velman
wrote: There are (at least) two Scheme interpreters for iPad at the iTunes
store:
PixieScheme and GambitREPL. Both allow entry of scripts, by typing or pasting. The Gambit community is very busy trying to expand the usefulness of their interpreter. Both have pretty good interfaces.
There is also an Ocaml app, but I don't know or want to know Ocaml, and
On Sat, Jun 18, 2011 at 12:43:45PM -0400, Don Stewart wrote: the
interface looks very unfriendly.
I'd really like to have something like this in Haskell, in the "education" pot, as is the GambitREPL. Hugs is written in C, if I recall correctly. Would it be possible to compile Hugs for the iPad processor, taking out enough system calls to make it acceptable?
John Velman
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe

On Sat, Jun 18, 2011 at 10:46 AM, John Velman
To further emphasize, I'd like to type in (or paste in) Haskell code and have it executed on the iPad. To reiterate: Something like Hugs, or ghci on the iPad.
Since the iPhone OS is pretty much OS X for ARM, and GHC apparently now supports cross-compilation, you can compile GHC for iOS. I guess you could cross compile Hugs with GCC. Doing so probably isn't trivial, but it should be straightforward. I bet you could even use Xcode to make a graphical user interface to GHCi.

I suppose you could make a GUI, by why? Given that you'll have to be working on a jailbroken device, anyway, one could just as well use one of the numerous terminal emulators now floating around for jailbroken iOS. That said, the idea of people writing Haskell on phones and iPads and so on makes me just a little bit grinny. On Jun 18, 2011, at 2:17 PM, Alexander Solla wrote:
On Sat, Jun 18, 2011 at 10:46 AM, John Velman
wrote: To further emphasize, I'd like to type in (or paste in) Haskell code and have it executed on the iPad. To reiterate: Something like Hugs, or ghci on the iPad. Since the iPhone OS is pretty much OS X for ARM, and GHC apparently now supports cross-compilation, you can compile GHC for iOS. I guess you could cross compile Hugs with GCC. Doing so probably isn't trivial, but it should be straightforward.
I bet you could even use Xcode to make a graphical user interface to GHCi. _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe

Well, Haskell is fun, isn't it? And that's what iPhone is perfect for: fun.
Back when I had iPod Touch 1G (jailbroken, of course), I used to run Hugs on it. Now I would love to see a Haskell interpreter in the App Store — which, by the way, is possible; as there are Scheme interpreters there, why not Haskell?
Отправлено с iPhone
Jun 18, 2011, в 22:27, Jack Henahan
I suppose you could make a GUI, by why? Given that you'll have to be working on a jailbroken device, anyway, one could just as well use one of the numerous terminal emulators now floating around for jailbroken iOS. That said, the idea of people writing Haskell on phones and iPads and so on makes me just a little bit grinny.
On Jun 18, 2011, at 2:17 PM, Alexander Solla wrote:
On Sat, Jun 18, 2011 at 10:46 AM, John Velman
wrote: To further emphasize, I'd like to type in (or paste in) Haskell code and have it executed on the iPad. To reiterate: Something like Hugs, or ghci on the iPad. Since the iPhone OS is pretty much OS X for ARM, and GHC apparently now supports cross-compilation, you can compile GHC for iOS. I guess you could cross compile Hugs with GCC. Doing so probably isn't trivial, but it should be straightforward.
I bet you could even use Xcode to make a graphical user interface to GHCi. _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe

On Sat, Jun 18, 2011 at 10:44:01PM +0400, MigMit wrote: Well, this is my point. THERE ARE 3 SCHEME INTERPRETERS in the iPad app store. They run on factory iPads, not jailbroken. The GUI for the gambitREPL (Read, Evaluate, Print, Loop) is just like a console. Input a scheme expression. CR. Answer appears, new prompt. In haskell we need to allow for some way to input layout. I don't recall how Hugs handles this, if at all. There are probably 5 or 10 people out there who want to learn functional programming, and they are studying Scheme on their iPads. Or Ocaml. I don't forsee doing production programming ON THE IPAD, but experimenting, testing some functions, and, by the way, learning Haskell. While I'm fantasizing, something like Hugs or ghci with SOE would really be neat. Sorry for shouting :-) John Velman
Well, Haskell is fun, isn't it? And that's what iPhone is perfect for: fun.
Back when I had iPod Touch 1G (jailbroken, of course), I used to run Hugs on it. Now I would love to see a Haskell interpreter in the App Store — which, by the way, is possible; as there are Scheme interpreters there, why not Haskell?
Отправлено с iPhone
Jun 18, 2011, в 22:27, Jack Henahan
написал(а): I suppose you could make a GUI, by why? Given that you'll have to be working on a jailbroken device, anyway, one could just as well use one of the numerous terminal emulators now floating around for jailbroken iOS. That said, the idea of people writing Haskell on phones and iPads and so on makes me just a little bit grinny.
On Jun 18, 2011, at 2:17 PM, Alexander Solla wrote:
On Sat, Jun 18, 2011 at 10:46 AM, John Velman
wrote: To further emphasize, I'd like to type in (or paste in) Haskell code and have it executed on the iPad. To reiterate: Something like Hugs, or ghci on the iPad. Since the iPhone OS is pretty much OS X for ARM, and GHC apparently now supports cross-compilation, you can compile GHC for iOS. I guess you could cross compile Hugs with GCC. Doing so probably isn't trivial, but it should be straightforward.
I bet you could even use Xcode to make a graphical user interface to GHCi. _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe

Oh, Scheme is trivial to implement, when compared with Haskell. So
people write it from scratch as a tutorial exercise.
Haskell isn't trivial to implement from scratch, so instead we port
existing implementations mostly.
That means really, porting Hugs or GHC. And you've been pointed at examples.
I think people are clearly keen for this, now it is a small matter of
programming talent and will.
-- Don
On Sat, Jun 18, 2011 at 3:03 PM, John Velman
On Sat, Jun 18, 2011 at 10:44:01PM +0400, MigMit wrote:
Well, this is my point. THERE ARE 3 SCHEME INTERPRETERS in the iPad app store.
They run on factory iPads, not jailbroken.
The GUI for the gambitREPL (Read, Evaluate, Print, Loop) is just like a console. Input a scheme expression. CR. Answer appears, new prompt.
In haskell we need to allow for some way to input layout. I don't recall how Hugs handles this, if at all.
There are probably 5 or 10 people out there who want to learn functional programming, and they are studying Scheme on their iPads. Or Ocaml.
I don't forsee doing production programming ON THE IPAD, but experimenting, testing some functions, and, by the way, learning Haskell.
While I'm fantasizing, something like Hugs or ghci with SOE would really be neat.
Sorry for shouting :-)
John Velman
Well, Haskell is fun, isn't it? And that's what iPhone is perfect for: fun.
Back when I had iPod Touch 1G (jailbroken, of course), I used to run Hugs on it. Now I would love to see a Haskell interpreter in the App Store -- which, by the way, is possible; as there are Scheme interpreters there, why not Haskell?
Отправлено с iPhone
Jun 18, 2011, в 22:27, Jack Henahan
написал(а): I suppose you could make a GUI, by why? Given that you'll have to be working on a jailbroken device, anyway, one could just as well use one of the numerous terminal emulators now floating around for jailbroken iOS. That said, the idea of people writing Haskell on phones and iPads and so on makes me just a little bit grinny.
On Jun 18, 2011, at 2:17 PM, Alexander Solla wrote:
On Sat, Jun 18, 2011 at 10:46 AM, John Velman
wrote: To further emphasize, I'd like to type in (or paste in) Haskell code and have it executed on the iPad. To reiterate: Something like Hugs, or ghci on the iPad. Since the iPhone OS is pretty much OS X for ARM, and GHC apparently now supports cross-compilation, you can compile GHC for iOS. I guess you could cross compile Hugs with GCC. Doing so probably isn't trivial, but it should be straightforward.
I bet you could even use Xcode to make a graphical user interface to GHCi. _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe

And while we are dreaming, in an iOS port of GHCi (meaning GHCi runs on iOS and doesn't just generate code for it), it would be great to make bytecode persistent — ie, the bytecode that GHCi currently generates internally to interpret programs should be serialized to save and load it. (Note that iOS apps are not allowed to generate binary code, so we wouldn't need the gcc tool chain etc, but just have a stripped down GHCi that generates bytecode only. All pre-compiled libraries that are part of the GHCi app can of course still be native code and load and interact with the interpreter as usual.) Manuel Don Stewart:
Oh, Scheme is trivial to implement, when compared with Haskell. So people write it from scratch as a tutorial exercise.
Haskell isn't trivial to implement from scratch, so instead we port existing implementations mostly.
That means really, porting Hugs or GHC. And you've been pointed at examples.
I think people are clearly keen for this, now it is a small matter of programming talent and will.
-- Don
On Sat, Jun 18, 2011 at 3:03 PM, John Velman
wrote: On Sat, Jun 18, 2011 at 10:44:01PM +0400, MigMit wrote:
Well, this is my point. THERE ARE 3 SCHEME INTERPRETERS in the iPad app store.
They run on factory iPads, not jailbroken.
The GUI for the gambitREPL (Read, Evaluate, Print, Loop) is just like a console. Input a scheme expression. CR. Answer appears, new prompt.
In haskell we need to allow for some way to input layout. I don't recall how Hugs handles this, if at all.
There are probably 5 or 10 people out there who want to learn functional programming, and they are studying Scheme on their iPads. Or Ocaml.
I don't forsee doing production programming ON THE IPAD, but experimenting, testing some functions, and, by the way, learning Haskell.
While I'm fantasizing, something like Hugs or ghci with SOE would really be neat.
Sorry for shouting :-)
John Velman
Well, Haskell is fun, isn't it? And that's what iPhone is perfect for: fun.
Back when I had iPod Touch 1G (jailbroken, of course), I used to run Hugs on it. Now I would love to see a Haskell interpreter in the App Store -- which, by the way, is possible; as there are Scheme interpreters there, why not Haskell?
Отправлено с iPhone
Jun 18, 2011, в 22:27, Jack Henahan
написал(а): I suppose you could make a GUI, by why? Given that you'll have to be working on a jailbroken device, anyway, one could just as well use one of the numerous terminal emulators now floating around for jailbroken iOS. That said, the idea of people writing Haskell on phones and iPads and so on makes me just a little bit grinny.
On Jun 18, 2011, at 2:17 PM, Alexander Solla wrote:
On Sat, Jun 18, 2011 at 10:46 AM, John Velman
wrote: To further emphasize, I'd like to type in (or paste in) Haskell code and have it executed on the iPad. To reiterate: Something like Hugs, or ghci on the iPad. Since the iPhone OS is pretty much OS X for ARM, and GHC apparently now supports cross-compilation, you can compile GHC for iOS. I guess you could cross compile Hugs with GCC. Doing so probably isn't trivial, but it should be straightforward.
I bet you could even use Xcode to make a graphical user interface to GHCi. _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe

Oh, wow, I'd never seen gambitREPL, just the (pretty terrible) iScheme. That's pretty neat. It's probably quite doable, then, but the dev would either be forced into Hugs, or they'd have to implement a more portable GHC. Does such a thing exist already? On Jun 18, 2011, at 3:03 PM, John Velman wrote:
On Sat, Jun 18, 2011 at 10:44:01PM +0400, MigMit wrote:
Well, this is my point. THERE ARE 3 SCHEME INTERPRETERS in the iPad app store.
They run on factory iPads, not jailbroken.
The GUI for the gambitREPL (Read, Evaluate, Print, Loop) is just like a console. Input a scheme expression. CR. Answer appears, new prompt.
In haskell we need to allow for some way to input layout. I don't recall how Hugs handles this, if at all.
There are probably 5 or 10 people out there who want to learn functional programming, and they are studying Scheme on their iPads. Or Ocaml.
I don't forsee doing production programming ON THE IPAD, but experimenting, testing some functions, and, by the way, learning Haskell.
While I'm fantasizing, something like Hugs or ghci with SOE would really be neat.
Sorry for shouting :-)
John Velman
Well, Haskell is fun, isn't it? And that's what iPhone is perfect for: fun.
Back when I had iPod Touch 1G (jailbroken, of course), I used to run Hugs on it. Now I would love to see a Haskell interpreter in the App Store — which, by the way, is possible; as there are Scheme interpreters there, why not Haskell?
Отправлено с iPhone
Jun 18, 2011, в 22:27, Jack Henahan
написал(а): I suppose you could make a GUI, by why? Given that you'll have to be working on a jailbroken device, anyway, one could just as well use one of the numerous terminal emulators now floating around for jailbroken iOS. That said, the idea of people writing Haskell on phones and iPads and so on makes me just a little bit grinny.
On Jun 18, 2011, at 2:17 PM, Alexander Solla wrote:
On Sat, Jun 18, 2011 at 10:46 AM, John Velman
wrote: To further emphasize, I'd like to type in (or paste in) Haskell code and have it executed on the iPad. To reiterate: Something like Hugs, or ghci on the iPad. Since the iPhone OS is pretty much OS X for ARM, and GHC apparently now supports cross-compilation, you can compile GHC for iOS. I guess you could cross compile Hugs with GCC. Doing so probably isn't trivial, but it should be straightforward.
I bet you could even use Xcode to make a graphical user interface to GHCi. _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe

On 18 Jun 2011, at 20:19, Jack Henahan wrote:
but the dev would either be forced into Hugs, or they'd have to implement a more portable GHC. Does such a thing exist already?
Just as a point of interest, the original nhc compiler was original written for an ARM architecture machine (Acorn Archimedes) with 2Mb of memory. Its successor, nhc98, can be bootstrapped from C sources, and always aimed to be as portable as possible. The project is largely unmaintained now, so there is likely to be some bitrot, but it would probably work OK with some effort. Regards, Malcolm

On 6/18/11, Alexander Solla
Since the iPhone OS is pretty much OS X for ARM, and GHC apparently now supports cross-compilation, you can compile GHC for iOS.
Can you provide a link for info? I don't understand how this would be done. Thanks Tom

Well, strictly speaking, GHC only supports self-cross-compilation, id est porting[1], cf. [2]. For more information on cross compilation generally, refer to the wiki page[3]. Does that answer your question, or did you have something else in mind? [1]:http://hackage.haskell.org/trac/ghc/wiki/Building/Porting [2]:http://hackage.haskell.org/trac/ghc/wiki/CrossCompilation [3]:http://en.wikipedia.org/wiki/Cross_compiler On Jun 19, 2011, at 11:44 AM, Tom Murphy wrote:
On 6/18/11, Alexander Solla
wrote: Since the iPhone OS is pretty much OS X for ARM, and GHC apparently now supports cross-compilation, you can compile GHC for iOS.
Can you provide a link for info? I don't understand how this would be done.
Thanks Tom
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe

On Sun, Jun 19, 2011 at 8:44 AM, Tom Murphy
On 6/18/11, Alexander Solla
wrote: Since the iPhone OS is pretty much OS X for ARM, and GHC apparently now supports cross-compilation, you can compile GHC for iOS.
Can you provide a link for info? I don't understand how this would be done.
This was news to me too. I haven't read anything relevant in the GHC manual (but then, I haven't looked for quite a while). I said "apparently", because of the contents of this link: http://www.haskell.org/haskellwiki/IPhone#GHC_as_a_cross_compiler
participants (8)
-
Alexander Solla
-
Don Stewart
-
Jack Henahan
-
John Velman
-
Malcolm Wallace
-
Manuel M T Chakravarty
-
MigMit
-
Tom Murphy