From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED.blaine.gmane.org!not-for-mail From: Amirouche Boubekki Newsgroups: gmane.lisp.guile.user Subject: babelia Date: Sat, 16 Nov 2019 11:06:01 +0100 Message-ID: Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Injection-Info: blaine.gmane.org; posting-host="blaine.gmane.org:195.159.176.226"; logging-data="35707"; mail-complaints-to="usenet@blaine.gmane.org" To: Guile User Original-X-From: guile-user-bounces+guile-user=m.gmane.org@gnu.org Sat Nov 16 11:06:42 2019 Return-path: Envelope-to: guile-user@m.gmane.org Original-Received: from lists.gnu.org ([209.51.188.17]) by blaine.gmane.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.89) (envelope-from ) id 1iVuyX-0009AM-IT for guile-user@m.gmane.org; Sat, 16 Nov 2019 11:06:41 +0100 Original-Received: from localhost ([::1]:47160 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iVuyW-0003qk-Fe for guile-user@m.gmane.org; Sat, 16 Nov 2019 05:06:40 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:50932) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iVuy9-0003qa-Ff for guile-user@gnu.org; Sat, 16 Nov 2019 05:06:18 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1iVuy6-0000Zj-RU for guile-user@gnu.org; Sat, 16 Nov 2019 05:06:17 -0500 Original-Received: from mail-vs1-xe33.google.com ([2607:f8b0:4864:20::e33]:37861) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1iVuy6-0000Wq-Nd for guile-user@gnu.org; Sat, 16 Nov 2019 05:06:14 -0500 Original-Received: by mail-vs1-xe33.google.com with SMTP id u6so8104033vsp.4 for ; Sat, 16 Nov 2019 02:06:13 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:from:date:message-id:subject:to; bh=HFkuPlRcLTxOcB+jDqQ9FpSU5tFPra35yS9upPTPpAw=; b=VFcnVJ8BPoT5CvTkQniOP9zN9xuei4HySltaxNIuoQPV2U5Tc5FascNSpSyhYRK71M 1FfOjS6nXUPYcbNJ8hMkPOtg+XVlB9vdAADuBRXTXiusOOYoDfbbz/AOAEpRxDga/DGj jBEyk4WjZlPrMFFynKGBPILvj684j8juObgzS5IvlA+WCbvdH8+B32CshdYdEtLQVTxt 6m8YjJNQ2sEAaY5nXVmPI7MvwIH8cihT1p4vJo34Z4VJ2eLRyzE0S4x6ssIa3kmHct9v /mSAWODsLoVg/dVNrOamzH9KpZ2JL3P0iwKvsRMJr21fd3JOWzKVxqQUa3b2+6j58kQM LY9w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=HFkuPlRcLTxOcB+jDqQ9FpSU5tFPra35yS9upPTPpAw=; b=e2KOFwp1Zauu3mG3rb9QeX8wzuUvROCM4KCYT7uhm6ZataytwEHJApVh06ghmE85VY jXgqM0UDrTGEm7aI/f9Ya1qxueBnpkBJvtjzx7EWrO5cc1wsQREFmNk5+HCK2ejnHeCg RgsNuYBBcYP8zJKJwoLRUhLXtDaOzWhoihdEbQA2K2rjQMi65/sVp529nr6e027sE5Rv h3s69Sk544W1aC4gQtt8CrUqa2huHeZTmHNMWHZZk4yFohToHV4hxraCT0xTvokogOZW /zpyX/DeXckGvjZd9DZ+N8yr3CPVjClaoynKd1mYhW79Px7r8vkPxv8DJHSEdlQ+siY1 ocMQ== X-Gm-Message-State: APjAAAWLE8ut6Gpiy2YwSSvMCsfzS903IijOMFjE3OduAprYeyt5TmsD QSwoDSucSGqkhkJNQwhgkMuYEYg/EjiB838z053fC7irmbs= X-Google-Smtp-Source: APXvYqx/xdz6Yyiha6ng4ngMfQ2tjY7bbFBkC4aCjQGc/78SvjU2UAxWSRYbx5uyNmuTZf2Sz7pKvN00gKXTeKtxDc8= X-Received: by 2002:a05:6102:1052:: with SMTP id h18mr2770587vsq.189.1573898772767; Sat, 16 Nov 2019 02:06:12 -0800 (PST) X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:4864:20::e33 X-BeenThere: guile-user@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: General Guile related discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guile-user-bounces+guile-user=m.gmane.org@gnu.org Original-Sender: "guile-user" Xref: news.gmane.org gmane.lisp.guile.user:15900 Archived-At: I restarted working on my personal search engine. It used to be called culturia [0] with too many planned features. At some point, I called it asylum [1] and focused on personal knowledge base aspects and the last iteration was called gotofish [2] [0] https://framagit.org/a-guile-mind/culturia [1] https://framagit.org/a-guile-mind/culturia.next [2] https://git.sr.ht/~amz3/guile-gotofish I learned much from all this projects. In particular, I learned that it will be a long long long project, even if I focus only on "personal search engine" line of work. The last iteration, gotofish, was not too bad even if it has bitrot. Based on my research and practical experiment, it seems very clear that there is no workaround the use of map-reduce, that might be known as n-par-for-each [3]. [3] https://www.gnu.org/software/guile/manual/html_node/Parallel-Forms.html#index-n_002dpar_002dfor_002deach I made a prototype similar to that n-par-for-each, except it works with guile-fibers, is asynchronous and works with a shared pool of threads instead of spawning N threads for each incoming query like gotofish does. Related blog post: https://hyper.dev/blog/on-the-road-to-babelia.html If you want to help or discuss those matters, do not hesitate to reply to this message. Cheers, Amirouche ~ amz3 ~ https://hyper.dev