aboutsummaryrefslogtreecommitdiff
path: root/lib
AgeCommit message (Collapse)Author
2014-12-25Inlining Spawn.kill_if in the one place were it was actually used, thusPierre-Marie Pédrot
removing the need of thread creation in the interface.
2014-12-18Fixed bad newlines in output for std output and emacs.Pierre Courtieu
I added a emacs_logger. Still need to cleanup std_logger.
2014-12-17Ensuring the good invariants of hashcons table generation in the API.Pierre-Marie Pédrot
2014-12-17Future: blocking by defaultEnrico Tassi
This makes queries like Print or Extraction block and not raise the error "the value is not ready". This should make CoqIDE work for every kind of script.
2014-12-17STM: rename and simplify flagsEnrico Tassi
2014-12-17Spawn: fix request of Gc statisticsEnrico Tassi
2014-12-17CThread: use a different type for thread friendly in_channelsEnrico Tassi
2014-12-17Dyn: add API to check of two Dyn.t are ==Enrico Tassi
A Dyn.t boxes a type tag with the original object, so calling == on the Dyn.t does not work, hence this extra API.
2014-12-16msg_info now puts infomsg tag in emacs mode.Pierre Courtieu
Fixes the idtac "string" not appearing in proofgeneral because printined *before* the goal.
2014-12-16Proper thread-safe implementation for Exninfo.Pierre-Marie Pédrot
This is the second part of the Exninfo patch. It introduces dependency in the Thread library in all Coq files.
2014-12-16Getting rid of Exninfo hacks.Pierre-Marie Pédrot
Instead of modifying exceptions to wear additional information, we instead use a dedicated type now. All exception-using functions were modified to support this new type, in particular Future's fix_exn-s and the tactic monad. To solve the problem of enriching exceptions at raise time and recover this data in the try-with handler, we use a global datastructure recording the given piece of data imperatively that we retrieve in the try-with handler. We ensure that such instrumented try-with destroy the data so that there may not be confusion with another exception. To further harden the correction of this structure, we also check for pointer equality with the last raised exception. The global data structure is not thread-safe for now, which is incorrect as the STM uses threads and enriched exceptions. Yet, we splitted the patch in two parts, so that we do not introduce dependencies to the Thread library immediatly. This will allow to revert only the second patch if ever we switch to OCaml-coded lightweight threads.
2014-12-15Changed bullet informations to warning for better display in PG.Pierre Courtieu
Since it displays together with the goal, it is better (for pg and other interfaces probably) that they are in a different message.
2014-12-14Util.un_op -> Option.defaultPierre Boutillier
2014-12-14Fixing bug #3858 and #3817 in one stroke.Pierre-Marie Pédrot
2014-12-12Searchxxx now search also the hypothesis and support goal selector.Pierre Courtieu
Documentation also updated.
2014-12-09Switch the few remaining iso-latin-1 files to utf8Pierre Letouzey
2014-12-01Better commentEnrico Tassi
2014-11-28Future: API for blocking futuresEnrico Tassi
2014-11-27better to always print the thread idEnrico Tassi
2014-11-27async_queries_* merged with async_proofs_*Enrico Tassi
2014-11-27Feedback: API cleaned up, documented and made user extensibleEnrico Tassi
2014-11-19Making map_union a standard function of the ML library.Hugo Herbelin
2014-11-15Reworking the -color flag of coqtop.Pierre-Marie Pédrot
2014-11-15Removing deprecated code handling color in Pp.Pierre-Marie Pédrot
2014-11-15Adding a terminal library.Pierre-Marie Pédrot
2014-11-13Move conjugate_verb_to_be next to cString.plural.Hugo Herbelin
2014-11-10Plug the dynamic tags in the Richpp mechanism.Pierre-Marie Pédrot
2014-11-10Adding a dynamic tag type in Pp.Pierre-Marie Pédrot
2014-11-05lib/RichPp: Rename into Richpp.Yann Régis-Gianas
printing/RichPrinter: Rename into Richprinter. printing/{ppvernac, ppconstr, pptactic}: Rename RichPp into Richpp. printing/Richprinter: Cosmetics.
2014-11-05lib/richPp: Fix a bug related to the compatibility with ocaml 3.12Yann Régis-Gianas
- The previous version of this module was using a feature of the Format module of ocaml 4.01. - Add comments.
2014-11-04lib/Ppconstr: Cosmetics.Regis-Gianas
2014-11-04lib/Ppconstr: Cosmetics.Regis-Gianas
2014-11-04lib/richPp: Cosmetics.Regis-Gianas
2014-11-04lib/Pp.tag: New.Regis-Gianas
A combinator to introduce tags. printing/{Ppconstr, Ppvernac}: Use it.
2014-11-04lib/Xml_parser.parse: Publish and document new interface.Regis-Gianas
2014-11-04lib/Xml_printer.pcdata_to_string: Publish.Regis-Gianas
2014-11-04printing/RichPrinter: New API for rich pretty-printing.Regis-Gianas
printing/Ppannotation: Define the projection of annotations into XML attributes. lib/richPp: Implements valid entities escaping.
2014-11-04lib/Pp.rewrite: New.Regis-Gianas
Allow strings of a pretty-print to be rewritten just before the actual output.
2014-11-04lib/Xml_printer: Handle non-breakable spaces.Regis-Gianas
2014-11-04lib/Xml_parser.parse: Make canonicalization optional. (By default, it is ↵Regis-Gianas
applied, to preserve previous behaviors.
2014-11-04lib/Xml_parser: Cosmetics.Regis-Gianas
2014-11-04lib/Xml_parser: Cosmetics.Regis-Gianas
2014-11-04Xml_lexer: Handle non-breakable spaces.Regis-Gianas
2014-11-04RichPp: New module.Regis-Gianas
It is responsible for turning a tagged pretty-printing into a semi-structured document. clib.mllib: Include RichPp as well as Xml_*. The migration of Xml_* from lib to clib is needed by RichPp depends on these modules.
2014-11-04Xml_datatype.gxml: New type for semi-structured documents.Regis-Gianas
Xml_parser, Xml_printer: Use it.
2014-11-04lib/Pp: Publish combinators for tags opening and closing.Regis-Gianas
2014-11-04lib/Pp.ppcmd_token:Regis-Gianas
Extend this type with Ppcmd_open_tag and Ppcmd_close_tag. lib/Pp.ppcmd_pp_dirs: Handle these tags with a straightforward translation to corresponding Format commands.
2014-11-04lib/Pp: Cosmetics.Regis-Gianas
2014-11-01Add an [Info Level] option to print info traces automatically.Arnaud Spiwack
[Set Info Level n] prints all info traces at level [n]. [Unset Info Level] stops the automatic printing of info traces. The unfolding level [n] can be overloaded by local [Info m tac] calls.
2014-10-31Feedback message: hold extra info to help routingEnrico Tassi
PIDE based GUIs can take advantage of multiple panels and get some feedback routed there. E.g. query panel