0votos

Palabra al reves en Haskell

por josejuan hace 2 años

inputBox "" ↪ inputBox ∘ reverse

Escribir una palabra y que salga al revés.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
inputBox "" ↪ inputBox ∘ reverse 
 
 
 
 
 
 
-- NOTA: no se si existe algún módulo por ahí que exporte la función "inputBox" 
-- tal y como existe en otros lenguajes (ej. en C# se usa Microsoft.VisualBasic). 
-- Pongo aquí una posible implementación de dicha función. 
 
import Control.Monad 
import Data.IORef 
import Graphics.UI.Gtk 
import qualified Graphics.UI.Gtk.Gdk.Events as E 
 
inputBox ∷ 𝐒 → IO 𝐒 
inputBox x = do 
  s ← newIORef x 
  initGUI 
  t ← entryNew 
  t `entrySetText` x 
  w ← windowNew 
  w `set` [containerChild := t] 
  w `onDestroy` mainQuit 
  t `onKeyRelease` (λe → 
    when (E.eventKeyVal e ≡ 65293) (entryGetText t ↪ writeIORef s » widgetDestroy w) » η 𝑇) 
  widgetShowAll w 
  mainGUI 
  readIORef s 

Comenta la solución

Tienes que identificarte para poder publicar tu comentario.