3,924 reputation
21649
bio website connjur.uchc.edu
location Connecticut, USA
age 27
visits member for 2 years, 10 months
seen 2 days ago

I work in a scientific computing group on the CONNJUR project, providing open-source software for NMR (Nuclear Magnetic Resonance) spectroscopy.

Check out some of my work on github:

  • NMRPyStar: an API for accessing archived NMR data files in the NMR-Star format used by the BMRB.

  • Miscue-js: validation of JSON files to deal with obnoxious and tricky interoperability issues such as number overflows and duplicate keys

Some technologies that I've used and like:

  • Python
  • git
  • Javascript
  • Haskell
  • Java
  • MySQL

Jun
18
comment What does scannerless parsing have to do with the “Dangling Else Problem”?
@Giorgio ... um. That example doesn't really help me. Scannerless parsers could be implemented like that, but there's much easier/safer/clearer/simpler ways of doing it. But I guess if that's the point the wikipedia page was making ...
Jun
18
comment What does scannerless parsing have to do with the “Dangling Else Problem”?
@RobertHarvey a common way to define languages is using a context-free grammar, plus a bunch of rules which disambiguate the grammar, if necessary.
Jun
18
comment What does scannerless parsing have to do with the “Dangling Else Problem”?
@Giorgio I am confused by your comment: 1) why does a scanner-less parser need a more complex grammar? The grammar is independent of the implementation. 2) heuristics? Isn't there a well-defined answer to the dangling else problem -- no guessing required?
Jun
18
asked What does scannerless parsing have to do with the “Dangling Else Problem”?
Jun
18
comment Homogeneous vs. heterogeneous AST representation
Good question. Asked on stackoverflow: here.
Jun
18
revised How can I salvage my internship?
good answer, but it's really hard to read with random bold, capitalization, and quoted patches
Jun
14
revised When is it a good time to reason about performance in Haskell?
added 2 characters in body
Jun
1
revised Disadvantages of functional intermediate form
added 89 characters in body
May
30
comment Phonetic programming language?
Do you have any evidence to back that up, or is it purely speculation?
May
24
comment What did Rich Hickey mean when he said, “All that specificity [of interfaces/classes/types] kills your reuse!”
Sorry, but after carefully rereading the article and listening to the speech, I feel forced to conclude that there's nothing more than the most incidental of similarities between the flyweight pattern and what Rich was talking about ... I would love to be convinced otherwise though! :) ... I also can't find any support for the notions that flyweight objects must be "code-less values", or that use of "code-less values" must mean one's applying the flyweight pattern ... :(
May
24
comment What did Rich Hickey mean when he said, “All that specificity [of interfaces/classes/types] kills your reuse!”
The flyweight pattern is not what Rich is talking about. As the second sentence of the article states, the purpose of the flyweight pattern is to conserve memory. Rich's approach does not seek to do that.
May
24
comment Strengthening code with possibly useless exception handling
Some people think that the "robustness principle" is crap. The article gives an example.
May
21
comment Writing a Compiler Compiler - Insight on Use and Features
I think I didn't go a great job expressing my point about templates/functions: I meant that because you can never have enough, a system shouldn't try to figure them out ahead of time: the user needs to be able to create his own.
May
21
revised How to explain OOP concepts to a non technical person?
added 5 characters in body
May
20
answered Why is it a good idea for “lower” application layers not to be aware of “higher” ones?
May
17
answered Writing a Compiler Compiler - Insight on Use and Features
May
17
revised Is it possible to create a single tokenizer to parse this?
amount of memory needed to parse language is finite, therefore a regular grammar is sufficient? hope so
May
16
comment How to modularize and package a client-side Javascript library today?
Have you watched it? I seem to remember the guy walking us through a library and explaining the specific lines of code that made it work with multiple module systems without requiring any of them.
May
16
comment How to modularize and package a client-side Javascript library today?
This is an awesome tutorial: youtube.com/watch?v=USk1ie30z5k The guy mentions requirejs (r.js), node, bower, backbone, ...
May
16
comment Is it possible to create a single tokenizer to parse this?
Parser combinators are a huge one -- tons of libraries in every language for 'em. Antlr is quite popular and has a good reputation; haven't used it much so not sure how different it is from lex/yacc though.