ark-lang / ark

A compiled systems programming language written in Go using the LLVM framework
https://ark-lang.github.io/
MIT License
682 stars 47 forks source link

Option types #673

Closed kiljacken closed 8 years ago

kiljacken commented 8 years ago

From @0xbadb002 on January 18, 2016 15:25

Copied from original issue: ark-lang/stdlib#1

felixangell commented 8 years ago

Are these going to go in the standard library, or in the runtime?

kiljacken commented 8 years ago

I'm on a tilt between the options. The benefits of having them in the runtime would be to always have them available, but it would result in an increase in binary size. Preferably if it was to be included in the runtime we'd need a way for the developer to disable it.

felixangell commented 8 years ago

I mean we could do that thing I suggested where we selectively choose runtime features per module? Or we could have the option types natively in the syntax but eh...

MovingtoMars commented 8 years ago

I think it's possible for LLVM to remove the option code altogether if it's unused (LTO?)

raoulvdberge commented 8 years ago

We should include them in runtime, imagine importing Go's error everywhere.

MovingtoMars commented 8 years ago

This is done