Show notes
In this episode I talk with Sam Guyer and Caleb Helbling. We talk about Juniper, a functional reactive programming language for Arduino programming.Our Guests, Sam Guyer and Caleb HelblingSam Guyerhttp://www.calebh.io/@CalebHelbling on TwitterConference AnnouncementsMonadic Party, a 5 day Haskell Summer School, will be taking place in Poznań, Poland the 11th-15th of June. Visit https://monadic.party/ for more information and to register.The 2018 Racket Summer School will run July 9th – 13th at the University of Utah, in Salt Lake City, Utah. For more information, and to apply visit https://summer-school.racket-lang.org/2018/.BusConf will take place for the second time from August 2nd to August 4th in Germany, close to Frankfurt. For more information and to register visit: http://www.bus-conf.org/.Compose::Melbourne will be taking place Monday August 27th. Visit http://www.composeconference.org/ to keep updated as more details are announced.International Conference on Functional Programming 2018 will be taking place September 23 – 29th in St. Louis, MO. For more information, and to register visit: https://icfp18.sigplan.org/StrangeLoop 2018 will be taking place September 27th and 28th, with a pre-conference day on the 26th in St. Louis, MO. To keep updated as details become announced you can find out more at: https://www.thestrangeloop.com/(eighth RacketCon) will take place September 27th and 28th in St. Louis, Missouri, along side ICFP and Strange Loop. For more information, and to register visit https://con.racket-lang.org/.The Big Elixir Conference will be on November 8th and 9th in New Orleans. Visit https://www.thebigelixir.com for more information and to register.If you have a conference related to functional programming, contact me, and I will be happy to announce it.AnnouncementsSome of you have asked how you can support Functional Geekery, in that vein,Functional Geekery now has a Patreon Page.If that is one of the ways you would like to show your support, you canfind out more at https://www.patreon.com/fngeekery.Topics [@About Sam and CalebTufts UniversityJuniperArduinoHow Sam and Caleb got into working with ArduinosJuniper PaperAddressable RGB LED strips“There’s smoking coming out if it. Now it’s garbage.”Pain of programming on an Arduino for those not familiar with C++FastLED libraryConcurrency and discrete event simulatorSignalsGoing from feeling the pain to creating JuniperRepresenting a Signal GraphElm ArchitectureMaybe Types to represent Signal valuesReactive Programming modelData Flow ModelFunctional Reactive ProgrammingUsing polling based model under the coversSignal Graph as a mental modelImportance of Higher Order Functions on SignalsWriting Signal generation functions in C++Ability to have multiple Signals propagating at the same timeDebouncing button pressWhere Juniper fits today with an interrupt modelWriting Juniper in F#HaskellOCamlStandard MLfparsecWorkflow from writing code to loading on an ArduinoC++ TemplatesDebugging hardware vs softwareWhere Juniper is todayProblem with closures in embedded software with limited memoryHow to get started with JuniperJuniper Google GroupBlockspellFastLED Google+As always, a giant Thank You goes to David Belcher for the logo design.

