chsasank / llama.lisp

Lisp dialect designed for HPC and AI
GNU Lesser General Public License v2.1
9 stars 4 forks source link

Add more types: Floats, Structs and stuff #13

Open chsasank opened 1 month ago

chsasank commented 1 month ago

Add floating point types

https://capra.cs.cornell.edu/bril/lang/float.html

and tests:

https://github.com/sampsyo/bril/tree/main/test/interp/float

Look up how do we add char and stuff too

chsasank commented 1 month ago

The types we need to implement:

  1. Floats
  2. Structs
  3. Arrays

In that order of priority. See #16 for interesting discussion on array type vs alloc

chsasank commented 1 month ago

Aggregate types in LLVM are documented here: https://llvm.org/docs/LangRef.html#t-aggregate

GlowingScrewdriver commented 3 weeks ago

Structs will have to be implemented in Brilisp and C-Lisp. As with the other features, Brilisp structs will mirror LLVM structs, and C-Lisp structs will extend that to provide something more typical of a high-level language.

Tentative design decisions for Brilisp structs:

GlowingScrewdriver commented 2 weeks ago

This is done, right?

GlowingScrewdriver commented 2 weeks ago

Ah, yes. We still don't have characters.

chsasank commented 1 day ago

Partly resolved by #68