IRC channel logs


back to list of logs

<davexunit>acquired another Haunt user today.
<davexunit>boy I really need to get a test suite and manual written for it!
<amz3>gexp solve an instance of furnarg problem
<amz3>there it is the famous monad and its friend bind and lift
<davexunit>I think skribe format might work out just fine for me
<davexunit>I was doubting it at first, but I'm beginning to get used to it, just need to try out some emacs modes to help me.
<davexunit>rekado: I've just pushed commits that add Skribe support to Haunt master.
<davexunit>rekado: see example/haunt.scm for how to use it and autoload custom helper modules.
<davexunit>rekado: er, actually that last part isn't in there. see 'make-skribe-reader' in (haunt reader skribe) for more info. example/posts/baz.skr will show you the format that you can copy from.
<davexunit>two things I wish I could figure out how to write the elisp for: 1) A skribe-fill-paragraph function that correctly handled unquoted forms inside [] expressions and 2) a skribe-insert-curly-quote function that inserted typographically nicer quotes like “ and ” inside [] expressions
<nalaginrut>morning guilers~
<rekado>the emacs-devel thread "Emacs rewrite in a maintainable language" is hilarious. Java, C++, RPython! Wow.
***Fortunato is now known as Petruchio
<nalaginrut>"I very much think that
<nalaginrut>this whole thread is a giant waste of time", me too ;-P
<Petruchio>I think it's a great idea. Emacs in Java sounds awesome.
<Petruchio>ACTION uses Vim...
<nalaginrut>I use Linux, but I wish Windows could be rewritten with Java ;-P
<artyom-poptsov>ACTION is imagining Javindows and Jemacs and thinking that it could be the end of both...
<rekado>from the website: "The FSF also plans to base a future Emacs on Scheme, using Guile; however, I believe Kawa will provide better performance and a better design."
<artyom-poptsov>rekado: Heh, I though there's no such project yet.
<nalaginrut>Guile is a kind of JVM, actually
<nalaginrut>and it's designed and optimized for continuation based FP, IMO
<thorwil>does the guile-devel list handle attachments (25 kb image, in this case)?
<taylan>25 kB should be fine on GNU MLs I think
<civodul>it's a per-list setting, but the limit is usually higher
***christop1 is now known as christoph
***christoph is now known as Guest3619
***Guest3619 is now known as christoph_d
***christoph_d is now known as christoph_e
<davexunit>good morning guilers
<artyom-poptsov>Good afternoon, davexunit
<zacts>hi guilers
<iyzsong>Hi :-
<sirgazil>Hi :)
<sirgazil>Could someone help me trying this command, please
<sirgazil>xgettext -o messages.pot hello.scm
<sirgazil>The hello.scm file looks like this:
<sirgazil>The command should extract the "Hello world!" string for translation and put it on messages.pot. But, in my case, the messages.pot file is not generated.
<civodul>sirgazil: maybe you need an extra -L scheme?
<civodul>or "-L scheme -k _"?
<sirgazil>Let me try...
<sirgazil>civodul: nothing :(
<sirgazil>If I use -k _ I get "gettext cannot work without keywords"
<sirgazil>Ok, "-k _" does not work, but --keyword=_ does :)
<civodul>yes, or "-k_" (with no space)
<civodul>that is weird
<civodul>i never run it by hand because Automake generates the rules
<civodul>you'd like to i18n the web site? :-)
<civodul>that would be great
<sirgazil>Yes, that's why I'm learning :)
<civodul>good! :-)
<civodul>we should make sure to use "/en" URLs from the start, then
<sirgazil>But I'm experimenting with my website first :)
<civodul>sure :-)
<sirgazil>"/en", yes
<amz3>I been thinking about a good example to explain goops, but I can't everything too complicated
<amz3>in particular I'd like to use inheritance
<amz3>I have this idea of using a game from game theory, but it sounds big
<amz3>I looked the web for idea, but don't like them
<rekado>amz3: have you read "The Land of Lisp"?
<rekado>there's an example game (in CLISP) which defines a generic monsters and overrides the methods for special behaviours.
<amz3>I have an example of game with inheritance, it's robot in labyrinth with with special square which oblige the robot to go to another place
<amz3>you make me think, the example you give is simpler
<rekado>the key thing was an example demonstrating how generic methods can be used to evoke specialised behaviour
<davexunit>adapting a game from land of lisp sounds like a good idea.
<rekado>i.e. you have a list of random monsters and call a generic method on each of them resulting in specialised behaviour.
<davexunit>rekado: I don't know if you saw my message yesterday, but Skribe support is officially in Haunt master.
<amz3>it's a text mud
<rekado>davexunit: yay! Thank you!
<davexunit>rekado: see haunt/reader/skribe.scm and example/posts/baz.skr
<davexunit>you'll want to use 'make-skribe-reader' to create a Skribe reader that imports some custom module(s) of yours for all those additional markup procedures you use on your site.
<rekado>amz3: you could also replace monsters with animals and the generic method is something like "say"; then you have a cat and a dog and their "say" behaviour differs.
<amz3>good indeed
<amz3>I'd rather not involve fighting in the process
<amz3>that's why the little lost robot was appealing
<rekado>land of lisp is a very violent book.
<rekado>I don't recommend using the actual examples from that book.
<davexunit>rekado: I've also made a commit that adds the current working directory to Guile's load path, so you can make whatever module hierarchy you'd like in your site repo and Haunt will automatically know about them.
<rekado>but they are usually simple enough to showcase a concept.
<rekado>davexunit: sweet!
<rekado>will update some time this week.
<davexunit>rekado: OK, let me know how it goes and what issues you have.
<amz3>(I wonder why cwd is not in path)
<rekado>davexunit: re skribe-insert-curly-quote: I'm using typopunct-mode for that.
<davexunit>rekado: oh cool, but how do you make string literals?
<davexunit>I worry that we'll need something that is context-sensitive
<rekado>C-q "
<davexunit>so you optimize for the typographic quoting case
<rekado>this also takes care of endash/emdash.
<davexunit>I'll give that a shot, thanks!
<davexunit>I'd like to get an sexp-aware fill-paragraph figured out sometime, too.
<davexunit>rekado: typopunct-mode doesn't come with emacs?
<civodul>davexunit: there's emacs-typo in Guix
<civodul>i think "typo" is the successor to "typopunct"
<davexunit>civodul: awesome, thanks.
<civodul>mark_weaver: we actually allocate the thunk in something like this: (lambda (x) (call-with-values (lambda () x) 1+))
<davexunit>I'm trying hard to like Skribe. overall I think it's super neat, but there's a few editing oddities to work out.
<civodul>mark_weaver: silly no?
<davexunit>adding blocks of source code has been tricky. I've just been using string literals instead of [] for that, but I still have to take care to properly escape certain characters and stuff.
<mark_weaver>civodul: that does look silly. where is that code? did I miss some context?
<civodul>mark_weaver: no, everything is on that line
<civodul>i was looking at optimizing things
<mark_weaver>I'm very confused
<amz3>rekado: thanks for the link, land of lisp is awesome!
<mark_weaver>what are you optimizing?
<civodul>things in Guix
<civodul>but the thing is, i was surprised to see that we systematically allocate a closure here
<civodul>i would have expected the closure allocation to be skipped in such a simple case
<mark_weaver>looks to me like that entire expression is equivalent to just 1+, no?
<civodul>yes, it is
<mark_weaver>oh, I see
<rekado>amz3: it does use common lisp, though, and demonstrates a lot of nasty things that made me put away the book the first time around (e.g. lots of global variables, mutation, loop and format [the horror!])
<mark_weaver>now I understand. you are pointing out a weak case for our compiler
<civodul>well that's 2.0
<civodul>i'm sure 2.2 DTRT ;-)
<davexunit>hmmm, with all of Guile's texinfo stuff, I suppose I could add texinfo support to Haunt without too much difficulty.
<davexunit>anything to avoid writing new parsers.
<davexunit>a bunch of people want markdown, but I don't want to parse that soup.
<paroneayea>davexunit: markdown may be an example of a format that's so badly defined, the "big wax ball of regexes" might actually be the best parser strategy ;)
<davexunit>paroneayea: haha
<nalaginrut>models almost done, I see the light to release it end of this year...
<paroneayea>I'm guessing that means artanis' ORM
<davexunit>yeah, that must be it.
<amz3>that. was. quick.
<daviid>good news: my Grip nongnu Savannah project page request has been accepted!
<daviid> [just a decription atm, empty still but good to see :)]