Earlier quoted context omitted.
I googled, got 1/3 of the way through "Subsequent UI Cmavo", and gave up. If you explained in lojban, I promise I'd struggle a few minutes longer before giving up :D http://www.lojban.org/tiki/Subsequent+UI+Cmavo I read Arabic fairly well but I did not understand Lojban, not having any framework to understand it in, whereas I took Arabic classes for basically four years of college. I got "prami" to mean love, and .ui…
Disclaimer: I'm no lojban expert myself, so this may be inaccurate. {mi prami la lojban .ui} is pretty straightforward: I love lojban, plus the {.ui} attitudinal, which indicates happiness (or as you said, ":)"). The period {.} is an interesting part of lojban. It indicates a glottal stop. Most words in lojban start with a consonant, so glottal stops are placed before words that begin with a vowel (mainly just attitu…
Urbit: A clean-slate functional OS
171–180 of 185 posts
Re: Urbit: A clean-slate functional OS
#172Earlier quoted context omitted.
I will not comment on the judgement passed upon the education system. The second article exhibits eristic tricks, obfuscatory language, and a plain confusion of ideas, especially when speaking about proof-carrying code and type theory. It's interesting to see the author wishing for a Python of functional programming, and yet Hoon's syntax appears deliberately obscure. However, there is one paragraph with which I whol…
Deliberately obscure, yes: >We should note that in Nock and Hoon, 0 (pronounced “yes”) is true, and 1 (“no”) is false. Why? It’s fresh, it’s different, it’s new. And it’s annoying. And it keeps you on your toes. And it’s also just intuitively right.
Re: Urbit: A clean-slate functional OS
#173video not work in ff linux
Re: Urbit: A clean-slate functional OS
#174For a project ostensibly inspired by K&R C, the copy on this site is amazingly opaque and full of its own rhetoric. Recommendation: delete all the linguistic posturing and get down to the hard work of casting light on your ideas. Let that speak for itself. By way of example, the K&R C book had a beautiful clarity and ability to fluidly move between the realms of reference, spec, and tutorial. If you're going to hold…
I thought the style was a refreshing departure from the usual tone of expository technical documents. I actually enjoyed reading it, even though I disagreed with many of the assertions that were made.
Re: Urbit: A clean-slate functional OS
#175Re: Urbit: A clean-slate functional OS
#176Earlier quoted context omitted.
I thought the style was a refreshing departure from the usual tone of expository technical documents. I actually enjoyed reading it, even though I disagreed with many of the assertions that were made.
Personally, I was reminded of the schizophrenic guy on HN who built his own OS.
Re: Urbit: A clean-slate functional OS
#177http://lesswrong.com/r/discussion/lw/ipu/open_thread_septemb...
Re: Urbit: A clean-slate functional OS
#178Earlier quoted context omitted.
Equality is entirely untyped in Hoon. You're just comparing the nouns - "S-expressions without the S." So there is no type error at all. You'd say &(=(a b) =(5 b) =("foo" a)) and it'd work just fine.
That's a bit underwhelming.
now, the real question is whether Hoon thinks that (= 5 "5"), or (= 100 "1e2"), or (= 4 "four"), like some languages helpfully provide.
Re: Urbit: A clean-slate functional OS
#179Though I couldn't understand them fully... The names are awesome! The concepts are awesome! And the music is awesome!!!
I see some similarity to Smalltalk or Windows PowerShell. And this made me to imagine typed Smalltalk/Objective-C style syntax on shell which would be great for usability...
* ps accepts ax with no -
* awk is its own programming language lol
* xargs gets pretty complicated if anything bigger than this happens
(incidently, I know about awk '/chromium/ {print $1}' and killall. but i have seen that command line in the wild. because some people don't read the awk manual for fun, and i'm not sure if every unix system even has a killall command)
...and yet the shell is still the preferred tool for what it does because everything else requires too much typing (of both varieties)
Apparently urbit also has streams of raw data. It's about time someone came up with a new idea for a shell that keeps what's great about the shell (though personally, i would standardize on streaming a form of json, because it turns out that data is very often found as scalars, lists, and mappings).
So anyway. If urbit actually ends up being better to live in than unix, and having shell programs that are configured in exactly one way would be an improvement, and having data that's easier to parse than plain text while remaining as easy to read as plain text would also be an improvement, well, I've always wanted to live in a submarine. If it gets a nice editor and c++ compiler, that is. I do need the best performance possible out of my computer for my work.
Re: Urbit: A clean-slate functional OS
#180Earlier quoted context omitted.
That's a bit underwhelming.
why, would you prefer some other answer than 'false'? now, the real question is whether Hoon thinks that (= 5 "5"), or (= 100 "1e2"), or (= 4 "four"), like some languages helpfully provide.
Here's Haskell's answer:
Prelude> \ a b -> a == b && b == 5 && a == "foo"
:2:25:
No instance for (Num [Char]) arising from the literal `5'
Possible fix: add an instance declaration for (Num [Char])
In the second argument of `(==)', namely `5'
In the first argument of `(&&)', namely `b == 5'
In the second argument of `(&&)', namely `b == 5 && a == "foo"'
Here, the typechecker took the most general type of 5, namely some type belonging to the Num typeclass, and discovered that the type of "foo", which is [Char], isn't an instance of the Num typeclass, or, in Java parlance, doesn't implement the Num interface. This means there is no type containing both 5 and "foo", hence — type error.You're asking about implicit conversions, which are an undisputable evil. However, attempting to provide answers to invalid questions also isn't very good.
You may have already seen the rather entertaining Wat talk, by Gary Bernhardt: https://www.destroyallsoftware.com/talks/wat
The central theme of this talk is not just implicit conversions — it's surprising answers to invalid questions. A much better way to handle an invalid question is to reject it as early as possible — Fail Fast. With a static type system, this can be very early indeed.