/emg/ - Emacs & Lisp General

朝日 edition

>General Emacs resources
gnu.org/software/emacs/manual/emacs.html (GNU Emacs Manual)
emacswiki.org (Emacs Wiki)
github.com/emacs-tw/awesome-emacs (Big list of packages)
github.com/thinkhuman/writingwithemacs (Tips for prose writing in Emacs)

>Tutorials
C-h t (Interactive Tutorial)
gnu.org/software/emacs/tour (GNU Emacs Tour)
youtube.com/playlist?list=PLX2044Ew-UVVv31a0-Qn3dA6Sd_-NyA1n (General Introduction)
youtube.com/playlist?list=PLVtKhBrRV_ZkPnBtt_TD1Cs9PJlU0IIdE (Org Mode)
youtube.com/playlist?list=PL8Bwba5vnQK14z96Gil86pLMDO2GnOhQ6 (Advanced Configuration)

>(Self) Documentation
C-h k (Keybinds)
C-h o (Functions and Variables)
C-h i (Assorted Manuals)

>Premade Configs
=Make your own=
github.com/hlissner/doom-emacs/tree/develop (Doom Emacs)
github.com/syl20bnr/spacemacs (Spacemacs (heavy))
github.com/snackon/Witchmacs (Witchmacs)

>Reduce Startup Time
use-package defer
pastebin.com/mrPsnUas (Disable GC during startup)
emacswiki.org/emacs/EmacsAsDaemon (Emacs as Daemon)
akrl.sdf.org/gccemacs.html (Native Compilation, stable, merged into Emacs 28)
emacswiki.org/emacs/SetupEl

>Changing Default Keybinds
pastebin.com/2hg4g3C6

>Programming resources for Emacs Lisp, Common Lisp, Scheme and Clojure:
pastebin.com/nyTQp7qi

>Troubleshooting
If there seems to be a bug (or complicated issue), anons may ask you to compose an MWE (minimum working example).
To create an MWE, try the following:
1) start emacs with "emacs -q". This disables your init.
2) try to reproduce your issue with as few settings changed and packages (manually) loaded as possible.
These steps ensure that other anons can replicate your problem if it's something more involved. Sometimes you even find the cause yourself this way, too!

Previous thread:

Attached: rising-emacs.png (900x600, 80.48K)

Other urls found in this thread:

mozilla.github.io/firefox-browser-architecture/experiments/2017-09-21-rust-on-android.html
gitlab.com/eql/EQL5-Android
gnu.org/software/kawa/Building-for-Android.html
twitter.com/AnonBabble

Scheme!?

Attached: maddex.png (1000x1000, 293.68K)

Is something like this possible in CL (or any other Lisp)?
If yes, how?
And no I'm not trying to bait with rust it's just the next best guide I could find.
mozilla.github.io/firefox-browser-architecture/experiments/2017-09-21-rust-on-android.html
I know that I could use Clojure script and react native but I would like to go with the NDK route.

Run a Lisp on Android without React Native? There's ECL and Kawa Scheme.

gitlab.com/eql/EQL5-Android
gnu.org/software/kawa/Building-for-Android.html

Racket?

Speaking of Android would it be possible to write a Lisp or a compiler that compiles to Android in Common Lisp?
I mean people wrote GOOL and GOAL which runs on the PS2 in Common Lisp, surely it must be possible to write something like that that runs on Android, right?

Attached: nazimacs2.png (3797x2423, 476.14K)

Can you do everything that you could do with CL in Clojure?
Could you write an X11 window manager in Clojure?
Could you write an OS in Clojure?

You could do all that in Racket.

If Java can also do it, yeah.

What does "compiles to Android" mean? If you want to use CL for Android development, there is (are?) ABCL that runs on JVM so you can theoretically make it work. But Clojure may be a much better choice for that.

>What does "compiles to Android" mean
I mean writing CL and compiling it into code that is able to run on Android.
>ABCL that runs on JVM so you can theoretically make it work. But Clojure may be a much better choice for that.
There's the problem Android doesn't use the JVM but a "copy" of it with some differences which means that pure JVM bytecode won't run on Android.

hi techgeekers

Attached: unknown-2.png (818x574, 971.34K)

If Lisps CFFI can load up C libraries, call their functions, does that mean I could use lisp to garbage collect C memory for me by loading everything inside CLOS objects?

ECL compiles CL to C.

I meant sure, but you aren't using C at that point, you are using Lisp so why do you care about garbage collecting?

I am reading up on (Datomic style) Datalog.

Attached: 1286680188394.jpg (320x240, 13.85K)

Scheme compiling directly to machine code with no C.

Attached: 1561640304602.jpg (1207x1282, 428.24K)

#lang racket
(require 2htdp/image)
(require lang/posn)
(define (blessing)
(overlay
(flip-horizontal
(rotate
45
(polygon (list (make-posn 0 0)
(make-posn 36 0)
(make-posn 36 24)
(make-posn 48 24)
(make-posn 48 0)
(make-posn 60 0)

(make-posn 60 36)
(make-posn 36 36)
(make-posn 36 48)
(make-posn 60 48)
(make-posn 60 60)

(make-posn 24 60)
(make-posn 24 36)
(make-posn 12 36)
(make-posn 12 60)
(make-posn 0 60)

(make-posn 0 24)
(make-posn 24 24)
(make-posn 24 12)
(make-posn 0 12))
"solid"
"black")))
(circle 45 "solid" "white")
(rectangle 200 120 "solid" "red")))

(blessing)

So I can use C for creating fast, contiguous data structures & functions, while composing the system I want in a sane language that won't need lengthly recompiling

So, for instance, if create heap arrays with a C function from the CFFI, does that get garbage collected if I destroy the CLOS object that had my C function?

Personality?!