Mailing list for all users of the OCaml language and system.
 help / color / mirror / Atom feed
From: clement capel <clement.capel@free.fr>
To: caml-list@inria.fr
Subject: Re: [Caml-list] Dynamically evaluating OCaml code
Date: Wed, 7 Apr 2004 23:25:30 +0000	[thread overview]
Message-ID: <200404072325.30198.clement.capel@free.fr> (raw)
In-Reply-To: <200404072306.15109.clement.capel@free.fr>


 Try this simple example:


 
 Toploop.initialize_toplevel_env();;

 let eval txt = let lb = (Lexing.from_string txt) in
   let phr = !Toploop.parse_toplevel_phrase lb in
   Toploop.execute_phrase true Format.std_formatter phr;;

 eval "let add1 x = x +1;;";;
 eval "add1 2;;";;

(compile with toplevellib.cma)

 But be careful, it can break the typing system.
 if you use the Toploop module in the 
"string parameter" of the function eval or if you
evaluate it in the toplevel. 
But it seems there's a guard with the new version (3.07+2).



 Hope it will help you.

 Regards,

                       Clément

> Le Mercredi 7 Avril 2004 18:47, John Goerzen a écrit :
> > Hello,
> >
> > I am moving from Python to OCaml and one of the things I miss is
> > Python's eval() call.  It takes a string representing a bit of Python
> > source code, evaluates it, and returns the result.  I would like to be
> > able to do similar things with OCaml.
> >
> > I have observed that /usr/bin/ocaml, the interactive top-level, is
> > itself written in OCaml, which suggests that this should be possible.
> > Although I have tried to study the source for this, it seems extremely
> > complex and I can't figure out a way to do the simple evaluation
> > described above.
> >
> > Can anyone help me out here?
> >
> > Thanks,
> > John
> >
> >
> > -------------------
> > To unsubscribe, mail caml-list-request@inria.fr Archives:
> > http://caml.inria.fr Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ:
> > http://caml.inria.fr/FAQ/ Beginner's list:
> > http://groups.yahoo.com/group/ocaml_beginners

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


  parent reply	other threads:[~2004-04-07 21:25 UTC|newest]

