Live data from Hacker News

Integrating “safe” languages into OpenBSD?

marc.info

101–110 of 344 posts

Re: Integrating “safe” languages into OpenBSD?

#101
post #5
post #3

Earlier quoted context omitted.

That is sort of addressed by Theo: >Such ecosystems come with incredible costs. For instance, rust cannot even compile itself on i386 at present time because it exhausts the address space.

People are still using i386? I'd assume even if they are, it's such a tiny minority that it shouldn't be an excuse to hold everyone else back.

Theo would say, if you think so then get to writing code instead of commenting about it.

These aren’t just philosophical comments, the implications for him and OBSD devs is to spend massive time developing these things. Dropping a supported platform and taking on a huge investment of effort needs serious justification.

Re: Integrating “safe” languages into OpenBSD?

#103
post #85
post #82

Earlier quoted context omitted.

> go needs go, haskell needs haskell, rust needs rust That's painful. It's one big point which Nim [1] does better. It compiles to C and bootstraps from C. That makes porting to other platforms much easier. I don't understand why Haskell and Rust don't provide bootstrapping from C. Did they write the first compilers with Assembler? > You just don't notice it because these two languages are already part of the base sy…

> I don't understand why Haskell and Rust don't provide bootstrapping from C. Did they write the first compilers with Assembler? I don't know about Haskell, but the first Rust compiler was written in OCaml. See for instance the comments at https://www.reddit.com/r/rust/comments/6nt2j1/is_there_any_e...

> See for instance the comments ...

Interesting! So, it should basically be possible to bootstrap from source using OCaml and the old source from the Git repository.

It's interesting that OCaml was used to develop Rust since OCaml is also used for formal verification of SPARK (a dialect of Ada) which is another language for safety critical applications. OCaml seems to be a good choice to invent new big languages.

Re: Integrating “safe” languages into OpenBSD?

#104
post #93

Earlier quoted context omitted.

At this point i386 is legacy for most of the world. OpenBSD is an ultra-conservative, orthodox project, therefore they will probably support i386 for years into the future - I mean, they supported VAX until 2016. That is a choice they are entitled to make, the trade-off being it would appear to make most modern technologies a poor fit for adoption in OpenBSD - that's the price they have to pay. It is a problem of the…

“i386” is OpenBSD's label for the 32-bit Intel architecture (they don't actually support the 80386). Intel still sells these.

They support 486's though, which is quite rare for 2017.

Re: Integrating “safe” languages into OpenBSD?

#105
post #97
post #82

Earlier quoted context omitted.

> go needs go, haskell needs haskell, rust needs rust That's painful. It's one big point which Nim [1] does better. It compiles to C and bootstraps from C. That makes porting to other platforms much easier. I don't understand why Haskell and Rust don't provide bootstrapping from C. Did they write the first compilers with Assembler? > You just don't notice it because these two languages are already part of the base sy…

> That's painful. It's one big point which Nim [1] does better. It compiles to C and bootstraps from C. That makes porting to other platforms much easier. Unless you are talking about an architecture which doesn't have llvm backend, it takes the same effort as nim to port rust and haskell. > Did they write the first compilers with Assembler? Rust was written in Ocaml first, bootstrapping from C need decent amount of…

> Unless you are talking about an architecture which doesn't have llvm backend

Nim doesn't depend on LLVM. It works also with GNU C.

Re: Integrating “safe” languages into OpenBSD?

#106

Earlier quoted context omitted.

> He has a point though… Does he? He "stat[es as] fact" that > There has been no attempt to move the smallest parts of the ecosystem, to provide replacements for base POSIX utilities. which as xwvvvvwx notes is categorically wrong, then points out that rustc can't compile itself on i386, which is relevant… how?

> then points out that rustc can't compile itself on i386, which is relevant… how? Remember he is speaking as the leader of an operating system project. As in, a basic part of the project functioning normally is compiling the whole thing from scratch. If something needs cross-compilation to even get started it won't end up in OpenBSD base. I seem to recall when it supported more architectures they made a public show…

And thus they lock themselves into the lowest common denominator as they target smaller systems. This is ridiculous. OpenBSD looks like performance art, literal security theater.

Re: Integrating “safe” languages into OpenBSD?

#107

If "safe" language would be real magic pill for safe programming, Ada would have replaced C and C++ in systems programming and safety critical applications long time ago.

There are no magic pills. There's a lot more to languages than just the languages themselves.

Re: Integrating “safe” languages into OpenBSD?

#108
post #29

Earlier quoted context omitted.

I'm pretty sure that attack you describe is mentioned in literature as essentially undefeatable. I really wish I could remember exactly what the name of it was; the gist is, there has to be a first compiler somewhere. If at any point in the chain, the compiler is infected with a self-propagating virus that hides itself in the byte code of the binary, it can ensure that the exploit is in every future version of the co…

A talk by Ken Thompson, "trusting trust".

Technically, his Turing award lecture.

Re: Integrating “safe” languages into OpenBSD?

#109
post #82

Earlier quoted context omitted.

> go needs go, haskell needs haskell, rust needs rust That's painful. It's one big point which Nim [1] does better. It compiles to C and bootstraps from C. That makes porting to other platforms much easier. I don't understand why Haskell and Rust don't provide bootstrapping from C. Did they write the first compilers with Assembler? > You just don't notice it because these two languages are already part of the base sy…

Rust's first compilers were written with OCaml. We don't provide bootstrapping from C because no C-based toolchain has ever existed. However, it may in the future; see my link upthread.

I think bootstrap with OCaml is ok - if just bootstrap from source becomes possible at all. Binary-only dependency is awful when Rust is wanted on yet unsupported systems.

Re: Integrating “safe” languages into OpenBSD?

#110
post #78
post #6

Earlier quoted context omitted.

And Go: https://github.com/ericlagergren/go-coreutils Does he really not know this or is he ignoring them to make a point?

go-coreutils is abandoned, and not POSIX compliant. It was meant to be a proof-of-concept, and it kind of was, in a negative way.

What was the problem?
Post reply on HN