summaryrefslogtreecommitdiffstats
path: root/genvim.txr
Commit message (Collapse)AuthorAgeFilesLines
...
* * genvim.txr: Handle variable definition without embedded intern.Kaz Kylheku2014-03-081-0/+3
|
* * eval.c (apply_intrinsic, lazy_mapcar): Changed linkage to external.Kaz Kylheku2014-03-061-3/+1
| | | | | | | | | | | | | * eval.h (apply_intrinsic, lazy_mapcar): Declarations added. * stream.c (open_files, open_file_star): New functions. (stream_init): Registered new functions as intrinsics. * txr.1: Documented open-files and open-files*. Added to make-catenated-stream documentation. * genvim.txr: Replace bunch of code with open-files. * txr.vim: Regenerated.
* * parser.l: Allowing ^ to be a quote character, and adjusting definitionKaz Kylheku2014-03-031-2/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | of identifiers to rule this out from being the first character of a symbol which has no prefix. Recognize the ^ character as a token in the NESTED state. * lib.c (obj_print, obj_pprint): Render sys:qquote as ^. * parser.y (choose_quote): Function removed. (n_expr): Recognize '^' as quasiquote. Removed all the "smart quote" hacks that try to make quote behave as quote or quasiquote, or try to cancel out unquotes and quotes. * tests/009/json.txr: Fixed to ^ quasiquote. * tests/010/reghash.txr: Likewise. * tests/011/macros-2.txr: Likewise. * tests/011/mandel.txr: Likewise. * tests/011/special-1.txr: Likewise. * txr.1: Updated docs. * genvim.txr: Revamped definitions for txr_ident and txl_ident so that unqualified identifiers cannot start with # or ^, but ones with @ or : in front can start with these characters. * txr.vim: Regenerated.
* * genvim.txr: Skip lines that contain system_package.Kaz Kylheku2014-03-021-8/+13
| | | | * txr.vim: Regenerated.
* Change in the design of how special variables work, to fix the brokenKaz Kylheku2014-02-281-9/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | re-binding. C code now has to go through the dynamic environment lookup to access things like *random-state*, or *stdout*. As part of this, I'm moving some intrinsic variable and function initializations out of eval.c and into their respective modules. Macros are are used to make global variables look like ordinary C variables. This is very similar to the errno trick in POSIX threads implementations. * eval.c (looup_var, lookup_var_l): Restructured to eliminate silly goto, the cobjp handling is gone. (reg_fun, reg_var): Internal function becomes external. reg_var registers a simple cons cell binding now, without any C pointer tricks to real C global variables. (c_var_mark): Static function removed. (c_var_ops): Static struct removed. (eval_init): Numerous initializations for streams, syslog, rand, signals and others moved to their respective modules. The new symbol variables user_package_s, keyword_package_s and system_package_s are interned here, and the variables are created in a special way. * eval.h (reg_var, reg_fun): Declared. * gc.c (prot1): Added assert that the loc pointer isn't null. This happened, and blew up during garbage collection. * lib.c (system_package, keyword_package, user_package): Variables removed these become macros. (system_package_var, keyword_package_var, user_package_var): New global variables. (system_package_s, keyword_package_s, user_package_s): New symbol globals. (get_user_package, get_system_package, get_keyword_package): New functions. (obj_init): Protect new variables. Initialization order of modules tweaked: the modules sig_init, stream_init, and rand_init are moved after eval_init because they register variables. * lib.h (keyword_package, system_pckage, user_package): Variables turned into macros. (system_package_var, keyword_package_var, user_package_var): Declared. (system_package_s, keyword_package_s, user_package_s): Declared. (get_user_package, get_system_package, get_keyword_package): Declared. * rand.c (struct random_state): Renamed to struct rand_state to avoid clash with new random_state macro. (random_state): Global variable removed. (random_state_s): New symbol global. (make_state, rand32, make_random_state, random_fixnum, random): Follow rename of struct random_state.
* * eval.c (delay_s): Global variable removed.Kaz Kylheku2014-02-271-0/+2
| | | | | | | | (eval_init): Initialiation of delay_s removed. Symbol now interned in reg_mac call for registering me_delay . * genvim.txr: Updated to recognize a reg_mac call with intern.
* * genvim.txr: Updated with regard to how operators are registered inKaz Kylheku2014-02-271-3/+3
| | | | | | | in eval_init. Also, scans reg_mac registrations now. * txr.vim: Refreshed. The previously missed "delay" operator is now listed, thanks to reg_mac.
* * parser.l: Support octal and binary numbers.Kaz Kylheku2014-02-241-0/+2
| | | | | | * txr.1: Documented. * genvim.txr, txr.vim: Updated.
* * genvim.txr, txr.vim: Updated.Kaz Kylheku2014-02-241-1/+1
|
* * genvim.txr, txr.vim: Updated.Kaz Kylheku2014-02-221-1/+1
|
* * genvim.txr: Support floating-point constants.Kaz Kylheku2014-01-301-5/+7
| | | | | | Do not color embedded decimal integers in symbols as integers. * txr.vim: Regenerated.
* * eval.c (meta_meta_p, meta_meta_strip): New static functions.Kaz Kylheku2014-01-281-5/+7
| | | | | | | | | | | | | | | (transform_op): Recognize compounded metas, and strip one level off. (eval_init): Intern sys:expand function so we have access to the form expander from TXR Lisp. * lib.c (obj_print, obj_pprint): Fix: wasn't rendering metanumbers. * parser.y (list): Support @ in front of anything. If it's an atom, treat it similarly to a metasymbol or metanumber. * txr.1: Documented meta-meta arguments in nested op. * genvim.txr, txr.vim: Support coloring for compounded meta syntax.
* * txr.vim, genvim.txr: There can now be whitespace in TXR LispKaz Kylheku2014-01-271-2/+2
| | | | like @ (a b c) and @ [1 2 3].
* Version 76txr-76Kaz Kylheku2014-01-231-0/+1
|
* * genvim.txr: Add forgotten until and last keywords.Kaz Kylheku2014-01-061-1/+3
| | | | * txr.vim: Regenerated.
* * genvim.txr: Missing catch and finally keywords added.Kaz Kylheku2013-12-021-1/+1
| | | | * txr.vim: Regenerated.
* * genvim.txr: Missing highlighting for hex integers.Kaz Kylheku2013-11-241-0/+1
| | | | * txr.vim: Updated.
* * genvim.txr: Change how the hard-coded symbols (end, and, or) areKaz Kylheku2013-11-221-1/+1
| | | | | | * added, and also add the missing rep to these. * txr.vim: Regenerated.
* * genvim.txr: Handle symbols whose C names end with _star_s,Kaz Kylheku2013-11-051-0/+4
| | | | | | and also ones with underscores. * txr.vim: Updated.
* * genvim.txr: Include syntactic directives which aren't extracted fromKaz Kylheku2013-10-271-0/+1
| | | | | | sources because actions aren't registered for them. * txr.vim: Regenerated.
* * genvim.txr: Split long lines of keywords.Kaz Kylheku2013-10-231-3/+2
| | | | * txr.vim: Updated.
* * genvim.txr: New file.Kaz Kylheku2013-10-231-0/+135