dons

Joined 19 years ago

Karma
9,590
Submissions
897
Member since
Aug 21
Don Stewart

Functional programmer, PhD in computer science, and quantitative finance developer. I've been programming Haskell for the past 19 years. --I write trading software and lead a dev team at Standard Chartered Bank.-- I manage testing and verification at Facebook.

Co-author of the book "Real World Haskell", and of the xmonad window manager. I founded the Haskell Platform project and wrote the bytestring and binary libraries for Haskell. I'm interested in building great software, type-driven compiler optimizations and high-performance data structures.

London (prev. Singapore, New York, Portland, Sydney).

---

http://donsbot.wordpress.com/

http://twitter.com/donsbot

http://plus.google.com/115274377971493973150/

http://stackoverflow.com/users/83805/don-stewart

http://www.linkedin.com/pub/don-stewart/4/436/179

View on Hacker News

Recent submissions

Comment · 5 years ago
I think the point in the space Glean hits well is efficiency/latency (enough to power real time editing, like in IDE autocomplete or navigation), while having a schema and query language generic enough to do multiple languages and code-like things. You can accurately query JavaScript or Rust or PHP or Python or C++ with a common interface, which is a bit nuts :D
Comment · 5 years ago
Most clients hit the Glean server via the network (thrift/JSON) and then mostly via language bindings to the Glean query language, Angle. The shell is more for debugging/exploration.

Imagine an IDE plugin that queries Glean over the network for symbol information about the current file, then shows that on hover. That sort of thing.

Comment · 5 years ago
A bit of both I think.
Comment · 5 years ago
We use this to power things like find-references or jump-to-def, "symbol search" and autocomplete, or more complicated code queries and analysis (even across languages). Imagine rich LSPs without a local checkout, web-based code queries, or seeding fuzzers and static analyzers with entry points in code.

Our focus has been on very large scale, multi-language code indexing, and then low latency (e.g. hundreds of micros) query times, to drive highly interactive developer workflows.

Comment · 7 years ago
Solving NP hard problems efficiently.
Comment · 8 years ago
And "eradicate" for Java... http://fbinfer.com/docs/eradicate.html

we love types. They help us ship stuff faster.

Comment · 9 years ago
Lumping state with some functions that implicitly have R/W access to that state is not possible in Haskell

s/not possible/possible, but highly discouraged/

Comment · 9 years ago
Comment · 10 years ago
Comment · 10 years ago

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton