<?xml version="1.0" encoding="koi8-r"?>
<rss version="0.91">
<channel>
    <title>OpenForum RSS: Представлен LISP/c - транслятор Common Lisp в C/C++</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID3/107907.html</link>
    <description>Увидел свет транслятор LISP/c (https://github.com/eratosthenesia/lispc). Инструмент ставит целью объединение выразительной силы языка Common Lisp и скорости языков C/C++, что позволяет воспользоваться мощным механизмом Lisp-макросов для генерации текста программ на C. В трансляторе реализована поддержка pthreads, MPI и CUDA. Поддерживается создание классов и шаблонов C++. В данный момент реализация LISP/c протестирована и может работать с использованием CLISP.&lt;br&gt;&lt;br&gt;&lt;br&gt;Примеры:&lt;br&gt;&lt;br&gt;   1. Hello World&lt;br&gt;&lt;br&gt;&amp;lt;font color=&quot;#461b7e&quot;&amp;gt;&lt;br&gt;&lt;br&gt;   (header stdio)&lt;br&gt;   (main&lt;br&gt;     (&#064;printf (str &quot;Hello, world!&quot;))&lt;br&gt;     (return 0))&lt;br&gt;&amp;lt;/font&amp;gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;транслируется в&lt;br&gt;&lt;br&gt;&amp;lt;font color=&quot;#461b7e&quot;&amp;gt;&lt;br&gt;   #include &amp;#8249;stdio.h&amp;#8250;&lt;br&gt;&lt;br&gt;   int main(int argc,char **argv)&lt;br&gt;   &#123;&lt;br&gt;      printf(&quot;Hello, world!&quot;);&lt;br&gt;      return 0;&lt;br&gt;   &#125;&lt;br&gt;&amp;lt;/font&amp;gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;2. Макросы&lt;br&gt;&lt;br&gt;&amp;lt;font color=&quot;#461b7e&quot;&amp;gt;&lt;br&gt;   (templates make-foo (typ)&lt;br&gt;     (func (add/sym foo- typ) typ ((x typ) (y typ))&lt;br&gt;       (return (+ x (* y 2)))))&lt;br&gt;&lt;br&gt;   (make-foos int long float double)&lt;br&gt;&amp;lt;/font&amp;gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;транслируе</description>

<item>
    <title>Представлен LISP/c - транслятор Common Lisp в C/C++ (serg)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID3/107907.html#40</link>
    <pubDate>Thu, 19 May 2016 19:56:39 GMT</pubDate>
    <description>&amp;gt; Но, судя по ссылке, это полный список лисп-программ? Эти 40-50 наименований из &lt;br&gt;&amp;gt; 100-строчников это всё, что родили лисперы? Ты лишь расстроил меня. Я &lt;br&gt;&amp;gt; думал, что в мире лиспа немного больше лиспа.&lt;br&gt;&lt;br&gt;В мире лиспа слишком велико разнообразие. Вот есть lush (http://lush.sourceforge.net/) - специально для расчетов и работы с массивами (aka Vector), а вот (http://picolisp.com/wiki/?home) веб-фреймворк и СУБД в одном флаконе. Ну, и специально для аркадных игровых автоматов есть (https://en.wikipedia.org/wiki/Ypsilon_(Scheme_implementation))&lt;br&gt;&lt;br&gt;&lt;br&gt;</description>
</item>

<item>
    <title>Представлен LISP/c - транслятор Common Lisp в C/C++ (Andrey Mitrofanov)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID3/107907.html#39</link>
    <pubDate>Tue, 17 May 2016 08:57:41 GMT</pubDate>
    <description>&amp;gt;&amp;gt; Как порогомисту раскрою страшную тайну работы плюсика: он плюсуется асинхронно. То есть &quot;своевременно или чуть позже&quot;. Никакого &quot;после обновления страницы&quot;.&lt;br&gt;&amp;gt; Я был залогинен, сидел из firefox-&lt;br&gt;&lt;br&gt;Первое правило &quot;плюсик&quot;-клуба: не обсуждай http://www.opennet.ru/openforum/vsluhforumID4/323.html#1 плюсики.&lt;br&gt;&lt;br&gt;Воторое правило &quot;плюсик&quot;-клуба: будь мужЫком, никогда #$&#037;&#064;... см. п.1.&lt;br&gt;</description>
</item>

<item>
    <title>Представлен LISP/c - транслятор Common Lisp в C/C++ (Andrey Mitrofanov)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID3/107907.html#38</link>
    <pubDate>Mon, 16 May 2016 18:47:30 GMT</pubDate>
    <description>&amp;gt;важно даже если они узкоспециальные&lt;br&gt;&lt;br&gt;Читить, так читить! Расширяются на Guile -&amp;gt;&amp;gt;&lt;br&gt;&lt;br&gt;LilyPond (+ Denemo)   ...has good GUILE extensibility.&lt;br&gt;TeXmacs    ...TeXmacs support Guile/Scheme as an extension language...&lt;br&gt;GnuCash   ...An increasing body of secondary functionality &#091;...&#093; is supportedvia the Guile scripting engine.&lt;br&gt;  ..http://www.glug.org/projects/list.html#Applications&lt;br&gt;&lt;br&gt;+ gEDA&lt;br&gt;+ GIMP&lt;br&gt;+ AutoGen&lt;br&gt;&lt;br&gt;  ...https://en.wikipedia.org/wiki/GNU_Guile#Programs_using_Guile&lt;br&gt;&lt;br&gt;+ GDB&lt;br&gt;+ GNU Make (4.0+)&lt;br&gt;&lt;br&gt;.&lt;br&gt;.&lt;br&gt;.&lt;br&gt;</description>
</item>

<item>
    <title>Представлен LISP/c - транслятор Common Lisp в C/C++ (freehck)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID3/107907.html#37</link>
    <pubDate>Mon, 16 May 2016 15:14:25 GMT</pubDate>
    <description>Если в таком ключе, то и MathLab сюда же.&lt;br&gt;</description>
</item>

<item>
    <title>Представлен LISP/c - транслятор Common Lisp в C/C++ (mickvav)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID3/107907.html#36</link>
    <pubDate>Mon, 16 May 2016 14:03:46 GMT</pubDate>
    <description>Поставил вам плюсик и заодно проверил, что сейчас оно работает, значит - баг плавающий. Плюсователь мог молча лечь под нагрузкой - выв плюсовали вечером :)&lt;br&gt;</description>
</item>

<item>
    <title>Представлен LISP/c - транслятор Common Lisp в C/C++ (mickvav)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID3/107907.html#35</link>
    <pubDate>Mon, 16 May 2016 13:58:02 GMT</pubDate>
    <description>Ну и из независимого от emacs - maxima, конечно.&lt;br&gt;</description>
</item>

<item>
    <title>Представлен LISP/c - транслятор Common Lisp в C/C++ (freehck)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID3/107907.html#34</link>
    <pubDate>Mon, 16 May 2016 07:30:46 GMT</pubDate>
    <description>&amp;gt; Лисп и есть &quot;сам себе DSL&quot;, просто теперь он может транслироваться в Си.&lt;br&gt;&lt;br&gt;Не согласен. То, что на лиспе написать DSL - это задача на выходные, не делает его DSL. Он вполне себе общего назначения. А тот язык, который описан в статье, хоть и основан на S-выражениях, решает только одну задачу: преобразование себя в C-код.&lt;br&gt;&lt;br&gt;&amp;gt; Только вот толку?... ЛИСП интересен не тем, что &quot;по-другому может записать printf&quot;, &lt;br&gt;&amp;gt; а именно своей динамичностью и идеей &quot;данные есть код&quot;.&lt;br&gt;&lt;br&gt;Прежде всего лисп интересен макросами. И именно их подобие автор пытается привнести в проект. &quot;Данные есть код&quot; - это конечно интересно, но присутствует и в других языках: в haskell, в ocaml например.&lt;br&gt;&lt;br&gt;&amp;gt; Переводить ЭТО в Си - никакого смысла нет, ибо превратится в месиво хакерских &lt;br&gt;&amp;gt; алгоритмов, бесполезных человеку.&lt;br&gt;&lt;br&gt;Есть мнение, что лисп - это и есть месиво хакерских алгоритмов, бесполезных обычному человеку. Потому что 99&#037; лисперов - это Beautiful Bipolar Mind.&lt;br&gt;&lt;br&gt;&amp;gt; Интереснее смотрится перевод JS в какой-нть C# - чтобы избавить страниц</description>
</item>

<item>
    <title>Представлен LISP/c - транслятор Common Lisp в C/C++ (Аноним)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID3/107907.html#33</link>
    <pubDate>Sun, 15 May 2016 20:38:54 GMT</pubDate>
    <description>&amp;gt; &quot;снизу-вверх&quot; - так пишут новички на бейсике!&lt;br&gt;&lt;br&gt;Объясняю специально для кодеров.&lt;br&gt;&lt;br&gt;Когда вы пишете сверху вниз и выясняете, что вам нужно сложить три числа, вы пишете функцию, складывающую три числа &quot;sum(a, b, c) = a + b + c&quot;. Когда через месяц вам понадобится функция складывающая четыре числа, вы либо пишете её с нуля, либо (если вы agile-озабочены) реализуете её как-то типа &quot;sum4(a, b, c, d) = sum(sum(a, b, c), d, 0)&quot;.&lt;br&gt;&lt;br&gt;Когда вы пишете снизу вверх и выясняете, что вам нужно сложить три числа, то вы анализируете возможные дальнейшие применения функции и либо пишете функцию, складывающую лишь два числа &quot;sum(a, b) = a + b&quot;, либо функцию складывающую произвольное количество чисел &quot;sum(as) = foreach (as) return += as&#091;i&#093;&quot;. Когда через месяц вам понадобится функция складывающая четыре числа, вы используете уже созданное и оттестированное.&lt;br&gt;</description>
</item>

<item>
    <title>Представлен LISP/c - транслятор Common Lisp в C/C++ (За pv47)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID3/107907.html#32</link>
    <pubDate>Sun, 15 May 2016 20:28:14 GMT</pubDate>
    <description>&amp;gt; Как порогомисту раскрою страшную тайну работы плюсика: он плюсуется асинхронно. То есть &quot;своевременно или чуть позже&quot;. Никакого &quot;после обновления страницы&quot;.&lt;br&gt;&lt;br&gt;Я был залогинен, сидел из firefox-esr 45, linux. Нажал на плюсик, подождал 10 секунд, обновил страницу.&lt;br&gt;&lt;br&gt;Как программист, я знаю, как работают кластерные системы и что с некоторой вероятностью обновлённый плюсик просто был отправлен не на тот мастер-сервер, с которого получаю информацию я. Хотя обычно такие системы пишутся так, чтоб пользователь, поставивший плюс, этот плюс видел: либо он в сессию заносится, либо в куку, либо переключается на мастер-сервер, в который записались данные.&lt;br&gt;&lt;br&gt;Но как программист, я также понимаю, что с гораздо большей вероятностью мой плюс просто не был учтён по какой-то причине, включая (наряду с отключенной передачей referer или включенным uBlock) вероятные ошибки автора движка сайта. Поэтому решил выразить этот плюс автору письменно&lt;br&gt;&lt;br&gt;И как пользователь должен сказать, что я НЕ ХОЧУ изучать исходный код каждого сайта</description>
</item>

</channel>
</rss>
