45 Commits

Author SHA1 Message Date
hyunghwan.chung
da33ecc167 fixed redundant calls made by the new message to some collection classes including Set, AssociativeCollection 2018-06-22 15:27:38 +00:00
hyunghwan.chung
7689de7dfa implemented removal methods in the Set class 2018-06-22 15:14:56 +00:00
hyunghwan.chung
b9500933b8 renamed SymbolSet to SymbolTable.
added some exception classes to use when something is not found.
renamed Set to AssociativeCollection and started writing a new Set class
2018-06-20 18:01:04 +00:00
hyunghwan.chung
913f5f6918 added add: and addAll: to OrderedCollection 2018-06-19 17:13:20 +00:00
hyunghwan.chung
d8c0453ddd changed System signal: to aSemaphore signal: 2018-06-19 16:58:04 +00:00
hyunghwan.chung
a6d72b928c added new keywords to the compiler - ifnot, elsifnot 2018-06-19 16:11:20 +00:00
hyunghwan.chung
8536099e74 copying fcgi code from https://github.com/NicolasPetton/fcgi 2018-06-18 14:32:31 +00:00
hyunghwan.chung
8b7eebd654 added some partial utf8 related primitives 2018-06-17 17:41:04 +00:00
hyunghwan.chung
34ee56784d added copyFrom:count: to ByteArray 2018-06-12 10:17:32 +00:00
hyunghwan.chung
48bdf7df2c fixed a slight bug in parsing 'and' and 'or' in compile_basic_expression().
writing SocketStream
2018-06-09 16:48:18 +00:00
hyunghwan.chung
e074607a00 renamed jump_xxxward_if_xxx to jumpop_xxxward_if_xxx because it does pop the stack top.
added jump_forward_if_true, jump_forward_if_fase, jump2_forward_if_true, jump2_forward_if_false to use with the and and or logical operation keywords
2018-05-30 15:32:09 +00:00
hyunghwan.chung
8965720926 added two new keywords (and, or) for logical operations. work in progress 2018-05-30 11:31:26 +00:00
hyunghwan.chung
fc6f8bbb70 added more methods to OrderedCollection 2018-05-27 16:46:49 +00:00
hyunghwan.chung
370503b4a0 added removeFirst: and removeLast: to OrderedCollection 2018-05-26 03:39:58 +00:00
hyunghwan.chung
4c8797e8ad worked on OrderedCollection.st 2018-05-25 17:56:08 +00:00
hyunghwan.chung
d1cfaed466 fixed a compiler bug in handling 'super' with multiple messages sent at the same time as in 'super abc + 10' 2018-05-25 10:19:25 +00:00
hyunghwan.chung
90e6e6c8cf implemented more methods for OrderedCollection 2018-05-24 10:10:52 +00:00
hyunghwan.chung
29a5f0716d started adding OrderedCollection 2018-05-22 16:22:32 +00:00
hyunghwan.chung
ff5e5aa23f added just a few lines of code 2018-05-09 16:43:58 +00:00
hyunghwan.chung
1c60ef5d0b changed the parent class of ByteArray from Collection to Array.
enhanced socket writing a bit
2018-01-28 16:03:03 +00:00
hyunghwan.chung
506c6900e0 changed basicShift and basicFill primitives not to validate source position and destination position when count is <= 0 2018-01-04 10:07:42 +00:00
hyunghwan.chung
7395a5d2d2 touched up some primitive functions 2017-12-03 17:08:04 +00:00
hyunghwan.chung
32a77bc6db simplified SemaphoreGroup by switching a semaphore array to a semaphore list.
added some copy methods to Array
2017-10-08 15:40:32 +00:00
hyunghwan.chung
a54c2e21f2 added the equality(=) method to Array.
fixed the equality primitive handler to accept the subclasses of Semaphore/SemaphoreGroup
2017-10-02 01:22:49 +00:00
hyunghwan.chung
6711bc01fa refactored the bytecode interpretation loop with computed jump tables
added incomplete code to support a semaphore group
2017-09-21 07:56:51 +00:00
hyunghwan.chung
a2877ac905 added more X11 code 2017-06-27 16:03:29 +00:00
hyunghwan.chung
d311c7cb6e interim commit of various experiments 2017-06-16 09:45:22 +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
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
68a7118fb2 finished handling of #limited and #final class modifiers 2017-05-01 12:54:41 +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
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
hyunghwan.chung
8bf134e8e3 refactored compiler code abit 2017-03-08 14:48:12 +00:00
hyunghwan.chung
308318b615 changed to accept identifer instead of symbols in pooldic definition 2017-03-08 13:53:41 +00:00
hyunghwan.chung
1ebfe8d5e9 added a simple LinkedList 2017-03-04 05:48:23 +00:00
hyunghwan.chung
b1c28d03d7 changed VM to emulate 'Dictionary new: ..' for MAKE_DICTIONARY
changed VM to emulate 'dic put_assoc: assoc' for POP_INTO_DICTIONARY
2017-02-10 07:38:29 +00:00
hyunghwan.chung
2101bb38b4 renamed __assocPut: to __put_assoc: 2017-02-08 13:14:29 +00:00
hyunghwan.chung
a05793a66d rewrote a few methods to use if/while instead of ifTrue:/whileTrue: in Collect.moo 2017-02-07 18:09:07 +00:00
hyunghwan.chung
5c07a48c5a wrote code to handle dictionary expression and association expression notation 2017-02-07 17:40:34 +00:00
hyunghwan.chung
40ba50fc53 added primitive code to compile the 'if' expression 2017-01-18 17:17:05 +00:00
hyunghwan.chung
2528dcdbe5 changed the compiler to allow assignment to an argument in a method 2017-01-09 13:20:46 +00:00
hyunghwan.chung
7460ce819c renamed *.st files to *.moo 2017-01-09 12:52:37 +00:00