History log of /seL4-l4v-master/isabelle/src/Pure/Thy/thy_syntax.scala
Revision Date Author Comments
# 1460ffa6 07-Oct-2019 wenzelm <none@none>

discontinued pointless dump_checkpoint and share_common_data -- superseded by base logic image in Isabelle/MMT;


# ba0828fb 02-Sep-2019 wenzelm <none@none>

clarified signature: prefer operations without position;


# 0bba5a70 28-Aug-2019 wenzelm <none@none>

support for share_common_data after define_command and before actual update: this affects string particles of command tokens;


# 256b15e8 31-Dec-2018 wenzelm <none@none>

tuned;


# 62ac99b4 05-Jun-2018 wenzelm <none@none>

less wasteful consolidation, based on PIDE front-end state and recent changes;


# 284ed3f3 31-May-2018 wenzelm <none@none>

Document.update includes node consolidation / presentation as regular print operation: avoid user operations on protocol thread;
tuned;


# c7f31d19 06-Oct-2017 wenzelm <none@none>

even more robust syntax (amending 122df1fde073);


# c94f07ea 06-Oct-2017 wenzelm <none@none>

clarified node_syntax (amending ae38b8c0fdd9): default to overall_syntax, e.g. relevant for command spans wrt. bad header;


# e1503de1 29-Sep-2017 wenzelm <none@none>

more accurate node_syntax: avoid overall_syntax for PIDE edits;


# d902c6a9 29-Sep-2017 wenzelm <none@none>

tuned signature;


# 92bbf85d 29-Sep-2017 wenzelm <none@none>

more informative loaded_theories: dependencies and syntax;


# 67778691 03-Apr-2017 wenzelm <none@none>

tuned signature;


# 6201d164 02-Apr-2017 wenzelm <none@none>

tuned signature;


# d98c47df 01-Apr-2017 wenzelm <none@none>

tuned signature;


# 5a5af4bd 01-Mar-2017 wenzelm <none@none>

improved performance of remove, e.g. relevant for Theories_Dockable.purge;


# c3c91dc8 09-Jan-2017 wenzelm <none@none>

tuned signature;


# f50f29f1 07-Jan-2017 wenzelm <none@none>

obsolete;


# d3bfc6f1 04-Jan-2017 wenzelm <none@none>

misc tuning and clarification;


# 600b7cdf 13-Sep-2016 wenzelm <none@none>

tuned;


# 8891b58f 02-Aug-2016 wenzelm <none@none>

tuned signature -- prover-independence is presently theoretical;


# d8ffd9f3 02-Aug-2016 wenzelm <none@none>

support 'abbrevs' within theory header;
simplified 'keywords': no abbreviations here;


# efd383aa 24-Mar-2015 wenzelm <none@none>

proper comparison of blobs_info (amending illtyped equality from 86a76300137e) -- avoid redundant update of unchanged commands;


# 9332afeb 15-Mar-2015 wenzelm <none@none>

clarified span position;


# 8d8ba822 15-Mar-2015 wenzelm <none@none>

tuned;


# af2daa90 15-Mar-2015 wenzelm <none@none>

tuned;


# f6c83d3a 15-Mar-2015 wenzelm <none@none>

hybrid use of command blobs: inlined errors and auxiliary files;
static check of theory imports;


# 301d8d2f 14-Mar-2015 wenzelm <none@none>

tuned;


# b338333b 14-Mar-2015 wenzelm <none@none>

clarified positions of theory imports;


# 9d03af49 12-Mar-2015 wenzelm <none@none>

simplified Command.resolve_files in ML, using blobs_index from Scala;
clarified modules;


# 84b44315 12-Mar-2015 wenzelm <none@none>

clarified command content;


# e98b59cf 15-Jan-2015 wenzelm <none@none>

proper update of perspective after implicit edit due to reparse (e.g. ~~/src/HOL/Nat.thy);


# 7908f989 08-Jan-2015 wenzelm <none@none>

tuned;


# 7aa8f74c 03-Dec-2014 wenzelm <none@none>

node-specific keywords, with session base syntax as default;


