jmct's comments

jmct | 3 years ago | on: CMSC 430: Design and Implementation of Programming Languages

Apologies for causing a spike in your impostor syndrome!

330 is 'required' in the sense that you're not allowed to take 430 at UMD without having taken 330.

Perhaps a better way of phrasing it would have been to list the things we assume students have retained from 330. One of which is OCaml :D

I hope these videos provide some value to you! Always feel free to reach out if there's anything you think I could do better.

jmct | 7 years ago | on: Ask HN: Who is hiring? (December 2018)

Just to add on to this:

The languages people use at Galois lean towards functional programming languages: Haskell, Coq, etc. and systems languages: C, Rust (increasingly).

jmct | 7 years ago | on: Applicative WTF?

The reason GHC won't infer the definition of Applicative is because there can be multiple valid `Applicative` instances for a type (unlike `Functor` where there is a unique (non-trivial) instance).

The canonical example of this is lists, with 2 valid instances of `Applicative`.

The author of the post seems to have this realization, but I wanted to call it out, just in case.

jmct | 8 years ago | on: PySEAL: Homomorphic encryption in a user-friendly Python package

The problem of getting Homomorphic Encryption in the hands of data scientists is what the RAMPARTS project we're working on at Galois is about (https://galois.com/project/ramparts/). We presented some preliminary results at JuliaCon last year: https://www.youtube.com/watch?v=_KLlMg6jKQg

The main difference to the work from the article is that RAMPARTS is _not_ a API wrapper. It allows the the Julia Programmer to write the function as they normally would, and then compiles it to FHE. This way the programmer can use _the same_ function for plaintext testing and development and for running under FHE.

Since the JuliaCon talk we've pushed this a bit further and actually coming to a close on the project. We learned a lot about the difficulties of making FHE invisible to the user, which was the aim of the project. We're hoping to continue this work in the future and make it even more seamless for developers.

jmct | 8 years ago | on: Reflecting on Haskell in 2017

Galois does not work on financial products. It is a research services company (i.e. R&D for hire) that focuses on high-assurance software.

jmct | 10 years ago | on: Introducing Incremental

Haskell does not do this. Haskell is lazy (computed results are shared), but Haskell does not memoize by default. To illustrate:

    func y = let z = y + y
             in (add 1 z) * (add 1 z)
in `func` the result of computing `y + y` is shared because it has been given a name: `z`. However, the result of `add 1 z` is _not_ given a name and therefore has to be computed twice. Because Haskell is pure, they will result return the same result, however the result is not saved.

This avoids needing to save the results of _all_ function calls.

jmct | 11 years ago | on: FTC Officials Back Tesla’s Right to Sell Cars Direct to Consumers

Do you live in a big (or bigger than average) city?

I live in the UK in a small town and can not imagine having kids but no car. Most of my friends find having a car is essential even without kids (though I prefer to not have a car unless 100% necessary).

On my own I am fine with public transport, but anything between walking around the village or going to a big city isn't really covered by public transport.

jmct | 11 years ago | on: Whitehouse response to Aaron Swartz petition

It makes me wonder, what does the White House consider a suitable forum for holding appointed officials to account? Or more appropriately, holding the appointers to account.

jmct | 11 years ago | on: Workaholism in America Is Hurting the Economy

While your point is also good, I really wanted to know the case where the a generic equivalent isn't even available (despite being more effective).

The OP's anecdote seems to imply that there are situations where only inferior proprietary drugs are available. Which, in my opinion, would be impossible to defend, no matter how much of a fan of the free market one might be.

jmct | 11 years ago | on: Workaholism in America Is Hurting the Economy

Would you mind naming the generic drug? It seems like this is a powerful argument against having (only) for-profit healthcare. I'd like to be able to point to a specific case of what you're describing.

jmct | 12 years ago | on: Plaintiff in tech hiring suit asks judge to reject settlement

I'm glad that Michael Devine has the courage to turn down the settlement. I think it helps that there seems to be clear evidence of wrongdoing.

