1a609502c8
Memory is not stored and retrieved — it is activated and propagated. Implements the spreading activation model with salience decay, typed edges, four memory tiers, and flat cosine vector search over a sled embedded store.
26 lines
617 B
Markdown
26 lines
617 B
Markdown
# Go Bindings (planned v0.2)
|
|
|
|
Engram-core will be exposed to Go via CGo and the `engram-ffi` shared library.
|
|
|
|
```go
|
|
// #cgo LDFLAGS: -L../../target/release -lengram_ffi
|
|
// #include "engram.h"
|
|
import "C"
|
|
import "unsafe"
|
|
|
|
func Open(path string) *EngramDb {
|
|
cpath := C.CString(path)
|
|
defer C.free(unsafe.Pointer(cpath))
|
|
handle := C.engram_open(cpath)
|
|
if handle == nil {
|
|
return nil
|
|
}
|
|
return &EngramDb{handle: handle}
|
|
}
|
|
```
|
|
|
|
## Status
|
|
|
|
Stub only. The header file (`engram.h`) will be generated by `cbindgen` in v0.2.
|
|
Full idiomatic Go wrapper with context support and error returns planned.
|