Giter Club home page Giter Club logo

Comments (10)

marnen avatar marnen commented on August 21, 2024 1

I’m fairly sure I remember that page not going wrong. I’ll poke at the code and see if there’s an obvious reason that that should happen, and if I can fix it.

from lpn.

mukhinid avatar mukhinid commented on August 21, 2024

It is still empty.

from lpn.

GregDavidson avatar GregDavidson commented on August 21, 2024

Alas, it is still blank. No LPN with SWISH?

from lpn.

JanWielemaker avatar JanWielemaker commented on August 21, 2024

Well, it is there mostly. LPN on swish is implemented as a proxy service. Analyzing and properly rewriting the rather dirty HTML that comes from the LPN pipeline is a bit of a challenge though. One day someone should reconsider the whole pipeline and -for example- move it to the pipeline used by Simply Logical

from lpn.

marnen avatar marnen commented on August 21, 2024

@JanWielemaker Is that the issue, though? I believe I remember the SWISH version of Learn Prolog Now! working beautifully last time I tried to work with it, around 2015. I thought I'd give it another try, and unfortunately the wonderful interactive textbook that I remember seems to be no more—even though there are links to it all over the SWISH website. (It is in fact blank, not "there mostly".)

If I hadn't had the experience in 2015, and were coming to it now as my first impression of Prolog, I might well give up before I'd even started, because the major tutorial (showcasing both Prolog and SWISH) doesn't even work.

Can I help fix this somehow?

from lpn.

marnen avatar marnen commented on August 21, 2024

...or could the enhancements from the Chrome extension be incorporated into whatever builds the site?

from lpn.

JanWielemaker avatar JanWielemaker commented on August 21, 2024

After opening some pages I think the site still works as it always has. This issue points a a specific page that goes wrong and probably always has gone wrong. I suspect the proxy goes wrong on this page. You find the proxy code in https://github.com/LearnPrologNow/lpn-swish-proxy. You can run it locally and figure out what goes wrong on this page. I'm happy to handle PRs on the proxy and update the server.

To get a really good interactive LPN you have to start with the LPN source material and add annotations that gives the proxy more information about how the SWISH instances should be created from the code and query snippets. All the material is on this github organization.

from lpn.

marnen avatar marnen commented on August 21, 2024

Unfortunately the conversion code is in Prolog, which I don’t know very well yet, which is why I wanted to work through LPN…but I’ll see if I can make sense of it.

But I had a general thought: perhaps if the converter can’t make sense of the HTML, it should return it unchanged instead of deleting it? The original would be better than nothing.

from lpn.

JanWielemaker avatar JanWielemaker commented on August 21, 2024

Of course the conversion is in Prolog. What else? 😄 Actually it makes more sense than you may think because we have to figure out what is in the code boxes: a valid Prolog program? Queries? Snippets that are themselves not valid Prolog code? Could one code block define the predicates used in another, etc. Prolog's reflexive features come handy here.

But I had a general thought: perhaps if the converter can’t make sense of the HTML, it should return it unchanged instead of deleting it? The original would be better than nothing.

The HTML parser is pretty flexible in tolerating invalid HTML. I have no clue what happens, only a bit of debugging will tell. That is indeed a bit challenging for a beginner. You'll learn a lot though 😄

from lpn.

marnen avatar marnen commented on August 21, 2024

I’m not saying that the conversion shouldn’t be in Prolog, but rather that since I need the introductory textbook, there may be a circular dependency. :) Maybe I’ll try Simply Logical and come back.

from lpn.

Related Issues (10)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.