Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

> Computer Science: Computability, Formal Specification, Correctness Proofs, Network Analysis, OS Paging/Scheduling, Queueing Theory, Language Syntax/Semantics, Automatic Programming, Complexity, Algorithms, Cryptography, Compilers.

It's interesting/funny that when talking about CS, or more academic point of views around software development, the terms "Formal Specification" and "Correctness" are often mentioned, yet most CS students/labs still use languages that are really badly suited for this job, such as dynamically typed languages like Python.



There are various fields in computer science, nobody claims formal specification and correctness in a NLP/ML library nor in a graphics library. Formal verification is orthogonal to other fields.


Are languages like C & C++ that much better?


Neither are "better". Its all about tradeoffs.

I hate large python code bases with no strict types specified anywhere. It's a nightmare to maintain that code.


Of course not, but Haskell/F#/OCaml/F*/Rust are.


No, but languages like Haskell, Ocaml, F#, Idris, Purescript, Elm etc are definitely, when talking about correctness.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: