Hacker Newsnew | past | comments | ask | show | jobs | submit | rhwk97's commentslogin

if you just choose an academic lens, you can say number of citations and limit it to certain journals


I find the functional programming crowd can be very vocal on a site like HN...can't tell you how many times I thought..."you know, I should really learn Lisp" after visiting here!


Hehe. I started learning Prolog a few weeks ago - not sure why. Maybe after seeing one more story about it on here, and seeing it on lists of languages that're good to learn. But didn't know anything much at all....

What a surprise. I really like it. It's really sooo different from any other language I've tried (C, C++, Python, JS, SmallTalk, Lisp, bash, AWK etc etc) - Most programming consists of telling the computer how to go about doing something. None of that in Prolog. You 'just' describe how the solution will look.[0] And secondly, it's unexpectedly Functional - it's impossible to change variable values, or iterate.[1] Recursion only. 'Data' is same form as 'program', the program can change the data/program while running etc. And even Lispier than Lisp in some ways.

I think I'll be regularly using it in an AWK-like way - and already have been - quickly writing programs of a couple of dozen lines or less to do things that would take longer to do otherwise. And there's something cute about it that AWK has too, maybe it's that it does well in its own unique world. Just starting that book on how Erlang was 'grown' using Prolog...

I don't know why I wrote this. Prolog was just surprisingly FPish, and if I hadn't learnt about that stuff, I wouldn't have recognized it, or appreciated it.

[0] Really, you need a new vocabulary to describe what it's doing. [1] Ok, not impossible.


>Just starting that book on how Erlang was 'grown' using Prolog...

What book is that?


Whoops. Not a book, just a 17 page paper. It's fascinating so far.

Use of Prolog for developing a new programming language (1992) by Armstrong/Virding/Williams.

http://192.121.151.106/publications/prac_appl_prolog.pdf


Thanks, will take a look.


Armstrong's PhD thesis from 2003 Making reliable distributed systems in the presence of software errors (295 pages!) has the whole Erlang story, including an Erlang tutorial, large parts of which are identical to a Prolog tutorial (or virtually, just substituting -> for Prolog's :-, and ; for . etc), I would have had no idea how huge the similarities are, had I not become familiar with Prolog first.

http://erlang.org/download/armstrong_thesis_2003.pdf

Also, in the 17 page paper, he firstly makes a meta-interpreter, which I've since noticed is pretty standard in Prolog books, e.g. The Art of Prolog, The Craft of Prolog. ‎


Thanks, will check that too. I remember The Art of Prolog coming up here on HN a while ago.


Although not a course, I thought this had some excellent material: Practical Programming (2nd edition) An Introduction to Computer Science Using Python 3 https://pragprog.com/book/gwpy2/practical-programming


If anyone wants to play around with Computational Geometry and Python, I'd recommend as a great starting point: http://blancosilva.github.io/post/2014/10/28/Computational-G...

Also, Apress has a cool book about Python and graphics with some pretty intense source code found here: https://github.com/Apress/python-graphics


quick note on the first link...I think graphs are done using tikz: http://blancosilva.github.io/post/2010/12/12/using-tikz-as-a...


FiveThirtyEight also puts their data on Kaggle, if you are interested:

https://www.kaggle.com/fivethirtyeight/datasets


My major reason for supporting legalization is that when you legalize marijuana, you decrease the incentive for police to search cars, most of the time by tricking people into giving voluntary consent, so that's a good thing.

On the other hand, smoking marijuana all day is most definitely not a good thing. I never really thought about the health benefits.


at the bottom of most Wikipedia pages there are lists of references, further reading and external links


I've been looking into JAMstack...static site generators, github pages, continuous integration, aws lambdas, etc. Makes a lot of sense.

On the other hand, I just got a vps and am planning on learning Golang ;-)


I just bought "The marijuana conviction: a history of marijuana prohibition in the United States," although I don't think you'll find it on Kindle. Pick up a copy at Amazon or AbeBooks.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: