mdbergmann / cl-gserver

Sento - Actor framework featuring actors and agents for easy access to state and asynchronous operations.

Home Page:https://mdbergmann.github.io/cl-gserver/index.html

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

failed on ABCL

ijitai opened this issue · comments

cl-gserver can't be deployed on ABCL.

System info:
Macbook pro 2019, core i7, 16GB ram, big sur 11.3.1
ABCL 1.8.0

It seems that "cl-murmurhash" has a problem.


`[package cl-murmurhash]
; in (DEFMACRO ~> ...)

; Caught STYLE-WARNING:
; ; Note: deleting unused local function FLET ENLIST

...........................
...........
#<THREAD "interpreter" {4EFAFE9}>: Debugger invoked on condition of type STORAGE-CONDITION
Stack overflow.
Restarts:
0: RETRY Retry compiling #<ASDF/LISP-ACTION:CL-SOURCE-FILE "cl-murmurhash" "cl-murmurhash">.
`

Hmm. I wasn't aware I'm using 'cl-murmurhash'. Maybe pulled from somewhere.
At some point I checked on ABCL but didn't do recently.
Let me check.

Looks like this dependency is pulled in by 'cl-hamt'. A pity, because FSet also doesn't work on ABCL.
Need to check. Maybe I have to fallback to CL hashtable.

So I've replaced cl-hamt with an ordinary list.
But unfortunately ABCL also does not support 'atomics' package or CAS operations generally that was necessary for the latest router additions.
As sad as it is, but until this is fixed in ABCL cl-gserver will unfortunately not work on ABCL.
armedbear/abcl#92

For what it's worth, I've restructured the dependencies a bit.
It should now work on ABCL.

except for #30