Checks if the given grammar is LL(k) for the given k

Overview

LL(k) Checker

Checks if the given grammar is LL(k) for the given k

Grammars

Currently this project supports grammars like this:

S := a B;
S := b A;
A := a;
A := b A A;
A := a S;
B := b;
B := a B B;
B := b S;

And Ɛ rules too:

A := A a;
A := ; 

The grammar must be a correctly formatted sequence of rules. Each rule must start with a nonterminal followed by the := symbol and an optional sequence of symbols (terminals or nonterminals).

Terminal -- a sequence of lowercase latin characters.

Nonterminal -- a sequence of uppercase latin characters.

More about syntax

How to use

  1. Download the executable file from the Releases page
  2. Write a grammar file (grammar.txt)
  3. Then run
java -jar llkchecker 1 grammar.txt

This will check if grammar.txt is LL(1).

To check LL(3) run java -jar llkchecker 3 grammar.txt.

Advanced You can add a -v option to see all the intermediate calculations.

You might also like...
A collection of custom Android/Kotlin lint checks we use in our Android and Kotlin code bases at Slack.

slack-lints This repository contains a collection of custom Android/Kotlin lint checks we use in our Android and Kotlin code bases at Slack. This repo

Native Device security checks, Rooted/Jailbroken, Not real device, Developer mode is on, On external drive.

palestine_trusted_device Native Device security checks, Rooted/Jailbroken, Not real device, Developer mode is on, On external drive. Part of Palestine

Checks for app updates and automatically updates the current app if the new one in local storage have a different version

Silent Android App Update Sample This sample shows how to update Android app silently without user confirmation with a device owner app. It works on A

This just checks what architecture an installed application is using for its libraries.
This just checks what architecture an installed application is using for its libraries.

Architecture Checker This just checks what architecture an installed application is using for its libraries. About Recently, I've seen that many peopl

RoboDemo is a ShowCase library for Android to demonstrate to users how a given Activity works.
RoboDemo is a ShowCase library for Android to demonstrate to users how a given Activity works.

RoboDemo RoboDemo is a ShowCase library for Android to demonstrate to users how a given Activity works. A sample is available in the download area of

[] A simple way to
[] A simple way to "badge" any given Android view at runtime without having to cater for it in layout

Android ViewBadger A simple way to "badge" any given Android view at runtime without having to cater for it in layout. Note: If your aim is to replica

An Android percentage chart that displays the progress of any single given task or information.
An Android percentage chart that displays the progress of any single given task or information.

Percentage Chart View A Java-based easy to use and highly adjustable custom view that displays the progress of a single given task. Please feel free t

A multi platform image density converting tool converting single or batches of images to Android, iOS, Windows or CSS specific formats and density versions given the source scale factor or width/height in dp. It has a graphical and command line interface and supports many image types (svg, psd, 9-patch, etc.) aswell as some lossless compressors like pngcrush. An android custom view that displays a circle with a colored arc given a mark
An android custom view that displays a circle with a colored arc given a mark

MarkView An android custom view that displays a circle with a colored arc given a mark. Usage Add as a dependency compile 'com.github.xiprox.markv

RoboDemo is a ShowCase library for Android to demonstrate to users how a given Activity works.
RoboDemo is a ShowCase library for Android to demonstrate to users how a given Activity works.

RoboDemo RoboDemo is a ShowCase library for Android to demonstrate to users how a given Activity works. A sample is available in the download area of

Grazel is a Gradle plugin to automate generation of valid Bazel files for a given Android/Kotlin/Java project.

Grazel Grazel stands for Gradle to Bazel. It is a Gradle plugin that enables you to migrate Android projects to Bazel build system in an incremental a

📲Android library to parse open graph tags (ogTags) from given URL.
📲Android library to parse open graph tags (ogTags) from given URL.

ogTagParser Android library to parse open graph tags (ogTags) from given URL. Getting Started Step 1. Add the dependency Root Level Build.gradle file

find the top coffee shop near by a given location
find the top coffee shop near by a given location

YelpCoffee&Tea 2 Different Activities (Screens): coffee shop List, coffee shop detail View Android app displays coffee shop locations in specified loc

This assignment has been given to me for Android developer position at SonyLiv.

asssignmentSonyLiv This assignment has been given to me for Android developer position at SonyLiv. This codeis not full functional but can give a cont

An example concepts of MVVM and Kotlin. Display, Filter & Sort the given restaurants from assets with Jetpack Compose and AAC
An Android app that pulls the credit score information from a given endpoint and displays the records as a donut view

ClearScoreTest This is an Android app that pulls the credit score information fr

Forage-project - This is a project given by Google Android Developers team. It's specifically created for data persistance.

Forage - Starter Code Starter code for the fifth independent project for Android Basics in Kotlin. This project pairs with Unit 5 of Android Basics in

A set of TestRules and ActivityScenarios to facilitate UI Testing under given configurations: FontSizes, Locales

AndroidUiTestingUtils A set of TestRules, ActivityScenarios and utils to facilit

Owner
furetur
telegram @furetur
furetur
Checks for app updates and automatically updates the current app if the new one in local storage have a different version

Silent Android App Update Sample This sample shows how to update Android app silently without user confirmation with a device owner app. It works on A

Hamdi Guerbej 1 May 14, 2022
This just checks what architecture an installed application is using for its libraries.

Architecture Checker This just checks what architecture an installed application is using for its libraries. About Recently, I've seen that many peopl

Rev 11 Jan 31, 2023
Praveen Kumar Kumaresan 0 Jan 17, 2022
This project aims to provide a solution for finding the right product for a given EAN (European Article Number)

This project aims to provide a solution for finding the right product for a given EAN (European Article Number)

MJ 1 Apr 18, 2022
This application is used to adjust the scaling of kubernetes deployments depending on the message-count of given RabbitMQ queues.

PodAutoScaler This application is used to adjust the scaling of kubernetes deployments depending on the message-count of given RabbitMQ queues. It use

Max.-F. Helm 7 May 9, 2022
SeatBookView is an Android Studio Library that helps to make it easier to create Bus, Train, Cinema Theater Seat UI and all functionalities are given.

SeatBookView SeatBookView is an Android Studio Library that helps to make it easier to create Bus ?? , Train ?? , Cinema Theater Seat UI and all funct

Md. Zahidul Islam 3 Oct 15, 2022
KotlinScript that generate Reel from a given image, text and audio

ReelScriot KotlinScript that generate Reel from a given image, text and audio 80f4ea39-a7da-4f21-b0ff-7a17836a1cd0.mp4 6691b51d-d7a3-4915-ae41-8bec400

Chetan Gupta 2 Dec 6, 2022
>On this day< is a JetBrains Space app which shows Wikipedia-based information about what happened on that or given day

kotlin-spaces-app-onthisday On this day is a JetBrains Space app which shows Wikipedia-based information about what happened on that or given day Stat

Tobias Scholze 2 Oct 20, 2022
Map-vs-list-comparator - The project compares the time needed to find a given element in a map vs the time needed to find a given element in a list.

Map vs List Comparator The project compares the time needed to find a given element in a map vs the time needed to find a given element in a list. To

null 0 Jan 4, 2022
A library that checks for your apps' updates on Google Play, GitHub, Amazon, F-Droid or your own server. API 9+ required.

AppUpdater Android Library Android Library that checks for updates on Google Play, GitHub, Amazon, F-Droid or your own server. This library notifies y

Javier Santos 1.9k Jan 2, 2023