Code Monkey home page Code Monkey logo

a-tour-of-standard-ml's People

Contributors

namn avatar saityi avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

a-tour-of-standard-ml's Issues

Great Project!

Thanks for sharing it.

Also learned something about haskell site generation.

This would be infinitely more useful if you showed how to call the functions. Is that in your plans?

For example below, if we add:

val x = (inc' 1) = (inc 1) (* true *)

to

val _ = (inc' 1) = (inc 1) (* true *)

val _ doesn't show up in the output but x does.

[opening 01-04-functions.sml]
val inc = fn : int -> int
val add = fn : int -> int -> int
val inc' = fn : int -> int
val x = true : bool

Another thought to put this over the top would be to change your filenames so that typing them into the repl is not completely tedious which it is now!

You are the best, friend. Peace to you. Thank you for sharing this work.

Improve the styling

This is intentionally open-ended, and more of a request for help --

I don't have much experience with front-end. It's not very pretty and the CSS would likely horrify those familiar with CSS. If someone wants to swing by and pretty it up, you are very welcome to do so! โค๏ธ

Integrate a syntax highlighter

With the introduction of an in-page code runner, I removed any syntax highlighting as it would now need to be done on the fly. It would be nice if the in-page editor at least had some keyword-based colour.

Integrate an in-browser compiler

This would be a bigger lift, and would require investigation into options. A couple I've explored so far:

  • https://github.com/SOSML/SOSML -- looks good and I was able to integrate to a degree, but it's not complete enough to support all of the example files right now
  • Moving it from a totally static site to fork out to some sandboxed backend to compile code

I'm not set on an approach yet, but this would greatly improve the usability of the tour, and would allow people to explore SML much more readily.

Add a section about modern Standard ML usage

This could be a 'chapter 4: getting started in 2020 <today>'; possible contents include:

  • An overview of compilers, implementations, & successor ml standards
  • Smackage
  • smlpkg
  • Editors
  • The ecosystem
  • The community

This is an area where I'm lacking in knowledge. I primarily use SML/NJ & MLton, emacs, and do package management manually. A chapter about this, written by someone with experience in these areas, would be very welcome ๐Ÿ’•

Add tests to CI

Currently, the examples files are verified by hand, which is a bit of a tedious process. It would be ideal if it was verified during Travis CI that all of them will load into an SML/NJ repl.

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.