Also, maybe I am misunderstanding something, but does the plaintiff have to ask for the settlement to be rejected?

I thought that for a settlement to go through, all parties have to agree, otherwise it goes to court.

jmct | 12 years ago | on: Radical Islam Website Readers May Be Prosecuted

I think you have good points, I do think you're introducing a false dichotomy though.

I'd prefer if there were no censorship on TV and there was guaranteed freedom of speech.

I can definitely understand where you're coming from (in as much as any non-German can understand), but I do wonder if it's possible to allow hate speech and to fight it in other ways.

Maybe not, but I do think it's an ideal to strive for.

Also, when it comes to US TV, it depends on the channel and whether it's using public bandwidth. Channels like HBO and Showtime don't have to censor anything. But overall I think you're right, the US does have this strange Puritan culture that seems to be in conflict with its idea of personal freedoms.

You say that you aren't a fan of hate-speech laws in general. May I ask where you think the line is? I feel like it's incredibly difficult to define what's appropriate without leeway for abuse.

I am often envious of how good Germany (as a country/government) is about keeping things within the spirit of the law and being reasonable about how things are implemented. The efficiency of the German bureaucracy is a good example: You tend to see less waste and corruption than in other western countries.

So with that in mind, it's sometimes hard to use Germany as the standard since they set the bar too high for the rest of us!

jmct | 12 years ago | on: Radical Islam Website Readers May Be Prosecuted

Yes, we get it. 'Europe' and countries within Europe are not the same thing. You are missing the point. Yes, this article only talks about the UK, but Europe generally has a problem with free speech.

The following countries have laws against hate speech:

Belgium@: http://en.wikipedia.org/wiki/Belgian_Anti-Racism_Law

Denmark: http://www.inach.net/content/denmark.html

Finland: (sorry, could only find PDF) http://www.ohchr.org/Documents/Issues/Expression/ICCPR/State...

France@: http://en.wikipedia.org/wiki/Hate_speech_laws_in_France

Germany@: http://www.iuscomp.org/gla/statutes/StGB.htm#130

Iceland: (Art 233) http://www.wipo.int/wipolex/en/text.jsp?file_id=190914#LinkT...

Netherlands: http://wetten.overheid.nl/BWBR0001854/TweedeBoek/TitelV/Arti...

Norway: (135 a) http://lovdata.no/dokument/NL/lov/1902-05-22-10/KAPITTEL_2-6...

Sweden: (PDF Ch. 16 sec. 8) http://www.government.se/content/1/c4/15/36/d74ceabc.pdf In case you don't want to read that far "sentenced for agitation against a national or ethnic group to imprisonment for at most two years"

UK: See article.

The countries with an '@' are ones that also ban certain kinds of denial (usually Holocaust denial).

Note it is very likely that more countries in Europe have bans on free speech, these are just the ones I know of and could get sources for quickly.

On top of that, your point "Europe (as a political entity) has only generally positive things to say about freedom of speech" is only accurate if you don't take freedom of speech seriously. The European Convention on Human Rights AND the Charter of Fundamental Rights of the European Union says it is up to the countries whether hate speech counts as free speech! Which misses the entire point of free speech, that no one is able to say what is and is not okay speech!

I live in the UK and the things that upsets me most is the lack of free speech here. There seem to be far too few countries that take it seriously.

So yes, I think it is fair to say Europe has a problem with free speech.

jmct | 12 years ago | on: The Evolution of CS Papers

Programming is still heavily influenced by research. Modern type systems, concurrent algorithms, compiler frameworks like LLVM, and lots of other great things have come straight out of academic research.

I don't understand why the Hacker News community tends to downplay the effect of pure CS research and the programming ability of people in academia.

jmct | 12 years ago | on: 24 Days of Hackage: pandoc

You can use pandoc without needing to write any Haskell. This article is about pandoc (the library), but you can also get pandoc (the command line tool) and convert between common document formats.

In fact, I'm quite comfortable with Haskell and have never used pandoc as a library, I just use the tool.

Also, many Linux distros include pandoc in their repositories, so you can install it very easily.

page 1