We argue, though, that deeply buried within that 265- line miniKanren implementation is a small, beautiful, relational programming language seeking to get out. We believe µKanren is that language.
In this presentation we will discuss µKanren, a relational language in the family of miniKanren. We will discuss the basics of relational programming, variable binding, and the strategy that µKanren uses for backtracking. We will explore these concepts using elm-microkanren. Finally, we will briefly cover the work needed to bring µKanren into feature parity with miniKanren using my own extensions to elm-microkanren (plus error handling and named variables.)
Brian Hicks is the CTO of Asteris, a devops consultancy based in St. Louis, MO. He organizes elm-conf US, blogs about Elm (and other things) at brianthicks.com and runs the St. Louis Tech Slack. He enjoys biking around St. Louis, hanging out with his wife, and tweeting about his cat.
In the spirit of April Fool's we'll be doing a slightly different format this month. This meeting will consist of 5 minute lightning talks on "papers I hate". The meaning of this is completely open to your own interpretation, but some possible ones could be:
1) papers I "hate" -- A tongue in cheek roast of a paper you really like.
2) "papers" I hate -- A talk on something you dislike that isn't really a paper, but is kind of one. This can be tongue in cheek or earnest.
3) "papers I hate" -- A paper you actually dislike, but please keep it lighthearted.
We're removing the rule that you can't speak on a paper you published. If you want to lovingly bash your own work and think it would be fun for all then go for it. Also, if you choose to reinterpret "papers" for your talk we can also loosen the rule that the paper should be published as it would not make sense otherwise.
I apologize for the short notice on this change in format, but if you were in the meeting…
Join us to learn about the frontier of Bayesian methods and probabilistic machine learning: Bayesian nonparametrics. We will introduce you to both the mathematical and computational aspects of the most important such model, the Chinese Restaurant Process. CRP is a fully probabilistic, generative model of clustering. First we will explore the theory and applications in both equations and plain-language graphical examples. Then we’ll tell you our story of woe and ultimate triumph in translating this powerful paper into software for big data through 7 rounds of performance optimization rewrites in Scala. Even if you’re not using CRP, these time-honored strategies for speeding up complex calculations will help you unleash your statistical models on big data.
Cibo Technologies is a Computational Agronomy startup using daily, planetary-scale agricultural models to improve farms, commodity trading and global supply chains. Our team blends mechanistic biological models with data scie…
A homomorphic encryption scheme is one that allows computations to be carried out on ciphertext. The idea is the following: I have two integers a and b and I want to encrypt them in a special way, one that allows YOU to use ENCRYPT(a) and ENCRYPT(b) to compute a third value x such that DECRYPT(x) = a+b - in other words, you have computed a+b for me and I didn't even have to tell you what a or b were! Such a scheme would have a great many applications but the quest to construct one was mostly fruitless until just a few years ago.
In my talk, I'll start by explaining what a homomorphic encryption is, why the "fully" in my title is an important qualifier, and go into a few of the many reasons that homomorphic encryption is a big deal. I will then talk a bit about recent progress in this area with specific focus on the (linked) papers Fully Homomorphic Encryption over the Integers and
Would you believe that one 13 page paper written in 1964 coined:
- syntactic sugar
- partial evaluation
- de Bruijn Indices
- call by need
- strictness analysis
- domain specific languages
- applicative expressions
... and if that wasn't enough also invented a profoundly influential lambda calculus abstract machine called the SECD machine?
... and that's 13 pages including citations!
Join me as we dive into a paper virtually unknown outside of academic circles that a beginner could read over a weekend and that changed the course of programming languages forever.…
… in the presence of cyclodextrins: The use of maltosyl-β-cyclodextrin as secondary antioxidant.
This month, Brian Kamusinga will be presenting a paper that just might have the longest title we've presented on so far!
Here's the abstract, and we'll try to get a copy for the group later:
"Enzymatic browning reactions limit the commercial shelf life of apple juice, so that colour preservation during storage is one of the main objectives of fruit processors. In this paper, the colour of fresh apple juice was evaluated in the presence of different types of cyclodextrins (CDs) (α-CD, β-CD, γ-CD and maltosyl-β-CD), compounds that bind or complex polyphenol oxidase substrates. The effectiveness of CDs as browning inhibitors was determined as the difference between the colours observed in the CD-treated sample and the controls, using the colour space CIE-L∗, a∗, b∗ system. Although the effect of CDs on apple juice enzymatic browning has been studied, the action mechanis…
This month, programming goddess Jessica Kerr will present on "Using Reasoning About Knowledge to Analyze Distributed Systems" by Joseph Y. Halpern. A link to the paper can be found here: https://www.cs.cornell.edu/home/halpern/papers/UsingRAK.pdf
Here's a taste of the paper from its introduction: "Designing, understanding, and reasoning about distributed systems can be complicated. The major complexities arise from the uncertainties inherent in the system, particularly with regard to message delivery and possible faulty or unexpected behavior of processors. A protocol must be designed (and proved!) to function correctly even if it is possible for messages to be lost, for messages to arrive out of order, or for some processor to fail."
Please note that we're at a new location this month: Ultralinq will be hosting us at 9666 Olive Blvd. in Olivette. Once you arrive, use the ele…
Rebecca Skinner will be discussing "<a>RAPPOR: Randomized Aggregatable Privacy-Preserving Ordinal Response</a>" by Úlfar Erlingsson, Vasyl Pihur and Aleksandra Korolova.
From the abstract: "Randomized Aggregatable Privacy-Preserving Ordinal Response,or RAPPOR, is a technology for crowdsourcing statistics from end-user client software, anonymously, with strong privacy guarantees. In short, RAPPORs allow the forest of client data to be studied, without permitting the possibilityof looking at individual trees."…
Adam Bowen will be discussing "No Silver Bullet—Essence and Accident in Software Engineering" by Turing Award winner Frederick P. Brooks, Jr.
The article begins with a quote: "There is no single development, in either technology or management technique, which by itself promises even one order-of-magnitude improvement within a decade in productivity, in reliability, in simplicity." We'll discuss what the meaning of "essence" and "accident" in software engineering, and where we should focus our efforts for maximum impact as we design and build software.…
Arrow's impossibility theorem is the original, seminal example of a "voting paradox" that limits how "nicely" a method of producing a group decision from individual preferences (like voting) can behave. Specifically, the theorem describes 4 properties that we'd all like our voting system to have and states that no voting system can have all these properties at once.
The beauty of the theorem is how easily it can be tied to common frustrations of democratic politics. I will start by giving a few historical examples of the independence of irrelevant alternatives (the most interesting of the aforementioned 4 properties) in action. I will then give a simplified toy proof of the theorem posed via a game in which one voter does their best to troll another. Finally, I will blast off into outer space and discuss esoteric and impractical topics like set theory and ultrafilter voting.
The Wikipedia ar…
How do we recognize the "look and feel" of a city? Often it boils down to stylistic elements such as the design of windows, balconies, doors or street signs. The authors present a clustering method weakly supervised by geographic location to discover a city's representative visual features from Google Street View imagery.
Carl Doersch, Saurabh Singh, Abhinav Gupta, Josef Sivic, and Alexei A. Efros. What Makes Paris Look like Paris? ACM Transactions on Graphics (SIGGRAPH 2012).
This is a paper about how the preservation of biological molecules in the geological record can aid paleontology by conforming to and/or elucidating our current understanding of evolutionary biology. Should be fun! (I have uploaded a PDF of the paper to the meetup group's files section).…
Ishtiaq Maqsood will discuss several papers on Network Control Systems. These include:
2. <a>PID controller tuning for network delayed motion control</a>
Food will be sponsored by Lisa Rokusek of AgentHR again. So, please be sure to thank her for her frequent support of Papers We Love.
This month we'll have a bit of a change of pace. The meeting will be hosted downtown by Robert Ward at Juristat's office on Washington. See the location above for the address. If the door to the lobby is locked please call Robert at (218) 550-5716.…
Sean Reynolds will talk about using rare earth magnets to induce eddy currents in a metal surface to create controlled levitation. This talk will not cite any specific paper, but will discuss research from several papers and potentially demo the technology.…
This will start with a brief introduction to differential expression analysis. This is the approach of comparing gene expression in two or more tissue samples to compare the way genes are expressed in various conditions. This will cover the basic principle, caveats, and a couple different approaches.
The second part will focus on one particular method for expression analysis, as developed by the Pachter Lab at UC Berkeley. They have used a newer method of assigning RNA-Seq reads to the correct locations of the genome. The RNA-Seq quantification is handled by the program kallisto, and the differential expression is performed by sleuth.
Web Pages for the tools:
Matt Follett will be providing a survey of Simultaneous Localization & Mapping. SLAM is a very interesting problem that has many different solutions based on the specific tools available and the exact goal.
We'll cover basic concepts necessary to understand the topic and then delve into a number of papers that take interesting approaches to solving this problem.
This should end up being a pretty fun talk with some interesting statistics, neat examples, and fun papers.
I'll be covering several papers which I'll try to update this description with soon.
Kyle Pointer will be presenting on Neal Koblitz's paper titled Elliptic Curve Cryptosystems. You can download a copy of the paper here.
A message from Kyle Pointer:
Anyone who is interested in better understanding some of the math behind this paper might be interested in the book Algebraic Aspects of Cryptography, also written by Neal Koblitz. It contains a LOT of background that is useful in understanding the paper. Many of the details that are left out of the paper are covered somewhere in this relatively short text.
And, for the true math heroes among you who, I can suggest you check out Koblitz's Introduction to Elliptic Curves and Modular Forms.
AND, just in case you want to have a book that your friends will think covers an oddly specific topic, Alex (who was at our last meeting) suggested the book Rational Points on Elliptic Curves to me, and I've …
Jacob will be explaining wavelets and how the concept behind them can be applied to computer graphics.
One of the papers he will focus on during this discussion is Wavelets for Computer Graphics, a Primer - Part 1.
Food will be sponsored by Lisa Rokusek.…
Excerpt from Kevin:
Yes the title sounds all biologyish-chemistryish but it's really a theoretical biology paper, which mostly means building fairly simple mathematical models of physical processes (with some numerical simulations). Parts of it are mathematically challenging but those parts can be glossed over without missing much.
If you look at the paper and it's too scary, don't worry. I'll do my best to explain what I love about this paper, but maybe you can read this 2-page review? If it doesn't hook you then you have no soul: https://people.maths.ox.ac.uk/maini/PKM%20publications/172.pdf
Food will be provided by Lisa Rokusek with AgentHR Recruiting Group.…
Adam Bowen will be speaking on Out of the Tar Pit.
This paper build on Brooks' work of defining accidental and essential difficulty. It then goes on to identify common causes of complexity and covers ways to eliminate some of them.
This paper has gotten a lot of attention lately & I know there were several people interested in it from the signup survey.
Like last time, doors will open at 6:30 with food and the meeting will start at 7.
Food will be sponsored by Lisa Rokusek of Agent HR.…
Kyle Pointer will be speaking on Chomsky's 1959 paper, On Certain Formal Properties of Grammars.
Description: Let's talk about grammars, machines for generating languages, the Chomsky Hierarchy, and why they're called regular expressions.
Like last time, doors will open at 6:30 with food and the meeting will start at 7.
I'll have more info on the food and food sponsor as the date comes closer. Please let me know if you have any specific dietary constraints.…
Finally, the first meeting of the St. Louis chapter of Papers We Love! For the first meeting we'll cover a really fun paper, Adaptive Road Following using Self-Supervised Learning and Reverse Optical Flow.
I'll go over some prior work, background for the necessity of the algorithm developed and described in the paper, and then go into reasonable depth on the method the paper presents.
The agenda for the night will be:
6:30 - meeting soft starts, informal meet and greet
6:50 - 10 minutes to talk about the larger Papers We Love organization, code of conduct, etc.
7:00 - Present paper then open for discussion about the paper and other topics…