Technology Architect @ Axelerant
Member since 2 years
Most of my time is spent in creating stuff I envision about in the shower in the morning.
A lot of concepts are being adopted from functional programming languages into the mainstream.
Here's some evidence.
Originally invented for Lisp. Adopted by mainstream languages recently.
Automatic type deducing from an expression. Has been adopted in C#, D, Go and C++11. Uses Hindley-Milner Algorithm, which has its roots in type theory and functional programming.
Algebraic data types
Creation of composite types from simpler ones, structs and enums on steroids. Originated in a functional language called Hope. Stock stuff in Haskell and ML family languages. Found recent adoption in Rust.
Nullification of null
null reference was termed a "billion dollar mistake" by its inventor. Haskell uses a Maybe instead. Scala uses the Option type. Rust also adopts this idea.
very common in Lisp. Sugary for loops. Caught on in python and ruby. In fact, introducing lists as a part of the language core is not something mainstream languages like C had. Every time the programmer had to maintain a list of sorts, they had to implement their own and manage the memory. This is the reason why all programming tests have some variation of a linked list implementation question!
Yup, you guessed it. Borrowed from Lisp.
Functional programming has been used in mainstream for around 20 years. elisp is "the proof of the pudding". It is a DSL which is indispensible for any emacs user and gives emacs its versatality. This talk will cover:
Haskell has got all it takes to be a suitable first programming language, like automatic memory management, readability, REPL and terseness. Given Haskell's strong academic roots, it is an irony that it is not being taught in universities.What stops universities from teaching Haskell as a first language? Teaching Haskell, or functional programming in general could have a profound impact on programmers. This talk examines