Mill Computing, Inc. Forums The Mill Architecture Grab bag of questions Reply To: Grab bag of questions

Post count: 23

– 4) Tail calls

Does the Mill support tail-call instructions? I’m told they’re important for some functional programming languages.

You might be able to save instruction entropy by encoding tail calls as “a return ganged with a function call”.

– 5) Exception handling

Do you have first-class C++ style exception handling?

By “first class”, I mean “zero-cost if no exception is thrown”, so no branch-after-every-function-return or things like that.

Also, can you handle setjmp/longjmp?

– 6) Coroutines

Do you support stackless coroutines in hardware? By coroutines, I mean functions you can jump into, yield from, and then jump back into at the yield point.

By stackless, I mean “unlike a thread, they don’t need their dedicated stack and add stack frames directly to the caller’s stack”. I guess the big difficulty would be spilling directly to userspace.