# 12cd2504 02-Dec-2014 wenzelm <none@none>

node-specific syntax, with base_syntax as default;
clarified Document_Model.init: convergence of editor events towards buffer-specific token marker;


# e0e8cf48 02-May-2015 wenzelm <none@none>

misc tuning, based on warnings by IntelliJ IDEA;


# 9d6e42bd 24-Apr-2015 wenzelm <none@none>

tuned;


# ca46edf2 11-Aug-2014 wenzelm <none@none>

tuned signature;


# fec16c8c 11-Aug-2014 wenzelm <none@none>

separate module Command_Span: mostly syntactic representation;
potentially prover-specific Output_Syntax.parse_spans;


# 7b1c5774 11-Aug-2014 wenzelm <none@none>

tuned signature;


# 568a33fb 11-Aug-2014 wenzelm <none@none>

tuned output, in accordance to transaction name in ML;


# dab841c6 11-Aug-2014 wenzelm <none@none>

more explicit type Span in Scala, according to ML version;


# b573da25 11-Aug-2014 wenzelm <none@none>

clarified modules;


# 9dcf6642 02-Aug-2014 wenzelm <none@none>

more direct access to persistent blobs (see also 8953d4cc060a), avoiding fragile digest lookup from later version (which might have removed unused blobs already);


# e0a003c7 23-Jul-2014 wenzelm <none@none>

more frugal edits;


# a92aafc7 08-Apr-2014 wenzelm <none@none>

simplified Text.Chunk -- eliminated ooddities;
afford strict symbol_index, which is usually empty anyway;


# dbf01c0d 03-Apr-2014 wenzelm <none@none>

clarified Version.syntax -- avoid guessing initial situation;


# 520907c3 03-Apr-2014 wenzelm <none@none>

more abstract Prover.Syntax, as proposed by Carst Tankink;


# c547a7d9 02-Apr-2014 wenzelm <none@none>

tuned signature -- more explicit iterator terminology;


# 4f51da4c 02-Apr-2014 wenzelm <none@none>

more explicit iterator terminology, in accordance to Scala 2.8 library;
clarified Graph.keys_iterator vs. Graph.keys, with subtle change of semantics;
tuned output;


# fadd1ada 31-Mar-2014 wenzelm <none@none>

tuned signature -- more static typing;


# ae2ec935 31-Mar-2014 wenzelm <none@none>

store blob content within document node: aux. files that were once open are made persistent;
proper structural equality for Command.File and Symbol.Index;


# 5f9345c9 29-Mar-2014 wenzelm <none@none>

propagate deps_changed, to resolve missing files without requiring jEdit events (e.g. buffer load/save);
tuned signature;


# 0f039aba 29-Mar-2014 wenzelm <none@none>

tuned signature;


# 41c15472 29-Mar-2014 wenzelm <none@none>

tuned signature;


# 7216e79c 18-Mar-2014 wenzelm <none@none>

clarifed module name;

--HG--
rename : src/Pure/Thy/thy_load.ML => src/Pure/PIDE/resources.ML
rename : src/Pure/Thy/thy_load.scala => src/Pure/PIDE/resources.scala
rename : src/Tools/jEdit/src/jedit_thy_load.scala => src/Tools/jEdit/src/jedit_resources.scala


# 0806ca6d 27-Feb-2014 wenzelm <none@none>

reparse only for actually changed blobs;
tuned signature;


# 220d2361 27-Feb-2014 wenzelm <none@none>

more formal Document.Blobs;
removed junk;


# 4370cc34 27-Feb-2014 wenzelm <none@none>

tuned;


# 5156f281 12-Feb-2014 wenzelm <none@none>

maintain blob edits within history, which is important for Snapshot.convert/revert;


# 972d63f1 11-Feb-2014 wenzelm <none@none>

common Command.Chunk for command source and auxiliary files (static Symbol.Index without actual String content);
more informative type Blob, to allow markup reports;


# 54c7301b 25-Jan-2014 wenzelm <none@none>

propagate update of outer syntax keywords: global propertiesChanged, buffer TokenMarker.markTokens, text area repainting;


