mirror of
				https://github.com/Reuh/anselme.git
				synced 2025-10-28 17:19:31 +00:00 
			
		
		
		
	- Bumped to 0.15.0 - Add boot script - Change variable definition syntax, using a = to distinguish more cleary between identifier and value - Variables initial values are evaluated on first use instead of at parsing time - Error on variable redefinition. Means you should make sure to load saves after your scripts. - Improve string parsing, support for escape codes - Remove support for number literals with empty decimal part (42. for 42.0) as there's no distinction in Anselme and it conflicts with .function call suffix - Changed priority of : pair operator - Add type type, and type annotations to variables and function parameters - Change Lua function system to use regular Anselme functions - Defining a function from Lua is now way simpler and require providing a full Anselme function signature - Change Anselme function system - Dynamic dispatch, based on arity, type annotation and parameter names. Will select the most specific function at runtime. - Define way to overload most operators - Allow custom type to text formatters - Allow assignment to custom functions - Index operator ( renamed to () - Functions with parameters each have their own private namespace (scoping ersatz) - Internal: "custom"-mode operators now have their own expression AST type instead of cluttering the function system - Remove static type checker as it is barely useful with new function system. May or may not rewrite one in the future. - Improve error messages here and there - Internal: cleaning
		
			
				
	
	
		
			19 lines
		
	
	
	
		
			168 B
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			19 lines
		
	
	
	
		
			168 B
		
	
	
	
		
			Text
		
	
	
	
	
	
| $ oh
 | |
| 	§ leave
 | |
| 		in interrupt: {bar.var}
 | |
| 	no
 | |
| 	$ bar
 | |
| 		:var = 5
 | |
| 
 | |
| 		~ var := 2
 | |
| 
 | |
| 		before: {var}
 | |
| 
 | |
| 		~ interrupt("leave")
 | |
| 
 | |
| 		§ foo
 | |
| 			checkpoint
 | |
| 
 | |
| 		after: {var}
 | |
| 
 | |
| ~ oh.bar
 |