Neat! On Jan 2, 2012, at 4:08 AM, john skaller <skal...@users.sourceforge.net> wrote:
> Felix is about to get HUNDREDS of operators. It will not only be the fastest > and > easiest to use systems and application programming language ... > > .. it will also be the most beautiful. :) > > For an advance look: > > http://felix-lang.org/$/usr/local/lib/felix/felix-latest/lib/std/ctypesets.flx > > What? Set union done using an actual set-union operator?? > > Yes indeed. Almost all the TeX, LaTeX, and AMSTeX operators will soon > be available. > > How's it work? Well, first, we have to add the operators to the grammar: > > syntax texsyms { > sym := "\\curlyeqprec" =># '(nos _1)'; > sym := "\\curlyeqsucc" =># '(nos _1)'; > > x[scomparison_pri]:= x[>scomparison_pri] sym x[>scomparison_pri] =># > "`(ast_apply ,_sr (,_2 (,_1 ,_3)))"; > } > > You can use them like this: > > fun \curlyeqprec (x:int,y:int) => x == y - 1; > println$ 1 \curlyeqprec 2; > > Felix now allows \letters to be an identifier. Due to the nice GLR parsing, > which is context > sensitive, we can define a binary operator, but still use it as the name of a > "fun", since that > isn't part of an expression. > > The display is done by MathJax. The Felix webserver wraps up the symbol > \curlyeqprec > like this: > > \( \curlyeqprec \) > > and we load the MathJax javascript in the document header. Mathjax (online) > does the rest, > and we end up with nicely rendered symbols. You can do this too, with no > grammar changes: > > var \delta = 1; > > and you'll see a Greek delta if you examine it with your browser (using the > Felix webserver!!). > > Seems there are Vim plugins for MathJax too. > > Down the track a little, I'll examine adding support for more sophisticated > constructions, > such as matrices, tables, quantifiers, etc. This requires a bit more thought > to avoid > messing up the existing Felix language too much (but then, no one is using it > yet > except me so it hardly matters). > > The key thing here is that some basic TeX stuff is readily compatible with > ordinary programming. Complex TeX, of course, is entirely unreadable: > we have to ensure the *unrendered* code is still readable and writable. > > > -- > john skaller > skal...@users.sourceforge.net > > > > > -- > You received this message because you are subscribed to the Google Groups > "Felix Language" group. > To post to this group, send email to felix-langu...@googlegroups.com. > To unsubscribe from this group, send email to > felix-language+unsubscr...@googlegroups.com. > For more options, visit this group at > http://groups.google.com/group/felix-language?hl=en. > ------------------------------------------------------------------------------ Ridiculously easy VDI. With Citrix VDI-in-a-Box, you don't need a complex infrastructure or vast IT resources to deliver seamless, secure access to virtual desktops. With this all-in-one solution, easily deploy virtual desktops for less than the cost of PCs and save 60% on VDI infrastructure costs. Try it free! http://p.sf.net/sfu/Citrix-VDIinabox _______________________________________________ Felix-language mailing list Felix-language@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/felix-language