Popularity
4.7
Declining
Activity
0.0
Stable
5
5
0
Monthly Downloads: 12
Programming language: Haskell
License: MIT License
Tags:
Development
Latest version: v1.0
Lambdajudge alternatives and similar packages
Based on the "Development" category.
Alternatively, view Lambdajudge alternatives based on common mentions on social networks and blogs.
-
hadolint
Dockerfile linter, validate inline bash, written in Haskell -
retrie
Retrie is a powerful, easy-to-use codemodding tool for Haskell. -
haskell-lsp
Haskell library for the Microsoft Language Server Protocol -
structured-haskell-mode
Structured editing minor mode for Haskell in Emacs -
cabal-install-parsers
Scripts and instructions for using CI services (e.g. Travis CI or Appveyor) with multiple GHC configurations -
stgi
A user-centric visual STG implementation to help understand GHC/Haskell's execution model. -
criterion
A powerful but simple library for measuring the performance of Haskell code. -
inline-c
Write Haskell source files including C code inline. No FFI required. -
fourmolu
A fourk of ormolu that uses four space indentation and allows arbitrary configuration. Don't like it? PRs welcome! -
gi-atk
Generate Haskell bindings for GObject-Introspection capable libraries -
lambdabot
A friendly IRC bot and apprentice coder, written in Haskell. -
inline-java
Haskell/Java interop via inline Java code in Haskell modules. -
lambdabot-core
A friendly IRC bot and apprentice coder, written in Haskell. -
scion
OLD, DEPRECATED: Use this instead https://github.com/haskell/haskell-ide-engine -
uhc-light
Part of UHC packaged as cabal/hackage installable library
InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
Promo
www.influxdata.com
Do you think we are missing an alternative of Lambdajudge or a related project?
Popular Comparisons
README
Lambdajudge
Lambdajudge is a library to easily host programming contests in haskell. This work is done as a project in Functional Programming course.
How to use
import Lambdajudge
-- | Check if mueval is present, as lambdajudge needs mueval executable to run
check = muevalAvlbl --should return true. Only then can proceed using other functions.
-- | creating a sample Contest. input and output files are in the project directory
createContest :: IO Problem
createContest = do
let dir = "test/contest1/Q1/"
--Creating first problem of contest
testCase1_1 <- getFileContents (dir </> "input00.txt")
output1_1 <- getFileContents (dir </> "output00.txt")
testCase2_2 <- getFileContents (dir </> "input02.txt")
output2_2 <- getFileContents (dir </> "output02.txt")
problemStatement1 <- getFileContents (dir </> "ProblemStatement1")
problemSetterCode1 <- getFileContents (dir </> "Solution1/Solution.hs")
--Creating second problem of contest
testCase2_1 <- getFileContents (dir </> "input10.txt")
output2_1 <- getFileContents (dir </> "output10.txt")
testCase2_1 <- getFileContents (dir </> "input12.txt")
output2_1 <- getFileContents (dir </> "output12.txt")
problemStatement2 <- getFileContents (dir </> "ProblemStatement2")
problemSetterCode2 <- getFileContents (dir </> "Solution2/Solution.hs")
-- can further repeat to include more problems.
let contest = [Problem problemStatement1 [(testCase1_1,output1_1),(testCase1_2,output1_2)] problemSetterCode1 5,
Problem problemStatement2 [(testCase2_1,output2_1),(testCase2_2,output2_2)] problemSetterCode2 3]
return contest
---run submitted solution on problem testcase
evaluate = do
prob1 <- createContest!!1 -- evaluating on first problem of the contest
runLJMonad $ gradeSubmission prob1 "SubmittedSolution.hs"
Features
- Submitted code is run in mueval, which avoids attacks like unsafePerformIO etc..
- Only runs the "solution" function of type String -> String. Hence, code has to be pure. So Type safety ensures safety of execution.
- provides logging and error handling for debugging purposes
Install from Hackage:
$ cabal install Lambdajudge
Install from unpacked release tarball or source repo:
$ cd Lambdajudge
$ cabal install
Just play with it without installing:
$ cabal build
$ cabal repl
Team members
- Ankit Kumar (15111010)
- Venugopal Reddy (14111043)
- Safal Pandita (15111040)
*Note that all licence references and agreements mentioned in the Lambdajudge README section above
are relevant to that project's source code only.