Thread overview: 147+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-04-07 18:47 John Goerzen
2004-04-07 20:37 ` Samuel Mimram
2004-04-07 21:05 ` Basile Starynkevitch
2002-01-04  0:43   ` Issac Trotts
2004-04-08  0:58     ` Dustin Sallings
2004-04-08  6:24     ` Brian Hurt
2004-04-08  7:47       ` Oleg Trott
2004-04-08  8:04         ` Ville-Pertti Keinonen
2004-04-08  7:52       ` Ville-Pertti Keinonen
2004-04-08  8:15         ` Dustin Sallings
2004-04-08 13:37       ` John Goerzen
2004-04-08 14:56         ` Markus Mottl
2004-04-08 15:14           ` Richard Jones
2004-04-08 15:26             ` Markus Mottl
2004-04-08 15:39               ` Jon Harrop
2004-04-08 15:58               ` John Goerzen
2004-04-08 17:59                 ` Jean-Marc EBER
2004-04-08 18:20                   ` Kenneth Knowles
2004-04-08 18:39                     ` John Goerzen
2004-04-08 19:21                       ` Kenneth Knowles
2004-04-08 18:29                   ` John Goerzen
2004-04-13  6:15                 ` Trevor Andrade
2004-04-13 11:17                   ` Gerd Stolpmann
2004-04-13 13:16                     ` skaller
2004-04-13 14:24                     ` John Goerzen
2004-04-13 14:53                       ` Gerd Stolpmann
2004-04-13 18:07                         ` [Caml-list] Re: GODI (was: Dynamically evaluating OCaml code) Christophe TROESTLER
2004-04-13 19:30                           ` Gerd Stolpmann
2004-04-13 19:57                             ` [Caml-list] Re: GODI Christophe TROESTLER
2004-04-13 20:45                               ` Brandon J. Van Every
2004-04-14  0:34                                 ` Gerd Stolpmann
2004-04-14  5:35                                   ` Brandon J. Van Every
2004-04-14  6:00                                     ` james woodyatt
2004-04-14  6:21                                       ` Kenneth Knowles
2004-04-14  9:17                                         ` james woodyatt
2004-04-14  6:16                                     ` Kenneth Knowles
2004-04-14  7:38                                       ` [Caml-list] BSD vs. GPL Brandon J. Van Every
2004-04-14  8:32                                         ` Matt Gushee
2004-04-14  8:48                                           ` Wolfgang Müller
2004-04-14  8:40                                         ` Kenneth Knowles
2004-04-14 17:14                                           ` David Brown
2004-04-14 18:50                                             ` [Caml-list] benefit of package management Brandon J. Van Every
2004-04-15  6:46                                             ` [Caml-list] BSD vs. GPL Kenneth Knowles
2004-04-14 15:05                                         ` John Goerzen
2004-04-15  0:20                                           ` skaller
2004-04-15  2:36                                             ` John Goerzen
2004-04-15 17:48                                             ` Benjamin Geer
2004-04-14 10:50                                   ` [Caml-list] Re: GODI skaller
2004-04-14  1:04                               ` John Goerzen
2004-04-14  2:52                               ` Jacques GARRIGUE
2004-04-14  5:14                                 ` [Caml-list] Re: GODI vs. Ocamake Brandon J. Van Every
2004-04-14  6:53                                   ` Jacques GARRIGUE
2004-04-14  6:57                                   ` Kenneth Knowles
     [not found]                                     ` <407D2075.2070104@jollys.org>
2004-04-14 16:14                                       ` ocamlconf on Cygwin (Re: [Caml-list] Re: GODI vs. Ocamake) Kenneth Knowles
2004-04-14  7:50                                   ` [Caml-list] Re: GODI vs. Ocamake Nicolas Cannasse
2004-04-14 11:54                                     ` skaller
2004-04-14 16:49                                       ` Kenneth Knowles
2004-04-15  1:05                                         ` skaller
2004-04-15  6:34                                           ` Kenneth Knowles
2004-04-15  7:33                                             ` skaller
2004-04-15 16:00                                               ` Kenneth Knowles
     [not found]                                                 ` <1082049025.20677.1250.camel@pelican>
