Компилирование булевых выражений


В этой статье я хотел бы показать, как компилировать логические выражения в виртуальной машине (далее, ВМ), основанной на стеке.
Эта задача сама по себе не очень сложная, но я надеюсь, что смогу показать, насколько мощной может быть стековая ВМ: простая идея, простая реализация, большая мощь.

Набор инструкцийВ нашей маленькой ВМ есть небольшой набор инструкций для поддержки логических выражений.
  * PUSH кладет значение переменной в стек
  * AND выполняет логическое «И» между двумя операндами в стеке
  * OR выполняет логическое «ИЛИ» между двумя операндами в стеке
  * NOT выполняет логическое «НЕ» между одним операндом в стеке
Виртуальная
Продолжить

Рейтинг:  6  (Против: 0 | За: 6)
Добавлено: 16.11.2015 от Senderman

Комментарии (9)

Графическое поле ввода


Возьмем проще, что нам надо для того, чтоб сделать подобный трюк?
1. Смена дисплеев — Canvas-TextBox
2. Обработка команды для TextBox
3. Класс для курсора
4. Класс для графического поля ввода


     Начнем с класса для поля ввода. Назовем его GInput.java
  1. //GInput.java
  2. import // упускаю, это азы и каждый должен сам уметь это делать
  3.  
  4. public class GInput {
  5.  
  6.   public int x, y, //точка расположения поля на дисплее
  7.                   width, height; // размеры (ширина, высота)
  8.  
  9.   public String text = "Нажми для ввода"; // текст поля
  10.  
  11.   public GInput(int x, int y, int width, int height) {
  12.     this.x = x ;
  13.     this.y = y;
  14.     this.width = width;
  15.     this.height = height;
  16.   }
  17.  
  18.   //рисование поля, нарисуем рамку и внутри пусть будет текст (можешь здесь

Продолжить

Рейтинг:  6  (Против: 1 | За: 7)
Добавлено: 15.11.2015 от vl@volk

Комментарии (9)

Используем библиотеку JSOUP на примере бэкапа цитат из bash.im

Java   jsoup

JSOUP - это Java-библиотека для работы с документами HTML. Она обеспечивает очень удобный API для извлечения и манипулирования данными, используя DOM, CSS, и JQuery-подобные методы. Последняя версия этой библиотеки - 1.8.2, скачать можно с официального сайта. Там же можно найти примеры программ, и документацию.

Прежде чем приступить к парсингу страницы, необходимо получить её html-код и изучить его. Быстро и наглядно это можно сделать в браузере, нажав кнопку F12.
201505260204.png Немного побродив по коду, видим повторяющиеся теги div с универсальным атрибутом class, принимающим значение quote. В каждом из них есть ещё несколько тегов: замечаем где расположена
Продолжить

Рейтинг:  3  (Против: 2 | За: 5)
Добавлено: 26.05.2015 от Kalter

Комментарии (20)

Как создать свой язык программирования


Серия видеоуроков по созданию своего языка программирования на Java без использования генераторов парсеров. По мере выхода уроков, буду обновлять статью.

Репозиторий проекта: https://github.com/aNNiMON/Own-Programming-Language-Tutorial
Плейлист на YouTube: https://www.youtube.com/playli...soWX0qTeQ9_-MFBE552C
Продолжить

Рейтинг:  19  (Против: 3 | За: 22)
Добавлено: 21.05.2015 от aNNiMON

Комментарии (79)

LWJGL 3. Универсальная загрузка нативных библиотек


Совсем недавно LWJGL третьей версии была новинкой, диковинкой. Когда я взялся за нее при переносе After Engine на OpenGL я, бывало, хотел откатиться на вторую версию, где были удобные вспомогательные классы и библиотеки. Однако, к счастью, я этого не сделал, зато открыл простоту и мощь третьей версии. Однако, чтобы не загружать пользователей моего движка лишней работой, я решил закопать все "шершавые" взаимодействия с библиотекой подальше в движок. В первую очередь меня озаботила проблема подгрузки нативных библиотек. Но, как оказалось, реализация автоматической загрузки не так уж и сложна. Стоит учитывать некоторые тонкости - во-первых представленный метод должен выполняться ДО любых обращений к LWJGL библиотеке, а во-вторых, есть некоторая неувязка имен папок с именами архитектуры,
Продолжить

Рейтинг:  7  (Против: 0 | За: 7)
Добавлено: 9.04.2015 от DominaN

Комментарии (4)
Всего: 41
<< 1 ... 4 5 6 7 8 9 >>

Мы в соцсетях

tw tg yt gt