89 Commits

Author SHA1 Message Date
hyunghwan.chung
6a721bb62a renamed get_event to get_llevent in X11 2017-06-27 07:36:55 +00:00
hyunghwan.chung
246662220f interim commit of ongoing X11 works 2017-06-23 16:09:07 +00:00
hyunghwan.chung
16ff846013 ongoing x11 experiment 2017-06-18 17:29:32 +00:00
hyunghwan.chung
d311c7cb6e interim commit of various experiments 2017-06-16 09:45:22 +00:00
hyunghwan.chung
9b3c3007fd Added a new syntax error code MODIMPFAIL 2017-06-08 14:39:17 +00:00
hyunghwan.chung
40ec8fc157 added some test cases 2017-06-07 17:22:14 +00:00
hyunghwan.chung
e3e897ee83 changed build files to detect a library containing setupterm() 2017-06-07 16:47:48 +00:00
hyunghwan.chung
307c43eb3e fixed an initial value handling bug and implemented getter and setter generation when a variable is set with #get and/or #set 2017-06-07 04:46:14 +00:00
hyunghwan.chung
34a5e0cab8 gave up the idea of constants.
enhanced namespace handling with selfns and self
uniformified identifier handling related to namespacing
2017-06-01 15:42:05 +00:00
hyunghwan.chung
36c48a8daf made some changes to system logging primtitives and supporting codes.
struggling with name space handling
2017-05-21 16:57:21 +00:00
hyunghwan.chung
1bdaba968d added nsup field to the class object to chain back to the upper namespace in the hierarchy.
changed bootstrapping code and compiler code to weave top-level namespace hierarchy more consistantly, mostly related to the System class and its intrinsic namespace dictionary linked via the nsdic field
2017-05-20 02:27:48 +00:00
hyunghwan.chung
a639fe9f93 fixed an error in moo_seterrbfmt() and moo_seterrufmt() 2017-05-16 02:04:18 +00:00
hyunghwan.chung
f5d311e825 enhanced logging functions to be more error-resistent 2017-05-12 04:15:09 +00:00
hyunghwan.chung
9208d078b2 added moo_seterrbfmt() and moo_seterrufmt() 2017-05-11 14:59:20 +00:00
hyunghwan.chung
ce69989a86 touched up primitive failure handling a bit 2017-05-09 15:48:44 +00:00
hyunghwan.chung
a1782753a9 touched up primitive failure handling in exec.c 2017-05-08 16:00:55 +00:00
hyunghwan.chung
937895ef59 added a new method modifier #lenient that applies to a primitive method. when set, it turns soft failure to error return 2017-05-07 16:45:27 +00:00
hyunghwan.chung
f45cde7ba7 redefined Integer<<timesRepeat: 2017-05-07 14:45:27 +00:00
hyunghwan.chung
63519c1ca3 introduced a new class modifier #immutable to indicate that an instantiated object cannot be modified using basicAt:put: 2017-05-07 05:18:21 +00:00
hyunghwan.chung
1dff630fdd changed how to calculate the mid point in a binary search loop 2017-05-04 05:22:45 +00:00
hyunghwan.chung
68a7118fb2 finished handling of #limited and #final class modifiers 2017-05-01 12:54:41 +00:00
hyunghwan.chung
2a6206cc80 changed to use AC_LINK_IFELSE() when checking for some __builtin_memxxx functions.
started adding the #limited modifier for class definition
2017-04-30 04:50:33 +00:00
hyunghwan.chung
e2a7646b75 added strftime %z check into configure.ac 2017-04-28 23:25:21 +00:00
hyunghwan.chung
bce77eda6c added --enable-mod-x11 and --enable-mod-ffi to configure 2017-04-28 04:03:52 +00:00
hyunghwan.chung
9ee7d9e110 touched up raw memory access primitives 2017-04-27 15:40:04 +00:00
hyunghwan.chung
b0a3b4aef7 fixed CompiledMethod>>preambleCode 2017-04-26 16:01:56 +00:00
hyunghwan.chung
6fe65f66fc implemented until and do..until loop 2017-04-26 15:31:07 +00:00
hyunghwan.chung
04864659a8 added the #dual modifier to method definition. a method defined with #dual is registered in both the instance side and the class side. 2017-04-26 03:09:55 +00:00
hyunghwan.chung
8298bad3e0 added moo_process_t.perr and Processor>>primError to capture the last error set by a primitive function 2017-04-25 15:20:58 +00:00
hyunghwan.chung
08e54cb524 enhanced the compiler to handle default initial values for class instance variables 2017-04-24 14:32:21 +00:00
hyunghwan.chung
8a0d476d18 fixed a lexer bug of eating up one more character when reading a single-letter identifier C, S, M followed by a non-identifier letter in get_ident().
changed various test programs according to syntax changes
2017-04-24 09:20:27 +00:00
hyunghwan.chung
5bf8d20a93 enhanced the compiler to handle default initial values for instance variables and class variables 2017-04-24 04:26:03 +00:00
hyunghwan.chung
4656bf128e added a new class variable declarator 'var' or 'variable'
supported  | .. | style declartion at the class level.
added the RDONLY flag to the object header
wrote some code to support default values for class-level variables such as instance variables
2017-04-19 16:46:44 +00:00
hyunghwan.chung
a768bd8803 added experimental code to handle xcb window resizing 2017-04-08 14:11:01 +00:00
hyunghwan.chung
89c0a406f3 fixed a bug of not updating the system multiplexer when moving an IO semphoare object 2017-04-08 07:23:31 +00:00
hyunghwan.chung
88b2a0787f more xcb implementation code 2017-04-07 15:50:05 +00:00
hyunghwan.chung
db3cdd057d added X11.moo 2017-04-05 16:48:20 +00:00
hyunghwan.chung
08f01329ab added MOO_EMSGRCV.
added System putUintX()/putIntX() and SmallPoitner putUintX()/putIntX()
2017-04-03 13:24:18 +00:00
hyunghwan.chung
b7a8348de3 added System _malloc/_calloc/_free and SmallPointer free 2017-04-03 05:43:50 +00:00
hyunghwan.chung
4f9767422b added raw memory access primitive functions to SmallPointer 2017-04-02 17:08:03 +00:00
hyunghwan.chung
e2d73eccdb extended the tag bits to support more than 3 special types.
tag bit calculation got slower but it can use up to 4 bits to represent more types
2017-04-02 13:13:33 +00:00
hyunghwan.chung
2ed62a5edb added a new method directive #liberal to indicate a method that accept a fully variadic number of arguments.
the directive #liberal allows the caller to omit the named arguments as well.
the directive #variadic requires the caller to provide at least the named arguments
2017-04-01 06:54:27 +00:00
hyunghwan.chung
aeb02213b4 changed moo_getpfnum().
added argument count checks when processing primitive method pragmas
2017-04-01 04:58:02 +00:00
hyunghwan.chung
447670aba8 implemented more prechecks including the existence of the primitive function handler and the number of supported arguments when compiling primitive method defintions 2017-03-31 14:21:22 +00:00
hyunghwan.chung
0f84a115ae added moo_pfbase_t and changed some functions to return moo_pfbase_t* instead of moo_pfimpl_t
touched up some modules
2017-03-30 14:59:55 +00:00
hyunghwan.chung
df1619bf7d added more experimental xcb code 2017-03-24 18:09:34 +00:00
hyunghwan.chung
3fcfcff0ad added a new modifier #variadic to make variadic method definition more obvious.
allowed the #primitive modifier in a method definition not associated with an external module.
fixed a bug in handling soft failure from numbered primitive functions
2017-03-23 16:14:22 +00:00
hyunghwan.chung
65722cf89b changed System to be a class instead of an instance of a system dictionary 2017-03-22 16:55:41 +00:00
hyunghwan.chung
46ba3bb3f5 added respondsTo: and perform:with:
fixed a bug in Dictionary>>__remove_at:
added gc callback to external modules
2017-03-19 14:18:37 +00:00
hyunghwan.chung
3bfffe09d9 removed the association literal notation 2017-03-09 07:26:43 +00:00