Git Product home page Git Product logo

Comments (25)

tkosan avatar tkosan commented on May 4, 2024

I have started to translate mathstep's rewrite rules into the rewrite rule language of a CAS in order to help document them. Using a more abstract language like this to show what each rewrite rule does may make it easier for potential contributers to learn the codebase.

from mathsteps.

evykassirer avatar evykassirer commented on May 4, 2024

closing cause the wiki's pretty sweet right now - thanks @aelnaiem !

we can reopen this issue if anyone wants more stuff added

from mathsteps.

nitin42 avatar nitin42 commented on May 4, 2024

Wiki is good but I want to ask about the API. Is it more extensible ? If so then an API section can be created.

from mathsteps.

evykassirer avatar evykassirer commented on May 4, 2024

can you explain what you mean by "more extensible"?

from mathsteps.

nitin42 avatar nitin42 commented on May 4, 2024

The question is that can a user be provided with more methods or functionalities to play around with the equation apart from seeing the changeTypes and Solving. So is the API extensible ? Coz I am still into the codebase and I still need some time to figure about this.

from mathsteps.

evykassirer avatar evykassirer commented on May 4, 2024

right now all you can do with the mathsteps library is:

  • solve an equation step by step
  • simplify an expression step by step
  • (coming soon) factor a quadratic

and the steps have changeTypes and maybe substeps (as described in the wiki section about NodeStatus)

let me know if you have any other questions :)

from mathsteps.

nitin42 avatar nitin42 commented on May 4, 2024

All clear for now 😄

from mathsteps.

tkosan avatar tkosan commented on May 4, 2024

I am interested in knowing what Socratic.org wants mathsteps to do in the future. For example, should it be able to:

  • Support a single step mode so it can be used as a tutor? (In single step mode, an expression is submitted, one step is made on it, and then this step is returned).
  • Run its rewrite rules in reverse so problems can be generated that require specific rules to solve. This would be useful for giving students practice using rules they are having troubles with, creating worksheets, and creating tests.
  • Accept a sequence of steps that represent a student's failed attempt at a solution and then identify the step where the problem occurred?
  • Display the rule that was applied at each step symbolically along with the identity each rule was obtained from?
  • In each step return the location in the tree where a rule was applied so that visualization tools can graphically identify the subexpression the rule was applied to?
  • Work with unflattened expressions? This is useful for explaining the details of how mathematics works. I think there is a great opportunity for teaching programmers who are weak in math fundamental mathematics. For this use, unflattened trees are better than flattened ones.

from mathsteps.

evykassirer avatar evykassirer commented on May 4, 2024

Support a single step mode so it can be used as a tutor? (In single step mode, an expression is submitted, one step is made on it, and then this step is returned).

This function already exists! But it's not exposed. We could maybe expose it, but you could also get the step by step solution and just use the first step

Run its rewrite rules in reverse so problems can be generated that require specific rules to solve. This would be useful for giving students practice using rules they are having troubles with, creating worksheets, and creating tests.

I think this is out of scope for mathsteps right now, but if someone else wanted to work on this that'd be very exciting!

Accept a sequence of steps that represent a student's failed attempt at a solution and then identify the step where the problem occurred?

This would be a great extension to mathsteps - I think it would be a separate project that uses mathsteps, but this is also something I'm really excited about and hope someone builds it. Someone's been emailing us who's been fiddling around with trying this :)

Display the rule that was applied at each step symbolically along with the identity each rule was obtained from?

I'm not totally sure what you mean, but changeTypes might already accomplish this!

In each step return the location in the tree where a rule was applied so that visualization tools can graphically identify the subexpression the rule was applied to?

This is already (somewhat buggily) implemented with changeGroups

Work with unflattened expressions? This is useful for explaining the details of how mathematics works. I think there is a great opportunity for teaching programmers who are weak in math fundamental mathematics. For this use, unflattened trees are better than flattened ones.

This seems outside the scope of what we're working on right now.


Hope this helps! Let me know if you have any followup questions :)

from mathsteps.

evykassirer avatar evykassirer commented on May 4, 2024

what sort of stuff would you like to add to the wiki @nitin42 ?

let's make a list of stuff to talk about, and then we can figure out where it'll go and how we organize it :)

from mathsteps.

nitin42 avatar nitin42 commented on May 4, 2024
  • Introduction to the mathsteps (with examples)
  • How to use
  • Working
  • FAQ
  • Glossary
  • API reference
  • Change logs
  • Feedback
  • Troubleshooting
  • Recipes (If someone wants to integrate this into their own project )

from mathsteps.

nitin42 avatar nitin42 commented on May 4, 2024

I am done with my list ! 😎 and I know its overwhelming !

from mathsteps.

evykassirer avatar evykassirer commented on May 4, 2024

sounds awesome!!! if we make a gitbook, can anyone submit a request to change it? how does that work?

from mathsteps.

nitin42 avatar nitin42 commented on May 4, 2024

github_page

from mathsteps.

nitin42 avatar nitin42 commented on May 4, 2024

this will do?

from mathsteps.

evykassirer avatar evykassirer commented on May 4, 2024

hmm so I guess we need to make a repository for the gitbook so people can make PRs?

I don't want to give everyone edit access, I'd rather make sure a mathsteps maintainer has read something over first.

from mathsteps.

nitin42 avatar nitin42 commented on May 4, 2024

And other options is GitHub Page

from mathsteps.

evykassirer avatar evykassirer commented on May 4, 2024

@shirleymiao is already planning to work on #124

we could make that on github pages and add a wiki? or should we make a separate repo for the wiki..?

alternatively you could just write up a gist on github with what you'd like to go on the wiki and once I approve it I can copy paste it into our wiki on GitHub (kinda ugly but might work)

or something like this http://stackoverflow.com/questions/10642928/how-to-pull-request-a-wiki-page-on-github

from mathsteps.

nitin42 avatar nitin42 commented on May 4, 2024

Last one seems fine !

from mathsteps.

nitin42 avatar nitin42 commented on May 4, 2024

https://gist.github.com/nitin42/4d48b94d682a124e2ea73a77aac73828

from mathsteps.

nitin42 avatar nitin42 commented on May 4, 2024

Here is the gist !

from mathsteps.

evykassirer avatar evykassirer commented on May 4, 2024

cool :)

I think we can use tags and releases instead of Change logs

the rest looks good so far - are you going to fill in the missing pieces? I can help with anything you don't know about

from mathsteps.

nitin42 avatar nitin42 commented on May 4, 2024

Example?

from mathsteps.

evykassirer avatar evykassirer commented on May 4, 2024

example of what?

from mathsteps.

nitin42 avatar nitin42 commented on May 4, 2024

ehn.. Nothing! I'll let you know ..

from mathsteps.

Related Issues (20)

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.