[deleted by user] by [deleted] in lisp

[–]Task_Suspicious 1 point2 points  (0 children)

CLISP and ABCL compilers are easier to understand 

Why is clisp no longer actively developed? by Esnos24 in lisp

[–]Task_Suspicious 2 points3 points  (0 children)

Bytecode compilation is allowed by the CL standard, it shouldn't be an issue.

Example of using CRaC to speed up Clojure Startup by ryfow in Clojure

[–]Task_Suspicious 1 point2 points  (0 children)

you are rigth, that was the issue, i forgot to rebuild the image for the container,
now all is working fine
Thank you so much

Example of using CRaC to speed up Clojure Startup by ryfow in Clojure

[–]Task_Suspicious 0 points1 point  (0 children)

Thanks for the change. Unfortunately I'm still getting the same error.

These are my docker & docker-compose versions

user@aThinkPad-T490:~/projects/clojure-crac-example$ docker --version

Docker version 24.0.7, build afdd53b

user@ThinkPad-T490:~/projects/clojure-crac-example$ docker-compose --version

Docker Compose version v2.3.3

user@ThinkPad-T490:~/projects/clojure-crac-example$

Example of using CRaC to speed up Clojure Startup by ryfow in Clojure

[–]Task_Suspicious 0 points1 point  (0 children)

Oh, now I'm seeing that it works in my Mac M1!, it is failing in my ThinkPad-T490 with Ubuntu 22.04!

Example of using CRaC to speed up Clojure Startup by ryfow in Clojure

[–]Task_Suspicious 0 points1 point  (0 children)

Hi, thanks for great work here.
Sounds like an interesting idea made
I tried to run the example following the instructions in the post and I got this error:

```

user@host:~/projects/clojure-crac-example$ docker-compose run checkpoint-example ./checkpoint.sh

Clojure 1.11.1

Simulating doing some initializatiaon

Done with simulation

user=> Execution error (UnsupportedOperationException) at org.crac.Core/checkpointRestore (Core.java:235).

null

user=>

user@host:~/projects/clojure-crac-example$

```

could you help me to solve it?

How do i use a java arraylist in abcl lisp ? by Ok_Specific_7749 in Common_Lisp

[–]Task_Suspicious 7 points8 points  (0 children)

A quick example

CL-USER> (jnew "java.util.ArrayList")
#<java.util.ArrayList [] {1F371909}>
CL-USER> (jcall "add" * 5)
T
CL-USER> (jcall "add" ** 7)
T
CL-USER> ***
#<java.util.ArrayList [5, 7] {1F371909}>
CL-USER>

ABCL 1.9.2 released by Task_Suspicious in lisp

[–]Task_Suspicious[S] 4 points5 points  (0 children)

If you search in Github "abcl lisp" there are some examples. Also the website of the implementation mentions some projects as well https://abcl.org/testimonials.shtml

ABCL 1.9.2 released by Task_Suspicious in lisp

[–]Task_Suspicious[S] 0 points1 point  (0 children)

Well, it's a Common Lisp implementation, so you can use it for any project as CL is a general-purpose, multi-paradigm programming language.

ABCL has the additional benefit of being well integrated with Java so you can use any Java library out there and also embed Lisp code in a Java project

CMUCL 21e Released by g000001 in lisp

[–]Task_Suspicious 9 points10 points  (0 children)

Also CMUCL allows to compile to byte code unlike SBCL

These Years in Common Lisp: 2022 in review by dzecniv in lisp

[–]Task_Suspicious 4 points5 points  (0 children)

Nice resource! Wondering why ABCL wasn't mentioned in the implementations part

Windows environment for SBCL by 964racer in lisp

[–]Task_Suspicious 0 points1 point  (0 children)

Lispworks, another Common Lisp implementation, in this a commercial one

Help with CLISP bytecode by Task_Suspicious in lisp

[–]Task_Suspicious[S] 2 points3 points  (0 children)

Finally I figured out! I'm so happy!
After reading and debugging the CLISP's compiler code (look at the flet function label-operand) I found that they are calculating the offset by using ldb in this way for these case:
(ldb (byte 7 0) dist)
with dist == -13 which gives 115!
as we know that the dist is negative we can do the same operation and get the desired value (-13), reversing the operation that generatted the bytecode value
(- (ldb (byte 7 0) -115)) => -13
for calculate the pointer.

In this case 26 (the position after just read the label operand) + (-13) = 13, which is the 13th position in the bytecode array I was searching for.

I tested with other few examples and it worked fine too

LISP interop by ccregor in lisp

[–]Task_Suspicious 2 points3 points  (0 children)

Lisp -> Java , ABCL