# fae088ce 22-Jan-2014 wenzelm <none@none>

clarified approximative syntax of thy_load commands: first name after command keyword, after cleaning wrt. tags and cmts;


# b07919c3 22-Nov-2013 wenzelm <none@none>

clarified node edits sent to prover -- Clear/Blob only required for text edits within editor;


# 2352f225 19-Nov-2013 wenzelm <none@none>

more explicit indication of missing files;


# c7c8c42b 19-Nov-2013 wenzelm <none@none>

clarified Document.Blobs environment vs. actual edits of auxiliary files;
more robust handling of vacuous edits;


# 884c6561 19-Nov-2013 wenzelm <none@none>

maintain blobs within document state: digest + text in ML, digest-only in Scala;
resolve files for command span, based on defined blobs;
tuned;


# 59943509 19-Nov-2013 wenzelm <none@none>

always reparse nodes with thy_load commands, to update inlined files;


# a814f441 19-Nov-2013 wenzelm <none@none>

proper Thy_Load.append of auxiliary file names;
inlined errors;


# 89385d38 18-Nov-2013 wenzelm <none@none>

clarified boundary cases of Document.Node.Name;


# 99202eab 18-Nov-2013 wenzelm <none@none>

inline blobs into command, via SHA1 digest;
broadcast all blobs within edit, without storing the result;


# 3776843e 18-Nov-2013 wenzelm <none@none>

maintain document model for all files, with document view for theory only, and special blob for non-theory files;


# f26b7055 17-Nov-2013 wenzelm <none@none>

explicit indication of thy_load commands;


# 75012157 24-Sep-2013 wenzelm <none@none>

clarified command spans (again, see also 03a2dc9e0624): restrict to proper range to allow Isabelle.command_edit adding material monotonically without destroying the command (e.g. relevant for sendback from sledgehammer);
simplified command padding: always newline, despite lack of indentation;


# e2dc7d8e 07-Aug-2013 wenzelm <none@none>

maintain commands together with index -- avoid redundant reconstruction of full_index;


# dec46f2e 05-Aug-2013 wenzelm <none@none>

commands with overlay remain visible, to avoid loosing printed output;


# c106f8f8 02-Aug-2013 wenzelm <none@none>

maintain overlays within node perspective;
tuned signature;


# b6492ad0 07-Aug-2013 wenzelm <none@none>

tuned signature;


# 0bad3114 30-Jul-2013 wenzelm <none@none>

allow explicit indication of required node: full eval, no prints;


# 0f5e43f5 05-Jul-2013 wenzelm <none@none>

tuned signature -- eliminated pointless type synonym;


# 328dbab6 05-Jul-2013 wenzelm <none@none>

explicit module Document_ID as source of globally unique identifiers across ML/Scala;


# a65ab143 06-Jan-2013 wenzelm <none@none>

export some generally useful operations;


# 48a4815f 13-Dec-2012 wenzelm <none@none>

more careful handling of Dialog_Result, with active area and color feedback;
more formal type Command.Results;
propagate command results to output, which is required to resolve update of dialog state;
clarified Markup.message: retain uninterpreted messages;


# 6e03a43d 22-Sep-2012 wenzelm <none@none>

Thy_Syntax.consolidate_spans is subject to editor_reparse_limit, for improved experience of unbalanced comments etc.;


# 81c0cb97 18-Sep-2012 wenzelm <none@none>

some support for inital command markup;
tuned signature;


# 387756f4 21-Aug-2012 wenzelm <none@none>

more direct cumulation of (sparse) keywords;
discontinued slightly odd patching of Pure keywords;
tuned signature;


# a80f35c3 10-Aug-2012 wenzelm <none@none>

apply all text edits to each node, before determining the resulting doc_edits -- allow several iterations to consolidate spans etc.;
expand Clear edit before sending to prover;
at most one full reparse of each node;


# 33306573 10-Aug-2012 wenzelm <none@none>

clarified undefined, unparsed, unfinished command spans;
common reparse_spans, diff_commands;
some support for consolidate_spans after change of perspective;


