Carleton University - School of Computer Science Honours Project
Winter 2021
Bear: A Statically-Typed Array-Processing Language
Braedon Leonard
SCS Honours Project Image
ABSTRACT
The language q has many compelling features not seen in most languages, such as efficient array operations and incredible terseness. Unfortunately, its type-system is very lacking, which hurts its ability to be used in building larger programs. A language like OCaml on the other hand has a very strong type-system, introducing loads of compile-time guarantees which help catch mistakes at compile-time rather than at runtime. Unfortunately, OCaml lacks the terseness of q, and has a stronger focus on lists and recursion rather than on arrays. Bear is an attempt to provide a proof-of-concept for an array-processing language which brings together the terseness and dynamicism of q with a static type-system inspired by OCaml. While the final result has obvious shortcomings, it provides compelling evidence of the value such a language may have.