freenode/#lisp - IRC Chatlog
Search
4:15:36
akoana
oh, I'm progressing very slowly but steady thanks, currently I'm playing around with ltk
4:17:30
akoana
I heared about CLIM, but I'm very new to Common Lisp, so I tried to start with something "easy"
4:18:22
beach
Maybe, but as a result, you went in to FFI land with different semantics of different languages, thereby creating a semantic nightmare and a debugging one too.
4:23:03
akoana
I'll have a look into it (I did already a while before, but was in doubt about matureness)
4:25:37
akoana
I'd like to create a gui with database "bindings" (crud), I still don't know what's better, doing it web-based with hunchentoot or with something like CLIM
4:36:56
beach
I think I just had some insight. Maybe there is so much FFI-based stuff here because people think of Common Lisp as just another scripting language like python etc., so that it is really only useful as such. Perhaps they expect Common Lisp to be as slow as Python so that the C code is necessary to get some performance.
4:37:44
no-defun-allowed
(ltk's interface occurs over a pipe to a program called "wish", by the way. To me, it's about as FFI as something like Postmodern/CL-SQL then.)
4:38:45
beach
It would make sense for members of the generations brainwashed by the Unix "philosophy" to think like that.
4:39:25
akoana
beach: I did already some successful prototyping in hunchentoot, ningle and cl-dbi (for the database sqlite, but finally postgres) but still thinking how to glue this stuff together.
4:40:37
beach
Which reminds me of how relational databases is another disaster that has been able to brainwash generations of unsuspecting developers.
4:40:39
akoana
beach: I'm one of the brainwashed Unix people ;), old die hard vi user (but recently an emacs friend)
4:40:45
no-defun-allowed
If I could have a minute to clean it up somewhat, I can show you the project I did for school, akoana.
4:41:39
pillton
beach: I think people choose what battles to fight. I also think people don't like having duplicate implementations of functionality.
4:41:46
beach
akoana: vi is not the main problem here. But I'm not going there today. You can read this document if you like: http://metamodular.com/closos.pdf
4:42:40
beach
pillton: I suspect most people don't choose at all, because they don't think they have a choice.
4:42:56
no-defun-allowed
ACTION posted a file: u02e03.tar.lzma (4KB) < https://matrix.org/_matrix/media/v1/download/matrix.org/WwSzgrBsCBLpxotWdMYqNvRf >
4:43:29
no-defun-allowed
akoana: this is my school project; it uses Hunchentoot and CL-WHO to generate and serve HTML, Postmodern to read and write from a database, and I think the layout of code is pretty decent.
4:44:27
verisimilitude
Unicode is also UNIX idiocy. Should we make it easy to support multiple character sets; no, one character set to rule them all; kill the unbelievers! Should we have GUI tools that aren't awful; no, just turn Unicode into a partial GUI toolkit. I can go further, but I won't.
4:45:07
akoana
Wow Mr. Robert Strandh, I've tried to read some of his papers, pretty mind boggling :)
4:45:14
verisimilitude
I'm stuck talking to a terminal if I want a manageable interface that isn't likely to fall out from under me for some reason.
4:47:13
aeth
The problem with multiple character sets is multilingual documents. You really expect programs to handle that properly?
4:47:37
aeth
And with UTF-8 many programs like IRC clients handle it properly for free without being designed for it.
4:53:22
LdBeth
Well, Unicode doesn’t do any bad unless you’re Chinese linguistics guy and UTF-32 is elegant enough for programming
4:54:20
verisimilitude
Perhaps the worst thing about UTF-8 is that it penalizes most other character sets, meaning Japan and other countries still use custom ones.
5:01:14
djeis[m]
You could, in principle, have a wide variety of encodings that each support different ranges of the unicode space. But you still need to be able to give globally unique codepoints before you hit presentation, unless you want to tie fonts into the encoding used for the text.
5:14:05
djeis[m]
Do you dislike what they came up with, or do you think their idea as a whole was misguided?
5:14:35
verisimilitude
I'd also disagree with the idea that doing anything similar to Unicode, such as building a system for storing documents with multiple languages in them, makes it a subset or different implementation or anything else of Unicode.
5:15:00
beach
verisimilitude: I am not "disgusted" by FFI. I am saddened to see all the human endeavor wasted on crappy software infrastructure.
5:15:10
beach
Worse, the effort is wasted over and over again, because (no doubt out of necessity) people are solving their own little problems using this crappy infrastructure.
5:15:11
beach
If only a tiny fraction of that effort were used to improve the infrastructure, we would be more productive and make more progress faster.
5:15:57
verisimilitude
It's rotten to the core, yes, beach; hopefully it will collapse under its own weight without taking down modern society.
5:16:52
verisimilitude
If you'd like to read some of my deeper thoughts on this topic, I'll provide you a link, djeis[m].
5:17:19
djeis[m]
I would actually, although I'm already pretty tired and may put that off until the morning.
5:19:13
beach
pillton: I'm not sure. But, for one thing, we need to improve what is taught at universities in their computer science programs. Currently, the teachers (despite having PhDs) are not qualified to do that work. They just don't have the depth of knowledge required to have an opinion about what is being taught.
5:19:43
akoana
beach: Thank you for the CLOSOS pdf, I downloaded it - interesting view of Unix and a LispOS, after a first glance
5:19:51
verisimilitude
This article, as all of my others, really should be rewritten and added to, but it's a decent glimpse into my thoughts, anyway.
5:20:52
beach
akoana: Glad you like it. I also recommend "the Unix haters handbook". Initially I thought it was written by ignorant people, but it is written by people who are avery smart and very knowledgeable so it has a lot of wisdom in it.
5:22:18
verisimilitude
While I'm at it, have you read what Erik Naggum had to write on these topics, akoana?
5:22:51
akoana
beach: I think the writers of the "the Unix haters handbook" had a vision how it could be better.
5:23:18
beach
akoana: It is worse than that. They knew what they had and saw things getting worse. Much worse.
5:23:52
beach
akoana: That is the sad part. We knew how to do it better, but with Unix, that knowledge was lost.
5:24:01
akoana
verisimilitude: I read almost all of Erik Naggum's postings at XachX site, he was an amazing and a bright mind.
5:26:01
akoana
beach: That what me makes love (and has me attracted to) Common Lisp, security of ones own programming efforts, not having to re-write because of incompatible changes in the programming language
5:27:12
akoana
beach: and I like to read smart peoples code, and there are a lot of them using Common Lisp.
5:28:27
beach
True. Or, rather, the proportion of good to bad code is probably better in Common Lisp than in other languages, because the unusual language filters away some of the really bad programmers. Just a hypothesis of mine. No scientific proof.
5:30:50
djeis[m]
verisimilitude: Certainly some interesting ideas, although I suspect I'm too tired to really appreciate them. I'll have to discuss this further with you at some point. My first thought is the interesting bits of custom notation trickery that you can get up to in some existing PLs. My other thought is how awkward typing really customized notation can get, although that may just be an input method issue. Unfortunately I have to
5:30:50
djeis[m]
vanish for the night though, I have an early morning and am already pretty exhausted.
5:31:54
verisimilitude
In any case, yes, let's discuss this later; I'm glad you found it interesting.
6:55:55
makomo
beach: hmm, regarding your comments about FFI. wouldn't it be wasted effort to just recreate a C library in CL and then have to maintain it (i.e. backport stuff that the original implements later on)?
6:57:43
makomo
well, it would take quite a lot of time to port all of those useful C libraries to CL, no?
6:58:09
beach
Then we have to try to estimate how much effort is saved with a Common Lisp version of the library with debugging etc, compared to the wasted effort of having people use libraries written in unsafe languages for unsafe operating systems.
6:59:08
beach
Exactly my point. As long as we look at it as individual efforts trying to solve little problems, we won't make progress.
6:59:35
beach
Only if we can somehow redirect all that wasted effort into improving the infrastructure will things get better.
6:59:51
makomo
do you think standardizing on a language is one of the key points to efficient cooperation?
7:00:35
beach
The discussion started with ltk vs CLIM, and I think McCLIM is an excellent example of people trying to improve the infrastructure for the common good. Many other such efforts could be created.
7:01:52
jackdaniel
and McCLIM has now margins on streams ;-) http://hellsgate.pl/files/4b608de4-margins.gif
7:02:11
beach
I am not in favor of forcing stuff on people. They can use what they want. But, I think we should try to move away from all the unsafe 1960s languages and their "band aid" scripting languages to something safer and faster. I have chosen to do it with Common Lisp. Others my make different choices.
7:05:52
jackdaniel
it is hard to joke with people who take words literally, I'll remain serious then and ignore "CL is a silver bullet" thread like I usually do
7:05:59
beach
verisimilitude: The problem I have is with the idea that we try to emulate a physical machine in one of our processes, so we have this linear address space with access to the stack, and with the requirement that everything be linked into a monolith "executable".
7:07:18
no-defun-allowed
LISP 1 wasn't a normal 60s language though. I doubt anyone cared about symbols and conses, and maybe recursion if I can stretch our imagination a bit.
7:07:27
jackdaniel
I'm pretty sure I get some jokes over the medium (and I did include ";-)", so I'd blame unwillingness here
7:07:51
no-defun-allowed
bash.org/?top is a good counterexample to "IRC doesn't lend itself so much to jokes" though.
7:10:13
jackdaniel
so from serious remarks, lisp is a good language imho (I wouldn't use it otherwise) but treating it as an ultimate abstraction sounds too much like a self-congratulation to me (and I'm sure I'd hear the same from "hooked" forth programmers about forth, and from "hooked" erlang programmers about erlang etc)
7:11:23
verisimilitude
Trying to force a single language is the same issue as with Unicode I mentioned earlier.
7:12:00
verisimilitude
C is garbage though and it's unacceptable to have memory errors for doing trivial things just because they've been written in C first.
7:22:46
no-defun-allowed
What was that library that made pretty-looking ASCII equation printouts with the two dimensional fractions named?
7:23:35
verisimilitude
Are you referring to that Maxima or whatever it was called, no-defun-allowed?
7:24:39
no-defun-allowed
Not Maxima, no. There was a separate library that typeset equations into ASCII art.
7:29:10
aeth
verisimilitude: Unicode is the only solution for multilingual documents. As in, there's literally no other solution that has any kind of real support (well, at least for arbitrary multilingual documents... some languages coincidentally can work together). Sometimes you want one standard for interoperability, like IP. Having Unicode as the standard *helps* languages interoperate.
7:29:28
aeth
If there were 10 different ways to do things, 9 of them would only be available in C and Java and Python libraries.
7:32:33
verisimilitude
Being perfectly clear, I don't give a damn about the minor edge case of multilingual documents and even then I think Unicode handles it poorly with its approach.
7:33:12
verisimilitude
But, a real solution wouldn't have worked well with cat and UNIX and other stupid bullshit, so it wasn't used.
7:34:12
verisimilitude
Text is the universal interface, aeth. ASCII, I mean EBCDIC, I mean Shift-JIS, I mean UTF-16, I mean UTF-8 is the universal interface, aeth.
7:35:21
aeth
UTF-8 at the interface, UTF-32 internally in memory when working on a string like an array. Pretty close to universal.
7:36:57
aeth
It seems like you want a perfect way to handle text in an ideal world where you can create a system from complete scratch. That's not how you get a Lisp system that people use. You need ways to interface with the outside world's formats. Lisp machines even had C compilers!
7:40:26
aeth
Well, personally, I like that text is basically the one place that solved https://xkcd.com/927/
7:41:14
verisimilitude
I've been designing a program for a short while, a first step of sorts towards this goal, aeth. Anyway, the first target of this program was a machine that has no need to interface with the outside world and has no notion of text; when I was designing my metadata format for this, I could've very easily used ASCII for storing some things, but I didn't. Instead, I created my own character set just for this purpose; I much prefer it,
7:44:30
fiddlerwoaroof
aeth: the biggest problem with unicode, imo, is the inclusion of emoji and random little pictures
7:45:52
aeth
fiddlerwoaroof: Emoji is its Trojan horse. Don't support Unicode and you don't support Emoji so even monolingual Americans complain, even though what really matters is not supporting é and ə and ° etc.
7:46:06
aeth
Emoji is the hardest part so if you support that you probably support a good chunk of Unicode.
7:47:13
verisimilitude
But, yes, the inclusion of dead languages, emojis including piles of feces, and other superfluous things is just another reason to dislike Unicode.
7:48:43
fiddlerwoaroof
I, for one, am glad that there are code points for me, should I ever decide to learn Linear B
7:48:43
verisimilitude
I really care about the ability to mix English and Mayan in my filenames, yeah.
7:50:05
fiddlerwoaroof
the problem with specialized software is that it disappears and then your data is all locked away in a format no one can deal with anymore
7:50:33
aeth
The problem with specialized software is it's $1999 just because it's rare, not because it has any quality software engineering behind it
7:50:58
fiddlerwoaroof
I've actually worked with people who transcribe manuscripts, and this is a huge issue: they have transcriptions from the 80s that used some random piece of software they had and now they have to re-type 800 pages of manuscripts
7:52:38
verisimilitude
I have my own ideas about computing and I won't be compelled by those who insist their ideas are great, it's only the entire world needs to adopt it.
7:54:50
aeth
Except such documents at this point are probably only mostly ASCII because they might have a random é or ‽ thrown in.
7:55:02
verisimilitude
Remember kids: The best way to make a new standard is to make it backwards compatible with the most common standard and then boast about how many users you have.
7:56:10
aeth
The future trends of text storage are very clearly UTF-8 thanks to the Internet, though
7:58:05
aeth
As for ASCII being smaller, that just means it can only handle 99% of English user uses. Lots of edge cases. And the problem is that that 1% is different for everyone.
8:00:03
verisimilitude
Well, I submitted an article containing some of my thoughts on this earlier; feel free to read it if you want. I'm now busy with something else.
8:01:03
fiddlerwoaroof
aeth: of course we could always insist that non-English languages just use romanizations /s
8:02:16
aeth
(And multilingual documents are apparently too much of an edge case to have encodings, since the combinations would quickly become quite large.)
8:45:53
LdBeth
Thanks for his consideration, vanilla TeX can just handle many CJK encodings well while troff requires to link against iconv to just accept UTF-8
11:32:16
Josh_2
hmm so I have a question about a problem I don't know how to solve. I have an input from a 720p screen and I need to convert the input (which is a coord on the screen) to the same relative position on a 1080p screen or a 4k. This is CL related as I'm using CL for my program :)