# 2d82ca7c 09-Aug-2012 wenzelm <none@none>

refined recover_spans: take visible range into account, reparse and trim results -- to improve editing experience wrt. unbalanced quotations etc.;
tuned signature;


# aefb1f52 09-Aug-2012 wenzelm <none@none>

tuned signature;


# 5a2a66cd 09-Aug-2012 wenzelm <none@none>

more direct Linear_Set.reverse, swapping orientation of the graph;
tuned;


# 26fbb647 07-Aug-2012 wenzelm <none@none>

more structural parsing for minor modes;
tuned signatures;


# 3bb93853 07-Aug-2012 wenzelm <none@none>

simplified Document.Node.Header -- internalized errors;


# 41a5072b 07-Aug-2012 wenzelm <none@none>

tuned signature;


# 79d35a10 24-May-2012 wenzelm <none@none>

reparse descendants after update of imports, e.g. required for 'primrec' (line 17 of "src/HOL/Power.thy");


# 7f819834 06-Apr-2012 wenzelm <none@none>

discontinued Document.update_perspective side-entry (cf. 546adfa8a6fc) -- NB: re-assignment is always necessary due to non-monotonic cancel_execution;


# 33d04ee1 19-Mar-2012 wenzelm <none@none>

clarified command span classification: strict Command.is_command, permissive Command.name;


# 868fd00a 16-Mar-2012 wenzelm <none@none>

more abstract heading level;


# f44cc4aa 15-Mar-2012 wenzelm <none@none>

more explicit header_edits before main text_edits;
handle reparses caused by syntax update;


# f55968fd 15-Mar-2012 wenzelm <none@none>

basic support for outer syntax keywords in theory header;


# 25e48634 15-Mar-2012 wenzelm <none@none>

maintain Version.syntax within document state;
clarified Outer_Syntax.empty vs. Outer_Syntax.init, which pulls in Isabelle_System symbol completions;


# db76df2d 04-Mar-2012 wenzelm <none@none>

clarified command span: include trailing whitespace/comments and thus reduce number of ignored spans with associated transactions and states (factor 2);
simplified signatures;


# 6dcbc016 01-Mar-2012 wenzelm <none@none>

proper update_header;


# b3ab81c5 29-Feb-2012 wenzelm <none@none>

clarified module Thy_Load;
more precise graph based on Document.Node.Deps with actual Node.Name dependencies;


# 6c28c810 26-Feb-2012 wenzelm <none@none>

more abstract class Document.Version;
tuned (NB: Version.nodes is total);


# 9697231a 26-Feb-2012 wenzelm <none@none>

more abstract class Document.Node;


# 4532f034 26-Nov-2011 wenzelm <none@none>

sharing of token source with span source;


# 5bc0b7a6 01-Sep-2011 wenzelm <none@none>

more abstract Document.Node.Name;
tuned signature;


# 5699f5dd 31-Aug-2011 wenzelm <none@none>

maintain name of *the* enclosing node as part of command -- avoid full document traversal;


# 0ad342b9 25-Aug-2011 wenzelm <none@none>

slightly more abstract Command.Perspective;


# d60a8e29 25-Aug-2011 wenzelm <none@none>

slightly more abstract Text.Perspective;


# 84f9d461 24-Aug-2011 wenzelm <none@none>

clarified Document.Node.clear -- retain header (cf. ML version);


# 4c2c4b69 24-Aug-2011 wenzelm <none@none>

update_perspective without actual edits, bypassing the full state assignment protocol;
edit_nodes/Perspective: do not touch_descendants here;
propagate editor scroll events via update_perspective;
misc tuning;


# 2fdecce1 23-Aug-2011 wenzelm <none@none>

tuned signature;


# 1fe53e5f 22-Aug-2011 wenzelm <none@none>

propagate editor perspective through document model;


# 424e1a73 13-Aug-2011 wenzelm <none@none>

provide node header via Scala layer;
clarified node edit Clear: retain header information;
run_command: node info via document model, error handling within transaction;
node names without ".thy" suffix, to coincide with traditional theory loader treatment;


