HackerTrans
TopNewTrendsCommentsPastAskShowJobs

jackdaniel

no profile record

Submissions

A brief note about slot access cost in Common Lisp

turtleware.eu
3 points·by jackdaniel·2 miesiące temu·0 comments

Embeddable Common Lisp 26.3.27 release

ecl.common-lisp.dev
15 points·by jackdaniel·4 miesiące temu·1 comments

Cross-Compiling Common Lisp to WASM

turtleware.eu
78 points·by jackdaniel·8 miesięcy temu·4 comments

Show HN: Using Common Lisp from Inside the Browser

turtleware.eu
111 points·by jackdaniel·11 miesięcy temu·31 comments

Web Embeddable Common Lisp

ecl.common-lisp.dev
16 points·by jackdaniel·12 miesięcy temu·0 comments

McCLIM 0.9.9 "Ostara"

mcclim.common-lisp.dev
9 points·by jackdaniel·w zeszłym roku·0 comments

Dynamic Variables – Return of the Jedi

turtleware.eu
1 points·by jackdaniel·2 lata temu·0 comments

Dynamic Variables in Common Lisp (Part 2)

turtleware.eu
3 points·by jackdaniel·2 lata temu·0 comments

Dynamic Let (Common Lisp, Mop)

turtleware.eu
1 points·by jackdaniel·2 lata temu·0 comments

comments

jackdaniel
·4 miesiące temu·discuss
This is quite tone deaf - demoscene stands for creativity and resource constraint, and using ai cancels both in favor of resource intensive cognitive offload
jackdaniel
·7 miesięcy temu·discuss
to be honest I feel much more comfortable with git -- muscle memory, magit etc., but fossil is much more appealing when you look at the underlying model and how it bundles wiki and issues along with the repository; that's why I'm starting as of late all my solo projects with fossil repo.
jackdaniel
·11 miesięcy temu·discuss
CL enables many paradigms of programming, including functional one and imperative. Currently the most popular way of programming among CL programmers is OOP with CLOS.
jackdaniel
·11 miesięcy temu·discuss
There's also Guile Hoots compiling directly to WASM.
jackdaniel
·w zeszłym roku·discuss
I didn't plan explicitly for SLIME, but loading swank shouldn't be much of a problem. The missing piece would be a bridge between a websocket and tcp I think.
jackdaniel
·w zeszłym roku·discuss
Btw, eval (ed "wecl.lisp") to see some interesting function definitions, like canvas or webgl access drafts.
jackdaniel
·w zeszłym roku·discuss
With enough code - yes. But not right now. You may precompile to native though.
jackdaniel
·w zeszłym roku·discuss
Bytecodes compiler used in this build from repl is one-pass with very little optimizations, so it is not surprising. Natively compiled code is much faster.
jackdaniel
·w zeszłym roku·discuss
What a bunch of fud..

If you want to make mcclim progress faster then chip in with actual expertise instead of unfunded snarks.

ECL is a stable implementation with actual users, if you can point out existing problems then please report them.
jackdaniel
·w zeszłym roku·discuss
ECL features native code and bytecodes vm for targets without incremental compilation support - both native and bytecode can be freely mixed at runtime.

That means that you may interactively use repl to call functions that were compiled ahead of time and to add new functions even on uncooperative targets.

After you've finished prototyping you may compile the finished library to native ahead of time.
jackdaniel
·w zeszłym roku·discuss
This is just a test page. Today I've shared an information about an accepted grant proposal:

https://functional.cafe/@jackdaniel/114742776265318353

The work will go towards improving browser integration and porting to WASI.
jackdaniel
·w zeszłym roku·discuss
Hey! Thanks for the offer and thanks for the correction. I've revisited relevant threads and it seems that it is indeed -O0 because things are slower with higher optimization levels (I must have misremembered).

Relevant links: https://gitlab.com/embeddable-common-lisp/ecl/-/merge_reques... https://github.com/ivmai/bdwgc/issues/650

Most notably an entry in the INSTALL file:

``` the optimization level -O0 is used because higher optimization levels seem to interfere with the binaryen options needed to get the garbage collector to work correctly and tend slow down the program (might be worth experimenting with the optimization options) ```
jackdaniel
·w zeszłym roku·discuss
It's worse, it is -O0 -- this is because of the GC and binaryen/llvm interaction. For GC to work we need to spill stack call pointers (and binaryen has such a flag!), but for the optimization level 1 and above said pointers are sometimes optimized away :3

I'm experimenting with WASI and the GC extension for WASM, but that's months from today if we speak about complete port (given my time capacity at the moment).
jackdaniel
·w zeszłym roku·discuss
Scheme requires TCO. It is a different Lisp (it also has standard[s]).
jackdaniel
·w zeszłym roku·discuss
Common Lisp does not require TCO. This runs on emscripten port of Embeddable Common Lisp - this platform support is relatively new. I'm also working on WASI port and an optimizing compiler at runtime (currently we use bytecodes compiler when running).
jackdaniel
·w zeszłym roku·discuss
Web version of ecl when compiler is invoked at runtime, uses one-pass bytecodes compiler, so things tend to lack optimization unless compiled beforehand.
jackdaniel
·2 lata temu·discuss
Some of us are hanging out to interact with peers and to share cool hacks. Nothing to do with winning or losing; not all social interactions can be reduced to a psychological warfare.
jackdaniel
·2 lata temu·discuss
Underpaid FOSS devs offering financial bounties so they can attempt to sue offenders sounds to me quite surreal.
jackdaniel
·2 lata temu·discuss
Free education does not mean "no degrees", it means "funded from taxes/ by goverment".
jackdaniel
·2 lata temu·discuss
You don't have "an industry" that hikes prices, and there is a central authority without ulterior motive that has an influence over what is funded. Not to mention that you don't put young people into debt from get go.