Commit Graph

202 Commits

Author SHA1 Message Date
Stefano Sanfilippo b5d524c295 Add Types.h to %code require in parser definition. 2014-11-24 23:56:54 +01:00
Stefano Sanfilippo aa122fd7a0 Add auxiliary macro _() 2014-11-24 23:53:26 +01:00
Stefano Sanfilippo af934dfea8 Formatting 2014-11-24 21:19:13 +01:00
Stefano Sanfilippo 2f42a60849 Prototypes and header cleanups for parser. 2014-11-24 21:18:59 +01:00
Stefano Sanfilippo adb1c82e7c Fix code formatting in example. 2014-11-24 13:51:53 +01:00
Stefano Sanfilippo a15da1f544 Best fit for BRANCH_ELSE. 2014-11-24 10:54:25 +01:00
Stefano Sanfilippo e40f1cf55f More compact format for beautified example. 2014-11-24 10:52:56 +01:00
Stefano Sanfilippo 65a3929f48 CASE_END only if case is not last. 2014-11-24 10:50:10 +01:00
Stefano Sanfilippo 16772f287e Cluster common part between expression and semi-expression. 2014-11-24 00:14:27 +01:00
Stefano Sanfilippo b35d565ec6 Add contracted article forms. 2014-11-23 23:46:32 +01:00
Stefano Sanfilippo d80705b163 Allow ARTICLE in function param list. 2014-11-23 23:45:29 +01:00
Stefano Sanfilippo f9abe82f69 Allow function calls in expressions. 2014-11-23 23:45:16 +01:00
Stefano Sanfilippo 68cb175e90 Cases in branch can only be semi expressions. 2014-11-23 23:36:58 +01:00
Stefano Sanfilippo 4a2e313e3b Disable debug mode by default in Makefile. 2014-11-23 23:30:53 +01:00
Stefano Sanfilippo cd3f873682 Adding examples. 2014-11-23 23:30:22 +01:00
Stefano Sanfilippo 32846cccd7 More fluent CASE_END. 2014-11-23 23:22:55 +01:00
Stefano Sanfilippo bc69779b67 Cleaner handling of meta comments. 2014-11-23 23:22:44 +01:00
Stefano Sanfilippo 0f76a9da53 Complete valid tokens in "shift" status. 2014-11-23 23:14:43 +01:00
Stefano Sanfilippo 43fee532b0 Print meta comments to stderr. 2014-11-23 23:14:12 +01:00
Stefano Sanfilippo 00ed9869ed Verbose error messages. 2014-11-23 22:46:50 +01:00
Stefano Sanfilippo 72e3888cce Functions don't need terminator. 2014-11-23 22:43:51 +01:00
Stefano Sanfilippo a8521e324d Program can be empty. 2014-11-23 22:43:42 +01:00
Stefano Sanfilippo 403a957b08 Adding metacomments 2014-11-23 22:42:59 +01:00
Stefano Sanfilippo cad818d33b Get rid of DOTS. 2014-11-23 22:33:50 +01:00
Stefano Sanfilippo ae7920d5dd Use comma and dots instead of dot (easy flow). 2014-11-23 22:32:41 +01:00
Stefano Sanfilippo acce9c0c78 Minor fixes. 2014-11-23 22:19:10 +01:00
Stefano Sanfilippo 0de580d0e9 Funnier delimiters for functions. 2014-11-23 22:18:56 +01:00
Stefano Sanfilippo a25e1697cd Alternate spelling for ASSIGN 2014-11-23 22:18:19 +01:00
Stefano Sanfilippo fd373c390a Fix var initialization. 2014-11-23 22:07:55 +01:00
Stefano Sanfilippo 42c46c0648 No DOT after END_ASSERT. 2014-11-23 22:07:43 +01:00
Stefano Sanfilippo 1147af9eda Handle shift operator at syntactic level. 2014-11-23 22:06:37 +01:00
Stefano Sanfilippo 0a6c350ba1 Stripping stray article in token. 2014-11-23 22:06:11 +01:00
Stefano Sanfilippo 558f5712d6 Removing alias for 2. 2014-11-23 22:05:59 +01:00
Stefano Sanfilippo af77bb1c3c Add missing semicolon. 2014-11-23 20:48:23 +01:00
Stefano Sanfilippo 92a6ea5a59 Fix assign statement. 2014-11-23 20:47:52 +01:00
Stefano Sanfilippo 2aef8dbeec Allow semi expressions in branch conditions. 2014-11-23 20:47:39 +01:00
Stefano Sanfilippo 613599a7d9 Fix var declaration. 2014-11-23 20:47:18 +01:00
Stefano Sanfilippo 49893a04a0 Pointer dereference through operator STAR. 2014-11-23 20:46:58 +01:00
Stefano Sanfilippo 5e719dbadf Immediately terminate parsing in case of error. 2014-11-23 20:46:35 +01:00
Stefano Sanfilippo 95087c6e7e No more newlines (use . DOT as delimiter). 2014-11-23 20:45:44 +01:00
Stefano Sanfilippo d86f72eec3 Text alias for number 2. 2014-11-23 20:44:16 +01:00
Stefano Sanfilippo 298f2b115c Using a phrase instead of dots as CASE_END. 2014-11-23 20:43:57 +01:00
Stefano Sanfilippo 53037798a4 Article is not part of the keyword. 2014-11-23 20:43:42 +01:00
Stefano Sanfilippo e67ece7aab Comments can now be placed also at ending of line. 2014-11-23 20:43:28 +01:00
Stefano Sanfilippo 701e06b781 Newline after function definition. 2014-11-23 19:30:30 +01:00
Stefano Sanfilippo 03d40b0ad6 Statements can be empty. 2014-11-23 19:29:48 +01:00
Stefano Sanfilippo d9f3d6f06a Fix conflicts by introducing a CASE_END token. 2014-11-23 19:24:10 +01:00
Stefano Sanfilippo 2da9bdbb79 Args are already nullable in function call. 2014-11-23 19:21:12 +01:00
Stefano Sanfilippo 386bf40374 Any expression can be case condition. 2014-11-23 19:20:53 +01:00
Stefano Sanfilippo c7fec8c9e0 Clean up semantic rules. 2014-11-23 19:20:10 +01:00