Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
shriramkmurthi
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
8 ms
·
1.
▲
by
shriramkmurthi
10y ago
I agree! We're acutely conscious of it. This is precisely where, as you note, the education focus puts our resources elsewhere. Once those things settle down, this is something we're going to want very much even for ourselves.
2.
▲
by
shriramkmurthi
10y ago
Good question! The compiler is definitely the main application that's been written. We're not aware of any standalone Pyret applications on the order of more than a few KLOC, but those are quite different in flavor, like course in
3.
▲
by
shriramkmurthi
10y ago
I'm really delighted to hear your boss's daughter is having so much fun. That's a great outcome. I don't expect everyone using Pyret to turn into a professional programmer. In fact, I don't want everyone to do so, b
4.
▲
by
shriramkmurthi
10y ago
Good question re. Web Assembly. The problem is we need much more than tail calls. Just as important is deep stacks, to enable a _functional_ style of “functional programming”. And that has definitely been a headache. Our current (clever) im
5.
▲
by
shriramkmurthi
10y ago
Thanks. This is where our “education first” emphasis comes in. I'd like that too, but it's just not our most critical need. Since it can be run on top of Node from a shell, what it mainly lacks is a REPL. One of our students took
6.
▲
by
shriramkmurthi
10y ago
We started out as a Racket `#lang`. That is in principle always an option. However: the in-browser support is non-negotiable. We have many users in schools, which have very locked-down machines. Many of them cannot install new software. Thi
7.
▲
by
shriramkmurthi
10y ago
No. I think the best illustration is the continuation-based Web programming work we did several years ago: http://cs.brown.edu/~sk/Publications/Papers/Published/khmgpf... If you don't have the right
8.
▲
by
shriramkmurthi
10y ago
There's absolutely nothing in Pyret forcing you to write `where` blocks with immediate tests. You can also put your tests in a `check` block, which can float anywhere, and in another module. What we find valuable is to write a _small_
9.
▲
by
shriramkmurthi
10y ago
The official AE site is here: http://www.artifact-eval.org/ . It details the process and the design behind it. People who want to understand the philosophy are welcome to contact me ( http://cs.brown.edu/~sk&
10.
▲
by
shriramkmurthi
11y ago
The continuation-based libraries are the simplest, easiest, quickest way to get a program off the ground. They make interactive Web programming just as easy as writing “scanf” or its equivalent, _and_ are safe in the face of various browser
11.
▲
by
shriramkmurthi
11y ago
Racket and Python aren't even remotely comparable as languages. Python is a far less sophisticated language with far richer libraries, and Racket is vice versa.
12.
▲
by
shriramkmurthi
12y ago
Whalesong is moribund for now. The Pyret intermediate language is actually a really good compilation target for functional languages. The problem is that Racket has a lot more stuff than Pyret (some of which are discussed in the paper, othe
13.
▲
by
shriramkmurthi
12y ago
Congrats on the job! We've already compiled a very good chunk of Racket to JS. It's called Whalesong ( http://cs.brown.edu/~sk/Publications/Papers/Published/yk-wha... ). The initial version of Py
14.
▲
by
shriramkmurthi
12y ago
By the way: Racket is not at all for "programming basics only". Racket, the language, is as rich a programming language as you'd like. Even the Racket team's pedagogy is wide-ranging, from middle-schools to introductory
15.
▲
by
shriramkmurthi
12y ago
Calling out and criticism is fine! But to answer your question: for the foreseeable future, our "metal" is JavaScript, so that's what we will be finding ways to expose. We have already designed our stack mechanism to enable d
16.
▲
by
shriramkmurthi
12y ago
The platform is a pretty big difference. One of the major problems we run into in the education space is that many schools _cannot_ install any new software. Running on the browser is pretty much the only thing they can do. We created WeSch
17.
▲
by
shriramkmurthi
12y ago
Look at how we've structured the semantics of JavaScript, Python, etc. (E.g.: http://cs.brown.edu/~sk/Publications/Papers/Published/pclpk-... , http://cs.brown.edu/~sk/Publicatio
18.
▲
by
shriramkmurthi
12y ago
Scribble is another great example. It's amazing in its own right, and by being embedded into Racket, gets all the Racket benefits: for instance, separate compilation! (Thirty years and waiting, LaTeX.)
19.
▲
by
shriramkmurthi
12y ago
This is a criticism of Lisp-based DSLs but not of Racket-based DSLs. Racket actively enables you to impose different, non-parenthetical surface syntaxes on the DSL. It is not a "this sort of works if you arrange it carefully _and nobod
20.
▲
by
shriramkmurthi
12y ago
Absolutely. To be honest, we don't want Pyret to stay in the "education cellar" forever. But, we need a set of coherent design constraints, and education is a good one because it prevents premature cruft. The current stack tr
21.
▲
by
shriramkmurthi
12y ago
Go with Chrome, Safari, or IE 10 for now. There's a very complicated interaction with how Firefox handles the stack.
22.
▲
by
shriramkmurthi
12y ago
Wow, thanks. I passed this remark on to the rest of the team. Totally made our day!
23.
▲
by
shriramkmurthi
12y ago
Thanks for the kind comments. Sorry to hear about the crash, etc. We haven't gotten many reports about this; if you could file a bug report the next time ( https://github.com/brownplt/pyret-lang/issues/new
24.
▲
by
shriramkmurthi
12y ago
It's awesome in its own way. Our emphasis was on • allowing arbitrarily deep call stacks (e.g., deep recursion) • allowing computation to be interrupted • turning async interfaces into sync ones This means you can't just compile a
25.
▲
by
shriramkmurthi
12y ago
Butterick is _awesome_. Thanks for calling this out!
26.
▲
by
shriramkmurthi
12y ago
Thanks! Why don't you get on the announcement list ( http://www.pyret.org/discuss/ ) so you'll find out when the CLI is ready.
27.
▲
by
shriramkmurthi
12y ago
First time I'm seeing Cobra. Of course, there's a 100 altjs languages out there. It's certainly cute. But every Cobra file seems to begin with "class". I have no idea why I'd want to subject a poor child to tha
28.
▲
by
shriramkmurthi
12y ago
We have long-term plans for integrating some kind of rewriting system. Justin Pombrio is doing really interesting work in this direction (e.g., http://cs.brown.edu/~sk/Publications/Papers/Published/pk-res
29.
▲
by
shriramkmurthi
12y ago
Indeed, the first edition is draggy at the beginning. The second edition is meant precisely to dive right in and get cracking, without sacrificing any principles. I recommend people read the second edition instead of the first one. [Why sho
30.
▲
by
shriramkmurthi
12y ago
To _Racket's_ logo.
More ›