JSFoo Pune 2020
On component architecture, performance, security for front-end, and emerging trends
Feb 2020
24 Mon
25 Tue
26 Wed
27 Thu
28 Fri 08:50 AM – 05:35 PM IST
29 Sat 08:50 AM – 06:00 PM IST
1 Sun
On component architecture, performance, security for front-end, and emerging trends
Feb 2020
24 Mon
25 Tue
26 Wed
27 Thu
28 Fri 08:50 AM – 05:35 PM IST
29 Sat 08:50 AM – 06:00 PM IST
1 Sun
Paul Viktor
The talk gives an introduction to Purescript. Purescript is a pure functional language which compiles to Javascript and has support for pretty advanced features that a programmer can expect, like higher kinded types, poly kinded types, row polymorphism, and good type inference. It interops seamlessly with Javascript and can be used to write concise, elegant and expressive code which can run on any JS engine. The ideas used in the language are very similar to Haskell, another pure functional language. It doesn’t have a runtime and the generated JS code is very clear and is easy to look at and debug. Purescript helps prevent a huge class of run time bugs. The type system is very strong and aids type inference and also code suggestion. So it helps manage huge codebases by separating effectful code from pure code and keeps effects at its edges and very minimal.
The intended audience is anyone who is familiar with Javascript and is looking for ways to write better code.
I have been working with Purescript and Haskell and have previously worked on Node.js and Scala in the past. The thing I admire in purescript is its simplicity, elegance and a unified way of expressing seemingly varied concepts. Like everyone, the syntax and operators were scary at first and the type system too rigid, complaining at every small change, but have started enjoying Purescript and its hard for me to imagine writing code in any programming language which may not be as expressive as Purescript in terms of ideas and abstractions.
Feb 2020
24 Mon
25 Tue
26 Wed
27 Thu
28 Fri 08:50 AM – 05:35 PM IST
29 Sat 08:50 AM – 06:00 PM IST
1 Sun
Hosted by
{{ gettext('Login to leave a comment') }}
{{ gettext('Post a comment…') }}{{ errorMsg }}
{{ gettext('No comments posted yet') }}