# 7ec8339a 13-Aug-2011 wenzelm <none@none>

clarified node header -- exclude master_dir;


# 7353e66f 13-Aug-2011 wenzelm <none@none>

maintain node header;
misc tuning and clarification;


# 1e28a7e4 12-Aug-2011 wenzelm <none@none>

clarified document model header: master_dir (native wrt. editor, potentially URL) and node_name (full canonical path);


# e18bb4f5 11-Aug-2011 wenzelm <none@none>

uniform treatment of header edits as document edits;


# 6534ebd0 11-Aug-2011 wenzelm <none@none>

explicit datatypes for document node edits;


# 2c08f9cd 09-Jul-2011 wenzelm <none@none>

propagate header changes to prover process;
simplified Document case classes;
Document.State.assignments: indexed by Version_ID;


# 552f87d3 09-Jul-2011 wenzelm <none@none>

some support for blobs (arbitrary text files) within document nodes;


# f57d3f4f 07-Jul-2011 wenzelm <none@none>

explicit Document.Node.Header, with master_dir and thy_name;
imitate ML path operations more closely;


# 6505c43a 04-Jul-2011 wenzelm <none@none>

Document.no_id/new_id as in ML (new_id *could* be session-specific but it isn't right now);


# 74e39d8a 04-Jul-2011 wenzelm <none@none>

explicit class Counter;


# ee6babf7 03-Jul-2011 wenzelm <none@none>

tuned signature;


# b07dbe13 28-Nov-2010 wenzelm <none@none>

tuned signature;


# 71a8edf7 11-Nov-2010 wenzelm <none@none>

unified type Document.Edit;


# c7e4a091 11-Nov-2010 wenzelm <none@none>

replaced Document.Node_Text_Edit by Document.Text_Edit, with treatment of deleted nodes;
Document_Model.pending_edits: more robust treatment of init, including buffer reload event (jEdit 4.3.2 produces malformed remove/insert that lacks the last character);
tuned;


# af833420 10-Nov-2010 wenzelm <none@none>

proper treatment of equal heading level;


# 1f34d8ae 10-Nov-2010 wenzelm <none@none>

some support for nested source structure, based on section headings;


# fc3824b5 30-Aug-2010 wenzelm <none@none>

text_edits/recover_spans: reparse at least until line boundary -- increases chance of recovery for bad ML text, for example;


# 78b325f3 20-Aug-2010 wenzelm <none@none>

tuned signatures;


# ca36f368 15-Aug-2010 wenzelm <none@none>

moved Text_Edit to Text.Edit;
tuned;

--HG--
rename : src/Pure/PIDE/text_edit.scala => src/Pure/PIDE/text.scala


# a239923f 15-Aug-2010 wenzelm <none@none>

renamed create_id to new_id;


# 1aa06c58 15-Aug-2010 wenzelm <none@none>

renamed class Document to Document.Version etc.;
renamed Change.prev to Change.previous, and Change.document to Change.current;
tuned;


# 2945af0a 13-Aug-2010 wenzelm <none@none>

moved Document.text_edits to Thy_Syntax;


# 5de80cbe 14-Aug-2010 wenzelm <none@none>

tuned;


# 85898b46 08-Aug-2010 wenzelm <none@none>

parse_spans: somewhat faster low-level implementation;


# fb33f98a 17-May-2010 wenzelm <none@none>

renamed class Outer_Lex to Token and Token_Kind to Token.Kind;

--HG--
rename : src/Pure/Isar/outer_lex.scala => src/Pure/Isar/token.scala


# e178a2be 15-May-2010 wenzelm <none@none>

renamed Outer_Parse to Parse (in Scala);

--HG--
rename : src/Pure/Isar/outer_parse.scala => src/Pure/Isar/parse.scala


# 29070558 11-Jan-2010 wenzelm <none@none>

Outer_Lex.is_ignored;


# 2217a7f1 10-Jan-2010 wenzelm <none@none>

plain object;


# 246e45d1 05-Jan-2010 wenzelm <none@none>

separate module Thy_Syntax for command span parsing;