2004-04-15 17:38                                                   ` Kenneth Knowles
2004-04-15 23:58                                                     ` Brandon J. Van Every
2004-04-16  1:16                                                       ` Kenneth Knowles
2004-04-16  6:31                                                         ` [Caml-list] build tools - good vs. fast, both cheap Brandon J. Van Every
2004-04-16 14:38                                                           ` skaller
2004-04-16 15:16                                                             ` Richard Jones
2004-04-16 16:12                                                               ` Kenneth Knowles
2004-04-16 16:17                                                                 ` Richard Jones
2004-04-16 16:39                                                                   ` Kenneth Knowles
2004-04-17  6:01                                                                     ` Jacques GARRIGUE
2004-04-17  6:25                                                                       ` Kenneth Knowles
2004-04-17  9:19                                                                       ` Alain.Frisch
2004-04-16 21:53                                                             ` William Lovas
2004-04-17  2:30                                                               ` skaller
2004-04-17  5:47                                                               ` Blair Zajac
2004-04-17  6:28                                                                 ` Kenneth Knowles
2004-04-16 14:52                                                           ` skaller
2004-04-16 16:06                                                           ` Kenneth Knowles
2004-04-16 18:10                                                             ` skaller
2004-04-16 18:43                                                               ` Kenneth Knowles
2004-04-16 19:55                                                                 ` skaller
2004-04-16 18:46                                                               ` John Goerzen
2004-04-16 18:55                                                                 ` Kenneth Knowles
2004-04-16 20:22                                                                 ` skaller
2004-04-16 19:39                                                               ` Richard Jones
2004-04-16 21:00                                                                 ` skaller
2004-04-15  9:47                                           ` [Caml-list] Re: GODI vs. Ocamake Markus Mottl
2004-04-15 16:38                                             ` skaller
2004-04-16  1:30                                               ` Richard Cole
2004-04-16 14:11                                                 ` skaller
2004-04-15  1:25                                         ` skaller
2004-04-14 12:19                                     ` skaller
2004-04-14 18:21                                       ` [Caml-list] recompiling bytecode Brandon J. Van Every
2004-04-14 18:54                                         ` John Goerzen
2004-04-14 20:26                                           ` Issac Trotts
2004-04-14 20:35                                         ` Basile Starynkevitch
2004-04-15  1:39                                         ` skaller
2004-04-14 13:03                                   ` [Caml-list] Re: GODI vs. Ocamake Gerd Stolpmann
2004-04-14 12:45                                 ` [Caml-list] Re: GODI Gerd Stolpmann
2004-04-13 15:03                       ` [Caml-list] Dynamically evaluating OCaml code Matt Gushee
2004-04-13 17:24                     ` Benjamin Geer
2004-04-09  5:40             ` skaller
2004-04-08 15:30           ` John Goerzen
2004-04-08 16:08             ` Xavier Leroy
2004-04-08 16:44             ` Markus Mottl
2004-04-08 17:35               ` John Goerzen
2004-04-09  6:41                 ` skaller
2004-04-08 19:44               ` Issac Trotts
2004-04-09  6:23               ` skaller
2004-04-09  6:33                 ` Remi Vanicat
2004-04-09  7:37                   ` skaller
2004-04-09  8:17                     ` Remi Vanicat
2004-04-09  8:35                     ` OT: licences (was Re: [Caml-list] Dynamically evaluating OCaml code) Benjamin Geer
2004-04-10 10:10                       ` skaller
2004-04-09  8:36                 ` [Caml-list] Dynamically evaluating OCaml code Markus Mottl
2004-04-10  9:59                   ` skaller
2004-04-09  9:09                 ` james woodyatt
2004-04-08 16:44             ` Bruno.Verlyck
2004-04-08 17:55               ` John Goerzen
2004-04-09 13:44                 ` Bruno.Verlyck
2004-04-08 15:31           ` Jon Harrop
2004-04-08 19:52             ` Issac Trotts
2004-04-25 23:07               ` [Caml-list] Is GCaml Dead Again? Greg K
2004-04-08 15:04         ` [Caml-list] Dynamically evaluating OCaml code Fernando Alegre
2004-04-08 15:22         ` Jean-Marc EBER
2004-04-09  6:44           ` Pierre Weis
2004-04-08 15:23         ` Kenneth Knowles
2004-04-08 15:38           ` John Goerzen
2004-04-08 22:31             ` Markus Mottl
2004-04-08 18:28           ` Nicolas Cannasse
2004-04-08 17:15         ` Brian Hurt
2004-04-08 18:32           ` Gerd Stolpmann
2004-04-09  5:04         ` skaller
2004-04-08 17:25       ` Issac Trotts
2004-04-08  7:10     ` Basile Starynkevitch
2004-04-08 17:09       ` Issac Trotts
2004-04-07 21:32 ` Vitaly Lugovsky
2004-04-07 20:39   ` John Goerzen
2004-04-07 21:47     ` Vitaly Lugovsky
2004-04-07 22:14     ` Benjamin Geer
2004-04-08  7:49     ` skaller
2004-04-08 19:11     ` Christophe TROESTLER
     [not found] ` <200404072306.15109.clement.capel@free.fr>
2004-04-07 23:25   ` clement capel [this message]
2004-04-13 21:25     ` [Caml-list] eval for OCaml Brock
2004-04-08  0:17 ` [Caml-list] Dynamically evaluating OCaml code Jon Harrop
2004-04-08 17:31 ` Walid Taha

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=200404072325.30198.clement.capel@free.fr \
    --to=clement.capel@free.fr \
    --cc=caml-list@inria.fr \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox