PS Unscripted - Existentials in Pagination, Bundling and JS Modules
Channel: PureScript Community
Date: 11/02/2018

PureScript Unscripted, February 10, 2018

Thanks to all who attended! Was fun!

Recommend watching at 1.5x or 2x speed.

Timings:

0:30 - Overview of basics of server-side pagination (continued later)
3:25 - Chatting about Pux and other browser-app code

11:00 - PS ecosystem changelog

17:14 - Talk: Three ways to Pagination in PureScript
18:00 - Motivation
18:49 - BoundedEnum, Bounded, and Enum classes
21:25 - First attempt to define a pagination type
23:29 - Problems arise when defining Bounded instance
24:10 - Second attempt - page count in type
28:00 - BoundedEnum instance
30:17 - Try using Page type as BoundedEnum instance
32:48 - Limitations of page count in type
33:15 - Using existential quantifier - temporarily use value as type
39:00 - How to make type-level page count from runtime value.
42:15 - Is it safer? Is it worth the complication?
47:09 - Pagination with page size in type
49:00 - Mealy machine paginator
51:40 - Conclusion

Some errors in the slides: Page, not Paged

https://github.com/chexxor/purescript-pagination

53:38 - Experience of using PureScript to write smartphone apps?
1:00:50 - Briefly on other topics: ps-smash, drag-n-drop components
1:11.50 - JavaScript bundlers and lazy-loading PureScript modules from browser
1:16:30 - Module formats and PureScript code-gen
1:18:40 - Problem with lazy-loading module syntax is its design isn't settled

Rob's referenced articles:
- The "it's all figured out" narrative: https://medium.com/@giltayar/native-es-modules-in-nodejs-status-and-future-directions-part-i-ee5ea3001f71
- npm doing their own modules thing: https://gist.github.com/ceejbot/b49f8789b2ab6b09548ccb72813a1054

1:23:12 - Experience with bundling non-JS assets?
1:27:40 - Experience using Brunch?

1:31:04 - Talk about justinwoo/react-basic-thing
1:33:43 - Type-checked React component properties
1:37:18 - Project's entry point, HMR, and build using Parcel
1:38:15 - Parcel intro
1:42:08 - ps-react and ps-react-basic in same project?

https://github.com/justinwoo/react-basic-thing
https://github.com/lumihq/purescript-react-basic

1:45:05 - Good uses of Applicative?