2,915 reputation
1016
bio website jelv.is
location Berkeley, CA
age 21
visits member for 3 years, 9 months
seen Sep 5 at 23:36

I am a student interested in programming languages, functional programming, program synthesis, type theory, universal algebra and startups (not necessarily in that order!). In the near future, I want to combine as many of these as possible.

I am currently an undergraduate researcher at the Berkeley ParLab, working on program synthesis. This past summer, I was a tech intern at Jane Street Capital, brazenly using OCaml in the real world. Right now, I'm leading a meetup group about type theory; you can see the slides here or just show up to the next on if you live near SF ;).

I am always happy to chat: my email is tikhon@jelv.is

GitHub: http://github.com/TikhonJelvis

Website: http://jelv.is


May
4
comment Functional programming language for web development
+1 for JavaScript--it isn't statically typed and it isn't purely functional, but you won't miss the type system (and, moreover, things like object literals wouldn't be possible with static typing as far as I know) and you can write some very interesting code with node.js.
May
4
comment Functional as a first language
To be fair, a whole bunch of languages are incorporating more and more functional aspects, so life isn't as bad as it used to be.
May
4
comment Functional as a first language
At my university, we started by learning Scheme (with SICP). The first few weeks were entirely functional; OOP was introduced well into the course. I thought it was all laid out very well and rather liked the course.
May
2
answered Was getting a computing science degree easier 10 years ago
May
1
comment How permissive should a language be about identifiers?
@n1ck: In Lisp, at least, symbols are separated by spaces and surrounded by parentheses. Also, everything is in prefix order. So alpha - beta would be (- alpha beta) and i = alpha-beta would either by (set! i alpha-beta) or (set! i (- alpha beta)) depending on which one you meant. (When I say I used Lisp, I really mean Scheme, a type of Lisp, but the point still stands.)
May
1
comment How do you get into the zone? How long does it take? What steps do you take before?
@Kim Jong Woo: I think it's having all of the developers in one big room without walls or offices.
May
1
comment How permissive should a language be about identifiers?
@Orbling: Sometimes confusing developers in the short run is actually worth it in the long run. And if it fits well with the rest of his language, it might not be very confusing at all.
May
1
comment How permissive should a language be about identifiers?
I took a class that was done entirely in lisp, which allows alpha-beta as an identifier, and actually found it very reasonable. In fact, getting back to other languages was annoying afterwards.
Apr
28
answered Interested in a million things, have a million goals: how to choose what to focus on
Apr
28
comment Can I integrate software under Creative Common for commercial gain?
I think that if you're going to use CC software for a commercial purpose you should definitely talk to a lawyer, even if you also read the terms yourself.
Apr
27
comment How to explain to non-programmers that programming is not a repetitive task?
Even if, say, composing music is "harder", the problems in CS scale to compensate: each line of code may be easier to write than a single note, so we have projects with literally millions (if not more) lines of code. So even if each atomic action is simpler, the best programmers are simply expected to solve more difficult problems.
Apr
23
comment What is so difficult about pointers/recursion?
At my university, the first course started out with functional programming and recursion almost immediately, well before introducing mutation and the like. I found that some of the students without experience understood recursion better than those with some experience. That said, the very top of the class was made up of people with a lot of experience.
Apr
20
comment Should certain math classes be required for a Computer Science degree?
Odd, at my university, "scientific computing" refers to the sort of thing physicists and mechanical engineers do with Matlab rather than actual CS. There is even a "Computational Engineering Science" major that is completely separate from CS (although they are thinking of getting rid of it).
Apr
20
awarded  Commentator
Apr
20
comment Should certain math classes be required for a Computer Science degree?
I would personally add a probability/statistics course to that list.
Apr
18
answered What's the cheapest way to host hobby projects?
Apr
18
answered Gaining experience working with a team
Apr
18
comment Must a programmer learn text editors like Emacs and Vim? How important are they?
I was a high school student then (last year) and became very comfortable with it in a single semester. Make of that what you will.
Apr
18
answered Must a programmer learn text editors like Emacs and Vim? How important are they?
Apr
18
comment Must a programmer learn text editors like Emacs and Vim? How important are they?
I actually found that having learned Emacs as a (relative) beginner, life was much easier: whenever I wanted to use a shiny new language (say Haskell), I could still use the same editor. Before, I had trouble switching between random languages because of the different IDEs I tried to use.